Notepad plugin for Lua scripting capabilities. This provides control over all of Scintilla's features and options with a light-weight, fully-functional programming language.
Major features include:
- Assign Lua functions to shortcut keys
- Register callback functions for events
- Full Lua 5.3 functionality
- Interactive console with auto-completion
- Requires no special permissions
Install the plugin using the Notepad Plugin Admin, or you can manually download it from the Release page and extract the zip into your plugins
folder.
LuaScript provides an interactive console for running Lua commands. This can be shown by Plugins > LuaScript > Show Console
.
LuaScript looks for the \plugins\config\startup.lua
file and automatically runs it on Notepad startup. You can easily edit this file via Plugins > LuaScript > Edit Startup Script
. You can include any commands you want to immediately execute on program startup, as well as register any additional shortcuts or callbacks.
New functions can be added as shortcuts by using AddShortcut. The new menu items are listed under the Plugins > LuaScript
menu. For example this script adds 2 new menu items.
Scripts can also register functions to be called when certain events occur, such as a file being opened, text being modified, etc. Each callback provides a different set of parameters. See the documentation for callbacks to see the entire list of possible events and parameters provided.
The full API documentation can be found here. Also be sure to check out the examples directory.
The code has been developed using Visual Studio 2019. To compile the code:
- Open the
LuaScript.sln
file - Press
F7
and that's it!
For convenience, Visual Studio automatically copies the DLL into the Notepad plugin directory.
This code is released under the GNU General Public License version 2.
Special thanks to the PythonScript plugin and SciTE.