Very light and minimalist editor inspired by Scribes. Snaked intended mostly for python developers but other Scribes users may find it useful too.
Shortly, Snaked is Scribes with blackjack & hookers.
May be found at http://packages.python.org/snaked/index.html
- As little code base as possible. GtkSourceView gives enough features. Editor core should only implement project, shortcut, plugin, editor title and editor problems abstractions. 1000 - 3000 cloc's of python code estimated.
- Clean and maintainable code design. Say no for Scribes signal passing hell.
- Tabs! I'm using awesome tiling wm, so Scribes lacking of tabs is not a problem for me. But many users complain about it.
- Speed. All development will be made on Atom Netbook. Scribes is too slow on this hardware.
- Memory footprint. Scribes internals is too complicated to trace all object references and editor leaks like bloody shit. Weakrefs will save the world.
- Flexible plugin system based on standard python packaging practices.
I use Snaked for all my python development tasks. Following features are implemented:
- Quick open on
- Goto python definition on
- Complete words on
- Pretty title for python modules.
- Python code completion on
- Storing last edit position for every file.
- Python smart indent.
- Saving quick open project history and switch between them on
- Tabs. Switching on
- Python outline navigator on
- Feedback messages api. For example syntax errors on python autocomplete and so on.
- Hash comment plugin for commenting python, ruby, etc... code. Activated on
- Improved smart block selection algorithm.
- pyflakes integration (very basic now)
- Goto line on
- Goto dir on
- Session to store opened editors on application quit.
- Search on
- Smart anything selection on
<alt>w. Just try it!
- Plugin manager to allow one enable/disable installed plugins
- Shortcut manager
- Preferences dialog
- Editor preferences. Font, tabs and so on. Activated by
- Python type hints defining. One can override function parameters, return and module attributes types.
Current progress may be seen in @a_bobrov.