Mar 2020 2.02.03 ------------------------------------------------------------------------------ data.c Added SESSION_ACTIVE field to #info session save mapper.c Added MAP CREATE EXIT and MAP DELETE EXIT events. history.c Added #history get option. draw.c Added #draw map option. event.c Added MAP ROOM and MAP REGION mouse events. MAP ROOM only triggers when the mouse is above a room, MAP REGION triggers anywhere in the map region, as defined by default or as defined with #map offset. files.c #read will now warn if there is a possibly missing semicolon. config.c Can add non-colors in #config command_color by escaping the characters. Example: #con command <178>\>\ <128> line.c Added #line multishot {number} {argument} which should make all created triggers fire the given number of times before expiring. line.c Added #line local {argument} which should make all indirectly created variables local. variable.c Updated %h to allow #echo %+40h {some text} update.c Added the DISPLAY UPDATE event which is triggered right before the final display update when new data has become available. port.c Added PORT INITIALIZED and PORT UNINITIALIZED events, both can be prefixed with GAG to suppress the default system message. path.c Updated #path unzip to take the new speedwalk format. telopt_client.c Added IAC SB NAWS event, can be caught. split.c Added SCREEN SPLIT FILL event, which triggers on the split line drawing routine, can be caught. memory.c Added a custom memory stack, still a work in progress. utf8.c Added #config charset CP1251TOUTF8 cursor.c Added #cursor {preserve macro} which when called from within a macro will preserve the macro state. Example: #macro {\cg} {#showme e: end\nh: home;#cursor preserve macro} #macro {\cge} {#showme end} #macro {\cgh} {#showme home} cursor.c Added #cursor {reset macro} which when called from within a macro will reset the macro state. path.c Added #path get {LENGTH|POSITION} Jan 2020 2.02.02 ------------------------------------------------------------------------------ config.c Added #config {packet patch} {auto} support which will result in automatic telnet eor/ga handling and automatic packet patching if #prompt is set correctly. help.c Added auto-link generation for #help when mouse tracking is enabled. Still experimental. mapper.c Added #map get/set direction/pathdir to get/set the current direction you are facing in numeric and alphabetic notation. tables.c Added italic and unitalic #highlight keywords. tables.c Pressing ctrl-delete will delete one word per default. mapper.c Fixed #map undo issues with #map insert and #map dig. mapper.c Now shows destination in #map exit base.c Added %+64b and %+64B support to #format to convert to and from base 64 encoding. Added %+64z and %+64Z support to #format to zip the string and convert it to base 64. May not compress it much but may have some utility to store passwords. Security through obscurity. Added experimental %+252b/z and %+252B/Z options for Base 252 encoding. draw.c Added FAT, CURSIVE, SCROLL, and SANSSERIF draw options. input.c ctrl-v will now correctly capture ctrl-alt-f and similar combinations. ctrl-v will also allow pasting blocks of text. Example added to the SCRIPTS file. event.c Added GAG SESSION CONNECTED, GAG SESSION CREATED, GAG SESSION DISCONNECTED, and GAG SESSION TIMED OUT events. mapper.c Added #map roomflag fog. Works like #map roomflag hide but the flag is auto cleared on entrance. line.c Added #line convert options. mapper.c Aded MAP CREATE ROOM and MAP DELETE ROOM events. utils.c Increased the entropy of the random number generator. list.c #list order sorts existing lists numerically. list.c #list sort sorts existing lists alphabetically. sort.c Added sorting routines utilizing quadsort. list.c Added #list reverse option. cursor.c Added default bindings for ctrl-left, ctrl-right, and ctrl-backspace screen.c Added advanced link support. To create an advanced link surround a keyword with the \e[4m keyword \e24m tags and prefix it with \e]68; code \a. The code must be valid MSDP, which on click will spawn a LINK mouse event holding the MSDP data as a tintin table. Example: #config mouse on #showme {\e]68;\x01key\x02val\a\e[4mthis is a test\e[24m} #event {SHORT-CLICKED LINK MOUSE BUTTON ONE} {#showme {[%4]}} screen.c Added basic link support. To create a basic link surround a keyword with the \e[4m keyword \e[24m tags. When clicked with mouse support enabled it'll spawn a LINK mouse event. map.c Added #map exitflag