总结- 如何启用虚拟空间以将光标移到文本行的末尾?
长版本- 在 Notepad++ 中,当尝试选择(使用鼠标)超出窗口右边缘的长行文本时,导致其水平滚动,我的鼠标有时会稍微向上或向下移动,以将光标移动到相邻的(通常短得多)行,导致光标在相邻行结束的左侧弹回;这反过来会使窗口水平滚动回左侧,使得很难快速重新调整并完成拖出我的选择。
一些(尽管非常少)文本编辑器具有“虚拟空间”选项,或者将光标移到 EOL 之后,这样就可以更轻松地使用鼠标/箭头移动,而不受现有文本/空白的限制。
我怎样才能在 Notepad++ 中实现这一点(无需自己破解源代码)?
答案1
有点像黑客手段(在启动时直接向 Scintilla 编辑控件发送窗口消息),但效果很好:
安装 NppExec 插件
去插件 -> NppExec -> 执行
输入以下代码:
// ensure console stays hidden NPP_CONSOLE 0 // enable virtual spaces (cursor past end of line) outside column edit mode SCI_SENDMSG 2596 3 0 // SCI_SENDMSG == send message to Scintilla edit control // 2596 == the message we're sending is SCI_SETVIRTUALSPACEOPTIONS // 3 == send the value (SCVS_RECTANGULARSELECTION | SCVS_USERACCESSIBLE) // the default value is 1 (just SCVS_RECTANGULARSELECTION) for // virtual spaces in column select mode only // you can find these values by poking around the source code a bit, or // see http://www.scintilla.org/ScintillaDoc.html
点击节省按钮,并为脚本命名
现在去插件 -> NppExec -> 高级选项
在右侧的“Notepad++启动时执行此脚本”下,选择刚刚保存的脚本名称
单击“确定”,关闭/重新打开 Notepad++,然后享受;)
答案2
在没有管理员权限的情况下,通过下载 dll 并安装到 npp 的插件 o/s 目录/文件夹来安装 NppExec。关闭/重新打开 npp。
编辑(+2 年):我不知道这是否有所改变,但我们现在(如果不是最初)把 NppExec文件夹进入 npp 的插件文件夹 - 使用 NppExec 子文件夹中的 dll。
还要确保版本匹配(提醒自己使用的是 32 位还是 64 位),如果您有最新版本(2019),则可能需要 _PA 版本的 NppExec。