Emacs Pro 精要
Emacs Pro 精要将这些最常见的 Emacs 功能和快捷键带给 Sublime Text。包括 kill 和 mark 环,i-search,寄存器,数字参数,以及对字符/单词/行/s-表达式的光标移动命令,所有这些都有,并增强了多光标功能!还改进了切换到缓冲区和 zap/jump 到字符/字符串的功能,还有更多功能!
详细信息
安装
- 总数 35K
- Win 13K
- Mac 12K
- Linux 10K
8月7日 | 8月6日 | 8月5日 | 8月4日 | 8月3日 | 8月2日 | 8月1日 | 7月31日 | 7月30日 | 7月29日 | 7月28日 | 7月27日 | 7月26日 | 7月25日 | 7月24日 | 7月23日 | 7月22日 | 7月21日 | 7月20日 | 7月19日 | 7月18日 | 7月17日 | 7月16日 | 7月15日 | 7月14日 | 7月13日 | 7月12日 | 7月11日 | 7月10日 | 7月9日 | 7月8日 | 7月7日 | 7月6日 | 7月5日 | 7月4日 | 7月3日 | 7月2日 | 7月1日 | 6月30日 | 6月29日 | 6月28日 | 6月27日 | 6月26日 | 6月25日 | 6月24日 | 6月23日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 2 | 0 | 1 | 1 | 2 | 1 | 3 | 0 | 5 | 2 | 2 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
Mac | 0 | 3 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 2 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 0 | 0 | 1 | 1 | 2 | 0 | 2 | 2 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 4 | 0 | 0 | 0 | 3 | 1 | 3 | 0 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | 2 | 0 | 0 | 2 |
README
欢迎使用 Emacs Pro 精要(原名 Sublemacspo)
我们是 Emacs 和 Sublime Text 的大力支持者。这个项目的动机是将适量的 Emacs 体验带给 Sublime,同时认识到 Sublime 本身也有一些出色的想法。我们赞赏 Emacs 创作者在鼠标移动、kill 和 mark 环、增量搜索等基本事物上所投入的深思熟虑。然而,Sublime 还带来了极其强大的多光标概念以及其他值得欢迎的要素。我们在这里小心地实现了 Emacs 语义,并在可能的情况下,结合了现代 Sublime 的概念进行了增强。
主要功能概述
- 具有多光标支持的字符/单词/行/s-表达式的导航和杀命令
- 通用、数字和负参数处理
- 具有多光标和 Sublime 快速面板支持的 kill 环
- 具有多光标支持的 mark 环
- 带有历史记录的增量搜索(支持正则表达式和多光标功能)
- 框架(窗口)和窗口(窗口面板)命令
- 切换到缓冲区(视图)、杀掉最旧的缓冲区和固定标签页命令
- 大小写更改命令(支持大写/小写/标题/驼峰/下划线)
- 具有多光标支持 zap/jump 到字符和字符串
- 矩形和文本/点寄存器命令(尚未支持多光标)
- 所有缓冲区(视图)自动完成
希望启动此插件时,您的手指会发现许多快捷键和关联行为非常熟悉。我们实现了通用参数概念(Ctrl+u 和 Meta-数字),并让所有字符、单词、行和 s 表达式命令的行为都与原始 Emacs 非常接近。Ctrl+k 命令在几乎所有方面都与 Emacs 相同,但是现在它包括一个强大的多光标实现,这很有意义。增量搜索也非常熟悉,但是它增加了保持或跳过沿途匹配的功能,这样在完成时,“保持的匹配”将作为多光标可供进一步编辑。
其他一切仍然是 Sublime,以及所有这些含义:丝滑的性能,出色的内置自动功能标记,支持单文件和多语言,等等。
详细信息请参阅下方。
安装
要安装 Emacs Pro Essentials,您必须将 Package Control 作为 Sublime Text 的自动包管理器进行安装。现在,您可以轻松地安装 Emacs Pro Essentials,并且您的安装将永远不会过时。在安装 Package Control 后,在 Mac 上按 [CMD]-Shift P
或在 Windows/Linux 上按 [Ctrl]-Shift P
打开命令面板,并输入 install
。现在选择 Package Control: Install Package
。这将加载所有远程存储库中的包,您可以从下拉列表中选择 Emacs Pro Essentials
。
Sublime Text 2 和 3 支持
Emacs Pro Essentials 的主要开发工作现在只针对 Sublime Text 3。仍然有一个使用早期代码库的分支,但它诚实地说,没有大多数提到的功能。
https://github.com/sublime-emacs/sublemacspro/tree/st2
功能和快捷键
以下功能大多是从零开始实现的,并且仅支持 Sublime Text 3。下面的绑定中,meta
是 Windows/Linux 上的 alt
键或在 Mac 上的 option
键。super
是 Mac 上的 Command
键。
Emacs 风格的通用、数字和负参数处理
ctrl+u
:Emacs 通配参数命令(表示 4n,其中 n 是按下ctrl+u
的次数)例如,ctrl+u ctrl+u ctrl+f
表示向前移动 16 个字符。meta+0
…meta+9
:Emacs 数字参数 - 您在命令之前使用数字参数提供一个前缀来运行它那么多次。例如,meta+2 meta+3 ctrl+f
表示向前移动 23 个字符。meta+-
:Emacs 负参数命令 - 反转命令的方向。例如,meta+- meta+2 meta+3 ctrl+f
表示向后移动 23 个字符。
带多个光标支持的 Emacs 风格的剪切环,以及 Sublime 快速面板选择
- 使用剪切环的命令
ctrl+w
和meta+w
:剪切(剪切)并复制到剪切环。ctrl+y
:从剪切环的最后一条记录粘贴。meta+y
和shift+meta+y
:从剪切环向前和向后粘贴,类似于 Emacs,在运行任一命令之前都需要一个粘贴命令。ctrl+k
:剪切到行尾。- 与 emacs 几乎完全相同,剪切行并将其添加到剪切环。使用数字参数,删除那么多行(这与多次按
ctrl+k
不同)。零和负的数字参数也按预期进行操作。
- 与 emacs 几乎完全相同,剪切行并将其添加到剪切环。使用数字参数,删除那么多行(这与多次按
ctrl+meta+k
:删除 s 表达式并将其放置到剪切环。- 可以将
direction
参数设置为-1
以反向删除。
- 可以将
meta+d
和meta+backspace
:剪切并向前和向后删除单词,并将其添加到剪切环。ctrl+x ctrl+y
:显示所有剪切内容的快速面板菜单,让您选择要粘贴的内容。如果提供数字参数,则表示将所有光标剪切到新的光标中。(见下文)
- 剪切环实现细节
- 默认为64项,但可以通过在
sublemacspro .sublime-settings
文件中设置sbp_kill_ring_size
进行调整。 - 连续的剪切命令(
meta+d
、ctrl+k
等)会被添加到剪切环中的同一项,这样就可以一次性粘贴。 - 如果剪切项与当前剪切环条目不同,粘贴命令将从前系统剪贴板中获取内容。这意味着您可以在不同的应用程序中粘贴内容。然后,使用
ctrl+y
将内容粘贴到Sublime中。 - 在Sublime中剪切的内容将被放到剪贴板上,以便其他应用程序访问。如果剪切环项目有多个光标,则只将第一个光标放到剪贴板上。
- 默认为64项,但可以通过在
- 多光标支持
- 如果您在添加到剪切环时拥有多个光标,剪切项将包含并记住这些单独的光标。如果您尝试粘贴多个光标,如果您的截获具有相同数量的光标,它将按预期工作。如果您有比截获更多的光标,则截获将重复,直到您有足够的光标。如果您有比截获少的光标,则只会使用所需的光标数。
- 如果您知道您想要粘贴所有光标,有一个新命令将在粘贴之前自动创建所需数量的光标,这样就适用于当前只有一个光标但想要之前的剪切命令的所有数据的情况。这个新命令叫做粘贴所有光标。此外,当您为
ctrl+x ctrl+y
命令提供数字参数时,它将允许您选择要粘贴所有光标的项。现在选择命令将显示具有多个光标的条目。
支持多光标的Emacs风格标记环
- 使用标记环的命令
ctrl+space
:将新的标记推入标记环ctrl+x ctrl+x
:切换点和标记ctrl+space ctrl+space
:推入新的标记并激活标记,这意味着将其高亮显示为选择。它将保持高亮显示,直到按下ctrl+g
或执行特定命令。ctrl+u ctrl+x ctrl+x
:切换标记的当前状态以查看当前标记选择区域。如果当前标记区域未被高亮显示,则会高亮显示当前标记区域(激活标记),如果已高亮显示则会移除高亮显示(取消激活标记)。- 建议为该功能添加以下绑定:
{"keys": ["ctrl+m"], "command": "sbp_swap_point_and_mark", "args": {"toggle_active_mark_mode": true}}
- 建议为该功能添加以下绑定:
ctrl+u ctrl+space
:这会将光标移动到当前标记的位置,然后将标记环旋转,使新的当前标记是环上的上一个标记。这允许您通过标记历史进行回溯。一些标记是多个光标,它们将以完全相同的方式进行处理。
- 标记环实现细节
ctrl+y
在Emacs中也会自动设置标记(并且必须如此,以便meta+y
能正常工作)。- 像
meta+<
和meta+>
这样的命令也会自动设置标记。 - 如果您使用鼠标制作选择,则将在选择点的开头设置标记,而光标将在末尾,因此您的Emacs区域和选择将相同。
- 多光标支持
- 您可以使用多个光标设置标记,并从标记环中弹出带有多个光标的标记。此外,您可以使用这些光标剪切和复制,然后稍后再粘贴它们。
- 所有上述用于操纵标记环(和剪切环)的命令将继续与多个光标一起使用。
支持正则表达式的正则历史递增搜索(支持正则和历史记录)
- 启动搜索的命令
ctrl+s
和ctrl+r
:启动正向或反向搜索。ctrl+u ctrl+s
和ctrl+u ctrl+r
:启动正向前向或向后正则搜索。ctrl+s ctrl+s
和ctrl+r ctrl+r
:使用与上次搜索相同的搜索字符串启动正向前向或向后搜索。- 这也可以与正则搜索一起使用。
- 增量搜索过程中的命令
ctrl+s
:移动到下一个匹配项。ctrl+r
:移动到最后一个匹配项。meta+d
:保持当前匹配作为未来光标并移动到下一个。ctrl+w
:光标前的字符将追加到搜索字符串中。meta+a
:保持从当前位置到文件末尾(或反向搜索时的开头)的所有剩余匹配项。完成 isearch 后,保留的匹配项将保存为未来光标。- 按下第二个
meta+a
将循环,选择整个文件中的所有匹配项。
- 按下第二个
backspace
:向后移动搜索历史(撤销)。- 将撤销上述任意命令,每次移动搜索执行中的一个命令中向后的命令。例如,将返回到上一个匹配项,从搜索字符串中删除一个字符,或删除最后一个保留的匹配项。
- 在撤销
ctrl+w
从光标处追加整个字符集时,将一次性删除。但是,如果您改用shift+backspace
,则每次只删除一个字符。
ctrl+g
:如果您的搜索当前失败,则将您带到搜索成功的最后一个点。当您的搜索成功时,搜索将中断并返回到开始位置。up
:访问搜索历史中的上一个历史记录。down
:访问搜索历史中的下一个历史记录。enter
:以所有保留的项目作为多光标结束搜索。
- 增量搜索实现细节
- 如果您在搜索中键入任何大写字母,搜索将自动变为区分大小写。
- 您还可以通过键入任何常规 emacs 命令来结束搜索,例如,
ctrl+a
,meta+f
,ctrl+l
,meta+<
,meta+>
,ctrl+f
,ctrl+n
等……保留的项将作为多光标保持不变。 - 当您完成(而不是放弃)搜索时,您的标记将设置为您开始搜索的位置。
- I-search 支持记住之前的搜索。您可以在开始搜索后使用上箭头键和下箭头键访问之前的搜索。
- 查找和替换
meta+r
:Emacs 标准版本中没有实现,因此将调用 sublime text 的默认查找和替换。
- 提高效率
- 如果您使用
alt
作为 meta 绑定,那么将alt+s
设置为移动到下一个匹配项,alt+r
设置为移动到最后一个匹配项(alt+d
已经设置为保持匹配项)可以加快在 iSearch 中选择匹配项时的移动速度。alt+r
的示例绑定如下(对于alt+s
设置forward
为true
):{"keys": ["alt+r"], "command": "sbp_inc_search", "args": {"cmd": "next", "keep": false, "forward": false}, "context": [{"key": "i_search_active"}, {"key": "panel_has_focus"}]}
- 如果您使用
Emacs 窗口(窗口)、窗口(窗口面板)和缓冲区(视图)命令
- 窗口(窗口)命令
ctrl+x 5 2
:打开一个新的窗口(窗口)。ctrl+x 5 0
:关闭当前窗口(窗口)。
- 窗口面板命令
ctrl+x 1
:移除除这个窗口之外的所有窗口面板。ctrl+x 2
:垂直拆分窗口面板。ctrl+x 3
:水平拆分窗口面板。ctrl+x d
:删除当前窗口面板。ctrl+x o
:转到下一个窗口面板。ctrl+x n
:转到下一个窗口面板。ctrl+x p
:转到上一个窗口面板。super+shift+[
:转到此窗口面板中的上一个选项卡(在边缘处循环)。super+shift+]
:转到此窗口面板中的下一个选项卡(在边缘处循环)。ctrl+x ^
或ctrl+shift+i
:使所选窗口面板变高。ctrl+x -
或ctrl+shift+k
:使所选窗口面板变宽。ctrl+x }
或ctrl+shift+j
:使所选窗口面板变窄。ctrl+x {
或ctrl+shift+l
:使所选窗口面板变短。- 调整窗口面板大小的命令接受通用、数值和负数参数,所以
meta+5 ctrl+x ^
将使所选窗口高增加5倍。
- 调整窗口面板大小的命令接受通用、数值和负数参数,所以
- 查看命令
ctrl+x k
:从此窗口面板删除当前视图。ctrl+x K
:删除最旧的n个视图,即,最长时间未接触的视图(支持数值参数输入)。- n默认为
5
。这可以通过覆盖您的用户绑定文件中的绑定来更改,方法是更改参数n_windows
。如果值为null或未指定,将使用数值参数来确定要关闭的视图数。默认绑定是:{"keys": ["ctrl+x", "K"], "command": "sbp_close_stale_views", "args": {"n_windows": 5}}
- n默认为
ctrl+x P
:固定选项卡。固定的选项卡将不会被ctrl+x K
命令自动关闭。状态区域将出现一个小型图钉图标(默认),可设置sbp_pinned_tab_status_text
变量。ctrl+x b
:转到下一个视图(始终会滚动到所有视图(每个窗口面板右侧的选项卡)并忽略窗口面板边界,当达到最右侧视图时进入下一个面板)。ctrl+x right
:转到下一个视图(与上面的ctrl+x b
具有相同命令)。ctrl+x left
:转到上一个视图(始终会滚动到所有视图(每个窗口面板左侧的选项卡)并忽略窗口面板边界,当达到最左侧视图时进入下一个面板)。
切换到视图(缓冲区)
- 命令
ctrl+x ctrl+b
:使用快速面板选择切换到视图(缓冲区)。
- 实施细节
- 按最后使用时间排序,并跳过快速面板中当前视图,转到第二个最新视图。
- 具有默认值的可选参数是
completion_components=2
和display_components=1
。- 默认配置在顶部行显示视图的文件名和父目录(文件路径的最后两个组成部分),在第二行只显示文件名的最后一个组成部分。完成操作在第一行进行。如果您将display_components的值设置为0,则完全省略第二行。
- 如果创建自己的按键绑定具有可选参数
current_group_only
,则默认值为false
,但当设置为true
时,将仅使用当前窗口面板进行视图切换。
转到文件或符号
ctrl+x ctrl+f
:如Sublime实现的那样,在快速面板中转到文件。ctrl+meta+g
:如Sublime实现的那样,在快速面板中转到符号。
更改大小写命令
meta+c
,meta+l
,meta+u
:使用sbp_change_case
命令进行单词的大写、小写、大写。它们支持emacs样式的数值参数,包括负数参数,表示“对前N个单词执行操作”。- 接受两个参数
direction
(1
是前进,-1
是后退)和mode
(可以是title
,upper
或lower
)。
- 接受两个参数
ctrl+x ctrl+u
和ctrl+x ctrl+l
:将高亮显示的区域/s或没有任何高亮显示的Emacs区域/s转换为大写和小写。- 这使用与上述相同的
sbp_change_case
命令,但设置use_region
参数为true
,因此不需要direction
参数。
- 这使用与上述相同的
ctrl+x ctrl+meta+c
,ctrl+x ctrl+meta+u
:从下划线转换为驼峰式,反之亦然。它们与上面提到的ctrl+x ctrl+u
在高亮区域或emacs区域上操作,使用相同的sbp_change_case
命令设置mode
为camel
或underscore
。
跳转到字符和字符串
- 跳转和命令
meta+z
:Zap-to-char,从当前位置删除到下一个字符的出现,包括删除字符。shift+meta+z
:Zap-up-to-char,从当前位置删除到但不包括下一个字符的出现。ctrl+x z
:Zap-to-string,从当前位置删除到字符串的下一个出现,包括删除字符串。ctrl+x Z
:Zap-up-to-string,从当前位置删除到字符串的下一个出现,但不包括它。ctrl+x j c
:Jump-to-char,移动到字符的下一个出现。ctrl+x j C
:Jump-up-to-char,移动到字符的下一个出现。ctrl+x j s
:Jump-to-string,移动到字符串的下一个出现。ctrl+x j S
:Jump-up-to-string,移动到字符串的下一个出现。
- 实施细节
- 字符跳转和Zap命令有一个可选参数
include_char
,默认设为true
。 - 字符串跳转和Zap命令有一个可选参数
include_string
,默认设为true
。
- 字符跳转和Zap命令有一个可选参数
矩形和文本/点寄存器命令(不支持多光标)
- 文本和点寄存器命令
C-x r s [寄存器]
:将当前的emacs区域或高亮区域存储到寄存器中。C-x r i [寄存器]
:在当前光标位置插入所选寄存器。C-x r space [寄存器]
:将当前点存储到寄存器。C-x r j [寄存器]
:跳转到所选寄存器中存储的点。[寄存器]
可以设置为'a-z/0-9/A-Z'。C-x r r
:从Sublime quick panel菜单中选择一个文本寄存器以插入。C-x r p
:从Sublime quick panel菜单中选择一个点寄存器以跳转。
- 矩形命令
C-x r t
:矩形剪切(类似于emacs)。C-x r d
:矩形插入(类似于emacs)。
Emacs导航命令
- 单词级别
meta+f
和meta+b
:向前和向后移动单词,行为与emacs中相同。ctrl+meta+f
和ctrl+meta+b
:在s表达式之间的前进和后退移动。这适用于跳过标识符、字符串、括号、花括号、方括号等...- 依赖说明:S-expression检查Bracket Highlighter是否已安装,这使得它能够在依赖于语言的s表达式上执行更好的移动。
- 如果Bracket Highlighter没有安装,s-expression将回退到在
sublemacspro .sublime-settings
文件中设置的sbp_sexpr_separators
设置中的修饰符,但这种方法比更新后的实现效果差得多。
- 行级别
ctrl+n
:向下移动一行。ctrl+p
:向上移动一行。ctrl+a
:转到行的开头(始终忽略换行,总是移动到行开头)。meta+m
:回到行的缩进处(与ctrl+a
相同,但移动到缩进处而不是行的开头)。ctrl+e
:转到行的结尾(始终忽略换行,总是移动到行的末尾)。meta+a
:回到行的软开始(不忽略换行)。
- 段落级别
ctrl+meta+]
和ctrl+meta+[
:向前和向后导航段落。
- 页级别
meta+,
和meta+.
:分别移动到当前窗口视图中当前窗口的开始和结束。- 此命令允许一个可选参数
always_push_mark
,默认设置为true
,在前往当前窗口的开始或末尾前会推送标记。
- 此命令允许一个可选参数
ctrl+v
:向下翻页。meta+v
:向上翻页。ctrl+l
:在视图中居中当前行。- 与数字参数一起使用,将当前行放置在视图中第N行(例如,
meta+5 ctrl+l
将当前行移动到视图中第5行)。
- 与数字参数一起使用,将当前行放置在视图中第N行(例如,
- 文件级别
meta+<
和meta+>
:分别移动到文件开头和结尾。meta+g
也绑定到ctrl+x g
:通过数字参数或如果没有数字参数则通过快速面板输入跳转到行。- 数字参数,例如,
meta+4 meta+3 meta+5 meta+g
跳转到第435行。
- 数字参数,例如,
所有视图自动完成
- 类似于所有自动完成插件,但解决该插件的两个问题:搜索视图的限制为20个,并且由于某些语法定义中的错误而找不到完成项。
- 默认禁用。
- 在
sublemacspro.sublime-settings
文件中将sbp_use_internal_complete_all_buffers
设置为true
以启用。
其他命令
- 撤销/重做
ctrl+backslash
:撤销。ctrl+_
:撤销。ctrl+x u
:撤销。ctrl+shift+/
:重做。ctrl+shift+backslash
:重做。
- 保存
ctrl+x, ctrl+s
:保存此文件。ctrl+x, ctrl+m
:保存所有文件。ctrl+x, s
:保存所有文件。ctrl+x, ctrl+w
:提示将新文件写入磁盘(另存为…)。
- 选择
ctrl+x h
:全选(类似于 emacs:在文件底部设置标记并转到文件顶部)
- 删除
ctrl+d
:右删除。backspace
:左删除。
- 换行
meta+j
:使用 Sublime 内置函数将行换行到100个字符。
- 缩进/取消缩进
ctrl+c, >
:缩进。ctrl+c, <
:取消缩进。meta+i
:在光标处插入制表符字符(“\t”)。
- 宏
ctrl+x, (
:切换宏录制。ctrl+x, )
:切换宏录制。ctrl+x, e
:执行记录的宏。
- 退出
ctrl+x, ctrl+c
:保存此文件。
- 区域缩进
meta+]
:向右移动活动标记区域或当前突出显示的区域一个缩进。meta+[
:向左移动活动标记区域或当前突出显示的区域一个缩进。
- 空白符删除
meta+backslash
:在点周围删除空白符(支持数字参数)。如果keep_spaces
大于0,则将保留这么多空格而不是删除所有空白符。如果提供数字参数,则覆盖keep_spaces
参数。ctrl+x ctrl+o
:删除点周围的空白行。
- 自动完成
meta+/
:打开 Sublime 的自动完成窗口。meta+h
:打开 Sublime 的自动完成窗口。
- 查找和替换
meta+r
:尚未实现,因此打开 Sublime 的默认查找和替换。
重要设置文件选项
环形缓冲区大小
- 通过
sbp_kill_ring_size
设置。
使用 Alt 绑定(以及数字的 meta+)或 Super(Mac 上的 Command)绑定
- 默认情况下,
sbp_use_alt_bindings
设置为true
,sbp_use_super_bindings
设置为false
。- 如果您更喜欢使用超级绑定,则交换这些,或者如果您 prefer to have both super and alt bindings,将它们都设置为
true
。
- 如果您更喜欢使用超级绑定,则交换这些,或者如果您 prefer to have both super and alt bindings,将它们都设置为
- 要插入数字作为其正常字符而不是使用 Emacs 式数字参数,将
sbp_alt+digit_inserts
设置为true
。
修剪尾随空白符并确保文件末尾有新行
- 可选设置,如果将
sublemacspro.sublime-settings
文件中的设置为true
,则在保存文件时发生。
所有视图自动完成
- 将
sbp_use_internal_complete_all_buffers
设置为true
。
已知错误/问题
如果您正在运行增量搜索并且调用了打开覆盖层的其他命令,如“前往任何位置...”或“命令面板...”,搜索可能会进入一个奇怪的状态并干扰覆盖层。为了处理这种情况,我们覆盖了这些命令的默认键绑定并正确处理它们。如果您为这些命令有自己的绑定,应复制这些示例
{"keys": ["super+shift+p"], "command": "sbp_inc_search_escape", "args": {"next_cmd": "show_overlay", "next_args": {"overlay": "command_palette"}}, "context": [ {"key": "i_search_active"}, {"key": "panel_has_focus"} ] }, {"keys": ["super+t"], "command": "sbp_inc_search_escape", "args": {"next_cmd": "show_overlay", "next_args": {"overlay": "goto", "show_files": true}}, "context": [ {"key": "i_search_active"}, {"key": "panel_has_focus"} ] },
未来
我们将尝试将其扩展更多,以提供更多从 Emacs 到 Sublime Text 的功能,使其成为快速而美观的 Emacs 替代品。
可能的未来包添加
- 向
ctrl+d
和Backspace
提供数字参数应将其附加到剪切环中。 - 将最后 n 个标记转换为多个光标。
- 切换视图跨越窗口(框架),而不仅限于单个窗口。
- 使寄存器与多光标一起工作。
- Emacs 对文本对象的标记
- 快速面板选择用于滚动标记环并弹出上一个标记,类似于剪切环中的选择和粘贴命令。
作者和贡献者
2012-2017 约翰·佩恩 (@canoeberry), 杰夫·斯宾塞 (@excetara2), 马丁·格鲁德 (@grundprinzip), 布赖恩·M·克拉普纳 (@bmc)
- @dustym - 重点关注小组
- @phildopus - 用于 goto-open-file
- @aflc - 切换注释改进
- @jinschoi - ST3 错误修正
- @mcdonc - 更多 Emacs 键绑定灵感的来源