粘贴时如何防止 sublime 插入新行?

How can I prevent sublime from inserting a new line when I paste?

为什么我粘贴东西时sublime会插入一行?这一直困扰着我,我想避免这种情况。

出于某种原因,OS X 版本的 Sublime 没有 key bindings 用于 HomeEnd 键,可能是因为某些 Apple 键盘没有这些键。但是,如果您的键盘 有它们,将以下内容添加到您的自定义键绑定 (Sublime Text -> Preferences -> Key Bindings-User) 将为您提供一些附加功能已经在 Windows 和 Linux 版本中:

{ "keys": ["home"], "command": "move_to", "args": {"to": "bol", "extend": false} },
{ "keys": ["end"], "command": "move_to", "args": {"to": "eol", "extend": false} },
{ "keys": ["shift+home"], "command": "move_to", "args": {"to": "bol", "extend": true} },
{ "keys": ["shift+end"], "command": "move_to", "args": {"to": "eol", "extend": true} },
{ "keys": ["ctrl+home"], "command": "move_to", "args": {"to": "bof", "extend": false} },
{ "keys": ["ctrl+end"], "command": "move_to", "args": {"to": "eof", "extend": false} }

现在,您可以通过点击 Home 将光标置于行首,然后按住 ShiftEnd 到 select 到行尾,没有 select换行。

如果由于某种原因您的键盘没有 HomeEnd,您可以随时选择不同的键 - 完整列表是可用 here,以及字母数字键。

我发现无需执行任何额外操作并使用默认 Sublime 行为的最简单方法是:

Actually place the cursor anywhere on the line before which you want to add a new line

这样做是将内容粘贴到正确位置的行之前,而不添加任何其他行。了解,实现此行为需要一段时间,但这是无需安装新插件或添加新绑定的最短路径。