AkelPad
Encyclopedia
AkelPad is a small, expandable text editor
Text editor
A text editor is a type of program used for editing plain text files.Text editors are often provided with operating systems or software development packages, and can be used to change configuration files and programming language source code....

 written for the Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 family of operating systems. It can also be run under Wine
Wine (software)
Wine is a free software application that aims to allow computer programs written for Microsoft Windows to run on Unix-like operating systems. Wine also provides a software library, known as Winelib, against which developers can compile Windows applications to help port them to Unix-like...

, an application which allows users to run Windows applications on Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 systems such as Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

. AkelPad's author states that the program can "replace standard Notepad" and has many features which NotePad lacks.

Although AkelPad is written as a text editor, its use of available plugins provides considerably more power than NotePad. AkelPad displays text using a specially designed control, AkelEdit, a replacement for Windows' Rich Edit control, which gives AkelPad additional control over text display and behavior.

AkelPad is distributed as free (open source) software, hosted on SourceForge where it has been downloaded more than 500,000 times.

Brief history

(History adapted from SourceForge and AkelPad homepage)
  • 2003 - v1, first public release, Alexey Kuznetsov, (Russian only), source code not available
  • Feb, 2007 - v2.1.9, English/Russian, source code available at SourceForge
  • April, 2007 - v2.2.1a, last release of version 2, version 3 development underway by Aleksander Shengalts
  • July, 2006 - v3.0 Beta, re-designed (supports plugins, MDI mode, language modules)
  • July, 2008 - v3.6.0, last major release (?) of v3 (subsequent releases - up to v3.7.3 - for bug fixes and compatibility with v4)
  • May, 2008 - v4.0 Alpha, re-designed (AkelEdit control - replacement for RichEdit)
  • Aug, 2008 - v4.0 final, version 3 development (v3.6.0 onward) maintained only for compatibility, etc.

Features

A partial list of AkelPad's features which set it aside from Notepad:
  • SDI
    Single document interface
    In graphical user interfaces, a single document interface or SDI is a method of organizing graphical user interface applications into individual windows that the operating system's window manager handles separately. Each window contains its own menu or tool bar, and does not have a "background"...

     (single document interface) or tabbed MDI
    Multiple document interface
    Graphical computer applications with a multiple document interface are those whose windows reside under a single parent window , as opposed to all windows being separate from each other . Such systems often allow child windows to embed other windows inside them as well, creating complex nested...

     (multiple document interface) modes, PMDI (pseudo multi-window interface)
  • Drag-and-drop
    Drag-and-drop
    In computer graphical user interfaces, drag-and-drop is the action of selecting a virtual object by "grabbing" it and dragging it to a different location or onto another virtual object...

     (inside documents, between MDI and PMDI documents)
  • Split window - 1, 2 or 4 different portions of a document can be visible simultaneously
  • handling of Dos/Windows, Mac or Unix end of line markers
  • text selection by
    • horizontal (i.e. by lines)
    • vertical (i.e. by columns)
methods and block operations (eg. indent, case change, cut/copy/paste) on both
  • Extensibility
    Extensibility
    In software engineering, extensibility is a system design principle where the implementation takes into consideration future growth. It is a systemic measure of the ability to extend a system and the level of effort required to implement the extension...

     - additional functionality through numerous plugins
  • works with large files (limited by computer memory)
  • full support of Unicode
    Unicode
    Unicode is a computing industry standard for the consistent encoding, representation and handling of text expressed in most of the world's writing systems...

     strings on Unicode systems (Windows NT or higher)
  • supports any codepage
    Code page
    Code page is another term for character encoding. It consists of a table of values that describes the character set for a particular language. The term code page originated from IBM's EBCDIC-based mainframe systems, but many vendors use this term including Microsoft, SAP, and Oracle Corporation...

     installed in the user's system
  • ability to re-code text in a different codepage
  • preview of file before opening
  • print preview
  • color printing
  • ability to run as a portable application (e.g. from USB Flash drive
    USB flash drive
    A flash drive is a data storage device that consists of flash memory with an integrated Universal Serial Bus interface. flash drives are typically removable and rewritable, and physically much smaller than a floppy disk. Most weigh less than 30 g...

    )
  • optionally set read-only editing mode to prevent accidental document alteration
  • optionally remember caret position and/or codepage
  • user can set up color themes for document display
  • detailed and searchable User Manual and Plugins Manual (user contributed) available, in CHM format
  • text search in all open MDI documents (among other methods), if desired

Unicode and codepages

AkelPad handles full Unicode files written in UTF-8
UTF-8
UTF-8 is a multibyte character encoding for Unicode. Like UTF-16 and UTF-32, UTF-8 can represent every character in the Unicode character set. Unlike them, it is backward-compatible with ASCII and avoids the complications of endianness and byte order marks...

, UTF-16
UTF-16/UCS-2
UTF-16 is a character encoding for Unicode capable of encoding 1,112,064 numbers in the Unicode code space from 0 to 0x10FFFF...

 (LE or BE), UTF-32
UTF-32/UCS-4
UTF-32 is a protocol to encode Unicode characters that uses exactly 32 bits per Unicode code point. All other Unicode transformation formats use variable-length encodings. The UTF-32 form of a character is a direct representation of its codepoint.The main advantage of UTF-32, versus variable...

 (LE or BE) and can auto-detect Unicode files with or without a BOM
Byte Order Mark
The byte order mark is a Unicode character used to signal the endianness of a text file or stream. Its code point is U+FEFF. BOM use is optional, and, if used, should appear at the start of the text stream...

. BOMs (byte order marks) can also be omitted, if desired, from file writing.

