fbpx
Wikipedia

Kross (software)

Kross is a scripting framework for KDE Frameworks. Originally Kross was designed for use in KOffice but eventually became the official scripting framework in KDE Software Compilation 4. Kross is designed to provide full scripting power for users of KDE applications, with a language of their own choice; and make it easy for developers targeting the KDE platform to enable their application with support for multiple scripting languages (without themselves needing to be proficient in any of them).

Kross
Developer(s)KDE
Stable release
5.100.0[1]  / 14 November 2022; 2 months ago (14 November 2022)
Repositoryinvent.kde.org/frameworks/kross
Written inC++
LicenseLGPL
Websiteapi.kde.org/frameworks/kross/html/index.html

The Kross scripting framework is not a scripting language itself. It merely serves to plug into KDE the support for other, already existing scripting languages. Currently supported are: Python, Ruby, and JavaScript and the Falcon Programming Language. Addition of other scripting languages is made easy by the modular architecture of the framework.

Kross provides the following advantages over other approaches to enable scripting for desktop applications or desktop environments:

  • The user is free to pick and use their favorite language for the scripting efforts
  • The application developer does not need to know the specifics about a scripting language
  • Other scripting languages can be easily added by writing a module/plugin for Kross.

Comparison with other scripting frameworks

SWIG: Simplified Wrapper and Interface Generator

  • Kross currently has fewer supported scripting languages.
  • Kross is built on top of Qt/KDE. This allows access to Qt/KDE things without needing extra effort to wrap them.[2]
  • Applications supporting Kross do not require as much code as to support SWIG.[2]
  • With SWIG, the set of supported scripting languages is determined at the time of compiling the application: each supported language must either have code in the application to invoke that language's interpreter, and/or have a shared library specific to that application–language pair whereas Kross doesn't need to know until runtime.

AppleScript

Compared to AppleScript's Open Scripting Architecture (OSA):

  • OSA can be used with IPC (Apple events), allowing a script to be in a separate process, whereas Kross scripts always run in the same process as the main application. In practical terms, using IPC allows a script to interface between several already-running applications; Kross does not.
(IPC is not technically necessary for one script to access code from many applications at once: a script can link against library forms of those applications, such as the libraries produced by SWIG.)
  • While Kross allows the scripter to write scripts in a language of their choice, AppleScript is one given language, though it can be called from within other (scripting) languages.
  • Kross always requires code added to the application explicitly for Kross, whereas many macOS applications have basic scriptability just because of their choice of GUI toolkit (Cocoa) (see AppleScript in macOS). (Dogtail and other GUI testing/automation tools also have this property.) “Basic scriptability” here means at least being able to click on buttons and menus and access information provided to accessibility software such as Screen readers.

Kross does not currently have any provision for running untrusted scripts, i.e. does not allow restricting what scripts can do. Kross developer Sauer[3] suggests either using a language with good sandbox support (such as by using the experimental Java plugin) or using approaches to increase the trust in scripts, such as using signed scripts.[4]

Applications using Kross

References

  1. ^ "KDE Frameworks 5.100.0". 14 November 2022. Retrieved 16 November 2022.
  2. ^ a b . Archived from the original on September 24, 2006. Retrieved 2007-05-16.
  3. ^ The Road to KDE 4: New KOffice Technologies
  4. ^ . Archived from the original on September 24, 2006.

External links

  • Kross home page (documentation for developers)
  • Interview with Kross developer
  • Kross tutorial
  • aKademy 2006 conference talk on Kross

kross, software, kross, scripting, framework, frameworks, originally, kross, designed, koffice, eventually, became, official, scripting, framework, software, compilation, kross, designed, provide, full, scripting, power, users, applications, with, language, th. Kross is a scripting framework for KDE Frameworks Originally Kross was designed for use in KOffice but eventually became the official scripting framework in KDE Software Compilation 4 Kross is designed to provide full scripting power for users of KDE applications with a language of their own choice and make it easy for developers targeting the KDE platform to enable their application with support for multiple scripting languages without themselves needing to be proficient in any of them KrossDeveloper s KDEStable release5 100 0 1 14 November 2022 2 months ago 14 November 2022 Repositoryinvent wbr kde wbr org wbr frameworks wbr krossWritten inC LicenseLGPLWebsiteapi wbr kde wbr org wbr frameworks wbr kross wbr html wbr index wbr htmlMain article KDE Frameworks The Kross scripting framework is not a scripting language itself It merely serves to plug into KDE the support for other already existing scripting languages Currently supported are Python Ruby and JavaScript and the Falcon Programming Language Addition of other scripting languages is made easy by the modular architecture of the framework Kross provides the following advantages over other approaches to enable scripting for desktop applications or desktop environments The user is free to pick and use their favorite language for the scripting efforts The application developer does not need to know the specifics about a scripting language Other scripting languages can be easily added by writing a module plugin for Kross Contents 1 Comparison with other scripting frameworks 1 1 SWIG Simplified Wrapper and Interface Generator 1 2 AppleScript 2 Applications using Kross 3 References 4 External linksComparison with other scripting frameworks EditSWIG Simplified Wrapper and Interface Generator Edit Kross currently has fewer supported scripting languages Kross is built on top of Qt KDE This allows access to Qt KDE things without needing extra effort to wrap them 2 Applications supporting Kross do not require as much code as to support SWIG 2 With SWIG the set of supported scripting languages is determined at the time of compiling the application each supported language must either have code in the application to invoke that language s interpreter and or have a shared library specific to that application language pair whereas Kross doesn t need to know until runtime AppleScript Edit Compared to AppleScript s Open Scripting Architecture OSA OSA can be used with IPC Apple events allowing a script to be in a separate process whereas Kross scripts always run in the same process as the main application In practical terms using IPC allows a script to interface between several already running applications Kross does not IPC is not technically necessary for one script to access code from many applications at once a script can link against library forms of those applications such as the libraries produced by SWIG While Kross allows the scripter to write scripts in a language of their choice AppleScript is one given language though it can be called from within other scripting languages Kross always requires code added to the application explicitly for Kross whereas many macOS applications have basic scriptability just because of their choice of GUI toolkit Cocoa see AppleScript in macOS Dogtail and other GUI testing automation tools also have this property Basic scriptability here means at least being able to click on buttons and menus and access information provided to accessibility software such as Screen readers Kross does not currently have any provision for running untrusted scripts i e does not allow restricting what scripts can do Kross developer Sauer 3 suggests either using a language with good sandbox support such as by using the experimental Java plugin or using approaches to increase the trust in scripts such as using signed scripts 4 Applications using Kross Edit Free and open source software portalCalligra Suite Kexi Krita KDevelop KTorrent Kopete PlasmaReferences Edit KDE Frameworks 5 100 0 14 November 2022 Retrieved 16 November 2022 a b Archived from the original on September 24 2006 Retrieved 2007 05 16 The Road to KDE 4 New KOffice Technologies Archived from the original on September 24 2006 External links EditKross home page documentation for developers Interview with Kross developer Kross tutorial aKademy 2006 conference talk on Kross Kross Namespace Reference Retrieved from https en wikipedia org w index php title Kross software amp oldid 1099311969, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.