Releases: Ekopalypse/EnhanceAnyLexer
Releases · Ekopalypse/EnhanceAnyLexer
Adding an option that enables the use of the RGB color format
Allows users to use the RGB color format instead of the default BGR color format by setting the use_rgb_format configuration variable to 1.
Support for assigning IndicatorIDs through Notepad++
Support for assigning IndicatorIDs through Notepad++ (nppm_allocateindicator) and fallback to configured value in case of error.
v.1.3.0 Add support for plugin communication via NPPM_MSGTOPLUGIN
Add support for plugin communication via NPPM_MSGTOPLUGIN.
For an example of a Python script, see the following:
import ctypes
from ctypes import wintypes
from Npp import editor, console
NPPM_MSGTOPLUGIN = 2071 # 1000 + 1024 + 47
class CommunicationInfo(ctypes.Structure):
_fields_ = [
('internalMsg', wintypes.INT),
('srcModuleName', wintypes.LPCWSTR),
('info', ctypes.c_void_p),
]
user32 = ctypes.WinDLL('user32', use_last_error=True)
SendMessage = user32.SendMessageW
SendMessage.argtypes = [wintypes.HWND, wintypes.UINT, wintypes.WPARAM, wintypes.LPARAM]
SendMessage.restype = ctypes.c_ssize_t
FindWindow = user32.FindWindowW
FindWindow.argtypes = [wintypes.LPCWSTR, wintypes.LPCWSTR]
FindWindow.restype = wintypes.HWND
ci = CommunicationInfo()
ci.internalMsg = 1 # file saved message
ci.srcModuleName = u"PythonScript.dll"
ci.info = 0
destModuleName = ctypes.create_unicode_buffer("EnhanceAnyLexer.dll")
def on_error(msg):
console.show()
print('Error:', msg)
def main():
npp_hwnd = FindWindow(u'Notepad++', None) # Only required if using PythonScript2, if using Python3 use notepad.hwnd instead
if not npp_hwnd: # This should never happen, but who knows ...
on_error('The Notepad++ window was not found!!')
return
if not SendMessage(npp_hwnd, NPPM_MSGTOPLUGIN, ctypes.addressof(destModuleName), ctypes.addressof(ci)):
# When we come here it usually means that the corresponding plugin was not found.
on_error('Sending the file saved message to EnhanceAnyLexer plugin failed!!')
return
main()
Introduce a per-regex whitelist option
Introducing an optional feature to define a whitelist for regular expressions to override the lexer styled text only for certain regexes.
Extend visual area
Define visible area by using smallest and greatest possible values returned
Revert optimization attempt
v.1.1.2 Revert optimization attempts
Fix issue that Npp hangs when using word wrap and match reports a position outside defined range.
v.1.1.1 Update readme and version
Documentation update
Documentation update
Support scrolling inactive view
v.1.0.0 Support scrolling inactive view, code cleanup
v.0.5.0 beta
Add a poor man regex linter functionality