我经常使用 Sublime Text 进行非编码写作,从光标位置到搜索词选择/突出显示文本的功能非常方便。使用内置快捷方式可以实现这一点吗?
举个例子,假设我有以下文本:
耐心等待到最后。罗马人、同胞们、恋人们!听我说,为我辩护,保持沉默,这样你们才能听见;相信我的荣誉,尊重我的荣誉,这样你们才能相信;用你们的智慧责备我,唤醒你们的理智,这样你们才能更好地判断。
我的光标在“patient”的“p”下,我想从那里选择文本到“lovers!”在 Vim 中,我可以这样做v/lovers!
,它会将选择范围从“patient”扩展到“lovers”。Sublime Text 中的 Vi 模式无法做到这一点(我也不指望它能做到)...但 Sublime Text 本身能做到这样的事情吗?
答案1
我不确定在这里回答自己的问题有什么规范,但是因为我得到了可怕的 Tumbleweed 徽章,所以我想我会尝试自己做一下。
这是我想出的一个(非常不雅致的)方法;仅适用于 ST3。基本思路是启动增量搜索(或常规查找,然后使用 ESC 退出搜索字段),设置标记,倒回到之前的光标位置,扩展选择以进行标记,然后清除标记。所有这些都可以封装在以下宏中,然后分配给快捷键:
[
{
"args": null,
"command": "set_mark"
},
{
"args": null,
"command": "jump_back"
},
{
"args": null,
"command": "select_to_mark"
},
{ "args":
{
"name": "mark"
},
"command": "clear_bookmarks"
}
]
它归结为:1)运行增量搜索(OS X 中为 command-I,按回车键退出搜索字段),2)按快捷键。
两个重要注意事项。1) 这只适用于 ST3,因为 ST2 没有内置返回上一个光标位置的功能。2) 它将删除全部标记,所以如果您经常使用标记,您不会喜欢这个宏(尽管我确信可以调整它以删除最后一个标记)。
不行v/<search term>
。这是一个丑陋的解决方法。但它有效,至少对于 ST3 来说是这样。如果有人知道更优雅的方法,或者如何在 ST2 中做到这一点,请分享。