Releases: blu3mania/npp-papyrus
Release 0.2.3
Improvements
- [Settings] More tooltips to explain some settings.
🛡 VirusTotal GitHub Action analysis:
🛡 VirusTotal GitHub Action analysis:
Release 0.2.2
Bug fixes
- [Settings] All settings are now properly saved when settings dialog is closed.
Improvements
- [Compiler] Rare compilation errors that are not reported on source files or .pas files can be displayed.
🛡 VirusTotal GitHub Action analysis:
🛡 VirusTotal GitHub Action analysis:
Release 0.2.1
Bug fixes
- [Lexer] When spaces exist between ";" and "/", it is no longer treated as multi-line comment.
- [Matcher] When nested flow control is open-ended, it no longer causes infinite recursion.
- [Matcher] Correctly detect keywords in string/comment and ignore them in matching.
- [Matcher] Correctly highlight "ElseIf"s in a block when "Else" also exists.
Others
- Minor UI change in About dialog.
- No longer use _CRT_SECURE_NO_WARNINGS in compilation.
🛡 VirusTotal GitHub Action analysis:
🛡 VirusTotal GitHub Action analysis:
Release 0.2
Bug fixes
- [Lexer] Word "property" in comments is now correctly excluded from property handling.
- [Lexer] Correctly detect properties in edge cases like copying property line and then editing.
- [Lexer] White spaces are now styled correctly.
- [Lexer] Correctly apply class name links styling when switching language.
Improvements
- [Lexer] Support of Fallout 4's namespaces in class name links.
- [Settings] Better performance when reopening Settings dialog after closing it.
New features
- [Lexer] Support of new Papyrus language features from Fallout 4 in syntax highlighting and folding (the config file version is bumped to 3).
- [Matcher] Highlight on matching keywords.
🛡 VirusTotal GitHub Action analysis:
🛡 VirusTotal GitHub Action analysis:
Release 0.1.1
Bug fixes
- [Lexer] Added missing operator "is" to Papyrus.xml.
- [Lexer] Added missing fold end "native" to Papyrus.xml (the config file version is bumped to 2).
- [Settings] Added missing "Data\Scripts\Source" path to FO4's default import directories list.
- [Lexer] Changed default class link modifier from none to Ctrl, to avoid conflicts with Notepad++'s default double click behavior.
- Typos, minor updates, etc.
Improvements
- [Settings] Added link to Notepad++'s Style Configurator in Settings dialog.
- [Settings] Made class link key modifier configurable. Change default modifier to Ctrl.
- Updated menu item names under "Advanced" submenu to have the trailing "..." since they all bring up a popup window.
🛡 VirusTotal GitHub Action analysis:
🛡 VirusTotal GitHub Action analysis:
Release 0.1
This plugin adds support of Bethesda's Papyrus scripting language to Notepad++. It provides syntax highlighting with automatic recognition of class names, function names, and defined properties. It also comes with a compiler that can provide compilation errors in a separate list window, as well as inline annotation and indication where errors are reported, plus support anonymization of compiled .pex files.
This plugin is derived from the original PapyrusPlusPlus plugin created by tschilkroete, with many bug fixes, enhancements, and made to work with the latest Notepad++ release.
Changes from original work
Bug fixes
- [Lexer] Syntax highlighting with lexer now properly works with the latest Notepad++ version, so you no longer need to use a separate user-defined language XML, which defeats the purpose of a lexer.
- [Compiler] Can handle huge compilation error list (this usually happens when a referenced script has errors or referenced script source does not exist), so that status message no longer gets stuck at "Compiling...".
- [Compiler] In error list window, clicking on an error from a file that has not been opened yet will now correctly move cursor to the error line.
- [Compiler] Any exceptions while trying to compile the script are now properly shown to user (exceptions likely won't happen anyway).
- [Lexer] Operators are now correctly styled with defined OPERATOR style, instead of the wrong TYPE style.
- [Lexer] Proper syntax highlighting with strings that contain double quote escapes.
- [Lexer] Proper syntax highlighting with integers literals that start with minus sign.
- [Lexer] Proper syntax highlighting with float literals that contain decimal point.
- [Compiler] Only run compiler if active file is using Papyrus Script lexer (configurable behavior).
Improvements
- {Lexer] Upgrade to support Scintilla's ILexer5.
- [Lexer] Support folding on properties. Original plugin likely omitted properties from folding since it could not exclude those that have definitions done in a single line.
- [Lexer] Support "folding in code, middle" so that Else and ElseIf can be folded as well.. Configurable behavior, default on.
- [Compiler] Compilation error list window will be hidden when starting a new compilation.
- [Compiler] Compilation error list window will not contain duplicate error messages.
- [Compiler] Support more compilation flags:
- -optimize (all games)
- -release and -final (Fallout 4)
- [Lexer] Separate the list of Papyrus language defined keywords into 2, so Parent/Self/True/False/None can be styled differently.
- [Compiler] Status bar shows the game name for current Papyrus script file.
- [Compiler] Status bar shows compiling status if switching to another file and back while compiling.
- [Compiler] When compilation succeeds or fails, status bar shows the file name alongside result message, if current file window is not the same as the one that got compiled.
- [Lexer] Slightly better performance in syntax highlighting with property name caching, especially with big script files. In addition, class name caching can be turned on in Settings menu. However, there is a caveat. See configuration guide for details. Configurable behavior, default off.
- [Settings] No more forced setup on startup.
- [Settings] Revamped UI with many more settings now configurable.
New features
- [Compiler] Anonymize compiled .pex file. In case you are not aware, when you use PapyrusCompiler to compile any script your user account and machine name are stored inside the generated .pex file, so it's a big privacy concern.
- [Annotator] Show annotation below error lines, and/or show indications where errors are (configurable behavior).
- [Compiler] Skyrim SE and Fallout 4 support.
- [Compiler] Auto detection of game/compiler settings to be used based on source script file location.
- [Lexer] Syntax highlighting of function names.
- [Lexer] Class names can be styled as links to open the script files. Configurable behavior, default on (with double click).
- [Lexer] A new "Advanced" submenu with:
- Show langID - can be used to find out internal langID assigned to Papyrus Script lexer, which is useful if you need to manually configure Notepad++'s functionList feature.
- Install auto completion support - provides auto-completion support for functions defined in base game, SKSE, and even SkyUI.
- Install function list support - allows using "View" -> "Function List" menu to show all defined functions in a Papyrus script file.