jEdit 支持块编辑,但 Emacs 和 Vim 似乎在同一主题上存在一些严重的可用性问题。如果有人可以在这里填写未知数,那么使用任一编辑器都会更容易接受:
:set virtualedit=block
。artist-mode
和/或picture-mode
.可以在cua-mode
插件中找到通用的 Emacs 块选择功能。
我可以回答 Vim,但不能回答 Emacs。
:set virtualedit=block
将启用您想要的行为。如果您愿意,您可以删除初始冒号并将其添加到您的 .vimrc 中。有关更多信息,请:help 'virtualedit'
从 Vim 中获取。
如果你只是p在命令模式下点击,Vim 将插入块,将字符推到每行的右侧。如果您选择另一个块并点击p,Vim 将用粘贴的块替换该块。
您可以使用命令模式键序列“逐行”粘贴块OEscVp。这将在当前行 ( O Esc
)上方插入一行,按行选择 ( V
),然后粘贴在其上 ( p
)。您可以将其缩短为(例如)yp使用诸如:nmap yp O<Esc>Vp
-- 字面意义的映射;使用五个按键<Esc>
而不是按 Escape 键。
例如,我想删除每行的前 N 个字符,但第一行和最后一行包含少于 N 个字符。
Emacs:从第一行开始选择并简单地将缺少的字符数(例如空格)添加到最后一行,然后使用 kill-rectangle
或者,查看artist-mode
或picture-mode
允许您在窗口中自由移动而不管行长如何。
粘贴块内联
Emacs:首先通过kill-rectangle 或将其保存到寄存器来保存块,然后转到插入点,使用delete-rectangle 然后插入保存的矩形。
看起来需要一个 400 多行的插件
在 Emacs 的情况下,为什么会出现问题?可以编译插件,而 emacs 的理念是您不要将所有内容都放在核心中,而是使用插件来扩展编辑器。