The SemWare Editor explained

The Semware Editor (TSE)
Author:Sammy Mitchell
Developer:The SemWare Corporation
Operating System:Windows, Linux, MS-DOS, OS/2
Platform:x86
Genre:Text editor
Language:C
License:2021: BSD-2-Clause[1]
1985: Proprietary

The SemWare Editor (TSE) is a text editor computer program for MS-DOS, OS/2, Windows and Linux.

Starting in November 1985 as a shareware program called Qedit, it was later modified to run as a terminate-and-stay-resident (TSR) program, and ported to OS/2[2] and eventually evolved (via rewrite) to TSE. TSE was eventually ported to Windows.

TSE supports a Pascal-based macro language (SemWare Application Language or SAL), regular expression search and replace, keystroke recording and playback, full undo and redo, shortcut key assignment (both as configuration and on the fly) that allow extensive modification of the functionality of the text editor, and other features. Like its predecessor QEdit, TSE is used by programmers[3] and others.

QEdit

QEdit was an MS-DOS text editor requiring 50 KB of memory.[4]

QEdit stores all of the files being edited in RAM. Later versions of QEdit added support for the various systems of memory supported by MS-DOS: expanded memory (EMS), extended memory (XMS) and virtual memory, up to a maximum of 16MB.

QEdit was ported to OS/2 initially as a 16-bit application for Microsoft's OS/2 1.x. This 16-bit OS/2 version of QEdit had version 1.x. Version 1.50 for 16-bit OS/2 is dated February 1990.[5]

SemWare ported QEdit for 32-bit OS/2 with the release of QEdit Pro 3.0 for OS/2 on February, 1994 which sold for $99. Version 3.0 included 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.[6]

The last version released for OS/2 was "TSE Junior/2" v4.00e released on February, 1997.[7] It was 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.[8]

The SemWare Editor (TSE)

QEdit was rewritten and significantly expanded, and eventually released as The SemWare Editor (TSE) 1.0. 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.[9]

New TSE features included a more powerful scripting language (SAL), regular expressions, a native Win32 port, SAL access to Win32 DLL entry points, a 'graphical' port using the native Windows GDI (previous versions employed the console window), optional native dialogs (e.g. Open), and graphical features such as window transparency.

User interface

Earlier versions of TSE operated in the console window in text-only mode with limited character sets and colors. Version 2.6 added 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 the GDI. This is commonly misunderstood to be a console application, as it still appears textual despite being a native Win32 graphical application. Visually, g32 appears to work in lines and columns, though it is a graphical application (via WinMain and GDI APIs, not the Console API).

Editions

SemWare Application Language

The 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.

For example:

proc Maininteger Ifor I = 1 TO 3Warn("hello world ", I)endforend

Data types

SAL supports integer and string data types.

An integer in SAL is a 32-bit base-2 signed integral numeric; a string is a (declared) fixed-size array of characters, with a maximum definable length of 255 characters.

SAL APIs support creation of arbitrary buffers, including non-interactive buffers not visible to the user. Many functions are available to access and manipulate buffers and their contents, effectively acting as very large text containers.

Timeline

MonthYearNameVersionDescription
May1985QEditFirst beta version
NovQEdit1.0First official release – Written in Turbo Pascal
Feb1986QEdit1.2Multiple windows
MarQEdit1.25
MayQEdit1.25A
JulQEdit1.30
Apr1987QEdit1.35
JunQEdit1.36
JulQEdit1.37
OctQEdit1.38Size decreased to 29 KB
Feb1988QEdit1.39
FebQEdit2.00Pulldown menus added
MarQEdit2.03Converted to Turbo Pascal 4.0
AprQEdit2.05
DecQEdit2.07Added Column blocks
Feb1989QEdit2.07A
JulQEdit2.08
Feb1990QEdit2.1Converted to C / First release of TSR version / First release of QEdit for OS/2 / First German translation
Mar1991First TSEPro beta / Includes first version of SAL, Virtual memory support, multifile, block support, all in a 30 KB DOS .EXE.
AugQEdit2.15
1992Product line split into TSE Jr. (formerly QEdit) and TSE Pro
Mar1993TSEPro1.0First release, Virtual memory, macro language
Feb1994QEdit3.0Last product named QEdit / HPFS support in OS/2 version
SepTSEPro2.0Help system, history
Mar1995TSEJr4.0QEdit renamed to TSEJr
SepTSEPro2.5Multifile find, save state, last DOS version
Oct1996TSEPro2.6First Win32 version – Console only
Feb1997TSE JR/2 v4 for 32-bit IBM OS/2[12] 4.0First OS/2 version of TSEJr – Console only
MarFirst experimental Windows GUI version
JunTSEPro2.8Color syntax highlighting
Dec1998Experimental Windows GUI version killed
Apr2001TSEPro3.0
May2002TSEPro4.0First GUI version released
Feb2004TSEPro4.2
OctFirst beta for Linux released
May2005TSEPro4.4
January2022TSEPro4.42Version for Microsoft Windows and version for Linux

See also

Notes and References

  1. Web site: Generated TSE Manual.
  2. Homesteading the OS/2 applications farm. Gene. Wilburn. Computing Canada. July 5, 1993. 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..
  3. social.wakoopa.com/software/tse-pro Wakoopa stats on TSE Pro as text editor
  4. News: QEdit fast, simple to use. Rife. Bob. The Globe and Mail. January 27, 1993. 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..
  5. Web site: Metropoli files - metropoli/Pd.
  6. Web site: Archived copy . 2009-09-09 . 2005-08-10 . https://web.archive.org/web/20050810081929/http://www.brado-bbs.de/ra233c.htm . dead .
  7. Web site: SAC.
  8. Web site: EDM/2 - A Programmer's Editor Shootout - the SemWare Editor.
  9. Build your own text editor. Jeff. Holtzman. Popular Electronics. April 1994. 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)..
  10. http://semware.com/html/tsejrfl.html The SemWare® Editor Junior V4.0 for MS-DOS
  11. https://semware.com/html/products.php The SemWare® Editor Products
  12. Web site: OS/2 Shareware BBS Website . www.os2bbs.com . dead . https://web.archive.org/web/20001211020200/http://www.os2bbs.com/Download/edit.html . 2000-12-11.