ANN:UliPad 3.4 Release

limodou limodou at gmail.com
Mon Oct 9 03:52:39 EDT 2006


What's it?
========

It's an Editor based on wxPython. NewEdit is the old name, and UliPad
is the new name. UliPad uses Mixin and Plugin technique as its
architecture. Most of its classes can be extended via mixin and plugin
components, and finally become an integrity class at
creating the instance. So UliPad is very dynamic. You can write the
new features in new files, and hardly need to modify the existing
code. And if you want to extend the existing classes, you could write
mixins and plugins, and this will be bound to the target class that I
call "Slot Class". This technique will make the changes centralized
and easily managed.

What's new in 3.4
==============

* Bug fix
* Notebook control changed to FlatNotebook
* Ctrl+Enter can directly add new line, just like(End+Enter)
* jQuery support: project setup, auto create comments for functions
* Creating django app's dot file, and see the image in a window
* Multi view of document
* Commands searching and impact mode
* ReStructuredText support: project setup, syntax highlight, html view
and auto update
* Django Template syntax highlight
* ctags support
* move python syntax check plugin into core
* Auto syntax highlight bind and auto-complete file bind in _project

Where to download it?
================

download lastest version 3.4:
http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=UliPad_3.4.zip
also have windows installer:
http://wiki.woodpecker.org.cn/moin/UliPad?action=AttachFile&do=get&target=UliPad3.4.exe
wiki: http://wiki.woodpecker.org.cn/moin/UliPad
svn: http://cvs.woodpecker.org.cn/svn/woodpecker/ulipad/trunk
maillist: http://groups.google.com/group/ulipad

If you have any problem as using UliPad, welcome to join the UliPad
maillist to discuss.

What are its features?
================

* Cross platform

    * based on wxPython, so it can run anywhere that wxPython works,
such as: Windows, Linux.
    * Unicode support.

* Most features of wxStyledTextCtrl(Scintilla)

    * Syntax highlighting, support Python, c/c++, html, django
template, restructured text, ruby, perl, css, javascript, plain text
    * Folding
    * Brace Matching
    * ...

* Extended selection

    * Extended word selection -- You can press Ctrl+?MouseDoubleClick
to select a word including '.'
    * Matched selection -- Select text in quoted chars like: (), [], {}, '', "".
          * For example: a string just like::

                    def func(self, 'This is a test'):
                                  ^


            The '^' char represents caret position in above line. If
you press Ctrl+E, you will select the whole text in (), i.e. "self,
'This is a test'". Something more in Selection Menu.

* Other editing extension

    * Duplicating text -- Just like Vim Ctrl+V, Ctrl+P, and more. You
can duplicate above or below char, word, line
          * which match the leading chars.
    * Quoting text -- Add some quoted chars before and after selected
text, just as: "", '', (), [], {}, and
          * customized string, etc.
    * Text convertion and view -- python -> html, reStructured Text ->
html, textile -> html, and you can output or view
          * the html text in message window, or html view window, or
replace the selected text.
    * Utf-8 encoding auto detect
    * Changing document encoding
    * Auto backup
    * Last session support -- It'll save all the filenames as closed,
and reopen the files as next started.
    * Smart judge the indent char -- It'll auto guess the indent char,
and sets it.
    * Finding in files
    * Bookmark support

* Python support

    * built-in python interactive window based on PyShell, support Unicode
    * Auto completion
    * Function syntax calltips
    * Run, run with argument, stop python source
    * Auto change current path
    * Python class browser
    * Syntax check

* Code snippets

    * You can manage your code snippets with categories, and each
category can have many items. Every item will represent a code
snippet. You can insert an item just by double-clicking on it. It even
supports importing and exporting.

* Simple project support

    * Can create a special file _project, so every file and folder
under the folder which has the _project can be considered as a whole
project.

* Extension mechanism

    * Script -- You can write easy script to manipulate the all
resource of UliPad(NewEdit), just like: text conversion, etc.
    * Plugin -- Customized function. More complex but more powerful.
Can easily merge with UliPad(NewEdit), and can be
          * managed via menu.
    * Shell command -- Add often used shell commands, and execute them.

* Ftp support

    * You can edit remote files through ftp. You can add, rename,
delete, upload, download file/directory.

* Multilanguage support

    * Currently supports two languages: English and Chinese, which can
be auto-detected.

* Shipped many plugins(must be configed as used them before)

    * djangoproj -- user for django development

* Shipped scripts

    * You can find them at UliPad/scripts directory

* Wizard

    * You can make your own wizard template. The wizard can input user
data, combine with template, and output the result. And wizard also
support code framework created. This feature will help you improving
coding efficiency.

* Direcotry Browser

    * Browse multiple directories, and you can really add, delete,
rename directories and files. Double click will open the file in
Editor window.

* Input Assistant

    * Suport user autocomplete file, it can help to input code very
helpful and functional. Just like EditPlus, but may be more powerful.

* Column Editing Mode

    * You can select multilines, and then set a column mode region, so
in any line of this region, if you enter a character, other lines will
also add this character. If you want to deal with multilines as a
similar mode, this functionality will be very handy.

Hope fun!

-- 
I like python!
UliPad <<The Python Editor>>: http://wiki.woodpecker.org.cn/moin/UliPad
My Blog: http://www.donews.net/limodou



More information about the Python-list mailing list