Differences between revisions 3 and 29 (spanning 26 versions)
Revision 3 as of 2004-03-12 22:17:41
Size: 1327
Editor: sololess
Comment:
Revision 29 as of 2004-03-23 17:28:48
Size: 6386
Editor: sololess
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Many applicatiions that are written in another programming language such as C/C++ support Python for scripting. This page is for highlighting those commercial and Open Source applications. This page is not for listing those applications primarily built with Python. Applications can and are written in Python, but people are slow to change, so the vast majority are still done using C/C++ on Linux and Windows and a combination of C++ and Objective-C on Mac OS X. I've noticed a growing trend of using Python to provide user automation or scripting, sometimes called macros, for C/C++ applications. This makes a lot of sense:
Line 3: Line 3:
If you have anything to contribute, don't hesitate to edit this page.  * developers don't have to waste time and money inventing their own scripting language and users don't have to learn a new automation language for every application they use
 * Python is an OpenSource solution and can be embedded and distributed for free so there are no royalty payments or licensing hassles
 * Python is simple to learn, yet Python and its standard libraries are much more powerful than a proprietary language like VBScript
 * Python is cross-platform
 * tools like [http://www.swig.org/ SWIG] make it easy to expose part or all of the application programming interface (API)
 * Python scripting can be added to legacy projects just as well as new ones so developers don't have to abandon their old C/C++ code libraries
 * On the Windows platform, Python has an excellent interface to COM (also known as ActiveX) and can be used to interface to almost any COM program (such as the MS-Office suite). Again, Python scripting can be added to enhance a project without change to the existing COM components.
 * [http://pyobjc.sourceforge.net PyObjC] can be used to add scripting to any Cocoa app on Mac OS X
 * Many Mac OS applications provide Apple event-based scripting interfaces, allowing them to be controlled from languages such as [http://www.apple.com/applescript/ AppleScript], [http://www.latenightsw.com/freeware/JavaScriptOSA/ JavaScript OSA], Perl (via [http://search.cpan.org/~cnandor/Mac-Glue/ Mac::Glue]), Python (via [http://freespace.virgin.net/hamish.sanderson/appscript.html appscript]), Tcl and UserTalk.

For many of the same reasons, Python is often used as the "glue" language for a project. In the Java world, people are using Jython as the glue and scripting language.
Line 6: Line 16:

(!) '''This page is not for listing those applications primarily built with Python.'''
Line 12: Line 24:
|| [http://www.blender.org/ Blender] || multi-platform || OpenSource software for 3D modeling, animation, rendering, post-production, interactive creation and playback. [http://www.blender.org/modules/documentation/228PythonDoc/ Blender Python API reference] ||
|| ClearSilver || multi-platform || Web application framework ||
|| [http://www.fontlab.com/ FontLab] || Windows, Mac OS || Commercial font editing software, uses Python as a macro language. ||
|| [http://www.gimp.org/ GIMP] || multi-platform, GTK || GNU Image Manipulation Program. [http://www.daa.com.au/~james/software/pygimp/ Gimp-Python] is a package that allows people to write plug-ins for The Gimp in the Python programming language rather than Script-Fu (Scheme), Perl, Tcl or C. ||
|| [http://gxsm.sourceforge.net/ GXSM] || Linux, Mac OS X || Gnome X Scanning Microscopy. multi-channel 2D/3D data acquisition and visualization ||
|| [http://kahakai.sourceforge.net/ Kahakai Window Manager] || POSIX, KDE and GNOME || Python is used for event and key binding configuration. ||
|| [http://www.kaydara.com/products/motionbuilder/ Kaydara Motionbuilder] || Mac OS X, Windows || Helpful for integrating into production pipelines and allows users to automate repetitive processes. ||
Line 13: Line 32:
|| [http://www.ogre3d.org/ OGRE] || multi-platform || Object-Oriented Rendering Engine ||
Line 14: Line 34:
|| Office and Outlook || Windows || While Microsoft Office apps including Microsoft Outlook were not originally designed to be scripted with Python, [http://starship.python.net/crew/mhammond/win32/Downloads.html pywin32] (formerly win32all) makes it possible to script Microsoft Office apps and build plug-ins. Of special note is the [http://spambayes.sourceforge.net/windows.html SpamBayes] plug-in for Outlook which enables any Outlook user to use [http://spambayes.sourceforge.net/windows.html SpamBayes] without even knowing anything about Python. ||
Line 15: Line 36:
|| [http://subversion.tigris.org/ Subversion] || multi-platform || A compelling replacement for CVS. See the [http://subversion.tigris.org/project_links.html Project Links], [http://subversion.tigris.org/bindings.html Bindings] or do a [http://www.google.com/search?&q=site:subversion%2Etigris%2Eorg+python Google site search]. ||
|| [http://netdragon.sourceforge.net SuperKaramba] || Linux, KDE || SuperKaramba allows you to create cool dekstop widgets with little to no programming experience. It's similar to "Konfabulator" for the Mac. ||
|| [http://www.vim.org/ Vim] || multi-platform || editor ||
|| [http://www.wincvs.org/ WinCvs] || Windows || GUI front-end for CVS ||
|| [http://www.xchat.org/ XChat] || multi-platform || IRC Client ||
Line 19: Line 46:
|| [http://crystal.sourceforge.net/ Crystal Space] || multi-platform || OpenSource 3D SDK ||
Line 20: Line 48:
|| [http://www.bridgecommander.com/ Star Trek Bridge Commander] || Windows || ||
|| [http://vegastrike.sourceforge.net/ Vega Strike] || Linux, Mac, Windows || 3D OpenGL Action Space Sim ||
Line 21: Line 51:

=== Other Resources ===
=== Other Resources (many apps from pages below need to be copied to this page) ===
Line 25: Line 54:
  * [http://www.python.org/community/users.html Organizations and Apps using Python]
  * [http://www.cygnus-software.com/papers/gamescriptinginpython.html Game Scripting in Python]
  * IntegratingPythonWithOtherLanguages

Applications can and are written in Python, but people are slow to change, so the vast majority are still done using C/C++ on Linux and Windows and a combination of C++ and Objective-C on Mac OS X. I've noticed a growing trend of using Python to provide user automation or scripting, sometimes called macros, for C/C++ applications. This makes a lot of sense:

  • developers don't have to waste time and money inventing their own scripting language and users don't have to learn a new automation language for every application they use
  • Python is an OpenSource solution and can be embedded and distributed for free so there are no royalty payments or licensing hassles

  • Python is simple to learn, yet Python and its standard libraries are much more powerful than a proprietary language like VBScript
  • Python is cross-platform
  • tools like [http://www.swig.org/ SWIG] make it easy to expose part or all of the application programming interface (API)

  • Python scripting can be added to legacy projects just as well as new ones so developers don't have to abandon their old C/C++ code libraries
  • On the Windows platform, Python has an excellent interface to COM (also known as ActiveX) and can be used to interface to almost any COM program (such as the MS-Office suite). Again, Python scripting can be added to enhance a project without change to the existing COM components.
  • [http://pyobjc.sourceforge.net PyObjC] can be used to add scripting to any Cocoa app on Mac OS X

  • Many Mac OS applications provide Apple event-based scripting interfaces, allowing them to be controlled from languages such as [http://www.apple.com/applescript/ AppleScript], [http://www.latenightsw.com/freeware/JavaScriptOSA/ JavaScript OSA], Perl (via [http://search.cpan.org/~cnandor/Mac-Glue/ Mac::Glue]), Python (via [http://freespace.virgin.net/hamish.sanderson/appscript.html appscript]), Tcl and UserTalk.

For many of the same reasons, Python is often used as the "glue" language for a project. In the Java world, people are using Jython as the glue and scripting language.

TableOfContents

(!) This page is not for listing those applications primarily built with Python.

(!) Please keep wiki links as wiki links, use external links only if there is no existing page for the program.

Applications

Name

Platform

Notes

[http://www.blender.org/ Blender]

multi-platform

OpenSource software for 3D modeling, animation, rendering, post-production, interactive creation and playback. [http://www.blender.org/modules/documentation/228PythonDoc/ Blender Python API reference]

ClearSilver

multi-platform

Web application framework

[http://www.fontlab.com/ FontLab]

Windows, Mac OS

Commercial font editing software, uses Python as a macro language.

[http://www.gimp.org/ GIMP]

multi-platform, GTK

GNU Image Manipulation Program. [http://www.daa.com.au/~james/software/pygimp/ Gimp-Python] is a package that allows people to write plug-ins for The Gimp in the Python programming language rather than Script-Fu (Scheme), Perl, Tcl or C.

[http://gxsm.sourceforge.net/ GXSM]

Linux, Mac OS X

Gnome X Scanning Microscopy. multi-channel 2D/3D data acquisition and visualization

[http://kahakai.sourceforge.net/ Kahakai Window Manager]

POSIX, KDE and GNOME

Python is used for event and key binding configuration.

[http://www.kaydara.com/products/motionbuilder/ Kaydara Motionbuilder]

Mac OS X, Windows

Helpful for integrating into production pipelines and allows users to automate repetitive processes.

[http://mahogany.sourceforge.net/ Mahogany]

Linux, Mac OS X, Windows

OpenSource cross-platform mail and news client.

[http://www.ogre3d.org/ OGRE]

multi-platform

Object-Oriented Rendering Engine

[http://www.openoffice.org/ OpenOffice]

multi-platform

[http://udk.openoffice.org/python/python-bridge.html Python-UNO bridge] for scripting OpenOffice with Python

Office and Outlook

Windows

While Microsoft Office apps including Microsoft Outlook were not originally designed to be scripted with Python, [http://starship.python.net/crew/mhammond/win32/Downloads.html pywin32] (formerly win32all) makes it possible to script Microsoft Office apps and build plug-ins. Of special note is the [http://spambayes.sourceforge.net/windows.html SpamBayes] plug-in for Outlook which enables any Outlook user to use [http://spambayes.sourceforge.net/windows.html SpamBayes] without even knowing anything about Python.

[http://www.jasc.com/products/paintshoppro/ Paint Shop Pro 8]

Windows

Photo and graphics editor. [http://www.jasc.com/support/customercare/articles/psp8components.asp PSP scripting resources]

[http://subversion.tigris.org/ Subversion]

multi-platform

A compelling replacement for CVS. See the [http://subversion.tigris.org/project_links.html Project Links], [http://subversion.tigris.org/bindings.html Bindings] or do a [http://www.google.com/search?&q=site:subversion%2Etigris%2Eorg+python Google site search].

[http://netdragon.sourceforge.net SuperKaramba]

Linux, KDE

SuperKaramba allows you to create cool dekstop widgets with little to no programming experience. It's similar to "Konfabulator" for the Mac.

[http://www.vim.org/ Vim]

multi-platform

editor

[http://www.wincvs.org/ WinCvs]

Windows

GUI front-end for CVS

[http://www.xchat.org/ XChat]

multi-platform

IRC Client

Games

Name

Platform

Notes

[http://crystal.sourceforge.net/ Crystal Space]

multi-platform

OpenSource 3D SDK

[http://www.myfreedomforce.com/ Freedom Force]

Windows

[http://www.google.com/search?q=freedom+force+python Google link]

[http://www.bridgecommander.com/ Star Trek Bridge Commander]

Windows

[http://vegastrike.sourceforge.net/ Vega Strike]

Linux, Mac, Windows

3D OpenGL Action Space Sim

Other Resources (many apps from pages below need to be copied to this page)

AppsWithPythonScripting (last edited 2019-07-05 23:27:31 by JaraKaca)

Unable to edit the page? See the FrontPage for instructions.