$MirOS: contrib/code/jupp/NEWS,v 1.123 2018/02/14 22:28:12 tg Exp $
-------------------------------------------------------------------

jupp-current

- …

JOE 3.1jupp35

- rearrange the jupprc help cards, adding missing items
- move isrch from ^[S to ^[T
- add/prefer ^QT for delbol
- move open from ^[b to ^]
- fix massive allocation miscalculation typo
- correct sizeof(a?b:c) where b=char[] misread as sizeof(pointer)

JOE 3.1jupp33

- Fix several issues pointed out by Coverity Scan
  * dead code
  * use-after-free (minor)
  * uninitialised variables (no relevance)
  * TOCTOU in DEADJOE writing (major)
  * nil pointer deref (no to minor relevance)
  * infinite loop (indeed, but no practical relevance)
  * failure to restore non-local value (minor, unpractical)
  * memory leaks (minor)
  * fd leaks (minor)
  * some Coverity boilerplate
- Constify and clean up code further
- Allow *any* char for {to,rv}match (goto next same in given direction)
- Fix regression: `` did no longer insert a sole ` (etc.)
- Improved shebang and diff recognition of syntax highlighting file types
- Render instruction to show online help as BLINKING BOLD so it stands out
- Let screen scroll back to the left on ^QL, ^B, ^KD, while in hex mode
- Slightly safer saving of backup files, using fsync(2) if existent
- Add new command “sync”
- (crb3) Add ^QV to jupprc; add WordStar documentation references;
  (tg) Rename ^[! to ^[' to match ^K'; (crb3) Add ^[@ and ^[!
- jupprc: Fix eolmenu; replace bol with home for smarthome users;
  switch ^[? to show macros (matches WS), query moves to ^[/ (which was
  unused); ^U can abort menu and prompt (matches WS)
- Sync improvements across rc files
- Remove obsolete GNU autoconf check

JOE 3.1jupp32

- Harmonise help rendering in jupprc (also for 2.8, 3.7, (NEW) 4.4)
- Update internationalisation data to Unicode 10.0.0 with bugfixes
- Don’t limit JOE_FILENAME
- Optionally be NOMMU-safe: use vfork(), disable stuff needing fork()
- Let ^K] also remove whitespace at EOF
- Major code cleanup and a lot of warning fixes
- Improve syntax highlighting (conf, c, all dark blue-using ones)
- Don’t use sscanf(3) any more (dietlibc complains about bloat)
- Add way to disable use of the FPU (including Math), for klibc
- Make assume_color[sic!] actually work
- Recognise libncursesw for tgetflag(3); add --disable-terminfo
- Add a flag to disable SELinux even if found
- Modernise C features to C89 (prototypes!)
- Do not crash if inserting text from a macro after cursor moved
- With -DSMALL, use 8 KiB less .bss
- Do not write duplicate entries, e.g. into filename history
- Begin handling some pointer polymorphism more correctly
- Plug a few memory leaks

JOE 3.1jupp31

- Fix <bsd/string.h> usage issue on Haiku
- Make some signal handlers a bit more safe
- Remove unused Unicode categorisations (~15K in the binary)
- Update internationalisation data to Unicode 10.0.0
- Partial fix for redrawing lines with combining characters
- Quell stricter GCC 7 warnings
- Fall back to /dev/tty if stdin or stdout is not a tty(4)
- Add new command “abendjoe” to exit with errorlevel 1, cf. AbEnd
- Introduce “presentation mode”, F6 toggles zoom/fullscreen;
  F7/F8 go one file (“slide”) back/forth, F9 pipes the entire
  file (needs rectangle mode disabled) and offers previous command
- Fix some ctags operations segfaulting

JOE 3.1jupp30

- Fix spelling mistakes, some found by lintian (thanks!)
- Silence a GCC 6 warning about content of a comment (WTF‽)
- Fix segfault trying to fnext a block-restricted search when
  no block is active
- Make Freedroidz macro (^KF) more reliable, simpler, run parserr
- Apply several bugfixes and optimisations to the code
- Improve the jupp32 build script
- Fix a few places where allocated memory was not properly zero’d out
- Unbreak syntax highlighting for nōn-UTF8 locales (tty I/O charmaps)
- For systems without setlocale, remove optional @modifier part from
  LC_ALL/LC_CTYPE/LANG (if present) before testing for valid charmap
- Disable setlocale for old cygwin32; use the current codepage instead
- Add JOECHARMAP override for locale/codepage-detected I/O charmap
- Display codes 128–159 in the CharTable help card properly
- Avoid the Win32 console beeping on • by making it non-printable (WTF)
- Improve some documentation façets
- Add “-CYGhack” command line option; use it in right-click menu (WTF²)
- Do not force use of /usr/local in configure on Solaris
- Use ~/.jupp/, not ~/.joe/, as basepath for user charmap/syntax files

JOE 3.1jupp29

- Update internationalisation data to Unicode 9.0.0
- Bind execmd in jstarrc, so all flavours bind it
- Fix paths in joe(1) manpage
- jupprc: ^Q= searches for merge conflict markers (CVS, git)
- Add syntax file for tex (LaTeX; *.cls *.sty *.tex)
- Make syntax highlighting code use UTF-8 by individual octets
- ^Q] now also works for ASCII quotation marks (jupp, jstar)
- ^Q[ is distinct from ^Q] when ambiguous (jupp, jstar)
- Unbreak tab-completing filenames with spaces
- Fix filenames with backslashes
- configure --enable-sysconfjoesubdir to also get the manual page
- Apply fixes from lintian, thank you!
- Only look in JOERC/termcap if its path does not include a delimiter
- Allow overriding the name of the built-in *jupprc (to *jupp32rc,
  so the jupp32 build can use the pristine source)
- Add win32 self-relocation, no hardcoded JOERC any more, optional
  (used in the jupp32 portable build but NOT for the Cygwin package!)
- Fix generating the manpage, now done by the Makefile

JOE 3.1jupp28

- Document to not quote the argument to -backpath nor append a comment
- Remove unused code, redundant checks
- Replace illegible code with better and more standards-conforming one
- Access fix for the serial line speed array
- Introduce ^KF (jupprc): compile and download NXC program to NXT brick, for
  Freedroidz, a project of Teckids e.V. sponsored by tarent solutions GmbH
- Better const-cleanliness of code
- Quell New File message for scratch buffers
- Fix URI in ChangeLog file
- Actually build with LFS on GNU/Linux

JOE 3.1jupp27

- Update complete internationalisation code and data to Unicode 7.0.0
- Minor fixes to C language syntax highlighting; use it for NXC too
- Fix compilation on SuSE Linux 1.0 (portability)
- Stop trying to match ed(1) diffs for highlighting (false positives)
- Add cp437 encoding

JOE 3.1jupp26

- Syntax files are now both parsed and applied on bytes, not characters;
  matching on Unicode characters is possible using buffer/strings though
- Prevent segfault on ‘`…’ (out-of-bounds keymap array access)
- Fix m{,s}{old,new} operation when opening multiple files from cmdline
- Update “visible spaces” while typing and fix it for nōn-UTF8 files
- jupprc: No longer wordwrap *.{asc,doc,txt} by default
- Add five or six hooks for modification to rc files (Natureshadow’s idea)

JOE 3.1jupp25

- Better colouring of diffs; better support for CVS and git
- New wcwidth code; aligned with Unicode 6.2.0
- Prevent accidentally freeing an environment string
- On SIGWINCH, resize menu to avoid using stale columns information
- msg command with empty argument now clears message buffer
- New "nop" command
- Permit changing keymap for prompt windows
- Fix CUA keymap paste mode
- Handle xterm bracketed paste for prompt windows
- In prompt windows (paste or regular), ^L is now nop (screen refresh)
- Honour TMPDIR environment variable (before TEMP)
- Sanitise handling of temporary files, somewhat
- Fix subprocess (pipe) corruption of data (LP#1198221)

JOE 3.1jupp24

- Bugfix for all *rc files: -guess_indent is a global option,
  not a per-file option; using it as the latter led to spurious
  whitespace mis-detection, remove them (and make *.{asc,doc}=txt)

JOE 3.1jupp23

- Overhaul and harmonise syntax detection and editor defaults
  across all six *rc files (except jupp continues having no
  wordwrap by default and now disables guess_indent except in
  *.txt files); improve shell/mail wildcards; recognise a lot
  more diff files by pathname or content patterns
- Recognise more Python keywords in syntax highlighting
  (patch contributed by Eike Jesinghaus)
- Allow building against bionic libc (for Android)
- Securely make backup files using mkstemp(3), thanks Han Boetes
- Print math results more precisely; if possible, as integer
- Permit hexadecimal input in math expressions
- Hook up GOTO “byte” offset command as ^QO, “col”umn as ^Q- and
  scratch+præfix as ^K- in jupprc
- ^KE no longer trashes buffers cloned by ^KO and ^K; needs not split
- jupp: ^[# inserts last math equation; ^[= its result
- Use ${SHELL:-${EXECSHELL:-/bin/sh}} for all shells and check access
- After ^KR, the current position is before and ^QP after the insertion
- ^[p and xterm-xfree86 paste mode (automatic in the latter)

JOE 3.1jupp22

- Fix ternary operator PHP syntax highlighting hiccup
- Fix C string percent handling syntax highlighting hiccup
- Use unlimited # of sync lines for Assembly, C, Java™, Perl,
  Python, Shell, Tcl highlighting, too
- Refresh wcwidth code from Unicode 6.1.0
- Check names of built-in files converted to lowercase, for Win9x
- Improve recognition of debdiffs and 'bzr diff' output
- Sync built-in jupprc with full one (a bit of CUA was added)

JOE 3.1jupp21

- Fix use of uninitialised memory
- Do not underflow attribute buffer in syntax highlighting code
- Use automake version fixing CVE-2012-3386

JOE 3.1jupp20

- Fix mistakes in the ctime replacement code for klibc
- Fix mistakes in the configure script
- Disable CR-LF mode upon entering hex edit mode
- Remove junk from files and improve comments
- Configure for Large File Support

JOE 3.1jupp19

- Support ncurses tinfo split
- Use glibc specific get_current_dir_name if existent and PATH_MAX
  is undefined (as on Debian GNU/Hurd, for example) instead of a
  fallback value of 4096 with PATH_MAX-using code
- Build with dietlibc (wheezy) or klibc 2.0 now works
- Default syntax highlighting sync lines elevated to 120

JOE 3.1jupp18

- Fix displaying ASCII tilde in non-UTF-8 encodings
- To not make backups is now the default for all flavours
- The jmacs flavour behaves a bit more like the jupp flavour
  (patch contributed by Johannes Langøy)
- In xterm, Shift-{Cur{Up,Down,Left,Right},{,Ctrl-}{Home,End}}
  now select text (idea contributed by Dmitry Geurkov)
- Fix bugs in *rc files; sync joerc and rjoerc with each other
- Unbreak passing -keymap on the command line
- New keymap "cua" (not jpico, jmacs) for GUI-like ^Z ^X ^C ^V

JOE 3.1jupp17

- Skip restoring the terminal after exiting jupp
- Improve syntax highlighting for shell
- Fix restoring context after losing sync for diff
- Improve diff detection

JOE 3.1jupp16

- Better match for Python files for *rc (except jupprc, which had it already)
- Improve jupprc file; split between three versions (2.8/DOS 3.7/*nix 3.1jupp)
- The jupprc file now has a character map (ASCII / 8-bit table)
- Clean up some compiler warnings; check for strlcpy/strlcat prototypes

JOE 3.1jupp15

- Update COPYING file from MirOS master (refreshed from FSF master)
- Refresh wcwidth code from Unicode 6.0.0
  XXX maybe use MirBSD libc code for {to,is}wc* too, extended beyond BMP
- Better error messages when parsing syntax and rc files
- Ignore syntax keywords from joe-3.7 diff.jsf that are not yet implemented
- Update strlfun.c with an even more portable variant from MirBSD/kern
- Port to Minix 3 by request of Alby <alb348@gmail.com>
- Display help hint in initial status line (unless -nonotice)

JOE 3.1jupp14

- Update diff syntax file from joe-current
- New option (L)ast in search-and-replace
- Backport some bugfixes from joe-current
- Let execmd cmd accept macros, not just commands
- Let macros cmd escape backslash correctly
- Flag --disable-getpwnam to link statically with eglibc
- Compiler warning cleanup

JOE 3.1jupp12

- Fix compiler warnings
- Fix the manpage wrt. UTF-8 hyphen/dash/minus
- Add missing headers on some platforms
- Add support for Debian libbsd
- Add way to disable warnings wrt. Anil Madhavapeddy's bounds checker
- Unbreak SELinux support
- Fix `x## for 80‥FF in !UTF-8 mode
- Use the inverse/underlined U+FFFD for some more occurences of
  undisplayable (control) characters and incomplete multibyte
  sequences; fix displaying these at end of line
- Ensure C0/C1 control characters are never sent to a UTF-8
  terminal, even from !UTF-8 documents
- Add built-in (minimal) jupprc file, for standalone EXEs
- Backport hex editing mode; improve it, use uppercase
- Implement `r## in UTF-8 mode (same as `x## in !UTF-8 mode)
  and `u (interactive) in !UTF-8 mode (same as `x in UTF-8 mode)
- Add new Makefile variable sysconfjoesubdir=/joe (to override
  the /joe in /etc/joe/jupprc for example)
- Update config.guess and config.sub
- Provide a real ANSI (cp1252) codepage
- Fix build on AIX with xlC, Solaris with SUNWcc

JOE 3.1jupp11

- Split into two separate lines of *active* development:
  * JUPP for DOS (joe 2.8 plus some jupp patches and jupprc)
  * JUPP for Unix (joe 3.1 with all jupp patches and a diverging,
    more featureful jupprc than joe 3.1jupp10 had)
- Use some joe 3.x features in jupprc: assume_color, guess_crlf,
  guess_indent, purify, smartbacks; some are disabled by default
  though (autoindent, smarthome, smarthome+indentfirst)
- Enable syntax highlighting by default in jupprc, by popular
  demand, even if I still loathe it personally, like Rob Pike
- Add language/syntax selection into jupprc, with Python settings
  adhering to the most common coding standards
- The termidx binary can now be disabled by a configure option
- Manual page symbolic links are installed alongside the manpages

JOE 3.1jupp10

- Build fixes for Darwin
- Fix: smartbacks could not be used without autoindent

JOE 3.1jupp9

- Build fixes for AIX, gcc (thanks Adam "replaced" Hoka), any OEs
  without mksh installed
- Synchronise external files with upstream, licence cleanup
- Remove CR (DOS line endings) on ^K] as well in jupprc

JOE 3.1jupp8

- Bugfix (maybe) for backspace deleting more than it should
  when smart backspaces or auto-indent are off
- In UTF-8 mode, display illegal characters as reversed (inverse)
  underlined U+FFFD REPLACEMENT CHARACTER, one per octet (if these
  form a valid part of an invalid multibyte sequence, the first
  valid octets are not necessarily individually selectable)
- In UTF-8 mode, don't display the decimal ASCII value of a wide
  character; display the correct UCS-2 hex value (or <-2> for an
  invalid sequence or the 8-bit hex value of the octet for an
  invalid octet or invalid one-octet multibyte sequence) instead
- Upgrade to latest MirOS licence template

JOE 3.1jupp7

- Bugfix in bundled strlcat() implementation
- Bugfix (off-by-one array bounds) in from_uni()
- New option "vispace" to make spaces and tabs visible, like in
  Microsoft® Works®. Works best with Unicode.
- "noxon" and "baud" are now menu entries; these two and
  "keepup" have been moved to the top so they can be switched
  quickly if you're in an ssh situation
- Disable funny behaviour of keys in menus, fixes POLS
- Reduce memory usage a little
- In the options menu, if "return" is hit instead of entering a value,
  and it is not a string, it's handled sensitively: numbers keep their
  value, syntax gets unset, and encoding gets reset to the fdefault map.
- Nicely format the options menu (as columns); print values for the
  syntax and encoding options as well in the oversight, use ellipsis for
  strings which aren't displayed otherwise
- Spelling fixes in the options menu
- Honour internationalisation framework of MirOS #9-current and newer

JOE 3.1jupp6

- No code changes, only documentation and upstream sync

JOE 3.1jupp4

- Keyboard fixes in "jupprc"

- Add "ESC q" as alias for "^Q" in "jupprc"

- Update some files from upstream

JOE 3.1jupp3

- Fixed using new GNU Autotools

- Updated "jupprc"

JOE 3.1jupp2

- Fixed string functions

- Added "jupp" flavour

- No tab completion in search and replace ask windows

- UTF-8 works on LOCALE-less OSses (various BSDs)

JOE 3.1

- Regex and incremental search (jmacs ^S) now work for UTF-8

- More and improved syntax highlighting files, including Mason

- Use ^T E to set character set of file (hit <tab> <tab> at the
  prompt for a list of available character sets).

- Can install custom "i18n" style byte oriented character set
  definition files.

- No longer depends on iconv() (easier to compile)

- Fix bug where right arrow was not doing right thing on last line

- Fix UTF-8 codes between 0x10000 - 0x1FFFF

- Now prints <XXXX> for unicode control characters

- Improved smart home, indent, etc.

- TAB completion is now more "bash"-like

- When multiple files are given on command line, they end up in
  same order on the screen in JOE (before they were shuffled).

- Menu size is now variable (40% of window size or smaller if
  it's not filled).

- Added -icase option for case insensitive search by default.

- Added -wrap option, which makes searches wrap

- Added status line sequence %x: shows current context (function
  name if you're editing C).

- Added tab completion at search prompts and ESC-Enter for tab
  completion within text windows.

- Warn if file changed on save.

- Added Ctrl-space block selection method

- Added Ctrl-arrow key block selection method

- ^K E asks if you want to load original version of the file

- jmacs bugs fixes: upperase word, transpose words, ^X ^C is
  more emacs-like., ^X k and ^X ^V more like emacs.

- Much improved compile system ^[ c

- Much improved jpico

- aspell support.

JOE 3.0 (23 APR 2004)
- UTF-8
- Syntax highlighting
- Fixed ^C and ^D in shell windows
- Auto detect CR-LF (MS-DOS) files
- Fixed (or improved, anyway) shell windows for Cygwin
- During search & replace, the scroll found text on to screen
- File selection window is now 4 lines instead of 1
- David Phillips "smart home" key.
- Enhanced ^K , and ^K .
- Enhanced overtype mode
- Added picture drawing mode (can hit right arrow at ends of lines)
- Auto detect preferred indentation character TAB or SPACE

Overview of changes in JOE 2.9.8 (5 May 2003)
- fixed signal handling
- return of the context help
- fixed segfault when moving rectangular block
- code clean up
- killed deadlock when reformatting paragraph
- fixed skiptop handling
- SECURITY: drop suid and sgid bits when creating backup files
- fixed segfaults in isalpha()-like functions

Overview of changes in JOE 2.9.8-pre1 (14 Dec 2001)
- BUGFIX: don't exchange start and end point of the block in some cases
- defaulting to turn off -asis (locales take care of this; if joe doesn't
  print characters with 8th bit set properly, check if you have properly
  installed and set locales or simply turn on -asis option in joerc)
- fix to make joe compilable on *BSD
- fix to make joe compilable on systems without siginterrupt()
- added "support" for End key
- code cleanup: warnings removal (some still remaining, working on it)

Overview of changes in JOE 2.9.7 (7 Nov 2001)
- BUGFIX: always save (even not-modified) file
- BUGFIX: solve problem with freezing after saving unmodified file
- small documentation update

Overview of Changes in JOE 2.9.7-pre3 (29 Oct 2001)
- BUGFIX: wordwrap bug fixed (again and I'm sure forever)
- BUGFIX: don't change window when setting mark in multiwindow mode
- BUGFIX: use automake-1.5 to make joe compile on irix-6.5 with non-GNU make
- continuing code clean up: this code adds strict prototypes which raises
  a lot of warnings (they seem harmless) - we're working on their removal

Overview of Changes in JOE 2.9.7-pre2 (10 Oct 2001)
- use automake and autoconf for configuration system (for now versions
  automake-1.4-p4 and autoconf-2.52)
- a lot of warnings of compiler were removed
- SECURITY:: use mkstemp() for temporary files if available
- code clean up

Overview of Changes in JOE 2.9.7pre1 (19 Jul 2001)
- help system was slightly modified
- a lot of warnings of compiler were removed
- BUGFIX:: problem with freezing when save was solved (at least partially)
- BUGFIX:: undo after save of file (again same patch)
- FEATURE:: suffix of backup copy from SIMPLE_BACKUP_SUFFIX environment
  variable

Overview of Changes in JOE 2.9.7pre0 (02 Jul 2001)
- major BUGFIX:: wordwrap problem
- BUGFIX:: indentation
??* JOE can be compiled on Windows platform again
??* BUGFIX:: problem with ${sysconfdir}/joerc was solved

Overview of Changes in JOE 2.9.6 (13 Apr 2001)

- BUGFIX:: resizing window
- JOE can be compiled on Windows platform again
* BUGFIX:: problem with ${sysconfdir}/joerc was solved
- BUGFIX:: security patch for sprintf
- BUGFIX:: partially solved problem on Solaris with SegFault
- BUGFIX:: patch joe-2.8-security (slightly changed)
- BUGFIX:: patch joe-2.8-port
- BUGFIX:: patch joe-2.8-mips
- BUGFIX:: patch joe-2.8-vsmk
- BUGFIX:: patch joe2.8-time
- *rc files where moved from $(prefix)/lib to $(prefix)/etc or $sysconfdir
- Makefile.in (and Makefile) was rewritten
   - special prefix for package (more in Makefile.in)
   - use of system independent 'mkinstalldirs'
   - rc files are not rewritten
- TEST FEATURE:: added autoconf support
		program can be installed by ./configure; make; make install
- BUGFIX (v2.9.4):: go to previous word problem solved
- JOE can be compiled without locale.h again
- BUGFIX:: patch joe2.8-axphack.patch
- BUGFIX:: patch joe2.8-resize2.patch
- BUGFIX:: fixed problem with :include in rc files
- BUGFIX (v2.9.5):: portability problem with is_blank on nonGNU systems

Overview of Changes in JOE 2.9.5 (28 Mar 2001)

- new BUG:: can't be compiled on non-GNU systems (is_blank()) fixed in v2.9.6
- BUGFIX:: Fixed problem with resizing.
- SECURITY:: .[joe|rjoe|jpico|..]rc in actual directory is ignored
             because in this file can be defined which program run.

Overview of Changes in JOE 2.9.4 (27 Mar 2001)

- new BUG:: go to previous word; goes one character before this word
            fixed in v2.9.6
- FEATURE:: locale (LC_CTYPE) is accepted when skipping/deleting/... words

Overview of Changes in JOE 2.9  (22 Mar 2001)

- version 2.8 with patches from RedHat/Suse

Overview of Changes in JOE 2.8

- Fixed problem with TERMPATH string
- Added stupid two-letter names to termcap file
- Improved jmacs help and command set
- Improved README file

Overview of Changes in JOE 2.7

- putenv() was not portable
- utime was not portable
- special utime handling for NeXT
- forgot to \\ the \s in the default termcap entry
- changed some key defaults in jpicorc
- add IXOFF in termio/termios list
- left margin limit was incorrect
- allow '.' and '/' in file names for error parsing
- Needed ptem.h and stream.h for SCO_UNIX window size structure (?)
- wordwrap no longer propogates indent prefix
- paragraph format was broken for tab indented paragraphs
- pipe through shell now goes through stderr too
- added '-crlf' option
- looks for termcap file in JOERC/termcap

Overview of Changes in JOE 2.6

- Fixed stupid bug in termcap.c which prevented terminfo from working
- ESC h was missing from jpicorc
- Changes suggested by Dan Nelson:
   - backup files now attempt to have same permissions and times as original
   - Stat command now ands chars with 255 (don't know why this worked on my system
     without this...)
   - Maybe change shell invocation name- have to check this more

Overview of Changes in JOE 2.5

- No longer use ^[ O, ^[ A, ^[ B, ^[ C, or ^[ D for anything because they
  interfere with arrow keys.
- Couldn't create new files because of bug in readonly setting
- fwrdc/bkwdc were crashing the editor except when called from wordstar
- 'tr' command was not called in a portable way in jmacs
- 'tr' was causing problems with the spell-check macros as well
- filter region was not working: had to add 'query' in ^[ | macro
- Changed incremental search so that whatever key the command is bound to
  can be used to repeat the search (used to only be able to use ^S)

Overview of Changes in JOE 2.4

- Closing message was incorrect when exit macros (macros where the last
  command is abortbuf) were used.
- SuperPico rc file added
- Write block now writes the entire file if no block is set
- Added pico kill function for pico emulation
  (tried to do this with 'psh,markk,blkdel' where blkdel deletes lines if
   no block is set, but it didn't group the deletes right in the yank
   buffer)
- Filter block would leave the marks set
- Fixed ^@ in joe mode
- Fixed help screen glitches in wordstar mode
- If joe can't make a backup file it now prompts for you to save anyway
- Eliminated IDLEOUT compile option.  Now is the user gives - on the
  command line, joe uses /dev/tty.
- Added %o %O %a %A %X and %R status line messages
- Starts out in read only mode if loaded file can not be written to
- If joe can't find the termcap/terminfo entry, it instead uses the default
- termcap routines are now included even if you use terminfo.  If your
  terminal can't be found in the terminfo database, it will look in
  the termcap database too.
- The JOETERM environment variable can be used to bypass the TERM
  environment variable setting.

Overview of Changes in JOE 2.3

- Search & Replace bugs fixed
   - replace would mess up the end mark of a marked block
   - a search would trash ^KB if only ^KB was set
   - regex problem with \*
- Was using TCSANOW in posix driver.  Should have been using TCSADRAIN
- Format paragraph now correctly formats quoted news articles
- Attempted fix for SCO
- Fix for coherent
- Fix for old IRIX/SGI
- Fixed bug where if you used search & replace in a macro, and exiting the
  search & replace loop with right arrow key, then when you played the macro
  you got an extra ^[ in the input queue
- Added file hooks
- Added function to insert current keyboard macro into current file
- Added range checks to numeric option settings
- Restricted joe rc file added
- Added ':def' feature for rc files

Overview of Changes in JOE 2.2

- First attempt at MS-DOS version of joe
   - Direct screen write
   - Modifications for dos file/drive names
   - Use TEMP variable to figure out where to store temporary file
   - Smaller virtual memory page size
   - Backslashes in file name problem
   - CR before an LF looks like an LF
- Backward search ignore-case was not working
- Scalable window height was not working fully
- Spaces in file-names gave a problem with backup file creation
- TILDE option is not available in all versions of BSD
- Allow : as seperate for termcap filename list
- Next error / Prev. error was not tracking right
- tabs not displayed right in nxterr/prverr messages
- Block moves where the cursor was to the right of the block was broken

Overview of Changes in JOE 2.1

- rc file wasn't giving correct error messages for missing options
- the '-nobackups' options was mispelled: '- nobackups'
- editor was crashing because of problem in undo
- update bypass in utype has a problem when wordwrapping and scrolling
