Releases: nickgammon/mushclient
latest_commit
Fixed bug in GetGlobalOption for DefaultOutputFont and DefaultTimers…
latest_commit_debug
Update appveyor.yml
Version 5.06
Released on 29 March 2019
-
Added script function SetUnseenLines which allows you to control the number of unseen lines from the MUD (a counter). This can be used to "ignore" uninteresting lines.
[master 6c977de]
-
If a trigger omits from output, and trigger evaluation in all plugins has been cancelled, then the lines omitted are also omitted from the "recent lines" list. This may change how multi-line triggers are evaluated. Suggested by Fiendish.
[master d9706ab]
-
Modified the way fixed fonts are handled in some dialogs to that the FixFont function is only called if fixed-width fonts are wanted.
[master 2d7a2bb]
-
Modified the way WindowCreate works in an attempt to fix a problem with the contents of miniwindows not always redrawing correctly.
[master 1f98833]
-
Modified miniwindows blending functions to round rather than truncate in order to avoid some obscure problems with blending at less than 100% opacity.
[master 5411e48]
-
Modified the way internal notepad windows are created, and also changed the way text is translated. This is designed to work around an issue where incorrect text was shown in notepad titles.
-
Modified the way that plugin path names are saved when saving the world file. There is now a case-insensitive compare of the default plugins directory to the full pathname of the current plugin. This means that plugins which are in the default plugins directory should be saved with a relative path.
[master 95d4dcb]
-
Added some extra options for fading "old" lines from the output window. When activated (the default is to be not activated) then after a specified number of seconds the lines in the output buffer which are older than that will dim to a specified opacity. Effectively, this means older lines will go dim, indicating that they are not recent.
You can activate this by using the Immediate scripting window (Ctrl+I) and entering, at least, the first SetOption below, to make "fade_output_buffer_after_seconds" be some number greater than zero (30 to 60 might be reasonable choices).
Examples:
SetOption ("fade_output_buffer_after_seconds", 30) -- some figure in the range 0 to 3600 SetOption ("fade_output_opacity_percent", 50) -- fade to 50% (range 0 to 100) SetOption ("fade_output_seconds", 12) -- fade over 12 seconds (range 1 to 60)
This has also been added to the Config_Option_Changer plugin.
-
Added an option to have Ctrl+Backspace behave differently. With this option unset, Ctrl+Backspace recalls the last word from the last entered command (a bit like Esc / Period does in the Linux "bash" shell).
When activated, Ctrl+Backspace deletes the word to the left of the cursor (if any). If there is text selected then only that text is deleted.
To activate use the Immediate scripting window (Ctrl+I) and enter:
SetOption ("ctrl_backspace_deletes_last_word", 1) -- activate it
This has also been added to the Config_Option_Changer plugin.
[master a451ad8]
-
Modified the way the SetClipboard function works, to respect the "UTF-8" flag for the output buffer, when sending text to the clipboard.
This is intended for you to be able to put Unicode text onto the clipboard. Thanks to Fiendish for this code.
[master ef86b8c]
-
Made an option for the tab character to insert a tab rather than moving to the next button, in a multi-line edit window.
You will need to enable the global option: TabInsertsTabInMultiLineDialogs
See: http://www.gammon.com.au/forum/?id=14209
[master 65a4ff8]
-
Added the plugin Global_Option_Updater to the installer.
[master a8e8065]
-
Improvement for users of Chinese Big5 or GB2132 character sets. If the client is forcing a line break after the nominated number of characters in a line, do not split in the middle of a multi-byte character (which would turn it into two completely different characters). This only applies if UTF-8 is not active in the output window configuration.
-
Fixed crash or garbled error message if client is unable to connect to the MUD.
[master 441cbf9]
-
Fixed bug introduced in commit 9d4f265 where drawing to the output buffer was significantly slowed down (by a factor of about 30).
[master 4e2f265]
-
Added DefaultNameGenerationFile into the list of global options returned by GetGlobalOptionList.
[master a720c1c]
-
Reworked the plugin Global_Option_Updater to be more robust, particularly if an option has quotes in it. It also now uses the global options list from the currently-executing client, which makes it easier to set an option which was not previously known about.
[master 509c009]
-
After clicking on a hyperlink in the output window, the focus was not returned to the command window, which meant that the next keystroke (such as up-arrow) would not be acted upon. Now, clicking on a hyperlink returns the focus to the command window.
[master b9e52a1]
-
Fixed problem with PCRE regular expressions (eg. used in triggers and aliases) where if you used a named group (capture or wildcard) then the wrong capture value may have been returned.
-
Fixed bug where when using SetTriggerOption, if the option being set was multi_line or ignore_case, then the trigger would not be recompiled, and thus the new option would not take effect.
[master f99ffb2]
-
Fixed bug in script function PluginSupports, which would crash if a plugin had no script in it (the plugin being tested). For example, the supplied plugin "Omit_Blank_Lines" has no script in it.
[master 079ba7f]
-
Added support for 24-bit colour codes from the MUD as described here:
https://en.wikipedia.org/wiki/ANSI_escape_code#24-bit
This lets MUDs send full 24-bit colour sequences in the format:
ESC[ 38;2;<r>;<g>;<b> m Select RGB foreground color ESC[ 48;2;<r>;<g>;<b> m Select RGB background color
[master f3b9168]
-
Added support for 24-bit colour codes to the AnsiNote function. eg.
AnsiNote (ANSI (38, 2, 0, 255, 0), "This is green text")
[master c89d236]
Version 5.05
Released on 03 Feb 2017
-
Changed style runs slightly so that an empty style run can exist in a line. This is so that if one line ends with a colour change it can be picked up in the next line. Suggested by Fiendish.
[commit ab71be2]
-
Changed the WindowMenu script function to let you align the menu to a specified place around the selected point.
If the first character of the entire Items string is the "~" character, then the menu alignment is specified by the next two characters. The "~xx" characters are then removed and the rest of the string treated in the usual way (so you could then start a submenu, for example).
The two characters following the "~" are the horizontal and vertical alignments, as follows:
- Horizontal: L, C or R (left, centre, right)
- Vertical: T, C or B (top, centre, bottom)
Default is top left (so the menu aligns to the specified point and appears on the right and underneath). That is, top left is where the menu starts.
[master a57ce19]
-
Fixed bug in (comms) sending routine where under some circumstances data (commands) would not be sent. This also had the side-effect of preventing any further data from being sent, making it seem like any attempts to send commands would fail.
-
Upgraded SQLite3 from 3.13.0 to 3.16.2.
[master 38f28ec]
Version 5.04
Released on 14 Dec 2016
-
Fixed bug in AnsiNote where if you used 256-colour ANSI, followed by normal ANSI, the normal ANSI sequence would be incorrectly interpreted as 256-colour ANSI. eg.
AnsiNote(ANSI(0,38,5,15).."foo"..ANSI(1,37).."bar")
Would have shown "bar" in #00AFAF (the 256-ANSI colour 37) rather than white.
Also re-wrote AnsiNote completely to eliminate strange artifacts under certain conditions.
-
Fixed bug where when doing a Note (or similar) it would be deferred when done from inside a plugin callback, even if the current output line only consisted of other notes.
[master 7290cfe]
-
Fixed bug where setting the seconds for a timer (which fires "at" a time) using SetTimerOption would fail to change the seconds.
[master b51d331]
-
Fixed bug where after doing a Note, ColourNote, or AnsiNote the note colour might bleed through to the next line of MUD output. Thanks to Fiendish for detecting the problem and suggesting a solution.
[master 5d70148, 0f54ced]
Version 5.03
Released on 23 Sep 2016
-
Amended plugin MUSHclient_Help to add numbered matches. For example, if you search on "mchelp sounds" you will get a list like this:
Topics 1. Program features Functions 2. GetInfo - Gets information about the current world 3. GetSystemMetrics - Returns selected system information from Windows 4. PlaySound - Plays a sound using DirectSound 5. StopSound - Stop playing a sound started by PlaySound
You can now type "mchelp 4" to get help on "PlaySound". This saves picking up the mouse and clicking on a hyperlink.
[master d1b1821]
-
Added ability to display notes with strike-through formatting. To do this use NoteStyle (32) - possibly in conjunction with other bits (like bold, underline, etc.).
This would apply to Note, Tell, ColourTell, etc.
[master 08382b6]
-
After pasting a trigger/alias/timer into the list, the previous selection is re-selected.
[master a241059]
-
An error when reloading the script file produces a message in the output window rather than a dialog box.
[master aa0cd16]
Version 5.02
Released on 26 Jun 2016
-
Improved message in assertion in Text_To_Speech plugin, if SAPI cannot be loaded. Thanks Fiendish!
[master 797b455]
-
Added more SAPI commands into Text_To_Speech plugin. Namely: faster, slower, rate, voice, test, punctuation filtering, voice listing, buffer clearing, spoken help, debug printing. Coded by Fiendish.
-
Fixed bug in Timer management. Thanks Fiendish!
[master 35ef9fa]
-
Fixed bug in Trigger management. Thanks Fiendish!
-
Fixed bug where Timer dialogs did not appear in fixed width font when wanted.
[master 8661d66]
-
Fixed bug where unlabelled timers might fire out of the sequence they were submitted in.
-
Don't batch up notes inside plugin calls, if the current line length is zero.
[master 200c691]
-
Fixed bug where if you hid the scroll bar with the SetScroll script function, the scroll bar would be briefly redrawn each time a new line was displayed in the output buffer.
[master 1f5f0e7]
-
Upgraded LPEG library from version 0.12.2 to version 1.0.0.
[master 58caa37]
-
Added new script function utils.menufontsize (n)
For the benefit of players with large monitors, you can set the font size for MUSHclient menus, for example:
utils.menufontsize (15)
The function returns what the font size was previously. Note that this will probably affect all applications, not just MUSHclient. You may want to remember the old font size, and restore the menu font size when MUSHclient loses the focus.
[master 94ff377]
-
Improved the speed of adding a hotspot with WindowAddHotspot. The test for whether the mouse is over the newly-added hotspot has been optimized somewhat. This is intended to speed up adding many hotspots at once.
[master bd54a9d]
-
Updated PCRE library from version 8.37 to 8.39. For more details see:
http://www.pcre.org/original/changelog.txt
[master cf4b8a0]
-
Updated PNG library from version 1.6.18 to 1.6.23.
For more details see:
http://www.libpng.org/pub/png/pngstatus.html
[master 6ca1ac9]
-
Updated SQLite3 library from version 3.8.11.1 to 3.13.0.
For more details see:
https://www.sqlite.org/releaselog/3_13_0.html
[master 9bbef76]
-
For ease of compiling by other users of MUSHclient, the PNG library is now included in the source distribution.
[master 1e16208]
-
For ease of compiling by other users of MUSHclient, the PCRE library is now included in the source distribution.
[master b44613a]
-
For ease of compiling by other users of MUSHclient, the zLib library is now included in the source distribution.
[master b6f24cf]
-
For ease of compiling by other users of MUSHclient, the SQLite3 library is now included in the source distribution.
[master 0a917a5]
-
Updated Lua JSON library to be compatible with newer version of LPEG.
Version 5.01
Released on 05 Feb 2016
-
Added two missing files to the JSON installer:
lua/json/decode/composite.lua
lua/json/decode/state.lua[master 140751d]
Version 5.00
Released on 16 Jan 2016
-
Updated LuaJSON (supplied as a Lua module) to be compatible with the changes made to LPEG in version 4.99
[master d95bb11]
-
Added new GetInfo selector (123) which is true if we are currently in the middle of a Simulate function call. This lets plugins detect if input is from the MUD or another (or the same) plugin simulating world input.
[master f575af7]
-
Added new GetInfo selector (124) which is true if the current line from the MUD is (going to be) omitted from output. This lets plugins detect if the line a trigger is working on is going to be omitted.
-
Added the plugin name to the Lua script space for plugins, so that error messages originating in a plugin now indicate which one it was. eg.
[master 574cab1]
-
Changed the splash screen displayed at program startup. New splash screen artwork courtesy of Isobel Gammon.
[master d533bca]