eric is a
free
Free may refer to:
Concept
* Freedom, having the ability to do something, without having to obey anyone/anything
* Freethought, a position that beliefs should be formed only on the basis of logic, reason, and empiricism
* Emancipate, to procur ...
integrated development environment (IDE) used for
computer programming. Since it is a full featured IDE, it provides by default all necessary tools needed for the writing of
code
In communications and information processing, code is a system of rules to convert information—such as a letter, word, sound, image, or gesture—into another form, sometimes shortened or secret, for communication through a communication ...
and for the professional
management of a software project.
eric is written in the
programming language Python and its primary use is for
developing
Development or developing may refer to:
Arts
*Development hell, when a project is stuck in development
*Filmmaking, development phase, including finance and budgeting
*Development (music), the process thematic material is reshaped
* Photograph ...
software written in Python. It is usable for development of any combination of Python 3 or Python 2,
Qt 5 or Qt 4 and
PyQt 5 or PyQt 4 projects, on
Linux,
macOS and
Microsoft Windows
Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for serv ...
platforms.
License, price and distribution
eric is licensed under the
GNU General Public License version 3 or later and is thereby
Free Software. This means in general terms that the
source code of eric can be studied, changed and improved by anyone, that eric can be run for any purpose by anyone and that eric - and any changes or improvements that may have been made to it - can be redistributed by anyone to anyone as long as the license is not changed (
copyleft).
eric can be downloaded at
SourceForge and installed manually with a python installer script.
Most major
Linux distribution
A Linux distribution (often abbreviated as distro) is an operating system made from a software collection that includes the Linux kernel and, often, a package management system. Linux users usually obtain their operating system by downloading one ...
s include eric in their
software repositories, so when using such Linux distributions eric can be obtained and installed automatically by using the
package manager of the particular distribution.
Additionally, the author offers access to the
source code via a public
Mercurial repository.
Characteristics
eric is written in Python and uses the
PyQt Python bindings for the
Qt GUI toolkit. By design, eric acts as a front end for several programs, for example the
QScintilla editor widget.
Features
The key features of eric 6 are:
*Source code editing:
** Unlimited number of
editors
** Configurable window layout
** Configurable
syntax highlighting
** Sourcecode
autocompletion
** Sourcecode calltips
**
Sourcecode folding
**
Brace matching
** Error highlighting
** Advanced search functionality including project wide search and replace
** Integrated
class browser
** Integrated profiling and
code coverage support
*GUI designing:
** Integration of
Qt Designer, a
Graphical user interface builder for the creation of Qt-based
Graphical user interfaces
*Debugging, checking, testing and documenting:
** Integrated graphical python debugger which supports both interactive probing while suspended and auto breaking on exceptions as well as debugging multi-threaded and multiprocessing applications
** Integrated automatic code checkers (syntax, errors and style, PEP-8) for
static program analysis as well as support of
Pylint via plug-in
** Integrated source code documentation system
** Integrated
unit testing support by having the option to run python code with command-line parameters
** Integrated interface to the enchant spell checking library
** Application diagrams
*Version control:
** Integrated
version control support for
Mercurial and
Subversion
Subversion () refers to a process by which the values and principles of a system in place are contradicted or reversed in an attempt to transform the established social order and its structures of power, authority, hierarchy, and social norms. Sub ...
repositories (as core plug-ins) and
git (as optional plug-in)
*Project management and collaboration:
** Advanced project management facilities
** Integrated task management with a self-updating
To-do list
** Integrated cooperation functions (chat, shared editor)
*Other:
** Integrated web browser
** Integrated support for
Django (as optional plug-in)
** Running external applications from within the IDE
** Interactive Python shell including syntax hilighting and autocompletion
** Integrated CORBA support based on omniORB
** Integrated rope refactoring tool (as optional plug-in)
** Integrated interface to cx_freeze (as optional plug-in)
** Many integrated wizards for regex and Qt dialogs (as core plug-ins)
** Tools for previewing Qt forms and translations
Support for Python 2 and 3
Prior to the release of eric version 5.5.0, eric version 4 and eric version 5 coexisted and were maintained simultaneously, while eric 4 was the variant for writing software in Python version 2 and eric version 5 was the variant for writing software in Python version 3.
With the release of eric version 5.5.0 both variants had been merged into one, so that all versions as of eric version 5.5.0 support writing software in Python 2 as well as in Python 3, making the separate development lanes of eric version 4 and 5 obsolete. Those two separate development lanes are no longer maintained, and the last versions prior to merging them both to 5.5.0 were versions 4.5.25 and 5.4.7.
Gallery
Releases
Versioning scheme
Until 2016, eric used a
software versioning
Software versioning is the process of assigning either unique ''version names'' or unique ''version numbers'' to unique states of computer software. Within a given version number category (e.g., major or minor), these numbers are generally assig ...
scheme with a three-sequence identifier, e.g. 5.0.1. The first sequence represents the major version number which is increased when there are significant jumps in functionality, the second sequence represents the minor number, which is incremented when only some features or significant fixes have been added, and the third sequence is the revision number, which is incremented when minor bugs are fixed or minor features have been added.
From late 2016, the version numbers show the year and month of release, e.g. 16.11 for November 2016.
Release strategy
eric follows the
development philosophy of ''
Release early, release often'', following loosely a time-based release schedule. Currently a revision version is released around the first weekend of every month, a minor version is released annually, in most cases approximately between December and February.
Version history
The following table shows the version history of eric, starting from version 4.0.0.
Only major (e.g. 6.0.0) and minor (e.g. 6.1.0) releases are listed; revision releases (e.g. 6.0.1) are omitted.
Name
Several allusions are made to the British comedy group
Monty Python
Monty Python (also collectively known as the Pythons) were a British comedy troupe who created the sketch comedy television show '' Monty Python's Flying Circus'', which first aired on the BBC in 1969. Forty-five episodes were made over four ...
, which the Python programming language is named after. Eric alludes to
Eric Idle
Eric Idle (born 29 March 1943) is an English actor, comedian, musician and writer. Idle was a member of the British surreal comedy group Monty Python and the parody rock band The Rutles, and is the writer of the music and lyrics for the Broadwa ...
, a member of the group, and
IDLE, the standard python IDE shipped with most distributions.
See also
*
Comparison of integrated development environments for Python
References
External links
*
*
{{Integrated development environments
Code navigation tools
Cross-platform free software
Debuggers
Free HTML editors
Free integrated development environments
Free integrated development environments for Python
Free software programmed in Python
Linux integrated development environments
Linux programming tools
MacOS programming tools
Programming tools for Windows
Python (programming language) software
Software that uses Qt
Software that uses Scintilla
Software using the GPL license