我经常发现自己有一些文字,我想排除文本的某一部分,比如40行的前三个字符。我能想到的最快的方法是绘制一个矩形并复制文本。我主要使用Windows,但我确信grep或类似的东西可以用一点点代码来做到这一点。我这样做的最好方法是打开命令提示符。然后运行“编辑”(是的,旧的)。然后将文本粘贴到那里(这实际上需要很长时间)。然后我可以选择我追求的矩形。
是否有其他编辑器支持此功能?我熟悉Notepad ++。
答案 0 :(得分:7)
在使用鼠标或(shift +)光标键进行选择之前,可以在Visual Studio中选择要在Visual Studio中剪切/复制的矩形区域。见How to: Select and Change Text
答案 1 :(得分:4)
Zeus编辑器可以执行键盘驱动列剪切/复制和粘贴。
此外,默认的Zeus鼠标标记处于列模式。
答案 2 :(得分:2)
如果使用Vim,ctrl-v将允许您选择矩形文本块。
您可能必须禁用Windows兼容性,否则ctrl-v将只是粘贴。
实际上,the documentation说ctrl-q会让你在mswin兼容性中做矩形选择。
答案 3 :(得分:1)
您可以使用nedit
(适用于Windows)执行此操作。按住 Ctrl 并拖动鼠标(左键单击)以选择矩形。
在Linux中,您也可以使用cut
:
cut -b4- file
将从每行删除前三个字符,并将结果打印到STDOUT
。
答案 4 :(得分:1)
Emacs支持kill-rectangle
(默认绑定到C-x r k
)和yank-rectagle
(C-x r y
)来实现此目的。同样可能感兴趣的是delete-extract-rectangle
(没有默认绑定,并且打算用于编程)。
您可以通过导航到感兴趣区域的一个角落,点击C-<space>
设置标记,导航到对角,然后调用所需的功能来使用它。
答案 5 :(得分:1)
UltraEdit有列模式(菜单列/列模式,键盘 快捷方式 Alt + C )。这样就可以仅使用键盘进行块选择,删除,逐列插入等(鼠标也可以工作)。
对于您的示例:在40行的列位置1处进行零宽度选择,然后按删除三次。或者只需选择3 x 40块,然后按删除。
答案 6 :(得分:1)
JEdit支持垂直选择(键盘快捷键为Alt + \)。它还可以执行多个非连续选择(键盘快捷键是Ctrl + \)。当您键入时会影响所有选择,因此您可以同时编辑多行,或同时编辑多行。或两者兼而有之。
还支持垂直粘贴。这是我一直使用的功能。它使编辑列变得轻而易举。
如果你有太多行可以轻松选择,那么JEdit的Find and Replace就像它一样好。
JEdit是一个Java应用程序,因此比大多数编辑器使用更多的系统资源。但另一方面,它适用于大多数系统,并且它有大量的插件,可以使编辑文本更有效。
答案 7 :(得分:0)
这可以使用JGSoft的Editpad来完成,它有一个没有削弱的免费软件版本。