Increase Whitespace Size macro issue



  • I have used the following macro for quite a while

    <Macro name=“Increase Whitespace Size” Ctrl=“yes” Alt=“yes” Shift=“no” Key=“100”>
    <Action type=“0” message=“2086” wParam=“3” lParam=“0” sParam="" />
    </Macro>

    It doesn’t work any longer. I am aware of the Lua Script startup option but I wanted this method to work.

    Any ideas?



  • @Steve-Messer

    It doesn’t do anything when I try it as well (N++ 7.7.1). Any idea what “any longer” means? Like, what version of Notepad++ were you using when it worked? And what version are you using now?



  • Sorry, unfortunately I am not sure when it last worked as I don’t use this everyday. I am currently using version 7.7.1 64-bit.



  • This issue sounds familiar but I can’t find any prior discussion on it. I did go back to version 7.6.6 to try it – it doesn’t work there either.

    I tried it in both versions with the NppExec plugin, and it works there if that is of any help.



  • @steve-messer, @alan-kilborn and All,

    Seemingly, you cannot run the Scintilla message 2086, with a macro, since the release v7.6.4 and above :-(( Works fine with Notepad++ v7.6.3 !! So, before the upgrade of Scintilla ! No idea why this happens :-((

    Of course, the use of the Python or Lua script language or the NppExec plugin does activate this Scintilla message !


    • So, to change the size of the orange dot symbol to the value 3, type one of the following commands :

      • With the Python script : editor.setWhitespaceSize(3)

      • With the Lua script : editor.WhitespaceSize = 3

      • With the NppExec script : SCI_SENDMSG 2086 3

    • And to know the current size of the space dot symbol, type one of the following commands

      • With the Python script : editor.getWhitespaceSize()

      • With the Lua script : editor.WhitespaceSize

      • With the NppExec script : SCI_SENDMSG 2087


    Notes :

    • Any value may be used, but, practically, only values, in range [1-4], seems interesting !

      • Value 0 does not display any dot symbol

      • Value 1 displays a tiny orange square dot

      • Value 2, is the default dot symbol size

      • Value 3 displays a medium square orange dot symbol

      • Value 4 is, to my mind, the maximum sensible value

      • Value 5 : Huuuum… You probably need glasses ;-))

    Cheers,

    guy038



  • I was curious so for fun(?) I dug deeper into this.

    In 7.6.4, a trapout called isMacroable was added for macros:

    void recordedMacroStep::PlayBack(...)
    {
        ...
        // Ensure it's macroable message before send it
        if (!isMacroable())
            return;
    

    which leads to:

    bool recordedMacroStep::isMacroable() const
    {
        // Enumerates all macroable messages
        switch (_message)
        {
            ...
            case SCI_CUT:
            case SCI_COPY:
            case SCI_PASTE:
            case SCI_CLEAR:
            case SCI_CLEARALL:
            case SCI_SELECTALL:
            case SCI_SEARCHANCHOR:
            case SCI_LINEDOWN:
            case SCI_LINEDOWNEXTEND:
            case SCI_PARADOWN:
            ...
                return true;
            default:
                return false;
    

    Unfortunately, SCI_SETWHITESPACESIZE didn’t make it into this list, so it falls into the default category, thus false is returned to the question isMacroable.

    At least that explains it.



  • @Steve-Messer If you really want this capability added back in, do this with it: https://notepad-plus-plus.org/community/topic/15741/faq-desk-feature-request-or-bug-report



  • <MARQUEE>UMER</MARQUEE>



  • @Steve-Messer

    I wrote a plugin that can be used to configure the size of white space indicators. Its name is ExtSettings. You can download it >>> here <<<. It will also be available soon via PluginsAdmin.


Log in to reply