* A revision to the font, Unicode, Tedit, and other modules to implement the MCCS character coding as the standard for internal text strings. MCCS is a variant of XCCS with arrows switched with circumflex/underscore and $ switched with currency, and allows for additional code assignments over time. :MCCS replaces :XCCS as the default external format, especially for source files. The file XCCS is removed in favor of the file MCCS, which includes the XCCS external format for backward compatibility.
* This includes a single Medley-font formatted font file for each of the family/size/face display fonts. The glyph assignments correspond to the MCCS character encoding (except for fonts with idiosyncratic encodings--Hippo, Symbol). All charsets from legacy font files are included in each file, and the character sets and glyphs in each file have also been extended by offline coercion from related families (e.g. Glyphs not in legacy Terminal are taken from legacy Modern). There should be fewer black boxes, and character-display shouldn't change when you switch fonts.
* The Unicode mapping tables have been redefined to set up correspondences between Unicode and MCCS, not XCCS. Separate XCCS to/from MCCS mapping functions are provided in the file MCCS; they are no longer included in INTERPRESS.
* TEDIT converts characters in legacy fonts to their new MCCS codes as it reads formatted files, marks the file as MCCS compatible and preserves the new codes on writing.
* Default keyboard assignments produce the MCCS uparrow and leftarrow for shift-6 and shift-hyphen, use Function-6 for circumflex and Function-10 for underscore.
See documentation in FONTCODECHANGES.TEDIT MCCS.TEDIT MEDLEYFONTFORMAT.TEDIT in docs/internal, and library/UNICODE.TEDIT.
* Inspectcode scrolls, has the correct window title
* Add promptwindo so M-f search strings are locally visible
* Fix FILETYPE for LLDISPLAY
* MEDLEYFONTFORMAT More efficient store and read of numeric Interlisp arrays
* Format implementation functions set a known variable *BYTECOUNTER*
The generic functions deal with updating the application variable.
\INCHAR eliminated in favor of \INCCODE.EOLC to make clear what it does.
OPENSTRINGSTREAM streams have their own format, and the string is always fattened.
READBITMAP doesn't mix character and byte reading
* AOFD: Don't execute \STRINGSTREAM.INIT
This creates a file device that is not used anywhere. The function OPENSTRINGSTREAM provides the functionality that this file device suggests that it would provide, but that functionality seems suspect at best. The function is left in the system for now, probably should be deleted at some point in the future so we don't try to maintain it if we trip over it.
* TTYIN: Fix an ancient coding error
but still doesn't solve the (DIRECTORY ?= problem #402
* LLREAD, FILEIO, XCCS: Improve charcode backing, copychars
Added \BACKCCODE.EOLC that backs up over EOL encoding bytes, simplifies \RSTRING2.
\XCCSBACKCCODE returns T/NIL according to whether it succeeded.
\XCCSOUTCHAR uses IPLUS16 for CHARPOSITION
COPYCHARS makes no assumptions about EOL encoding
But still no solution for #402
* LLREAD, TTYIN.LCOM fix#402
The bug showed up in TTYIN, but it was actually a bad edit in the generic backccode.
TTYIN.LCOM is just a recompile--that had never been done with various new declarations.
* DEFINE-FILE-INFO with its own reader environment
Including format. That reader environment also allows colon as a package delimiter, in addition to the funky control and upper panel character.
"Function" is now a synonym for character set 2. WITH-READER-ENVIRONMENT doesn't bind EXTERNALFORMAT.
* Changed *DEFAULT-MAKEFILE-ENVIRONMENT* to use Interlisp rdtbl
* Store FDEV's default externalformat in the FDEV
And related adjustments so that the display output stream (which is created in various places) is always created with the right (CR) EOL convention. Also a little simpler interface for creating external formats.
* All source files converted to LF
Also, HPRINT: EQUALALL knows about CL arrays
FILEIO: STREAM record with fields for external format functions
* Delete makeinit.dribble
* Converted CR to LF on internal/library and docs/Documentation Tools
this will give us a stable point on which we can make changes in coordination via git.
NO MORE USING A SHARED DROPBOX
Last major commit wihout a PR against a Medley issue.