Difference between revisions of "GNU Zile"

From LibrePlanet
Jump to: navigation, search
Line 8: Line 8:
 
There are various projects which could usefully be undertaken:
 
There are various projects which could usefully be undertaken:
  
* '''Zile 2.3 (stable branch):''' There is code cleanup to do, a few features to add, and in particular, work to make Zile exactly like Emacs, by extending its test suite and making sure that all the tests work identically on Emacs. If you'd prefer to work on small, precisely-defined projects, the Feature Request tracker lists some mostly small features desired at http://sourceforge.net/tracker/?limit=10&func=&group_id=17089&atid=367089&status=1&submit=Filter
+
* '''Zile 2.3 (stable branch, C):''' This is currently in maintenance mode, as development is focussed on the 2.4 branch. However, there is scope for further work: the code could be substantially modernized (better use of abstract data structures and encapsulation) and streamlined (in particular, by using ropes rather than linked lists of strings for buffers). The 9,100 lines of C could surely be considerably reduced.
  
* '''Zile 2.4 (development branch):''' Zile is being translated from C to the popular lightweight scripting language Lua (http://www.lua.org/) in order to make it easier to maintain in future. Some work has already been done, but the majority remains to do.
+
* '''Zile 2.4 (development branch, Lua):''' Zile has been translated from C to the popular lightweight scripting language Lua (http://www.lua.org/) in order to make it easier to maintain in future, and is in the final stages of preparation for alpha release. There's plenty of scope both to improve the code (currently, not very "Lua-ish") and reduce its 6,500 lines considerably. If you'd prefer to work on small, precisely-defined projects, the Feature Request tracker lists some mostly small features desired at http://sourceforge.net/tracker/?limit=10&func=&group_id=17089&atid=367089&status=1&submit=Filter
  
* '''Zile 3.0 (Emacs):''' The eventual aim of Zile is to make itself redundant, by making Emacs itself be a suitable replacement. Emacs can already be used for most editing, but it needs to be made smaller and more portable before it can completely replace Zile. A good initial aim would be to get a single binary of under 1Mb and the ability to build on any POSIX system.
+
* '''Zile 3.0 (Emacs):''' The maintainer's eventual aim is to make Zile itself redundant, by making Emacs be a suitable replacement. Emacs can already be used for most editing situations, but it needs to be made smaller and more portable before it can completely replace Zile. A good initial aim would be to get a single binary of under 1Mb and the ability to build on any POSIX system.
  
* '''Future-oriented projects (Zee):''' Zile has an experimental offspring, Zee, which aims to restructure the code to provide an editor library which can be personalised, e.g. by an Emacs interface, making it work like Zile, and to offer a minimal editor which integrates with the UNIX command shell, rather than subsuming it, as Emacs does. Much work has already been done (http://zee.sourceforge.net/), but so far only the surface has been scratched: the current incarnation of Zee is a minimal editor with a single file, single window interface, and a CUA (i.e. GNOME/Windows-like) command set. Potential projects with Zee include completing its translation into Lua (with C extensions where necessary), turning it into a library (which can be used, for example, as a readline replacement), and working out how it should fit in with the UNIX tools philosophy. Other ideas that have so far only been sketched include extending it to work as a structured file editor (essentially, working on well-formed XML files).
+
* '''Future-oriented projects (Zee):''' Zile has an experimental offspring, Zee, which aims to restructure the code to provide an editor library which can be personalised, e.g. by an Emacs interface, making it work like Zile, and to offer a minimal editor which integrates with the UNIX command shell, rather than subsuming it, as Emacs does. Much work has already been done (http://zee.sourceforge.net/), but so far only the surface has been scratched: the current incarnation of Zee is a minimal editor with a single file, single window interface, and a CUA (i.e. GNOME/Windows-like) command set. Potential projects with Zee include reimplementing it on top of the current 2.4 Zile branch (and modularising the code so that both Zile and Zee can be based on the same core), turning it into a library (which can be used, for example, as a readline replacement), and working out how it should fit in with the UNIX tools philosophy. Other ideas that have so far only been sketched include extending it to work as a structured file editor (essentially, working on well-formed XML files).
  
Pretty much anyone interested in either portable software engineering and re-engineering, Emacs or traditional UNIX tools and their future incarnations should find a project above to match their interests.
+
Pretty much anyone interested in either portable software engineering and re-engineering, Emacs, or traditional UNIX tools and their future incarnations should find a project above to match their interests.
 
|Getting started=Go to Zile's Savannah page, and check out current git. If you're interested in contributing, please do email Reuben Thomas!
 
|Getting started=Go to Zile's Savannah page, and check out current git. If you're interested in contributing, please do email Reuben Thomas!
 
|Status=Available
 
|Status=Available

Revision as of 19:29, 5 March 2011

</noinclude> About | Blog | Wiki

Sponsored by FSF - Contact Reuben Thomas for more information

Lightweight Emacs clone

Info

Type Text editor
Interests ,|x|x}}
Members ,|x|x}}{{#arraymap:rrt|,|x }}

Description

GNU Zile (short for "Zile Is Lossy Emacs") is a lightweight Emacs subset. Zile has all of Emacs's basic editing features: it is 8-bit clean (though it currently lacks Unicode support), and the number of editing buffers and windows is only limited by available memory and screen space respectively. Registers, minibuffer completion and auto-fill are available. Function and variable names are identical with Emacs's. However, all of this is packed into a program which typically compiles to about 130Kb.

There are various projects which could usefully be undertaken:

  • Zile 2.3 (stable branch, C): This is currently in maintenance mode, as development is focussed on the 2.4 branch. However, there is scope for further work: the code could be substantially modernized (better use of abstract data structures and encapsulation) and streamlined (in particular, by using ropes rather than linked lists of strings for buffers). The 9,100 lines of C could surely be considerably reduced.
  • Zile 2.4 (development branch, Lua): Zile has been translated from C to the popular lightweight scripting language Lua (http://www.lua.org/) in order to make it easier to maintain in future, and is in the final stages of preparation for alpha release. There's plenty of scope both to improve the code (currently, not very "Lua-ish") and reduce its 6,500 lines considerably. If you'd prefer to work on small, precisely-defined projects, the Feature Request tracker lists some mostly small features desired at http://sourceforge.net/tracker/?limit=10&func=&group_id=17089&atid=367089&status=1&submit=Filter
  • Zile 3.0 (Emacs): The maintainer's eventual aim is to make Zile itself redundant, by making Emacs be a suitable replacement. Emacs can already be used for most editing situations, but it needs to be made smaller and more portable before it can completely replace Zile. A good initial aim would be to get a single binary of under 1Mb and the ability to build on any POSIX system.
  • Future-oriented projects (Zee): Zile has an experimental offspring, Zee, which aims to restructure the code to provide an editor library which can be personalised, e.g. by an Emacs interface, making it work like Zile, and to offer a minimal editor which integrates with the UNIX command shell, rather than subsuming it, as Emacs does. Much work has already been done (http://zee.sourceforge.net/), but so far only the surface has been scratched: the current incarnation of Zee is a minimal editor with a single file, single window interface, and a CUA (i.e. GNOME/Windows-like) command set. Potential projects with Zee include reimplementing it on top of the current 2.4 Zile branch (and modularising the code so that both Zile and Zee can be based on the same core), turning it into a library (which can be used, for example, as a readline replacement), and working out how it should fit in with the UNIX tools philosophy. Other ideas that have so far only been sketched include extending it to work as a structured file editor (essentially, working on well-formed XML files).

Pretty much anyone interested in either portable software engineering and re-engineering, Emacs, or traditional UNIX tools and their future incarnations should find a project above to match their interests.

How to get started

Go to Zile's Savannah page, and check out current git. If you're interested in contributing, please do email Reuben Thomas!

"GNU Generation project" is not in the list (group, individual) of allowed values for the "Is entity" property.