在记事本++中更改功能工具提示的背景颜色

时间:2017-09-22 11:56:54

标签: themes tooltip notepad++ color-scheme

我已经完成了以下操作,但这不是问题所在。

How to change background color in the Notepad++ text editor?

我使用notepad ++在python中编程并应用 Deep Black 主题,其中有黑色背景和白色文本颜色。

在输入功能时,它会在具有白色背景的工具提示中显示功能语法对比与记事本的黑色背景。

GIF explaining flickering effect.

我已经在Style Configurator中搜索过但没有运气。

如何更改工具提示的背景颜色?

1 个答案:

答案 0 :(得分:3)

Notepad ++使用 Scintilla 作为其编辑器组件。 calltip功能直接来自scintilla。对于在Notepad ++的gui中没有直接配置选项的scintilla功能(calltip风格似乎是这样的功能),你需要一种方法来向Scintilla发送消息

使用 NppExec插件的一种方法(除了编程插件之外,我唯一知道的方法)。它提供SCI_SENDMSG命令。 scintilla website提供有关每条可能消息的详细文档。对于您的用例,它说:

  

调用提示是显示函数参数的小窗口,在用户键入函数名称后显示。它们通常使用STYLE_DEFAULT定义的字体名称,大小和字符集来显示字符。您可以选择使用STYLE_CALLTIP来定义SCI_CALLTIPUSESTYLE的面名,大小,前景和背景颜色以及字符集。这也支持Tab字符。呼叫提示和自动完成列表之间存在一些交互,显示呼叫提示取消任何活动的自动完成列表,反之亦然。

因此,我们需要发送SCI_CALLTIPUSESTYLE消息并(继续在网站上阅读)我们可以使用SCI_CALLTIPSETBACKSCI_CALLTIPSETFORE配置前景色和背景色。

因此,要通过使用NppExec向Scintilla编辑器组件发送消息来设置calltip的颜色,您需要这样做:

    使用PluginManager或PluginCentral
  1. 安装NppExec 。 NppExec zip文件包含dll和一些子目录。在安装/升级到Notepad ++插件目录时,请注意在plugins目录下创建子目录NppExec(只需将文件解压缩到plugins目录中)。 NppExec目录包含文件Scintilla.h,其中包含可能消息的所有定义。

  2. 存储这些行作为 NppExec脚本(插件 - > NppExec - >执行...,输入以下行并选择保存,例如如SetCallTipStlye):

    // use CALLTIPSTYLE instead DEFAULT
    SCI_SENDMSG SCI_CALLTIPUSESTYLE 0
    // background to black ( 0 )
    SCI_SENDMSG SCI_CALLTIPSETBACK 0
    // foreground to white ( 0xffffff )
    SCI_SENDMSG SCI_CALLTIPSETFORE 0xffffff
    
  3. 使用确定

  4. 执行脚本

    现在你的calltip Window应该是黑色的白色,你可能想通过更改参数来采用颜色。

    如果一切正常,那么插件 - > NppExec - >高级选项在配置对话框的右上区域提供在Notepad ++启动时执行此脚本选项。选择下面的脚本名称 您保存了该行(例如SetCallTipStlye)

    唉,我还没有找到如何配置自动完成样式。我希望它会使用与calltip风格相同的样式,但自动完成在白色上保持黑色。