New Features in Version 8.0
- Started adding Unicode support to the WinOne® Command Prompt. From v8.0 onwards, the WinOne® Command Prompt will include Unicode support. If you
require an ANSI version of the WinOne® Command Prompt then please use v7.9.
The WinOne® Command Prompt now supports foreign character encodings that are part of the Windows Unicode standard (ie. UTF-16 little-endian).
The Unicode standard includes just over 1 million characters encoded using 1 or more words (ie. a word is 2 bytes long).
The ANSI standard includes 256 characters encoded in 1 byte and makes up the first 256 characters in the Unicode standard.
When the WinOne® Command Prompt starts it will display the character encoding used internally, which is "Unicode" in this version of the WinOne® Command Prompt.
Terminal fonts are suitable for displaying ANSI characters and TrueType or OpenType
fonts are suitable for Unicode characters. Using Terminal fonts on the WinOne® Command Prompt will result in a lot of undefined characters
being displayed for all characters above the first 256 Unicode characters. Typically, these undefined characters could be
displayed as a space character, an up-side down triangle or even a question mark. To avoid this from happening it is
recommended that you set your font to use a TrueType or OpenType font, either Lucida
Console or Courier New in the font tab. The WinOne® Command Prompt uses Courier New as it's default
font when the WinOne® Command Prompt is first installed on Windows.
A good font to install in Windows for Unicode characters is Unifont. It is the most complete fixed width Unicode font
available for download and the WinOne® Command Prompt will automatically make Unifont choose-able in the Font tab
when Unifont is installed on your Windows operating system. You can download Unifont from
http://www.unifoundry.com/unifont.html. Do not forget to rename the font file to unifont.ttf after you unzip it (to
remove the version number attached to the file name). Then copy it into your Windows font directory. Typically, this is
Windows includes automatic Font Substitution which in our case can lead to some undesirable results as Windows will
attempt to substitute missing characters in one font with other characters from another font, automatically! This
often means fonts are substituted which are the wrong pixel size for use with the WinOne® Command Prompt. The WinOne® Command Prompt will detect this and
display a question mark character when the font pixel size for any character is incorrect. The character is still the
correct character internally with in the WinOne® Command Prompt, but it is simply displayed as a question mark character on the screen.
The WinOne® Command Prompt v8.0 will not work on Windows 98 2nd Edition or any earlier Microsoft operating systems as there is
very little support for Unicode in those operating systems. Unicode support first appeared in Windows NT 3.1 and
a small amount of Unicode functions where added to Windows 98SE as a patch. If you need a version of the WinOne® Command Prompt to
work on one of these earlier Microsoft operating systems, please use the WinOne® Command Prompt v7.9.
People that purchase WinOne® Command Prompt v8.0 and need to run the ANSI version of
the WinOne® Command Prompt can request a free registration code for v7.9 via email.
Please note, the conversion of the WinOne® Command Prompt to Unicode is a work in progress!
- The following Commands have been updated to work with Unicode text files :-
- Command CAPTURE - accept Unicode characters in filenames.
- Command DESCRIBE - accept Unicode characters in file descriptions.
- Command FIND - search Unicode text files for Unicode characters.
- Command FOR - /F switch updated to work with Unicode text files.
- Command MORE - work with Unicode text files.
- Command PRINT - can print out Unicode text files.
- Command READLN - work with Unicode text files.
- Command REPLACE - replace Unicode characters in Unicode text files.
- Command TYPE - display Unicode text files in little-endian format.
- Most WinOne® Command Prompt Commands, including Batch Commands, have been updated to work with Unicode characters.
- Redirection in the WinOne® Command Prompt has also been updated to work with Unicode text files for both input and output. This can be switched on or off in the System Options tab.
- The WinOne® Command Prompt supports Batch Files saved in Unicode little-endian text file format. Windows NOTEPAD.EXE supports the Unicode little-endian text file format. Simply use NOTEPAD.EXE to write your batch files and save them as Unicode. Windows CHARMAP.EXE is also very handy if you need to insert a Unicode character into your batch file that is not available on your keyboard.
- Started updating the WOIO Library to support the Unicode standard. The WOIO Library now includes many new Wide and TCHAR functions, along with the default ANSI functions. The WinOne® Command Prompt will internally convert between ANSI and Unicode depending on the function called by your External Command. See the WOIO help file for more information on all the new functions. The version number for the WOIO Library has been increased to v4.7.
- As a result of the Unicode release of the WinOne® Command Prompt, all External Commands passing colour information as a special characters in printf() is no longer supported. For example :-
You can no longer use printf() to change text colours. Please use textcolor() and textbackground() instead. For Example :-
printf("%c%d%c bytes\n", COL_NUMBER, bytes, COL_TEXT);
If you have written an External Command that uses printf() to change text colour, it will need to be modified and recompiled with the new WOIO library.
textcolor(COL_NUMBER); printf("%d", bytes);
textcolor(COL_TEXT); printf(" bytes\n");
- Added redirection support for the WinOne® Console Emulator. You can now redirect the input and/or output of Console programs under emulation to/from a file on the WinOne® Command Prompt command line. for example, PING >1.txt
- Some console programs do not export their standard IO handles which are needed by the WinOne® Console Emulator for emulation to work. When the WinOne® Console Emulator can not work out what the standard IO handles are for a Console program under Emulation, then a suitable error message is displayed instead of the Emulator crashing. This can occur in earlier Windows versions (for example, Windows 2000) where msvcrt.dll is missing a function that allows the WinOne® Console Emulator to work out what the standard IO handles are.
- Increased the version number to 1.6 Beta for the built-in WinOne® Console Emulator. The New version includes more emulated API functions and a number of internal improvements.
- Fixed the install program to correctly setup the win_one.ini file mapping into the registry when the WinOne® Command Prompt is installed on a 64 bit Windows operating system.
- Fixed a problem where the mapped network drives for the currently logged in user would not be mapped in the WinOne® Command Prompt. This occurs in Windows Vista and up. This problem is not a bug in the WinOne® Command Prompt, instead it is a feature of Windows. See knowledge base article 937624 (http://support.microsoft.com/kb/937624).
Instead, the WinOne® Command Prompt will now automatically detect missing mapped network drives for the currently logged in user and attempt to re-map them.
- Included a few second time out when the WinOne® Command Prompt checks for a new WinOne® Command Prompt version and there is no response from our server. Previously, the WinOne® Command Prompt would just wait forever for a response and ^C needed to be pressed to cancel the check. Now it will simply time out and return the command prompt after a few seconds.
- Fixed a bug where the small resize bars at the bottom right handle corner of the main WinOne® Command Prompt window could be missing. This only occurred on older Windows operating systems like Windows 98SE. This has now been fixed and will no longer happen.
- Many internal optimisations and improvements.