Released on 20 Oct 2006
1. Fixed problem where the spellchecker Lua script space was not closed when MUSHclient exited, thus potentially not freeing up userdata objects.
2. Fixed problem where the spellchecker Lua script space was not closed when you re-initialized the spellchecker, potentially consuming a lot of memory if you kept re-opening it.
3. Fixed problem with utils.spellcheckdialog function, where the suggestions would always appear in alphabetic order. Now they appear in the order in which you placed them in the suggestions table.
4. Added script function: EditDistance
This implements the Levenshtein Distance Algorithm which is intended to help find the "closest" word to another word. This is used in the spell checker to put the closest match to the top of the list of suggested words.
Also added as utils.EditDistance for calling from Lua scripts that don't have access to the world files (like the spell checker).
5. Updated the spellchecker.lua script to use the edit_distance function. This now shows the closer words to the misspelt one at the top of the list.
6. Also updated the spellchecker to omit suggested words that have too great an edit distance (presently 4). This is intended to omit words that look nothing like what was typed.
7. Amended spellchecker to make it easier to make a case-sensitive spellcheck.
Near the start of spellchecker.lua you can amend this line:
local CASE_SENSITIVE = true --> make true or false
8. Added new script function FlushLog - this flushes the current log file to disk. This might be useful if you are wanting to read the log immediately in another program. You might make a timer that did this every couple of seconds.
9. Added new button the "Edit MultiLine" dialog called "Go To Line". This lets you jump to a line by number. This is very handy when you get an error in a script (eg. Immediate window, or "send to script") where it says "error in line 49"). Using this dialog you can immediately jump to the appropriate line.
10. Scripting is now enabled by default (Lua language) when new worlds are created. This is done to assist new users of MUSHclient who install snippets from the Forum, and wonder why "send to script" doesn't work.
11. The default script prefix (for new worlds) has been changed to an empty string. That is, the default is that you cannot enter scripts from the command window. This is to stop new users to MUSHclient being confused by script error messages if they type a MUD command starting with a slash.
12. Implemented calls to the new custom spell checker for world.SpellCheck and world.AddSpellCheckWord script functions.
The world.SpellCheck function now calls "spellcheck_string" function in the spellchecker.lua file, and world.AddSpellCheckWord calls the function "spellcheck_add_word" in the same file.
Also updated spellchecker.lua to support these two new function calls.
13. Added a "Load / View Plugins" button to the File -> Import menu, as apparently some users thought that File -> Import was needed to load plugins.
14. The dialog box (or error message that appears in the output window) which appears for a script error has been enhanced to show which world, or plugin, the error has been generated from. The intention here is to be helpful for script developers who may suddenly get an error from one of many plugins, and not know which plugin caused it.
15. Changed Help script function to recognise other Lua-related help.
/Help "lua s" --> show Lua string functions help
/Help "lua i" --> show Lua io functions help
The lua-related help can be the word "lua" for general lua extensions (like the utils library), or "lua x" where x is the first letter of one of the standard Lua libraries, namely:
b - Base (not in a library)
c - Coroutines
d - Debug
i - Io
m - Math
o - Os
p - Package
s - String
t - Tables
You can type more letters if you want, but only the first 5 are checked. eg.
/Help "lua io"
16. The version of lua5.1.dll shipped with this release was compiled with Cygwin rather than Microsoft Visual C++. The DLL is slightly smaller, however is somewhat faster. A benchmark shows that running some Lua code took only about 70% of the time using the new version, compared to the older DLL.
Other functionality should be unchanged, however please report any changed behaviour compared to the earlier Lua DLL.
17. If you have script errors appear in a dialog box (the default) there is now a checkbox option that, if checked, redirects future error messages to the output window. This gives you a simple way to change from dialog-based error messages to output-window-based error messages.
18. Added Installer_sumcheck plugin to the standard install.
Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.
Gammon Software support
Forum RSS feed ( https://gammon.com.au/rss/forum.xml )