J-Write is a text editor will full mouse and keyboard support, comprehensive online help, free text searching and supports:
- Fast editing of large files
- 64-bit file I/O
- Four word wrap algorithms, including a WYSIWYG wrap on printer page width
- Support of any ANSI font including variable pitch fonts, and configurable tab settings.
- Multi-level undo/redo with no limit other than available memory
- Word Capitalisation
- Text Flow
- Full Printer Support
- Block Selection of text
- Bookmarks
- Controlled File Locking
- EMail extensions including automatic insertion of quote prefixes, and uuencode/decode
- Mail Reformatting
- Multiple Edit Windows
- Optional Save Backup
- Page Numbering
- Page or File Relative Line Numbers
- Save Selection to File
- Find/Replace
- Startup Options
- Window Margins
- Zoom In/Out
Multiple Edit Windows
J-Write now supports multiple edit windows. When you open the first file, you see just that file in the edit window. However, when you open the second file, you will see a tab list appear along the bottom of the Edit Window. The names on the tabs are the names of the files that you are editing, and you can move backwards and forwards between these files by just clicking on the associated tab with the left mouse button, or pressing CTRL+TAB (which cycles through the files).
You can have as many files open simultaneously as there are system resources to allow this. When the number of tabs is more than can be displayed within your edit window, you will see two small tab buttons appear on the right hand side of the tab list. You can use this to scroll the tab list.
Hint: you can open multiple files simultaneously by selecting more than one file in the file open dialog.
Fast editing of large files
J-Write pages its files in from Disk as it needs text and keeps only the changes in memory. This allows it to readily support up to the maximum file size that DOS and Windows can support, while using only a few Kilobytes for each open file. You will notice hardly any difference in editing a large file compared with a small file. The only time file size has any effect is when saving or searching a file, when there is no way to avoid passing through the whole file.
But even here J-Write is fast. The search algorithm is hand tuned assembly language and file saving is largely dependent on how fast data can be copied between disk files.
64-bit File I/O
From version 2.5 onwards, the JWrite text editor supports full 64 bit file I/O/ On later Windows platforms, this gives high speed access to truely massive files.
Four word wrap algorithms
Plain text is often separated by hard line breaks that are used to format a text file into lines. J-Write recognises standard DOS/Windows line breaks and can display and print text so formatted. However, it can also apply additional formatting algorithms that wrap text at word boundaries in addition to those forced by explicit line breaks.
J-Write can wrap text on window boundaries - this ensures that the text is always on the screen with no awkward horizontal scrolling required. It can force a maximum line length expressed in characters - this is often useful for creating EMail messages, as Internet EMail should not have lines longer than 72 characters. And, J- Write can also wrap text on Printer Page Width. That is it lays out the lines of text so that they will print, using the current font and without overflowing the width of the page. This is often called true WYSIWYG.
Support of any ANSI font
J-Write can display text and print using any Windows fonts that support the Windows (ANSI) character set. This includes the fixed pitch fonts (e.g. Courier) and the variable pitch fonts (e.g. Times Roman). Any point size can be selected, as well as bold, itallic and underline styles. The only limitation is that all the text in the same file is displayed in the same font.
Multi-level undo/redo
J-Write doesn't just allow you to edit text - it also allows you undo your last n edits, where n is a number that you specify through the Setup|Preferences. J-Write recognises separate edit transactions, such as typing in a consecutive characters, moving a block of text with the mouse, or deleting selected text. Each such transaction can be undo and successively older transactions can be undone one after the other. And, if you undo too many - no problem - you can then "redo" them.
Word Capitalisation
Either the current word or all selected words can be capitalised by a single command. The command toggles between all lowercase, all uppercase and first letter uppercase, rest lowercase.
Text Flow
Text flow is about tidying up ragged text with line breaks in all the wrong places. The text flow function applies to all selected text or the whole file. It flows the text into natural paragraphs, removing all single explicit line breaks while leaving multiple line breaks as indicators of paragraph boundaries. The text can then be wrapped using the preferred J-Write word wrap algorithm, and saved as formatted text.
Full Printer Support
J-Write can print a text file on any printer that supports text printing. It will use the same font as used for text display and will retain the same word wrapping. Page margins can be defined, along with a page title and page numbers. You can print single pages, the whole file and selected text.
J-Write also respects "Form Feed" characters in the text and forces a new page every time it finds one. Such characters are also clearly displayed as a horizontal bar and may be both deleted and inserted. Soft Page Breaks (i.e. where text must necessarily flow from one page to another) can also be shown as dotted horizontal lines.
Block Selection Of Text
With Block Selection, you can now select a rectangular area of text by dragging the mouse while holding down both the left mouse button and the ALT key. You can also perform the same task by holding down the ALT key while moving the caret while using the cursor movement keys.
Once a block of text has been selected, it may be deleted, using the delete key, dragged and dropped with the mouse, or copied/cut to the clipboard to be pasted back in ELSEWHERE.
Bookmarks
A bookmark is simply a named pointer into the text. This pointer is kept pointed at the same text, even when text is inserted or deleted, and may be used to jump back to the identified location from anywhere in the file. Up to 16,383 bookmarks can be defined.
Controlled File Locking
You may specify whether a file is to be locked while it is edited, or available for reading/writing. The Setup|Preferences menu item is used to control this feature. To change the current file locking strategy, select this menu item; this opens the Preferences dialog Box.
If the File Locking checkbox is checked, then files are locked while they are being edited. Otherwise, they are unlocked and may be read or written to by other applications.
You should note that if file locking is not selected, it is possible to update the file in another application, then save it again in J-Write and overwrite the file saved by the other application.
EMail extensions
Many text files originate or are to be used as EMail messages and J-Write has many features that can support EMail Messages. It has built in UUEncode and Decode for the insertion of binary files into plain text messages, and can even call your favourite archiving and compression utility (e.g. pkzip) before uuencoding a file. J-Write also supports Paste Quote of text from the clipboard, which is used to highlight text inserted from an older EMail - often when replying to another - and Mail reformating support for tidying up text that includes mailquotes.
Mail Reformatting
Mail reformatting is used to tidy up text introduced by Mail Quotes. The text is reformatted by flowing it into proper lines of text, organised where appropriate into paragraphs, and each reformatted line may again be prefixed by a mail quote.
Either the current selection is reformatted, or, if no text is selected, all text from the current caret position onwards is reformatted.
To reformat text, select the text, or place the caret in the required position, and then press the Mail Reformatting speed button, or select the Edit|Reformat Quoted Text menu item. J-Write will inspect the first line to be reformatted and attempt to identify the current mail quotes. A dialog box will then be displayed, indicating what are the so identified mail quotes, and which suggests their replac ment with the current default.
You may update either the current or the replacement mail quote.
Click on OK to reformat the text, or Cancel to abort the operation. Note that reformatting can be undone in a single undo operation.
Optional Save Backup
You may specify whether a backup (.bak) file is to be created when a file is saved.
The Setup|Preferences menu item is used to control this feature. To change the current file locking strategy, select this menu item; this opens the Preferences dialog Box.
If the “Create Backup Files” checkbox is checked, then a backup is always created when a file is saved, otherwise it is not.
Page Numbering
J-Write maintains both the current page number, and the total number of pages in the file; the number of lines on a page being determined by the current printer.
Both the current page number, and the total number of pages in the file are displayed on the status line, after the current character number. The display format is:
page number/total pages
Page or File Relative Line Numbers
The current line number displayed on the status line may be either page relative, or file relative.
The Setup|Preferences menu item is used to control this feature. To change the current file locking strategy, select this menu item; this opens the Preferences dialog Box.
Select the appropriate Line Numbers radio button for page or file relative line numbering.
Save Selection To File
You may save the current selection to a file. This is achived by using the File|Save Selection menu item
Find/Replace
J-Write supports Find/Replace operations, both forwards and backwards, with filters on whole words and case sensitivity.
You may also include the following special characters in either the text to search for or the replacement text:
^t The Tab Character
^p Hard Line Break
^l Hard Page Break
Tabs, line and Page breaks may therefore be included in search criteria and inserted into the text as replacement text. Note that if you need to use the “^” character in search or replacement text, then this must be entered as “^^” in order to avoid confusion.
Startup Options
You can now configure J-Write for diferent startup options. You can select from:
- None (i.e. you get a blank edit window on startup).
- Last File (i.e. the file you were previously working on is opened again).
- Open Dialog (i.e. the open dialog box is displayed immediately).
Window Margins
The text displayed in the edit window may be given a variable width Left Margin and, in Wrap to Window Mode only, a variable width Right Margin. No text is displayed in either margin, and the cursor changes to an arrow when over a margin. However, text may still be selected while the cursor is in a margin, by simply dragging the cursor while the left mouse button is held down.
The margin size may be changed by using the mouse to “drag” the margin to a new position.
When the cursor is over the exact point at which the margin is defined, it changes to a "horizontal split" cursor. When this cursor is displayed, if you hold down the left mouse button, the margin is then displayed as a dotted vertical line. Holding down this button and dragging the cursor will then change the margin, and the text will automatically flow to the new margin.
Zoom IN/OUT
The J-Write edit window may be zoomed in or out to increase or decrease magnification of the text. To Zoom the text, select either the View|Zoom In or View|Zoom Out menu items, or the corresponding speed buttons.
The edit window is zoomed in powers of two (e.g, it is magnified first to x2, then x4, x8, and so on). The effect of zooming the window is to change the effective font size so that more or less of the text may be seen, in either a bigger or a smaller font. However, the relative line width stays the same, and so there is no change to the line wrapping. Files printed whi