Short: Text Editor with advanced features Author: Doug Bakewell / Daniel Westerberg (daniel onyxsoft se) Version: 3.0.1 Requires: ReAction or MUI, Expat.library Architecture: ppc-amigaos ; m68k-amigaos ; ppc-morphos ; i386-aros Annotate ~~~~~~~~ A comprehensive text editor written for AmigaOS 2.0 and up, ported to AmigaOS 4.0, backported to AmigaOS 3 and sideported to MorphOS and AROS. :-) Features ~~~~~~~~ - Syntax Highlightning, - Multi-unit clipboard support, - Unlimited Undo/Redo, - Macros, - Vertical block selection, - Can use screens. - Left-right shifting of text and blocks, - Multi-functional scroll bar, - A lot of different ways to cut, copy and paste, - Printing, - Folding, - Text locking, - User editable Tools menu, - and a full-featured Arexx Port. Author: Doug Bakewell Maintainer and successor: Daniel Westerberg Annotate has been released under the GNU GPL by request of the original author Doug Bakewell. See separate GPL.txt. The source is in a separate archive. Installation ~~~~~~~~~~~~ Nothing special, except that you can copy the file "AnnotateSyntax.xml" to ENVARC: to make it global. News and Changes ~~~~~~~~~~~~~~~~ * FIX * This reupload Fixes the MorphOS version, nothing else. * NEW * Tool commands now get a console output window if they output anything. * NEW * Made the "Quit with changes" requester much better and allows to save. * FIX * Spell corrected guide by Tom Breeden. Thank you! * FIX * Fixed string escaping in the XML prefs such that any characters in paths etc can be saved without causing XML parse errors. * FIX * Fixed the Tools edit page which was completely screwed on the MUI versions. * NEW * Added Alt as qualifier to temporarely switch selection mode between normal and rectangular mode. * NEW * Improved rectangular selection such that the width is not dependent on the length of the last line the mouse is over. * NEW * Updated the behavior of upper/lower case when there is no selection. Now it changes the character under the cursor and advances by char ahead. * FIX * Fixed the $ VER : string which appeared empty in some versions. * FIX * Optimized the text redrawing when selecting text and in other situations. * FIX * Fixed crash when iconifying and reopening. v3.0 ~~~~ ** Completely rewrote Ed Exchange so it can now be used along-side the editor windows as a quicklist of editors. ** Added the setting to have a scrollbar on the right side. ** Implemented different mark modes: Ann, Notepad, Quick where NotePad makes Annotate's selection of text behave like "normal" text editors. ** Annotate can now open on a custom screen with a chosen backdrop image, or on the frontmost public screen. ** Added find/replace history so you can use up/down arrow keys to navigate old searches. * Added a setting to set the filename in the window titlebar. * Implemented marking of edited lines in the scrollbar. * Made it possible to add external syntax files. * Monitors file changes, and alerts when a file was changed on disk. * Added "Hide and Open New" to the menu. * Added a frame for the status bar so no strange colors have to be used. * Added an 'All' button to the Replace prompt. * Selecting Clear selection now clears the selection in all windows if UNIX copy'n'paste is used.. * Match brace now finds unmatching brace combinations liks ( [ ) ]. * Added a switch to disable horiz scrolling with the vertical mouse wheel when the mouse is outside the window. * Showing the color for each color setting in a box. * Added the tools settings to the prefs. * Made optimizations in when and how often the editor should be redrawn. * Added arexx commands SHOW_EX_EDITOR and HIDE_EDITOR. * Fixed pasting of 8-bit characters for OS3. * Added setting to put filename in window title. * Fixed saving of projects which didn't work very well. * Save when window becomes inactive now also applies when hiding. * Made it scroll to the correct last line also when a file is loaded hidden. * Fixed loading of macros. * RAmiga+w now behaves exactly as double-clicking some word or symbol. * Fixed replace which always forgot the first line. * Make it possible to replace equal, but case-different, strings when non-case is selected. * Fixed starting to find at the very end or beginning. * Cleaned up the source code a lot by renamed a lot of functions to make it more coherent. * Fixed gfx garbage when scrolling. * Fixed complex syntax type with endtoken parsing. v2.7 ~~~~ ** Annotate can now be compiled for MUI instead of ReAction! The OS4 version uses ReAction since it looks better and has more features under OS4. All other targets are compiled for MUI but can be compiled for ReAction/ClassAct as well. ** AROS is now supported. ** Added simple project support. This makes it possible to save and load a project file which will contain the current configuration of opened files and their editors/windows. Makes for a quick way of reopening all the files and windows you were working on yesterday, or before a crash. ** Annotate's editors are now AppWindows which means that you can drop icons on them to open files. ** Having a requester opening when Ann is started from Workbench is now optional. ** Realtime update of colors in the editor when they are changed from the Config. ** Added an expiration date to the "remembered lines". ** Fixed the auto-update function so that it will download the correct binary for your OS. (Will of course only work the next time.) ** Pasting an text that started with a linefeed at the end of a line didn't work correctly. ** Possibly fixed some random garbage that could have been inserted when cut'n'pasting vertical blocks with empty lines in the middle. v2.6.4 ~~~~~~ * Ported to AmigaOS 3.x and MorphOS! It works with the latest ClassAct that can be found on Aminet, but it works better with ReAction from AmigaOS 3.5+. Note that on MorphOS the latest window.class looks for the wrong version of icon.library and fails to open completely. Use an older window.class in this case. This will be improved in the future. * Added a Find next change/Find previous change function to the Search menu. * Fixed a wierdness when checking for new updates and none were available but extra files were available. * Made errors more clear when shown in the status line. * Fixed copying of a line to the find or replace field with a vertical selection. v2.6.3 ~~~~~~ * Made edited lines appear with a different background color. The color is selected by the user. * Added a new way of finding and replacing words by matching only whole unbroken words. * Added PortablE as a language with syntax highlighting. * New icons composed by David Braconnier. Thanks! :) * When reopening the same file twice and selected to bring the already open editor to front, the current editor was cleared. * The uppercase/lowercase function didn't work on a vertical block selection. * Fixed Ctrl+MMB moving of a vertical selection. * Added "mandatory" to the qualifying And/OrTokens to force matching this qualifying at all times for a particular language. * Now tries to not clear a selection when undoing something. * Fixed random insertion of null bytes when loading an MS-DOS file with CR+LF. * Better handling of multiline tokens like for example /* C/C++ comments */. * Better handling of files with very long lines, such as if one accidently loads a binary file. v2.6.2 ~~~~~~ * Starts quicker because it doesn't open all gadget classes until they are needed. * Fixed a bug in the auto update code. * Fixed a crash if expat.library was not found. * Added an option to disable the use of system beep/flash. * Fixed a few bugs regarding vertical selection/block copy'n'paste and undo/redo. * Changed the scroll wheel acceleration for the scrollbar so that it will never jumps more than one page at a time. v2.6.1 ~~~~~~ * Using expat.library instead of linking with expat.lib. Saves 150kB. * Improved archive bit handling. * Added HTML as a syntax highlighting. * Added LaTeX as a syntax highlighting. * Added the attribute "caseinsensitive"/"ignorecase" to make it easy to implement syntax for case insensitive languages, such as HTML. * Added function to let paste replace a selection. * Added a kind of UNIX primary selection way of copy'n'paste using the middle mouse button. When it is enabled it is possible to select text in any editor and then by a click on the MMB paste this text in any opened editor without activating its window first! Holding Ctrl while clicking the MMB will move the text. * Now Ann asks if you try to open the same file twice. * Now Ann asks if you try to overwrite a file that exists when using Save as. * Added "Wrap selected or all text" to the Tools menu to make it possible to wrap a text that is already loaded. * Holding the Ctrl key while closing a window makes it discard all changes to the file without asking. * Added an iconify gadget which at the moment closes a window and places the editor in the hidden editors list in Ed Exchange. * Fixed an error regarding undo when more than one file was selected to be opened. This error could result in a number of different behaviours. * Sometimes there was garbage displayed when syntax highlighting was enabled. * If moving the editor window while replacing interactively answered Yes to the requester. * Arexx command GET WIN NAME without a number caused a crash. * When making your own syntax file Ann could crash if there was an error with the OrTokens tag. * Now the double-click to select word accepts 8-bit characters so that non-English words can be completely selected. * Fixed a few bugs regarding the Exchange Ed. This needs a total rewrite though. v2.6 ~~~~ * (Major since v2.5) Syntax highlighting with current support for C/C++, Amiga-E, AmigaGuide and XML. * (Major since v2.5) Unlimited Undo/Redo! * (Major since v2.5) Ann can remember where in a file you last edited and scroll there when the file is opened. * (Major since v2.5) Double/tripple-click to select word, syntactic phrase, line or bracket contents. * Fixed many (hopefully all) Undo/Redo bugs, some of which were nasty. * Reimplemented wildcard find. It is now possible to enter a DOS pattern string to search for. It will match an entire line. * Multiple cursors when using "Last saved" to revert a file. * It was impossible to select text on the first line. * Fixed a subtle problem with match brace causing it to mismatch sometimes. * Improved the smart window placement. * Fixed a small ARexx bug regarding cursor placement. v2.5.3 (AutoUpdate) ~~~~~~ * Finally Ann is on the same level as other modern editors: It has got Undo/Redo! Beware of possible bugs. May not work will all kinds of editing, like vert selections. * Added the option "Delete key deletes selection". * It is is now possible to double-click to select a word, line, or the contents between brackets and braces: ({[]}) * Ann can now remember which line you last visited in a file when you save it so the next time you load it, Ann will scroll there automatically. * Added functionality to allow the Tab key to perform indentation instead of inserting tab characters or spaces. * Made it possible to do circular finds. When no more matches are found it will start over from the top. * Now the line in the middle of the window will be seen in the status field when scrolling with the scroll bar to make it a lot easier to find a particular line. * Ann respects file protection bits. * Ann can now automatically switch tab-key and indentation mode depending on if the file loaded contains tab characters or not. * Added "Clear Selection" as a menu option to provide a simple way of clearing a selection from the keyboard. Default hotkey is 'RAmiga +'. * Fixed a couple of minor bugs regarding syntax highlighting, including some update of the AnnotateSyntax.xml file. * Many more small changes and enhancements. v2.5.2 (AutoUpdate) ~~~~~~ * Fixed a small error detected by OS4 Final when entering the config on OS4 Final. * Fixed another error of the same kind related to the configurable part of the Tools menu in Ann. * The Auto Update feature was broken and does not work correctly in v2.5.1. It works in v2.5 and v2.5.2 though. * The correct page was not remembered when reentering Config. v2.5.1 (AutoUpdate) ~~~~~~ * Finally we have Syntax Highlightning! Currently there is support for the following languages: C/C++, Amiga-E, AmigaGuide, XML. * Changing of font size was not recognized unless the font was also changed. * Tab-settings and Auto-indent are individual for each editor now. Use the Apply button in the Config to set it for all opened editors. * Match Brace has been fixed and enhanced a bit. * Window left and top edge could not be 0. v2.5 ~~~~ * Saving config only saved to ENVARC: which made it appear as if settings weren't saved until you rebooted. * Added Auto Update which means that Ann now is able to update itself over Internet. It will by default check for updates every five days or less. * Ann is now a true OS4 Application, meaning that it has full Application.library support. Unfortunately there is no application handler out there right now. * Added Search from beginning and Search backwards for Find and Replace. * Added Find Previous to the menu. * The Find requester outputted some debug. * Now Esc works in the Find and Replace requesters. * Added a few arexx command; ACTION REPLACE - Replace without opening the replace requester. ACTION FIND - Find next and return a bool. ACTION FIND_IN_LINE - Find only on current line and return bool. INSERT TAB - Insert tab characters. BACKSPACE - As hitting backspace. SET SEARCH_FROM_BEG - Set this flag for Find and Replace. SET SEARCH_BACKWARDS - Set this flag for Find and Replace. HELP - Write a list of all commands to a file. Included an AmigaE to C translation rexx script that demonstrates the potential of scripting with Annotate. It also does a pretty good job of doing the dirty work when porting E to C :) * Doesn't jump to the beginning of the file when reverting to last saved. * Fixed loading of files as parameters, both shift-clicked from WB and supplied via CLI. * Text selection is visible while selecting. * Holding Ctrl while copying text with MMB cuts text. * Added possibility to paste with MMB click a la UNIX. * Added Cycle Editor in menu on key LAlt+Tab to easily swap between editor windows. * Reading and writing hotkeys didn't work correctly. * A couple of other fixes regarding the editing of hotkeys, such as they not working with CapsLock on, and letting repeat through as regular keys. * CursorX doesn't jump to AutoX after Find but stays intuitively where is it. * Added confirmation requester for all unsaved editors when quitting. The requester also now contains the filename. * Added the option to keep only one instance of Ann running even when starting another copy. * Fixed possible crash in the Ed Exchange editor. Future ~~~~~~ * Some other kind of minimize/iconify function, connected to AmiDock or something perhaps. * Enhance some more graphics. -- Other programs by Deniil 715! can be found on OnyxSoft homepage at: http://www.onyxsoft.se/ Feel free to mail me if you found bugs or have suggestions: daniel / onyxsoft se NOTE: Please, NEVER publish my e-mail, or a text file containing my e-mail, on a web page or similar unless spam-encrypted like this: daniel / onyxsoft se