Codepages installed on the user's system can be used for reading or writing files; text can also be re-coded into other codepages. AkelPad implements an auto-detection algorithm
Algorithm
In mathematics and computer science, an algorithm is an effective method expressed as a finite list of well-defined instructions for calculating a function. Algorithms are used for calculation, data processing, and automated reasoning...

 for detection of some common codepages used (optional).

AkelPad can also detect non-text (i.e. binary
Binary file
A binary file is a computer file which may contain any type of data, encoded in binary form for computer storage and processing purposes; for example, computer document files containing formatted text...

) files and will issue a message. Binary files can, however, be loaded and edited (e.g. internal text) if desired.

Plugins

The program's architecture is structured to allow external plugins (DLLs
Dynamic-link library
Dynamic-link library , or DLL, is Microsoft's implementation of the shared library concept in the Microsoft Windows and OS/2 operating systems...

) for extension of AkelPad's capabilities. At present, 31 plugins are implemented and available on AkelPad's homepage. Some of the more noteworthy plugins are:
  • Coder - code folding
    Code folding
    Code folding is a feature of some text editors, source code editors and IDEs that allows the user to selectively hide and display sections of a currently-edited file as a part of routine edit operations...

     support, autocomplete
    Autocomplete
    Autocomplete is a feature provided by many web browsers, e-mail programs, search engine interfaces, source code editors, database query tools, word processors, and command line interpreters. Autocomplete involves the program predicting a word or phrase that the user wants to type in without the...

     support, syntax highlighting
    Syntax highlighting
    Syntax highlighting is a feature of some text editors that display text—especially source code—in different colors and fonts according to the category of terms. This feature eases writing in a structured language such as a programming language or a markup language as both structures and...

     and color themes.
  • ContextMenu - user can customize main menu, some context menu
    Context menu
    A context menu is a menu in a graphical user interface that appears upon user interaction, such as a right mouse click or middle click mouse operation...

    s.
  • ToolBar - implements one or more user configurable toolbar
    Toolbar
    In a graphical user interface, on a computer monitor, a toolbar is a GUI widget on which on-screen buttons, icons, menus, or other input or output elements are placed. Toolbars are seen in office suites, graphics editors, and web browsers...

    s. ToolBar buttons can access external programs, if desired.
  • Explorer - embeds Windows Explorer
    Windows Explorer
    This article is about the Windows file system browser. For the similarly named web browser, see Internet ExplorerWindows Explorer is a file manager application that is included with releases of the Microsoft Windows operating system from Windows 95 onwards. It provides a graphical user interface...

     into a separate pane in the user interface.
  • Scripts - scripts can access more than 40 internal AkelPad routines (for example, Zen Coding
    Zen Coding
    Zen Coding is a set of plug-ins for text editors that allow for high-speed coding and editing in HTML, XML, XSL, and other structured code formats. The project was created by Sergey Chikuyonok in 2009 and continues to be actively developed by Chikuyonok and Zen Coding users...

    ) and can, of course, be user written.
  • Hotkeys - user can assign functions to specific keys or key combinations. Functions may be internal to AkelPad, external (i.e. run external applications) or plugin related.
  • SpecialChar - toggles (on/off) display of normally invisible special characters, i.e. space, tabs
    Tab key
    Tab key on a keyboard is used to advance the cursor to the next tab stop.- Origin :The word tab derives from the word tabulate, which means "to arrange data in a tabular, or table, form"...

    , newline
    Newline
    In computing, a newline, also known as a line break or end-of-line marker, is a special character or sequence of characters signifying the end of a line of text. The name comes from the fact that the next character after the newline will appear on a new line—that is, on the next line below the...

    , vertical tabulation, formfeeds
    Page Break
    A page break is a marker in an electronic document that tells the document interpreter that the content which follows is part of a new page. A page break causes a form feed to be sent to the printer during spooling of the document to the printer.-Form feed:...

     and null character
    Null character
    The null character , abbreviated NUL, is a control character with the value zero.It is present in many character sets, including ISO/IEC 646 , the C0 control code, the Universal Character Set , and EBCDIC...

    s.


These and other plugins found here.

AkelUpdater

Judging by activity on the AkelPad Forums, AkelPad is actively updated, both the main executable and various plugins. With nearly 30 plugins available (to date), keeping plugins current may be a chore. The program's author has created an update utility - AkelUpdater - to make this task easy. AkelUpdater
  • queries an online file (i.e. database) to determine the most current versions of the plugin DLLs and AkelPad executable
  • queries the user's AkelPad configuration, i.e. which plugins are in use, available and their versions

then provides a list of possible updates. The user can adjust this list as necessary, choosing to not update plugins, or to update plugins not currently in use. The utility then
  • downloads the file PlugsPack.zip, an up-to-date collection of all available plugins, from the plugins download site, and
  • installs the necessary updates, as selected.


Note that the user must be connected to the Internet to use the AkelUpdater utility; operation is simple and fast. A direct download link for AkelUpdater can be found here.

Reviews

  • PC Magazine (Russian edition) Product of the Year 2008
"small and convenient", "Excellent replacement for Notepad"
English translation (translated by Google Translate
Google Translate
Google Translate is a free statistical machine translation service provided by Google Inc. to translate a section of text, document or webpage, into another language.The service was introduced in April 28, 2006 for the Arabic language...

)
  • Lifehacker.com says:
"offers a roster of handy text editing features out of the box"
  • Afterdawn.com gives it 5 suns and calls it a
"Great replacement for the standard Windows notepad" "Highly recommended"
  • PortableFreeware.com Listed in portable application database. User comments include:
"Really nice little app, ideal for my uses..." "My default text editor..."

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK