The SemWare Editor

The Semware Editor (TSE)
Original authorSammy Mitchell
DeveloperThe SemWare Corporation
Initial release1985; 40 years ago (1985)
Stable release
4.49[1] Edit this on Wikidata / January 2023
Operating systemWindows, Linux, MS-DOS, OS/2
Platformx86
Available inC
TypeText editor
License2021: BSD-2-Clause[2]
1985: Proprietary
Websitewww.semware.com

The SemWare Editor (TSE) is a text editor product line. Initially named QEdit and released November 1985 as shareware, it was later modified to run as a terminate-and-stay-resident (TSR) program, and ported to OS/2[3] and eventually evolved (via rewrite) to TSEPro (professional edition).

TSEPro supports many productivity features including an automation macro language, regular expression search and replace, keystroke record and playback, undo and redo, and user-assignable shortcut keys. Like its predecessor QEdit, TSEPro is often used as a code editor.[4]

Older versions (QEdit) supported MS-DOS and OS/2, and newer versions (TSEPro) support Windows and Linux.

QEdit

[edit]
Manual, box and disk (circa 1990)

Initially, QEdit ran only on MS-DOS. As memory of contemporary computers was limited, less memory use was desirable. QEdit used only 50 KB whereas some contemporary editors used 10 times as much.[5] Early versions maintained file content in conventional memory, but to support larger files, later versions supported various DOS memory management features including expanded memory (EMS), extended memory (XMS) and virtual memory, up to a maximum of 16 MB.

QEdit was ported to OS/2 as a 16-bit application for OS/2 1.x. Version 1.50 is dated February 1990.[6]

SemWare ported QEdit for 32-bit OS/2 with the release of QEdit Pro 3.0 for OS/2 in February 1994 which sold for $99. Version 3.0 includes multi-file operation, HPFS support and access to the OS/2 Clipboard. SemWare claimed over 120,000 licensed users on all platforms at that time.[7]

The last versions were released as The SemWare Editor Junior edition.[8] The last version was released in February 1997 for OS/2 with the name "TSE Junior/2".[9] It is functionally equivalent to TSE Junior v4.00e with support for OS/2's system-wide clipboard and long filenames. It retailed at the time for $99 and was supplied with a copy of the MS-DOS basic version.[10]

TSEPro

[edit]

QEdit was rewritten and significantly expanded, and eventually released as The SemWare Editor Professional (TSEPro) edition which includes a macro programming language, syntax highlighting, and large file support.[11] The initial release maintained the tradition of fast I/O and response, fast search, a simple text scripting language and the fundamental design of a native core with functionality split between native code and scripting.[12] New features included regular expression search and replace and a more powerful scripting language (with access to DLL entry points).

Earlier versions operated in the console window in text-only mode with limited character sets and colors. Version 2.6 was a native Win32 port, but was still character-based (using the Win32 Console APIs). Version 4.0 included the Win32 application rewritten as a pixel-based graphical application (g32.exe) using Graphics Device Interface (GDI). This is commonly misunderstood to be a console application, as it still appears textual despite being a Win32 graphical application. Visually, g32 appears to work in lines and columns, though it is a graphical application (via WinMain and GDI; not the Console API).

SemWare Application Language

[edit]

The macro programming language, SemWare Application Language (SAL), uses a Pascal-like notation supporting procedural functions and procedures, local and global variables, constants, a preprocessor including common #include and #ifdef keywords, iterative and recursive control structures, and many text-editing-specific functions. SAL supports two data types: an integer is a 32-bit, base-2, signed, integral number, and a string is a fixed-size array of characters, with a maximum definable length of 255 characters. SAL supports the creation and use of text buffers; including non-interactive buffers; not visible to the user.

For example:

proc Main()
    integer i
    for i = 1 to 3
        Warn("Hello world ", i)
    endfor
end

Timeline

