______________________________________ | | | WELCOME TO VEDIT VERSION 6.15 | |______________________________________| This file is primarily oriented towards previous VEDIT users. It gives an overview of the changes made from versions 5.00 to 6.15. Read the file ERRATA.TXT for corrections to the manual and recent enhancements. The file NEW-CMDS.TXT lists all new macro language commands. NOTES: The previous product "VEDIT PLUS" is now called "VEDIT". If you are updating from VEDIT 4.x to 6.1, refer to the supplied file WHATSNEW.OLD. WINDOWS: Refer to the on-line help topic "What's new". It contains links to the full description of each new item. CHANGES FROM 6.15.1 TO 6.15.5 ----------------------------- Serial Numbers Since a new version of VEDIT was not released in 2007 or 2008, the support period for all serial numbers was increased by two years. Setup.exe The startup program setup.exe was updated in 6.15.4 from a 16-bit to 32-bit program. This solves installation problems on 64-bit versions of Windows. Title Bar The VEDIT title bar now first displays the name of the current file. This makes it easier to select the correct instance of VEDIT from the Windows task bar. Open File {Context-Menu, Open file at cursor} and {FILE, Open (More), at Cursor Open file at cursor} will open the file in the default application if the key is held down during selection. (Thanks to Christian Ziemski for the opencurs.vdm macro.) Basic Sort The basic sorting from VEDIT 5.x has been restored to the in DOS version DOS version. The Windows version has the same more advanced sorting. Command Macro Changes --------------------- Date() Date() has more standardized output. Date(NORMAL) outputs as mm/dd/yyyy, Date(BEGIN) outputs as dd.mm.yyyy. Dir_Date(), File_Stamp_String() and Num_Ins_Date() have the same output and options as Date(). Date_Day Returns the current day as a number 1 - 31. Date_Month Returns the current month as a number 1 - 12. Date_Year Returns the current year as a number, e.g. 2009. File_Open_Write(...) New NOERR option suppresses macro break-out if file is Read-Only, locked or other error. Error_Flag is set: 32=File is locked; CHANGES FROM 6.13 TO 6.15 ------------------------- FTP Support (Considered beta-test until 6.20) New {FILE, Ftp} menu items allow opening an FTP site from which files can be edited, downloaded or uploaded. When an FTP file is opened for editing, it is first auto- downloaded into the /vedit/ftp directory and edited there. When closed, it is auto-uploaded back to the FTP site. Email sending (Considered beta-test until 6.20) New {FILE, Send as email} sends the current buffer contents as a simple email message. First time (or when needed) the email must be configured by specifying the mail server and reply address; these are saved. Note: this function cannot send binary files; only text messages. Run VEDIT from VEDIT can now be installed onto a USB drive for easy use on USB drive any computer. This option can be selected during installation. A USB installation will not affect any VEDIT already installed - no changes are made to the Windows registry and no icons to the USB VEDIT are created. When installed on a USB drive, VEDIT can run from a drive letter different from the installation drive letter. (Technical: A USB installation removes the drive letter (e.g. "c:") from the directory specifications in the vedit.ini file. Without a drive letter, it defaults to the same drive on which the main executable vpw.exe was found. Therefore the drive letter of the USB drive is unimportant.) For advanced users, the directory specifications in the vedit.ini file can also use the "%VAR%" format to access environment variables. See vedit.ini for details. Improved temp Previously, VEDIT always created its temp files in the same file handling directory as the output file. VEDIT by default now creates temp files in the local Windows "TEMP" directory. It is more efficient to have temp files created on a local drive when editing remote (LAN or WAN) files. (Also, the previous temp files tended to clutter up directories.) If you are editing huge files on other local drives (e.g. if E: is a local HD), it is more efficient to configure VEDIT to create its temp files on those local drives. This can be configured with {CONFIG, File handling, Use temp file directory}. The temp directory to be used can only be changed by editing the "VeditTempDir" line in the VEDIT.INI file. Open binary & To auto-detect whether an opened file is binary or text, text files VEDIT now first scans the first 1000 bytes for non-standard control chars; if 16 are found it is assumed binary and the File-type is set to 64. Else, it scans the first 33000 bytes for CR+LF, LF or CR and sets the File-type accordingly. The values 1000 and 33000 can be changed (only) in the VEDIT.CFG file. Print Preview Enabling new {VIEW, Printed page boundaries} shows where the page breaks and right paper margin would be if the current file were printed with the currently selected printer. Sort file by New {EDIT, Sort, Sort lines by length} sorts the entire file line length (or highlighted block) by the length of the lines. Reverse line New {EDIT, Sort, Reverse line order} reverses the order of order all lines in the file, or in the highlighted block. Insert line New {EDIT, Insert, Line numbers} inserts left-side line numbers numbers into the file with many options. (Thanks to Christian Ziemski for the underlying Linenumbers.vdm macro.) Regular Search/replace regular expressions have been enhanced. Groups Expressions can now be specified with "( )" as is standard in Unix/Perl. Groups can still be specified with "{ }", but this will be discontinued in version 6.20. You should change your own macro that use regular expressions to use the newer style "( )" groups. [NEXT TAB STOP] The default keyboard layout assigns to [NEXT TAB STOP], which simply moves the cursor to the next tab stop. (This little-used function was not assigned to a key for many versions.) As is common in Windows programs, will now delete a small (up to 1000 char) highlighted block, if the cursor is within or immediately after the block. (We restrict the size to avoid accidentally deleting huge blocks.) Although not new, we never documented that will also undent a highlighted block if the cursor is within the indenting whitespace. (A few other editors do this too.) Command Macro Changes --------------------- AppMax() AppMax() maximizes the VEDIT application to full screen. AppMax(CLEAR) or AppMax(0) restores VEDIT to its normal size. Config() Several new Config() parameter have been added and are in the VEDIT.CFG file: F_A_SCAN_BINARY - Sets number of bytes that are scanned for unusual control characters in newly opened files to determine if it is a binary file. F_A_SCAN_CRLF - Sets number of bytes that are scanned for CR/LF in newly opened files to determine the file type, when it is not binary. Dialog_Input_1() Now supports 15 checkboxes, radio buttons, push buttons, text fields and input strings. An input box specified with "?*" will hide the entered text for e.g. passwords. Is_App_Max Returns TRUE (1) if VEDIT is currently maximized. Is_App_Max_By_Ini Returns TRUE if the VEDIT.INI file contains "AppMax=1" indicating that VEDIT was maximized when it first started up. Num_Type() New FORCE and BIT64 options force displayed width of 10 and 19 columns for both 32 and 64 bit versions of VEDIT. New COUNT option overrides output width. Similarly for Num_Ins(). Send_Email(...) Send the current file as email text to the specified email addresses with the specified or default email configuration parameters. Send_Email_Block(...) Send the specified block (or entire file) as email text to the specified email addresses with the specified or default email configuration parameters. See the supplied SENDEMAIL.VDM macro for a detailed example. System(...) The shell string can now be up to 1000 characters long. (In version 6.13 and earlier, it was only 260 chars.) Note that shelling to a DOS program is still limited to about 100 characters. CHANGES FROM 6.12 TO 6.13 ------------------------- "Open with New "Open with VEDIT" is now available in Explorer's VEDIT" right-click menu for all files. (This is a default installation option.) Flat file New {EDIT, Convert, Flat to CSV} converts "flat" database conversion files to CSV, based on field width specs. Supports tabs, commas or quoted-comma-delimited fields and other options. CSV file New {EDIT, Convert, CSV to Flat} converts a file with conversion delimited fields (quotes, commas, tabs, etc.) into a "flat" database-type file with fixed-length records. Convert Unicode Improved {EDIT, Translate, Unicode to ASCII} converts from to/from ASCII UTF-16 to ASCII, specifically for the ANSI or OEM character sets, depending upon the current VEDIT font. Similarly, the "ASCII to Unicode" function converts from either ANSI/OEM characters to UTF-16 Unicode characters. Sort Lines & New {EDIT, Sort, Sort lines & remove dupes} sorts the entire Remove dupes file and then removes duplicate lines. This can be used to remove duplicate email addresses, log entries, etc. Rename files New {MISC, More macros, RENAME-FILES) renames groups of files using "Regular expressions" which are much more powerful than the normal Windows/DOS wildcards. Converts filenames between upper and lower case. Includes examples and a [Test] function to preview the renaming before it is actually done. Base64 New {MISC, More macros, BASE64) decodes a Base64 conversion (highlighted) block into text. (Base64 is used in raw email attachments.) dBase/xBase {MISC, More macros, DBASE} now prompts whether detailed file files (field) info is to be displayed in another windows. {MISC, More macros, DBASEKEY} was therefore redundant and eliminated. Regular Search/replace regular expressions have been enhanced. The Expressions "|" (OR) operator can now be used within "{...|...}" groups. Also, "\b" anchors at any non-alphanumeric character. E.g. the words mother, father, grandfather, grandmother would be matched by: \b{mother|father|grand{mother|father}}\b Tab Stops VEDIT 6.13 supports up to 257 explicit tab stops up to column 65,535. (Previously 33 tab stops up to column 255.) Command Macro Changes --------------------- Key_Shift_Status Returns the current state of the Shift, Ctrl, Alt, Scroll-Lock, Num-Lock and Caps-Lock keys. Search() The Search/replace strings can now be up to 1000 characters long. (Previously it was 260 chars.) Version_Num(EXTRA) New EXTRA option returns the complete four digits of the version number as an integer, e.g. "6131". Version_Date Returns the version date as an eight digit number in the form yyyymmdd, e.g. "20040715". CHANGES FROM 6.10 TO 6.12 ------------------------- Serial number New serial-registration numbers were implemented for version 6.11. The new numbers indicate how long you have full support and which future versions you are eligible for. In general you are eligible to download/install new versions even after your full support has expired. File Types New {CONFIG, File handling, Custom record length} supports short "record lengths" of 2 and 4 for viewing binary numbers. New {CONFIG, File handling, Custom EOL char} allows editing files with non-standard End-Of-Line characters such as "~" or an EBCDIC Line-Feed (25 hex). Color scheme {USER, Color scheme} has new options, including highlighting cursor line and/or column, and saving/loading a custom color scheme. (Thanks to Pauli Lindgren for the improvements.) {VIEW} and Most functions in the {VIEW} and {WINDOW} menus can now {WINDOW} menus be added to the toolbar. Select {VIEW, Options, Customize toolbar} to change the toolbar, or carefully double-click past the last button on the toolbar. Status line You can now double-click in most status line fields to bring up a related dialog box. For example, double-clicking in the "Line number" field brings up the dialog box for jumping to any desired line number. (In 6.10 this was a single-click which caused problems when task switching with mouse.) Color syntax Syntax highlighting files are now supplied for Pocomail, files Proxomitron, Leica Gre data format (GSI-8.SYN) and AutoIT. Macro language New macro language commands and enhancements suggested by users on webboard.vedit.com have been implemented. Command Macro Changes --------------------- Code_Page Returns the Window's current OEM "code page"; this typically indicates the user's language, and how some fonts will display special characters. The default OEM code page for the US version of Windows is 437. Code_Page(ANSI) returns the ANSI "code page"; the US version of Windows defaults to 1252. Config() Several new Config() parameter have been added and are in the VEDIT.CFG file: F_CHK_MOD - Prompt user if open file is modified outside VEDIT. Default = 5 (Check every 5 second). U_DATE_FORM - Sets Date() display format. U_DATE_SEP - Specified separator in Date() display. Create_Shortcut(...) Create a Windows shortcut, e.g. on the desktop. Date() The date display format is now specified by Config(U_DATE_FORM) and Config(U_DATE_SEP). The formats are country-specific (default), mm-dd-yyyy dd-mm-yyyy or yyyy-mm-dd. The separator can be "-", "/" or none. The format can be overridden with options: Date(NORMAL) - Display date as mm-dd-yyyy. Date(BEGIN) - Display date as dd-mm-yyyy. Date(REVERSE) - Display date as yyyy-mm-dd. Date(VALUE,'/') - Display as e.g. mm/dd/yyyy. Dir_Date() Displays the directory with full file date and size information, similar to the Windows/DOS "dir" command. Most options from both the Dir() and Date() commands can be used. See on-line help for details. File_Size("file.ext") If a file is specified, File_Size() now returns the size of the file; otherwise it works as before, returning the size size in bytes of the file being edited in the current buffer. File_Stamp_Date("file.ext") Returns the specified file's date as a Julian date number. If no file is specified, it returns the date of the current edit buffer's file, if any. File_Stamp_Time("file.ext") Returns the file's time as number of seconds since midnight. File_Stamp_String(r,"file.ext") Returns the file's date and time as a string in T-reg 'r'. Is_Altered_No_Save Returns TRUE if the current file (buffer) was altered, but the user chose not to save the changes. Only useful (and valid) within the File-Pre-Close and File-Post-Close event macros. Is_VEDIT_Pro64 Returns TRUE if the Pro64 version of VEDIT is running. Indicates that files over 2 Gigabytes can be edited and that all numeric calculations have 64-bit accuracy. Reg_Save(...,APPEND) New APPEND option allows appending text register contents to the end of an existing file. Short_Pathname(...) Convert a valid file or directory pathname into a short filename style 8.3 pathname and store it in the T-Reg. Translate_Load(...,ANSI) New ANSI option loads a translation table to replace the built-in ANSI/OEM table. Write_VEDIT_INI Writes the current settings into the VEDIT.INI file. Primary useful just before shelling out to another instance of VEDIT. CHANGES FROM 6.03 TO 6.10 ------------------------- Projects Groups of files that you regularly edit can now be organized into Projects. Projects can be created, opened and closed from the {FILE, Project} sub-menu and the new "Proj" tab in the File Selector. Each project is stored as a .PRJ (and .DAT) file in the new vedit\projects directory. File Locking As much as possible, VEDIT now edits with "unlocked" files. You can have the same files open in VEDIT and e.g. Visual Studio. When a file changes outside of VEDIT, you are prompted to Reload or Ignore it. View/edit "Log" files can also be viewed (and even edited). VEDIT can log files automatically "Append" the new portions of the log file, without reloading the entire file or prompting you. Wysiwyg The new {FILE, Wysiwyg conversion} saves the current file Conversion under a new name and converts it to the format as currently displayed on the screen. In other words, it performs a "Save as" with conversion. Currently, it can convert from ASCII/Binary to hex, EBCDIC to ASCII, and fixed-length records to normal text with "newlines". See the on-line help topic "Converting Files - WYSIWYG conversion" for details. Copy blocks The improved {BLOCK, Copy to cursor} and {BLOCK, Move to between files cursor} can now directly copy/move a highlighted block from another file (buffer) to the current cursor position. In other words, if the current file does not have a highlighted block, these functions scan the other currently open files for a block. Due to the new behavior, these functions can no longer be used to highlight a block. (This was a very obscure feature which few if anyone used.) Note: These functions can copy/move a block of any size between files, even 100+ megabytes. Extracting The improved {MISC, Wildfile wizard} makes it easy to Lines extract all lines that match a search string, from an entire group of files. The extracted lines can then be viewed, printed, or saved to a file. Filtering The new {MISC, More macros, Linefilter} deletes all lines Lines in the current file which either match or don't match a search string. For example, you could delete all lines that contain "www.domain.com", or leave only those lines that contain "ERROR:". Open file The new {FILE, Open more, Open file at cursor} assumes the at cursor cursor is at a filename and attempts to open it. If not found in the current directory, it displays a file-open dialog box. (Filenames with spaces must first be highlighted.) This function is also in the right-click context menu. Open URL at Similarly, the new {FILE, Open more, Open URL at cursor} cursor assumes the cursor is at a web address and attempts to open it in the default browser. This function is also in the right-click context menu. Preview file The new {FILE, Open more, Preview current file in browser} in browser assumes the current file is browser compatible, e.g. an HTML file, and attempts to open it in the default browser. {GOTO} dialog The {GOTO} menu functions "Line #", "Column #" and "File box position" are now implemented by a common dialog box. You can jump to a particular line number and column number in one operation. The dialog box has history for each field and supports numeric (algebraic) expressions such as "4583/2+435" and "CurLine+1000". Status line (Windows only) The status line font can be changed by right-clicking the mouse on the status line and selecting "Change font". Word wrap You can now enable/disable word wrap or easily change the (Right margin) right margin by clicking the mouse on the status line to the right of the Line:/Col: display. This brings up the new Word-wrap dialog box. (You can also enable/disable word wrap on the toolbar.) Format Multiple paragraphs, or even an entire file, can now be Paragraph re-formatted by highlighting the paragraphs and selecting {EDIT, Formatting, Format paragraph}. Note that this function requires blank lines between the paragraphs. The new {USER, Convert 1-line to para} converts text that consists of one long line per paragraph into paragraphs with "hard" CR/LF after each wrapped line. This is useful for text files that were exported from Word processors such as Microsoft Word. This function does not require blank lines between the paragraphs. Hex / binary The new {EDIT, Convert, Binary to hex} converts the file conversion (or just a block) into hex codes. For example, "A girl" will be converted into "41 20 67 69 72 6C". While mostly useful for binary files, it also converts any file. Similarly, the new {EDIT, Convert, Hex to binary} converts the file (or just a block) from hex codes into ASCII and (perhaps) binary characters. HexDump The new {MISC, More macros, Hexdump} creates a mainframe-style hex dump of the current file in another buffer, and assigns it a temporary filename. If desired, the dump can be saved-as another file or printed. {FILE} menu The previous functions "Buffer switch", "Next buffer" and "Previous buffer" have been moved to the new {FILE, Buffer} sub-menu. Note: this affects any custom keyboard layouts which have hot-keys for these common functions. {WINDOW} menu The {WINDOW} menu has been moved on the main menu so that it is immediately to the left of {HELP}, as is standard in most Windows programs. This does not affect any hot-keys. Configure The new {VIEW, Options, Customize toolbar} configures the Toolbar toolbar. (As before, you can also double-click between buttons.) Many more buttons are now available, including buttons for the {TOOLS} and {USER} menus. The toolbar can now be restored to its original (factory default) buttons by selecting [Restore] in the dialog box. Toolbar The items in the {TOOLS} and {USER} menus can now be accessed buttons via toolbar buttons. A button for the first item in each menu now appears by default on the toolbar, as a reminder. Form-Feed A Form-Feed character can easily be inserted by selecting (Page-break) {EDIT, Insert, Form-Feed}. VEDIT and many other programs print a Form-Feed by starting a new page on the printer. Mouse click (Technical) Text Register 116 holds the new "mouse double- event macro click event macro". When the mouse is double-clicked in a file, the cursor is moved to the mouse position and any macro in T-Reg 116 is then executed. Note: unless you are using this event macro, T-Reg 116 must be kept empty. "|>" and "|*|>" (Technical) The .SYN syntax highlighting files can use the in .SYN files new "|>" pattern matching code to match the "end-of-line". "|*|>" matches 0, 1 or more text characters up to the end-of-line. The "|[...]" pattern code now supports embedded pattern codes. For example, "|<|[|B+];" matches a semi-colon at the beginning of a line with optional whitespace. Delete temp (Technical) On exit, any files in the VEDIT temporary files directory that match "|(VEDIT_TEMP)\ved|(PID).*" are automatically deleted. This simplifies the clean-up for macros that create temporary files. Command Macro Changes --------------------- Abs(n) Returns the absolute value of numeric expression 'n'. BOP_Pos Returns the file position at the beginning of the current paragraph. See on-line help for details. Buf_Close() The new option Buf_Close(ALL+CONFIRM) closes all buffers, prompting whether each modified file is to be saved or abandoned. Other than not exiting VEDIT, this command is identical to Exit(), especially in how it prompts to close each modified buffer. Call_File(...) The optional form Call_File(r,"file","label") starts execution at ":LABEL:". Allows calling subroutines within a macro file. EOP_Pos Returns the file position past the end of the current paragraph, typically at the beginning of the next paragraph. File_Open(...) New LOCK option to prevent other programs from writing to input file while it is open in VEDIT. File_Open_Read(...) New LOCK option to prevent other programs from writing to input file while it is open in VEDIT. File_Open_Write(...) New OVERWRITE option suppresses backup files. Same option as in File_Open(). Format_Para_Block(...) New command formats all paragraphs within the block. Get_Filename(...) New FORCE option displays the file selection dialog box even if 'fspec' does not contain wildcards. Is_Altered_Project Returns TRUE if the current project has been altered, e.g. if files have been added or deleted from the project. Is_File_Changed Returns TRUE (1 or 2) if the file open in the current buffer was changed on disk by another program. Returns 2 if the file is now larger; returns 1 if the file is now smaller or the same size. Similarly, Is_File_Changed(r) checks the file in buffer 'r'. Is_Leap_Year(n) Returns TRUE if 'n' is a leap year. Proj_Add("file") Adds the specified file(s) to current project. Proj_Close() Closes (saves) the current project. Closes all open files, prompting whether each modified file is to be saved or abandoned. Proj_Open("file.prj") Opens a new project after closing any current project. Proj_Save() Saves the current project to its corresponding .PRJ and .DAT files. Proj_Save_As("file.prj") Saves the current project to the specified .PRJ (and .DAT) file. Also used to create a new, empty, project. PROJ_CURRENT (String value) Full pathname of the current project's .PRJ file. Return() The new option Return(n,DELETE) empties (deletes) the current text register after returning from the macro in it. This is now preferred to the previous Reg_Empty(r,EXTRA) command. CHANGES FROM 6.01 TO 6.03 ------------------------- {EDIT Menu} The "Format paragraph", "Indent" and "Undent" function were moved to the new {EDIT, Formatting} sub-menu. The functions "Select all" and "Clear markers" are duplicated in the {EDIT} and {BLOCK} menus. (Many new users expect to find them in the {EDIT} menu.) Format Paragraph By default, {EDIT, Formatting, Format paragraph} now starts options on the current line and maintains the current indentation. Set {CONFIG, Word processing, Format from beginning of para} to re-format from the beginning of the paragraph. Set {CONFIG, Word processing, Format from left margin} to change the indentation to the current left margin. To make {EDIT, Formatting, Format paragraph} work exactly as in previous versions of VEDIT, you must set both options. However, most users will prefer the new defaults. Enable word The function {CONFIG, Word processing, Enable word wrap} wrap can now also be accessed from the {EDIT, Formatting} sub-menu and the toolbar. Pad lines to The new {EDIT, Convert, All lines same length} easily makes same length all lines any desired length. It pads shorter lines with spaces; it optionally truncates longer lines. It can [Scan] the file to determine the length of the longest line. The new {USER, Check lines same length} can be used to check that all text lines have the same length. Convert Unicode The new {EDIT, Translate, Unicode to ASCII} converts from to/from ASCII 2-byte Unicode characters to 1-byte ASCII characters. This allows some Unicode files to be edited in VEDIT. Similarly, the "ASCII to Unicode" function converts from ASCII into 2-byte Unicode characters. VEDIT Instance You can now control whether files opened from Explorer or Control the Windows/DOS command prompt start a new instance of VEDIT or are opened in any existing instance of VEDIT. Configured with {CONFIG, Misc, Instance control}. Override it with the -s or -s2 invocation options. Block Search After highlighting a block, a new block search or replace now Option starts by default at the beginning of the block. Previously, if the cursor was in the middle of the block, the new search started at the cursor position. If you prefer to start a block search at the cursor position (within the block), disable "[ ] Beginning-of-File/Block" in the search dialog box. Block Indent The block indenting has been improved and completely follows Windows conventions. If a full line or more is highlighted, it can be indented with and undented with or . (As before, blocks or lines can also be indented and undented with and .) File Selector Each "tab" in the File selector now has a useful right-click context menu. For example, in "Fav" (favorites), you can now right-click and select "Add current file" or "Remove file from list". Tabbar Each "tab" in the Tabbar now has a simple right-click context menu including "Close", "Save" and "Save as". If the mouse hovers over a tab for about one second, the "tooltip" will display the full pathname to the file. Expanded The on-line help has many new topics, including "Opening On-Line Help Files", "ANSI and OEM Characters", "Description of Files", "Converting Files", "Files with Fixed-length Records". The topic "Search and Replace" has been greatly expanded. (Approximately 60 printed pages worth have been added.) Wildfile Improved {MISC, Wildfile wizard}. When performing a search Wizard and replace in many files, you now have a full set of replace options. Language The new VB-BAS.SYN, FORTRAN.SYN, MODULA2.SYN, TEALINFO.SYN Support and TEX.SYN files provide color syntax highlighting for these languages. M2-LT34.SYN, M2-SB22.SYN and M2-SB30 support specific Modula-2 compilers. (Many thanks to Steven Hawkins, Carl Glassberg and Fritz Heberlein for creating these files.) The new LATEX.VCS file provides compiler support for the Miktex compiler. See LATEX.VCS for details. Pattern match The new pattern matching code "|*" matches multiple code |* characters (zero, one or more) on the same line. Therefore, it won't match multiple lines of text the way "|M" will. File-close When a file (buffer) is closed, VEDIT now switches to the buffer switch most-recently-used buffer. Previously, it switched to the next buffer. Keyboard layout has been changed to {FILE, Close}, as is common in changes many other programs. Note that is still assigned to {WINDOW, Close}. is assigned to [ENTER CTRL] which is the same as {EDIT, Insert, Enter Ctrl char}. The alternate hot-key is still . is assigned to {FILE, Save}. is assigned to [VISUAL ESCAPE]. Since has long been assigned to [VISUAL EXIT], should be easier to remember. The previous is still the alternate key. The {TOOLS} menu compiler support hot-keys, e.g. and , are now built into the "Normal" layout. Previously, they were added by the COMPILE.VDM macro, which confused many users (and was very obscure). is now available as a custom hot-key. -w Invocation The "-w" invocation option disables the File Selector on startup. Useful when you want to start with the largest possible editing windows. .MNU Files Files such as USER.MNU and COMPILE.MNU used to create the {USER} and {TOOLS} menus can now contain comments. Note: To prevent future VEDIT updates from overwriting your custom USER.MNU file, place it in the User-Macro directory, e.g. in c:\vedit\user-mac or c:\program files\vedit\user-mac. "|[a,b]" in (Technical) The .SYN syntax highlighting files can use the .SYN files "|[a,b]" pattern matching code to match an optional occurrence of the strings 'a' OR 'b'. See the on-line help topic "Color Syntax Highlighting - Creating your own .SYN file" (DOS: "SYNHI") for details. EBCDIC (Technical) Setting {CONFIG, File handling, File type} to "4" File Type causes VEDIT to recognize characters with hex value 25 as the "newline" character. Useful for editing some EBCDIC text files. The EBCDIC value for "Line-Feed" is 25 (hex). Command Macro Changes --------------------- Buf_Previous Returns the ID number of the previous (open) buffer. It complements Buf_Next. Format_Para(n) New command options BEGIN and FORCE override the configuration options. Format_Para(0) keeps the current indentation. Max(n,m) Returns the greater of the two numeric values 'n' and 'm'. For example, Max(Block_Begin,Block_End) returns the greater block marker. Min(n,m) Returns the lesser of the two numeric values 'n' and 'm'. Process_ID Returns (as a number) the "Process ID" assigned by Windows to the current instance of VEDIT. PID New string value is the "Process ID" assigned by Windows to the current instance of VEDIT. This string can be used in temporary filenames to avoid collisions between multiple instances (running copies) of VEDIT. Used in WILDFILE.VDM. CHANGES FROM 5.20 TO 6.01 ------------------------- File Selector The new {VIEW, File selector} displays an Explorer-like Window window on the left side. It contains four tabs. "Open" displays and selects from the currently open files. "Fav" displays and adds to a list of up to 100 favorite files. "Rec" displays an expanded Most-Recently-Used (MRU) list of up to 100 files. "Xplor" is an "Explorer" from which you can open additional files. Tabbed Windows The new {VIEW, Tabbar} displays a tab-bar listing all of the currently open files. You can switch to another file by clicking on the corresponding tab. Fast, Flexible The greatly enhanced {EDIT, Sort, Sort lines} function can Sorting quickly sort even huge 100+ megabyte files. It can sort based on a primary key field and up to 9 secondary key fields. Options include ascending/descending, case sensitive and no collate. The collate table sets the exact sort order for special characters including European "umlauts", accents, etc. ANSI, OEM and EBCDIC collate tables are supplied, and are user changeable. Edit 99 Files Up to 99 files can now be simultaneously open in VEDIT. (The DOS version is still limited to 32 open files.) File-Open The new {CONFIG, File-open config} sub-menu controls the Configuration completely revised file-open configuration. To configure VEDIT for a particular file-type (filename extension), first set all the desired buffer-dependent {CONFIG} settings; then select {CONFIG, File-open config, Save filename extension config}. These settings will then be automatically used the next time you open a file with the same file-name extension. You can even configure VEDIT for specific filenames by selecting {CONFIG, File-open config, Save filename specific config}. This is useful when the configuration for a specific file, e.g. "mynotes.txt", is different from other ".txt" files. .\FILE-CFG The file-open configuration files are stored in the new directory ./FILE-CFG subdirectory. The file-type configuration files have a .CFT extension; the filename specific configuration files have a .CFN extension. Although these files are typically created and updated by the {CONFIG, File-open config} functions, experienced users can easily edit them - they only consist of Config() commands. Color Syntax Multiple .SYN color syntax highlighting files can now be Highlighting opened with {MISC, Load syntax file}. Then select {CONFIG, File-open config, Save filename extension config} to automatically enable syntax highlighting when files of that type (filename extension) are opened. {HELP, Status display} displays the name of the buffer's loaded .SYN file, if any. Template Similarly, multiple .VTM template editing files are now Editing supported. STARTUP.VDM The startup macro STARTUP.VDM has been extensively modified and simplified. It now loads the VEDIT.CFG and VEDIT.KEY files and performs the edit-session-restore function. STARTUP.VDM no longer contains code related to color syntax highlighting and template editing, nor the config commands for specified file-types. It simply sets up the file-open event macro which performs the new file-open configuration. STARTUP.VDM has been redesigned so that typical users are unlikely to ever need to change it. (However, experienced users can now more fully control the startup process.) USTARTUP.VDM All custom keystroke macros and config overrides previously performed with STARTUP.VDM are now performed with an optional USTARTUP.VDM file. Since installing updates will not modify USTARTUP.VDM, custom setups will not be lost. The new {CONFIG, Misc, Enable USTARTUP.VDM} enables this optional configuration file. Record / Play The new {MISC, Record quick macro} and {MISC, Play quick "Quick" macro macro} functions make it easy to instantly record and play back a keystroke macro. The default hot-keys for these functions are and . {HELP} menu The new "VEDIT User's manual" and "Macro Language Reference" functions open the VEDIT manuals, which are supplied as .PDF files, with Adobe Acrobat. The manuals include "Bookmarks" for easy navigation. {TOOLS} menu The new {CONFIG, Misc, TOOLS menu on startup} determines which {TOOLS} menu is loaded on startup. The default is the compiler support menu, but you can also load the Java support menu, a custom menu, or no menu at all. {BLOCK} and Many items in the previous {BLOCK, Edit/translate} sub-menu {EDIT} menus have been moved to the new {EDIT, Convert} and {EDIT, Translate} sub-menus; the remaining items have been moved to the {BLOCK} menu. {BLOCK, Save block as} has been moved to the {FILE} menu. The {EDIT} menu also has a new {EDIT, Insert} sub-menu and a revised {EDIT, Delete} sub-menu. Quick Open {FILE, Open (more), Quick Open}, with default hot-key , displays a quick file-open dialog box into which you can type the name or names of files to open. Reload File {FILE, Reload} re-opens the current file; if the file has been modified in VEDIT, it prompts for confirmation to abandon the changes. VEDIT Ansi The "VEDIT Ansi" and "VEDIT OEM" fonts are now supplied in and OEM Font an additional large 24 pixel size. (Five sizes total). With a 1280 x 1024 display, the 24 pixel size results in a maximized editing window of 35 lines and 99 columns. Show <> Enabling the new {VIEW, Options, Show <>} displays a red "<>" at the end of the file. Show character Enabling the new {VIEW, Options, Show character value} value displays the current character's decimal and hex values on the status line. This is useful for editing data and binary files. More and Many more Ctrl and Alt key combinations are now supported, keys including thru , thru , thru and thru . Keyboard layout is assigned to {HELP, Status display}, similar changes to the way other programs use this key for "properties". The hot-key for {EDIT, Undo, Line} is now . Zoomed New {CONFIG, Display options, Windows zoomed on startup} Windows allows the editing windows in VEDIT to be zoomed (maximized) when it starts up. Note: The entire VEDIT program will be maximized on startup if it was maximized when you last closed it. Data Files (Technical) Setting {CONFIG, File handling, File type} to "3" with CR+LF causes VEDIT to recognize an "End-Of-Line" only when there is both a Carriage-Return and a Line-Feed. (The normal file type of "0" expects a Carriage-Return and Line-Feed, but treats the Carriage-Return as optional). This is useful for editing some record-oriented data files with binary fields. Command Macro Changes --------------------- Block_Save_As() Saves a block to a file. It is the new name for the previous (and identical) Write_Block() function. Cab_Extract() Extracts all compressed files in the specified .CAB file. (Used by INSTALLW.VDM to install VEDIT.) Config() Many previous Config(S...) screen-related configuration values have been renamed to Config(D...) display related values. VEDIT will still read the old Config(S...) values. Config_String() New Config_String(SYN_NAME,"x.SYN",LOCAL) configures the current buffer to the desired color syntax highlighting .SYN file. Upon entering visual mode, the .SYN file will be automatically loaded, if not already. New Config_String(VTM_NAME,"x.VTM",LOCAL) configures the current buffer to the desired template editing macro .VTM file. Upon entering visual mode, the .VTM file will be automatically loaded, if not already. Extra_Buffer_1 Returns the ID # of the 1st "Extra" edit buffer. In VEDIT 6.0, this is 100 for Windows and 33 for DOS. Extra_Buffer_2 Returns the ID # of the 2nd "Extra" edit buffer. (101/34) Extra_Buffer_3 Returns the ID # of the 3rd "Extra" edit buffer. (102/35) Extra_Buffer_4 Returns the ID # of the 4th "Extra" edit buffer. (103/36) File_Open() Single filenames, even those with spaces, can now be delimited with just double-quotes. See the on-line help topic "String Arguments" (DOS: "STRING") for the new syntax for specifying multiple filenames, and the "-a" and "-l" options. Is_File_Selector Returns TRUE if the File selector window is currently displayed. Key_Delete() The new option Key_Delete("Edit-seq",REVERSE) deletes the keyboard layout entry which assigns any key to the specified "edit sequence". Key_List() Lists (displays) the entire keyboard layout. Key_Cfg_Push() These new commands allow a macro to save the current keyboard Key_Cfg_Pop() layout, modify it for the macro, and then restore the layout when the macro is done. N_Option(n) Sets the value of N_Option to 'n'. This is useful when the macro called by the next Call_File() command expects a parameter to normally be set with the "-n" invocation option. Reg_Push(r,s,SET) The new "SET" option maintains the contents of the specified text registers when they are pushed on the register stack. Otherwise, the registers are emptied. Reg_Push(123,123,SET) Registers 123 and 124, corresponding to the {TOOLS} and {USER} menus, can be saved on the register stack Reg_Pop(123,123) when used with the "SET" option. This allows a macro to save the current menus, change them for use during the macro, and then restore the menus when the macro is done. Sort_Merge() Sorts all lines in a file (or block) according to a primary key field and up to nine secondary fields. Options include ascending/descending, case sensitive, no collate. A collate table sets the exact sort order for special characters including European "umlauts", accents, etc. It implements {EDIT, Sort, Sort lines} and replaces the old Sort() command; Sort_Load() Loads an alternate collate table for the Sort_Merge() command. Otherwise, the default COLLDEF.TBL collate table is automatically loaded. Syntax_Load() This modified command loads a color syntax highlighting .SYN file; multiple .SYN files can be loaded. Any buffer configured to the name of the .SYN file, e.g. c.syn, html.syn, will then use the syntax highlighting file while editing in visual mode. Note that VEDIT normally loads .SYN files automatically as needed. Template_Load() Loads a template editing macro .VTM file; multiple .VTM files can be loaded. Any buffer configured to the name of the .VTM file, e.g. c.vtm, html.vtm, will then use the template editing macro while editing in visual mode. Note that VEDIT normally loads .VTM files automatically as needed. Win_Cfg_Push() These new commands allow a macro to save the Win_Cfg_Pop() current window arrangement, delete, create and split windows for the macro, and then restore the window arrangement when the macro is done. Win_Next(BUFFER) Returns the ID number of the "next" window. The new "BUFFER" option gives precedence to windows that are attached to the current buffer, before returning the ID of windows attached to other buffers. Win_Previous(BUFFER) Similarly, returns the ID number of the "previous" window. XBuf1 Returns the ID # of the 1st "Extra" edit buffer. This is an abbreviation for Extra_Buffer_1 XBuf2 Returns the ID # of the 2nd "Extra" edit buffer. XBuf3 Returns the ID # of the 3rd "Extra" edit buffer. XBuf4 Returns the ID # of the 4th "Extra" edit buffer. String Values Several new string values have been added for accessing different parts of the current output filename: PATH_ONLY Just the path (directory) of the current file (e.g. "c:\work\january"). FILE_ONLY Just the filename without the extension (e.g. "invoice"). EXT_ONLY Just the filename extension without the "." (e.g. "txt"). CHANGES FROM 5.16 TO 5.20 ------------------------- Long line Extremely long lines are now supported. The 32-bit Windows support version supports lines over 200,000 columns. (There is no absolute limit, but performance will degrade.) The DOS version supports lines of up to 65,535 columns. Word-wrap Long lines can now be word wrapped on the screen by selecting display {VIEW, Word wrap} or {CONFIG, Word processing, Display lines with word wrap}. This is a display-only function which does not alter the file. Rulers Rulers for line and column numbers can be displayed by selecting {VIEW, Rulers}. Highlight The new {VIEW, Options} sub-menu lets you easily highlight cursor column the cursor line and/or column. Newline (CR/LF) {VIEW, Options, Show newlines (CR/LF)} displays a "newline" display char character at the end of each text line where the CR/LF is. This makes it easier to see any trailing spaces on a line. The "newline" display character can be selected with {CONFIG, Characters/cursors, Newline display character}; with the default value of "0", an appropriate character is selected according to the current font. Configurable The toolbar can now be configured - primarily for rearranging toolbar and deleting unwanted icons. Additional icons for more menu items and custom macros will soon be added. To configure the toolbar, first double-click on the toolbar background. This brings up the standard Windows toolbar configuration dialog box. Press the [Help] button if needed. Persistent All previous versions of VEDIT had "persistent blocks" - a blocks block remains highlighted until you use it or explicitly cancel it. Persistent blocks can now be enabled/disabled with {CONFIG, Emulation, Enable persistent blocks} or {BLOCK, Persistent blocks}. When disabled, moving the cursor cancels any block; this is the norm in other Windows programs. The installation sets the initial value. Terse T-Reg A "terse" option in the text register dialog boxes can save dialog boxes keystrokes. (This was always in the DOS version.) This option makes it easier to select registers "0" thru "9". Instead of having to type e.g. "9" and , you only have to type "9" to close the dialog box. To select text registers "10" and up, you must either precede the number with "." or turn off "[ ] Terse" mode in the dialog box. You can always select register "0", the scratchpad, by double pressing the hot-key for the text register operation. VEDIT Ansi The "VEDIT Ansi" font is now the default font and is Font supplied in five sizes. Use {VIEW, Font} to change the font or font size. ANSI/OEM {VIEW, Toggle display mode} includes a new "ANSI/OEM" mode display mode which translates characters between the ANSI (Windows) and OEM (IBM-PC and DOS) character sets as they are displayed on the screen and typed on the keyboard. Depending upon which character set is used for the display font, it translates to the "other" character set. See the on-line help topic "Screen Display and Keyboard Characters - Display Modes" (DOS: "DISPLAY") for details. ANSI/OEM The {BLOCK, Edit/translate} menu has the new functions translation "ANSI to OEM" and "OEM to ANSI" which translate the highlighted block between the ANSI and OEM character sets. See the on-line help topic "Translating a Block or File" (DOS: "ANSI") for details. Bit-wise {VIEW, Toggle display mode} includes a new "Bit-wise" mode display mode for viewing and editing each bit of each byte. It is designed for editing bitmap files and displays a set bit as "X" and a clear bit as " ". Therefore, the letter "z" would display in hex mode as "7A" and in bit-wise mode as " XXXX X ". Since bit-wise mode is of very limited and specialized use, {VIEW, Toggle display mode} only toggles into it when editing binary/fixed-length record files; i.e. when {CONFIG, File handling, File type} is set to "8" or more. VEDIT Macro Most supplied .VDM macro files are now placed in VEDIT's Directory .\MACROS subdirectory, e.g. "c:\vedit\macros". The {MISC, Load/Exec macro} file-open dialog box defaults to this directory. User Macro VEDIT's .\USER-MAC subdirectory is now reserved for user Directory written macros. The new {MISC, Load/Exec user macro} file-open dialog box defaults to this directory. Notes: VEDIT searches for macros first in the current directory, then in the User Macro Directory, then in the VEDIT Macro directory and last in the VEDIT Home directory. Installing future VEDIT updates will not change the .\USER-MAC subdirectory. Therefore, if you modify a supplied macro and save it in .\USER-MAC, your custom macro will be saved and used by future versions of VEDIT. {MISC} menu The item {MISC, Load Tutorial menu} has been deleted. The tutorial items are now always available in the {HELP, Tutorial} sub-menu. The new item {MISC, Load/Exec user macro} is identical to {MISC, Load/Exec macro}, except that the file-open dialog box starts in the .\USER-MAC subdirectory. {MISC, Save and The functions in this new sub-menu save and close all files run program} before shelling to run another program (or DOS command). Upon sub-menu return the files are reopened. They save the last command entered as the new default. {SEARCH} menu The new item {SEARCH, Open searched files} opens all files (from a selected group) that contain the searched string. (Previously in the {USER} and {MISC, More macros} menus. {Tutorial} The {Tutorial} menu has been moved to the {HELP, Tutorial} sub-menu. {BLOCK} menu The previous item "Save to disk" has been renamed to "Save block as". The items "Copy to cursor" and "Move to cursor" are only available when "Persistent blocks" are enabled. Mouse context The clipboard functions and "Clear markers" have been added menu to the mouse right-click context menu. "Next buffer" and "Previous buffer" have been removed; use the icons on the toolbar instead. Expand The previous {CONFIG, Tab/Fill, Expand with spaces} with spaces has been split into the three easier to use options "Expand key with spaces", "Retab after columnar operation" and "Retab after block fill". "Change dir" The new {CONFIG, File handling, "Change directory" options} options controls how the current directory is changed when new files are opened. See the on-line help for details. Numpad The "/", "*", "-", "+" and "Enter" keys on the numeric keypad function modes were function keys in all previous versions of VEDIT. By default they are now function keys only when "NumLock" is off. Setting the new {CONFIG, Misc, Numpad function mode} to "2" restores the old behavior. -b and -tnnn A filename may now be followed with the "-b" option to place Invocation only that file into "browse-only" mode. (A "-b" before any filenames places all opened files into browse-only mode.) This is equivalent to selecting "Open as read-only" in the File-open dialog box. A filename may now be followed with the "-tnnn" option to open the file with a File-type (record length) of 'nnn'. This is equivalent to selecting "File type" and "Record/binary" in the File-open dialog box. Windows NT/2000 When shelling to a DOS box/program under Windows NT/2000/XP, shell support VEDIT uses a new set of .PIF files which use the preferred CMD.EXE instead of COMMAND.COM. (The .PIF files are named MSDOSNT.PIF, MSDOSNTC.PIF, MSDOSNTI.PIF and MSDOSNTW.PIF.) See the on-line help for the System() command for details. Keyboard input The WILDFILE and other macros can now receive their keyboard from a file input from a file. This is the new "Input Redirection" feature. The supplied file WILDFILE.INP is an example. The following command starts VEDIT and the WILDFILE macro with an input direction file. ("rinp" is the short name for the Redirect_Input() command.) vpw -e -c'rinp("wildfile.inp") call_file(100,"wildfile.vdm")' COMPDIR.VDM This previously obscure macro has been completely rewritten. macro It compares the files in two directories and determines which ones are different and which ones are unique in each directory. Pressing lets you compare two different files with the COMPARE.VDM macro.It can optionally compare all files in subdirectories. It can be run from {MISC, More macros, COMPDIR} or from the supplied COMPDIR.BAT file. (Thanks to Christian Ziemski for rewriting it to work in Windows and handle German and European date and directory formats.) SPLITTER.VDM Improved SPLITTER macro prompts for the size of the split; macro file can be selected with file-open dialog box. A new invocation option runs it without any user prompts. Files larger than 2 Gigabyte can be split into e.g. 1 Gigabyte parts for editing. Supports fixed-length-record files. Filename (Technical) By setting an optional Filename-separator, you separator can more easily open multiple files by typing their names into the Win32 File-Open dialog box's "File name" prompt. If you entered, e.g. "file1.txt,file2.txt" VEDIT would create a file with that name. However, if you set the Filename- separator to a comma, VEDIT would instead open the two files. The downside is that you cannot open files that contain the filename-separator in their name. The only way to set the Filename-separator to e.g. a comma, is with the command Config(F_File_Sep,',') which can be placed in the VEDIT.CFG or USTARTUP.VDM file. "|B" in .SYN (Technical) The .SYN syntax highlighting files can use the files new "|B" pattern matching code to match "blanks" - spaces or tab characters. Use "|B+" to match 1 or more blanks. Command Macro Changes --------------------- Date() The new "BEGIN" option in Date(BEGIN) displays the date as dd-mm-yyyy instead of as mm-dd-yyyy. Date(VALUE,'/') displays the date as mm/dd/yyyy. Date(BEGIN+VALUE,'.') displays the date as dd.nn.yyyy. Dialog_Input_1() The syntax of this command changed extensively in 5.20 and does not support the syntax used in version 5.1x. NOTE: Any custom macros using this command must be updated to the new syntax. File_Delete() Requires the options "OK+EXTRA" to delete, without confirmation, multiple files specified with "*". File_Quit() This is another name for Buf_Empty() which might be preferred by some users. File_Move() This is another name for File_Rename() which might be preferred by some users. Is_Redirect_Input Returns TRUE if "keyboard" input to the macro language is currently being redirected from a file set up with the Redirect_Input() command. Num_Eval_Reg(r) Evaluates the numeric expression in T-Reg 'r' and returns its value. I.e. it performs an ASCII to integer conversion. Atoi(r) Atoi() is another name for Num_Eval_Reg(). Num_Str(n,r) Places the ASCII value of numeric expression 'n' into T-Reg 'r', overwriting any existing contents. I.e. it performs an integer to ASCII conversion. Itoa(n,r) Itoa() is another name for Num_Str(). Redirect_Input() Uses a file as the source of the "keyboard" input characters for macros using the Get_Input(), Get_Key() and Get_Num() commands and the "COMMAND:" prompt. Reg_Load() The new command options "HOMEDIR", "MACRODIR", "USERCFGDIR" and "USERMACRODIR" control in which additional directories the command will search for the specified file. Search_Options() Sets/returns the search options selected in the Search/Replace dialog-box. This determines the search mode (e.g. SIMPLE or REGEXP) and options (e.g. WORD or BLOCK). Set_Altered_Flag() Sets/clears (overrides) the internal flag which keeps track of whether the current buffer has been altered. Translate_Block() The new "ANSI" option translates the block using the built-in ANSI/OEM character set translation table. Translate_Char() The new "ANSI" option translates the character using the built-in ANSI/OEM character set translation table. Win_Title(w,"text") Sets the title for window 'w' to 'text'. The title is displayed on the window's top border. This overrides the default title that VEDIT displays for each window. PATHONLY The new string value PATHONLY returns just the path (directory) of the current file. FILEONLY The new string value FILEONLY returns just the filename, without the extension, of the current file. Display string The value of any string value, such as PATHNAME or HOME can values be displayed by typing its name at the "COMMAND:" prompt. Conditional As before, placing a "?" in a macro sets a breakpoint which breakpoints enters trace mode. The new syntax "?(expr)" only enters trace mode if the expression 'expr' is TRUE. For example, "?(Cur_Line==89)" only enters trace mode if the edit position is on line 89 when the "?" is encountered. -u Invocation The "-u" invocation option causes the rest of the command line to be ignored, i.e. any specified files are not opened. Allows a macro to parse the command line via the CMD_LINE string value. For example, the "-u" could be followed by strings (which are not filenames) to be passed to a macro. CHANGES FROM 5.10 TO 5.16 ------------------------- {FILE} menu To standardize the {FILE} menu, the new {FILE, Open} replaces the previous {FILE, Open, New buffer}. The remaining {FILE, Open} sub-menu items are now in the {FILE, Open (More)} sub-menu. The , and hot-keys work the same way as before; however, this requires changing their assignment in VEDIT.KEY. The installation automatically makes the necessary changes if you transfer the keyboard layout. DOS version: The previous {FILE, Open disk} items have also been moved to the {FILE, Open (More)} sub-menu. {FILE} MRU {FILE} menu now contains the names of the most recently edited files. (Windows only.) The number of Most-Recently-Used (edited) files listed in the {FILE} menu can be changed by manually editing the "MaxMRU" parameter in the VEDIT.INI file. File Open The 32-bit Windows file-open dialog box is larger to display Dialog Box more files, includes a history list and permits setting both the record length and header size for fixed-length record data files. (Surprisingly, Windows 95/98/NT does not provide a history list and this was very difficult to implement.) When the file-open box is moved, VEDIT remembers its position and saves the position in the VEDIT.INI file for the next time VEDIT is run. This feature can be disabled by editing the VEDIT.INI file and setting "FileDlgPos=-1,-1". Windows 32-bit version: The "Files of type" filters listed in the File-Open dialog box can be changed by editing the VEDIT.INI file. File-type The Win32 installation can now (optionally) add VEDIT to the Association "Registry" as a Windows 95/98/NT program. It can also add "Open with VEDIT" to the mouse right-click context menu; this also causes all files which are not associated with another program to open in VEDIT. Any other (non-system) file-types can also be associated with VEDIT. These functions are performed by the REGISTRY.VDM macro which can be run at any time from {MISC, More macros, Registry} to add file-type associations. File-open DDE When opening files associated with VEDIT from Explorer, it is Support usually desirable to have them open in an already-running VEDIT instead of starting another VEDIT each time. This is supported in 5.12 if the file-type association uses "DDE". We suggest using {CONFIG, Associate file types} to set up any desired file-type associations for you; it will use DDE. Toggle file New {VIEW, Toggle binary/text mode} toggles the file type to type Binary-16 (i.e fixed-length records of 16 bytes), Binary-64 and back to the original mode. The default hot-key is and it is a new button on the Windows toolbar. Toggle hex New {VIEW, Toggle hex mode split} replaces {WINDOW, Hex-mode mode split split}. It is implemented with the macro HEXSPLIT.VDM. As supplied, it first switches to a split-screen hex and ASCII display. Selected again, it switches the file type to Binary-16 for easier hex editing. Selected again, it toggles back to the original mode. The default hot-key is . Note: This revised function and internal improvements greatly improve VEDIT's hex mode editing. Toggle display {VIEW, Toggle display mode} now temporarily displays the mode new mode on the left side of the status line. {WINDOW} and Items {VIEW, Cascade} and {VIEW, Tile} have been moved to {VIEW} menus the {WINDOWS} menu. The little used items {WINDOW, Horizontal split} and {WINDOW, Vertical split} have been eliminated. {WINDOW, Split} can perform these functions; simply pressing in its dialog box performs a horizontal split. Note: The selection letter for {WINDOW, Close} has been changed from "C" to "O". Therefore, the default hot-key has been changed in the VEDIT.KEY file to: [MENU]WO. The installation will correct a transferred vedit.key file. Scrollbar The new {VIEW, Scrollbar} toggles the scroll bars on/off. on/off toggle The vertical scrollbar is only displayed when the current file contains enough lines to require scrolling. Split window Deleting a "child" (split) window now expands the size of the deletion parent window, in effect reversing the split. This is only new for the Windows version, the DOS version has always been this way. Splitting a window, e.g. {WINDOW, Split} or {FILE, Open, horizontal window} results in "parent" and "child" windows. {CONFIG} menu The {CONFIG} menu now lists each of the 12 configuration categories for easier access. This also makes it identical to the DOS version. The previous item "Fonts" is still available in the {VIEW} menu. The previous item "Printer font" is now in {CONFIG, Printer}. It is also still available in the printer dialog box. 256 colors {CONFIG, Editing colors, Change color...} now displays 256 colors. Color values 128 - 255 are the same as 0 - 127, but have a lower intensity background color. DOS version: {CONFIG, Colors} does not list color values 128-255, but they are also displayed with a lower intensity background on most VGA systems. (We will further improve color support later.) Command mode New {ESCAPE, Command mode window} creates a 5-line reserved toggle Command mode window at the bottom of the screen, and then switches to Command mode at the COMMAND: prompt. Note: Pressing this function's hot-key (default: Alt-/) at the COMMAND: prompt deletes the Command mode window and returns to Visual mode. Hint: This hot-key is a convenient new way to toggle between the Visual mode and the Command mode. {ESCAPE} menu New {ESCAPE, Command mode (Exit)} is equivalent to [VISUAL EXIT]. Save and run These useful new functions in the default {USER} menu are program 1 significant improvements over the very basic {MISC, Run program}. They first prompt for a program (e.g. compiler) to Save and run run. Enter the full command, including any parameters and program 2 options. The command is saved as the default command for the next time. After all files are saved and closed, the full command is executed by shelling to DOS. Windows programs can also be run. When done, the DOS window is auto-closed and all files are reopened. If the special file "vout" was created, it is opened in a new window. These functions use the new RUNSHELL.VDM macro which can run and save up to five different commands. If desired, you can add a 3rd, 4th and 5th command to the USER.MNU file. See the on-line help topic "Command Macros - RUNSHELL" for details. (DOS: on-line help topic "RUNSHELL".) layout The default hot-key for {BLOCK, Set column marker} has been change changed from to . This change was made so that the compiler support can use and as the hot-keys for "Previous error" and "Next error". Use block as If a small block (up to 50 characters) is highlighted when search string {SEARCH, Search} is selected, the highlighted block becomes the default search string. This emulates most other Windows programs. Highlight block When highlighting a multi-page block with the mouse, dragging with mouse the mouse below the bottom text line now causes the text to automatically scroll. Suggestion: Use (the hot-key for {BLOCK, Set marker}) to highlight huge blocks. DOS version: Moving the mouse to the right causes the text to scroll faster. Clipboard The 32-bit Windows version now supports multi-megabyte clipboards. Columnar clipboards are supported, as before. (On a PC with 32 Megs of memory, the maximum clipboard size is about 15 Megabytes.) This makes the clipboard better than the scratchpad for cut&paste of large blocks. However, VEDIT uses the clipboard in text mode which does not support binary data. The clipboard is also slower. Paste Clipboard will now insert the clipboard into all remaining prompts. These include the COMMAND: prompt, all macro prompts, and all dialog boxes in the DOS version. (The size of the clipboard cannot exceed the maximum prompt size.) and are not yet supported in macro prompts because has always been used as a "Cancel" break- out. This will soon be a configurable option. Hex Search The Search and Replace dialog boxes include a new "Hex" Mode search mode which takes hex values "00" thru "ff" separated by spaces. The pattern matching "|H" is not needed. It takes byte, word, double-word and quad-word values in hex. Press [Help] in the dialog box for details. EBCDIC search When the current window has been toggled into the EBCDIC display mode, you can now enter normal search/replace strings. (Previously they had to be entered in hex.) The strings are now automatically converted to EBCDIC. Pattern matching codes such as "|A", "|S" and "|U" also work correctly in EBCDIC mode. (However, regular expressions are not designed for EBCDIC files.) The case conversion functions also work in EBCDIC mode. Non-English The alphabetic pattern matching codes "|A", "|U" and "|V" can Char. Support now be language and font sensitive, especially when displaying with "Ansi" fonts. Similarly, the case conversion functions, e.g. {BLOCK, Edit/translate, Upper/Lower/Switch case} can be language and font sensitive. {CONFIG, Search options, Support non-english characters} determines whether non-english letters are recognized in the extended character set (decimal value 128-255). Pattern code The very rarely used pattern matching code "|T" has been "|T" changed changed to "|I". "|T" now simply matches the tab character. This simplifies entering a tab character into search strings. "|I" matches spaces, all control characters, including Tabs, and those characters configured with Config_String(WORD_SEP). It is used internally by [NEXT WORD] and [PREVIOUS WORD]. None of our supplied macros used "|T"; however, you should search for "|T" in your own macros and change it to "|I". Word The characters "()<>[]{}" now act as special word separators Processing even if they have not been added to Config(WORD_SEP). The characters "(<[{" are treated as the beginning of a word. Similarly, ")>]}" are treated as the end of a word. With the default Config_String(WORD_SEP,",;:()"), the "<[{" and ">]}" characters are treated as part of the word. However, since "(" and ")" are word separators, they are not treated as part of the word. Print multiple The print dialog box in the Windows version now supports copies printing multiple copies of a file or highlighted block. The "Print.vdm" option will now also stay selected. Run Minimized The Windows version can now be started or run minimized, in which case it will only show up on the Win 95/98/NT taskbar. For example, you can add a minimized VEDIT icon to your startup folder. "Quiet" mode The Windows and DOS versions can be run in "quiet" mode with -q option the "-q" invocation option, in which case they do not display anything on the screen. It is typically followed by the "-x" or "-c" options to execute a macro. When the macro is done, it automatically saves all files and exits. Note: When run in quiet mode or minimized, any pending "edit session restore" files are left untouched. User Config The new "User Config Directory" determines the location Directory of the user's VEDIT.KEY and VEDIT.CFG configuration files, and the edit-session restore files VEDITSAV.ENV and VEDITSAV.DAT. It also determines the location of the "real" VEDIT.INI file and the STARTUP.VDM macro. It typically is set to the same directory as the "VEDIT Home Directory", e.g. "c:\vedit", in which case VEDIT works as before. However, it allows VEDIT to be installed on a network server, with only the user's files saved on each workstation. See the on-line help topic "Network Installation". (DOS: on-line help topic "NETINSTALL") Note: The on-line help topic "Configuration" describes VEDIT's startup and configuration in detail. It also contains step-by- step troubleshooting for common problems. VEDIT.INI The VEDIT.INI file specifies the User Config Directory and allows the name of the STARTUP.VDM file to be changed. The invocation option "-kinifile" allows changing the name of the VEDIT.INI file to 'inifile'. The full pathname must be specified and there must be NO SPACE between "-k" and 'inifile'. (This allows "-k filename" to turn off the VEDIT.INI file and open 'filename' for editing.) The VEDIT.INI file documents all features in it. Some parameters such as "MaxMRU", "KeepOnTop" and the File filters can currently only be changed by directly editing the VEDIT.INI file. Keep VEDIT The entry "KeepOnTop=1" in the VEDIT.INI file forces VEDIT to On Top always be visible on top of other Windows programs. You can minimize VEDIT to make other programs visible. (This feature has not been fully tested; we will later make it a configurable option.) Better Box {MISC, Box drawing mode} uses a new BOX-DRAW.VDM macro which Draw Macro is much easier to use. It temporarily re-assigns the and keys to draw single-line and double-line boxes. The type of lines can still be selected with {CONFIG, Misc, Box drawing style}. Select "Box drawing mode" again to restore the keys. (Thanks to Maxim Glukhov for writing this improved macro.) Windows version: Box-drawing is only available if an "OEM" display font is being used. ASCII Table 2 The new {MISC, More macros, ASCII table 2} is similar to {MISC, ASCII table}, but provides a very compact display and easier way to insert characters into the file. It is implemented by the ASCII2.VDM macro. (Thanks again to Maxim Glukhov.) E-mail Extract New E-XTRACT.VDM, E-EMAIL.VDM and REM-LINE.VDM macros allow Macros extracting e-mail addresses, and removing all e-mail addresses in one file from another file. (Example: we use E-EMAIL.VDM to extract sales prospects from a Eudora (tm) mail folder. We use E-XTRACT.VDM to extract all e-mail addresses from our customer database. We then use REM-LINE.VDM to purge (recent) customers from the prospect list.) Color Syntax Definition files to support COBOL, Folio, MASM, Rexx and Highlighting SQL are now included. (The definition of "separators" for syntax highlighting was changed in 5.11, but has been retracted and is back to "|S". The tricky "-" in COBOL.SYN is handled as a special case.) New Compiler The compiler support is now implemented as a {TOOLS} menu. Support It can be loaded via {MISC, Load compiler support} or by making a simple change in the STARTUP.VDM file. The COMPILE.VDM macro loads the compiler support items (COMPILE.MNU) into the {TOOLS} menu. It also sets the hot-keys for the most common items. Refer to the on-line help topic "Compiler Support". (DOS: on-line help topic "COMPILER") Note: Any custom compiler .VCS files can still be used, however, you must change the "Call(100,...)" commands to "Call(103,...)". Java SDK {MISC, Load compiler support} can now load either the normal Support compiler support into the {TOOLS} menu or Java SDK specific support. You can easily switch between Java SDK and another compiler by selecting {MISC, Load compiler support} again. As before, the normal compiler support loads COMPILE.MNU as the {TOOLS} menu and uses COMPILE.CNF for configuration. The Java SDK support loads JAVA-SDK.MNU and uses JAVA-SDK.CNF. (Many thanks to Alan Herron for creating this support.) Java color syntax highlighting and template editing is also included. Command Macro Changes --------------------- Numeric XOR operator The new numeric "^" operator performs a bitwise Exclusive-OR operation of two numbers. It follows the C syntax. "10 ^ 6" has value 12. ("10 | 6" has value 14.) Clip_Copy_Block() Copies a block to the Windows clipboard, similar to Reg_Copy_Block(). (Win32 only) Clip_Ins() Inserts the Windows clipboard at the edit position, similar to Reg_Ins(). (Win32 only) File_Open("file",MRU) The new "MRU" option adds the file(s) to the Most-Recently-Used list in the {FILE} menu when the file is closed. However, if VEDIT is exited with "Quit All" or the Qall() command, files are not added to the MRU list. (Windows only) Is_Quiet Returns "1" if VEDIT was invoked with the "-q" option. Returns "2" if the Windows version of VEDIT is currently minimized. Is_Win32_Version Returns TRUE if the 32-bit Windows version of VEDIT is running. (Use OS_Type to determine if either 16-bit or 32-bit Windows version is running.) Is_WinNT Returns TRUE if the 32-bit Windows version of VEDIT is running under Windows NT. Num_Eval_Date() Evaluates a date mm/dd/yyyy or dd-mm-yyyy as the number of days since 01-01-0001 assuming the Julian calendar and leap years. Used to perform calculations based on dates within a file. (Win32 only.) Num_Ins_Date(n) Inserts 'n' as a date, e.g. mm-dd-yyyy, where 'n' is the number of days since 01-01-0001 assuming the Julian calendar and leap years. (Win32 only.) Registry_Delete_Item() Deletes the specified item from a registry key. (All Registry_ commands are Win32 only. See the REGISTRY.VDM macro for examples.) Registry_Delete_Key() Deletes the specified registry key. Registry_Get_Item() Reads a registry item into a text register. Also Registry_Get_Number(). Registry_Set_Item() Changes an existing registry item or creates a new key and/or item. Also Registry_Set_Number(). Search("ss",HEX) The new "HEX" option specifies the search string as hexadecimal bytes, words, double-words or quad-words. Search("ss",EBCDIC) The new "EBCDIC" option specifies that the search string will be (internally) converted from ASCII to EBCDIC. This simplifies searching in EBCDIC files. System("prog",DOS+DELETE) Windows version: The new "DELETE" option auto-closes the DOS window after running the specified program/command. It uses the new MSDOS95C.PIF file. System("prog",SUPPRESS) Windows version: Suppress the "Shell out [Cancel]" dialog box which is otherwise displayed on the screen during the shelling process. Time_Tick() Has been changed to return the time in milliseconds since VEDIT was started. CHANGES FROM 5.04 TO 5.10 ------------------------- {TOOLS} menu New {TOOLS} menu is user configurable, similar to the {USER} menu. The name displayed on menu is also configurable. It typically is used for the compiler support items. {HELP, VEDIT Starts your Web browser and connects to the VEDIT Website's Website} Home page. Other {HELP} items connect directly to the FAQ and Support pages. Color Syntax Syntax highlighting for C and template editing for C and HTML Highlighting can now be enabled by setting the new {CONFIG, Programming, File-type specific config} to "7". (This new item replaces {CONFIG, File handling, Enable file open/close macros}.) Refer to the on-line help topics "Color syntax highlighting" and "Template editing". (DOS: on-line help topics "SYNHI" and "TEMPLATE".) PRNFILES.VDM Macro for printing all files listed in the file PRNFILES.LST. Can be used as a prototype for custom processing (search & replace, converting, etc.) a list of files. See the macro for usage. EXTRACT.VDM Macro for extracting all lines in the current file containing the specified search string by copying them to another file. It can append to an existing file. See the macro for usage. CHANGES FROM 5.00 TO 5.04 ------------------------- Convert New {BLOCK, Convert newlines} converts all newline characters Newlines in a block to the selected type for DOS, UNIX or Macintosh. Can also convert a (database) file with fixed-length records into a normal text file with newline characters. (Loads and executes the CONVERT.VDM macro.) Search New {SEARCH, Block/word} searches for the next occurrence of Block/word the highlighted block, starting at the cursor position. If no block is highlighted, it searches for the word at the cursor. The default hot-key is . Note: The selection letter for {SEARCH, Search all buffers} has been changed from "B" to "A". Therefore, the default hot-key has been changed in the VEDIT.KEY file to: [MENU]SA. The installation will correct a transferred vedit.key file. More Search The new default {USER} menu has "Open searched files" which Functions opens all files, e.g. "*.txt" that contain a specified search string. (Runs the new SRCHFILE.VDM macro.) New default {USER} menu has "Search all - show/select" which shows all lines containing a specified search string in a pop-up window. You can then select any occurrence with the cursor keys. (Runs the new SRCHSHOW.VDM macro.) If a word is highlighted before WILDFILE macro is run, the default search string will be the highlighted word. File Selection By default, the starting directory for {FILE, Open}, {FILE, Directory Save as}, {EDIT, Insert file} and {BLOCK, Write to disk} is now the directory of the file in the current buffer. If no file is open, it is the "default" directory. If "Change directory" is enabled, the last selected directory becomes the new default directory, and these file selection dialog boxes start in the default directory. In the Windows version of VEDIT, the first file opened sets the default directory. {MISC, More This new sub-menu allows easy access to many of the macros} additional macros supplied with VEDIT. See the on-line help for a short description; many are fully described in Chapter 5 of the VEDIT User's Manual. C Programming New default {USER} menu has "C function show/select", Features "Create Ctags file" and "Lookup in Ctags" which make it easier to run the CFUNC.VDM, CTAGS.VDM and UTAGS.VDM macros. The CTAGS.VDM and CFUNC.VDM macros have been improved. Quick Notes By default, STARTUP.VDM sets up to open the file Pop-up "mynotes".txt" in a pop-up window. This is a useful way to keep track of a to-do list, reminders and other personal notes. Pressing again closes the file. See ERRATA.TXT for details. Insert File as {EDIT, Insert file} has a new option to insert the file as a Column Block columnar block. With this option, you can now cut and paste huge multi-megabyte columnar blocks. Smart Detab {BLOCK, Edit/translate} "Detab" and "Retab" now convert an and Retab entire file, but not tabs/spaces within single or double quotes. If a block is marked, all characters in the block are converted. Auto-Replace {CONFIG, Emulation, Auto-replace block with new text} can now Block also delete the highlighted block at the cursor when a text register or clipboard is inserted. This is the default. NOTES: As a safety feature, the largest block that can be auto-deleted is 1000 bytes. For larger blocks, simply press first. We suggest turning this feature off if you edit files with critical data. Color Syntax The syntax highlighting has been enhanced with new "|&", "|?" Highlighting and "|[...]" matching codes. The new "|&" allows a much better HTML.SYN file. NOTE: The old code "|-" has been replaced with "|[-]"; you must make this change to any custom .SYN file you have created. The Windows on-line help topic "Syntax highlighting" (DOS on-line help topic "SYNHI") describes the new matching codes in detail. -p Invocation The "-p" invocation option prints the specified file and immediately exits. Simpler Block When printing a highlighted block, the default is now to Printing immediately finish (close) the print job; the block will then print on its own page. A new option in the Print dialog box allows printing multiple blocks per page. PRINT.VDM The printing macro can now optionally print line numbers and/or file positions on the left side of the page, and a ruler at the top and bottom of each page. The trivial edit changes are documented in PRINT.VDM. HTML Editing Macros HTML-TXT.VDM and TXT-HTML.VDM convert between HTML and Macros text files. User supplied macros include WEBXREF.VDM which creates a cross reference of an entire website. Also a keystroke macro to insert a tag which prompts for the size and all data. Windows Version --------------- Printer Font The font used for printing can be selected in the Print dialog box. Assuming that {CONFIG, Preferences, Printer, Paper length} is set to "0=Auto", the number of lines printed per page is automatically adjusted according to the font size. The on-line help topic "Printing" describes this in detail. Custom VEDIT The "VEDIT Oem" font can be selected in several sizes via Font {CONFIG, Font}. It uses the "OEM" character set, but displays control characters in a more useful way. With a display size of 800 x 600, the size 11 font gives a fully zoomed window size of 29 lines by 87 columns. The size 12 font gives 27 lines by 79 columns. Drag & Drop Additional files can be opened in VEDIT by dragging them from Explorer (or the desktop) and dropping them anywhere on the running VEDIT program. -k Invocation The "-k" invocation option prevents VEDIT from reading the VEDIT.INI file when it starts and saving a new VEDIT.INI file when it exits. (The VEDIT size and font are therefore not saved.) Command Macro Changes --------------------- Pixel size New commands and internal values allow accessing the pixel size of windows and resizing individual windows or the entire VEDIT application. See NEW-CMDS.TXT for more information. Config_String() New Config_String(PR_W_CURRENT) changes the default Windows printer used in VEDIT. Date() Date(BEGIN) displays the date as dd-mm-yyyy instead of as mm-dd-yyyy. File_Open() File_Open("file",CHGDIR) changes the default directory to the directory containing 'file'. Ins_File() Ins_File(file,1,ALL,COLUMN) inserts 'file' as a columnar block. Mark_Word() Marks the word at the edit positions as a highlighted block. Printer_Line Returns the line number on the printed page that the next Print() command will print to, e.g. 1 - 66. Printer_LPP Returns the printer's "Lines per page". Translate_Char() Return the resulting character after translation, e.g. from EBCDIC to ASCII.