[edit]
Month Year Name Version Description
May 1985 QEdit First beta version
Nov QEdit 1.0 First official release – Written in Turbo Pascal
Feb 1986 QEdit 1.2 Multiple windows
Mar QEdit 1.25
May QEdit 1.25A
Jul QEdit 1.30
Apr 1987 QEdit 1.35
Jun QEdit 1.36
Jul QEdit 1.37
Oct QEdit 1.38 Size decreased to 29 KB
Feb 1988 QEdit 1.39
Feb QEdit 2.00 Pulldown menus added
Mar QEdit 2.03 Converted to Turbo Pascal 4.0
Apr QEdit 2.05
Dec QEdit 2.07 Added Column blocks
Feb 1989 QEdit 2.07A
Jul QEdit 2.08
Feb 1990 QEdit 2.1 Converted to C / First release of TSR version / First release of QEdit for OS/2 / First German translation
Mar 1991 First TSEPro beta / Includes first version of SAL, Virtual memory support, multifile, block support.
Aug QEdit 2.15
1992 Product line split into TSE Jr. (formerly QEdit) and TSE Pro
Mar 1993 TSEPro 1.0 First release, Virtual memory, macro language
Feb 1994 QEdit 3.0 Last product named QEdit / HPFS support in OS/2 version
Sep TSEPro 2.0 Help system, history
Mar 1995 TSEJr 4.0 QEdit renamed to TSEJr
Sep TSEPro 2.5 Multifile find, save state, last DOS version
Oct 1996 TSEPro 2.6 First Win32 version – Console only
Feb 1997 TSE JR/2[13] 4.0 first OS/2 version of TSEJr; console only
Mar First experimental Windows GUI version
Jun TSEPro 2.8 Color syntax highlighting
Dec 1998 Experimental Windows GUI version killed
Apr 2001 TSEPro 3.0 Undo/redo
May 2002 TSEPro 4.0 First GUI version
Feb 2004 TSEPro 4.2
Oct First beta for Linux
May 2005 TSEPro 4.4
Jan 2022 TSEPro 4.42 For Windows and Linux

See also

[edit]

References

[edit]
  1. ^ "SemWare homepage". Retrieved 24 October 2023.
  2. ^ "Generated TSE Manual".
  3. ^ Wilburn, Gene (July 5, 1993). "Homesteading the OS/2 applications farm". Computing Canada. 19 (14): 22. I took the plunge into native apps by obtaining OS/2 versions of two of my favorite DOS programs - QEdit for OS/2 and Buerg's LIST for OS/2.
  4. ^ social.wakoopa.com/software/tse-pro Wakoopa stats on TSE Pro as text editor
  5. ^ Rife, Bob (January 27, 1993). "QEdit fast, simple to use". The Globe and Mail. p. 9. Besides speed and ease of use, QEdit is compact, taking only 50 KB of space, compared with many other editors that can be 10 times the size.
  6. ^ "Metropoli files - metropoli/Pd".
  7. ^ "Archived copy". Archived from the original on 2005-08-10. Retrieved 2009-09-09.{{cite web}}: CS1 maint: archived copy as title (link)
  8. ^ The SemWare® Editor Junior V4.0 for MS-DOS
  9. ^ "SAC".
  10. ^ "EDM/2 - A Programmer's Editor Shootout - the SemWare Editor".
  11. ^ The SemWare® Editor Products
  12. ^ Holtzman, Jeff (April 1994). "Build your own text editor". Popular Electronics. 11 (4): 76. TSE is relatively speedy, although it's not as fast as QEdit. (The reason is that QEdit is strictly a RAM-based editor that cannot edit flies larger than available RAM.) On the other hand, TSE has numerous powerful features, including column-mode operations, sorting, regular expression search/replace, intelligent tabbing, support for C, C++. and Pascal program flies, and the ability to execute DOS programs (e.g., compilers and print utilities).
  13. ^ "OS/2 Shareware BBS Website". www.os2bbs.com. Archived from the original on 2000-12-11.
[edit]