如何在编辑器和ide中选择列以列删除,插入或替换一些字符?

编辑:

原子 notepad++ 凯特 VIM 崇高 Emacs 文本编辑 翡翠编辑器 文本编辑器 MCEdit jEdit Nedit

ide:

NetBeans Eclipse Visual Studio IntelliJ IDEA Flash Builder Aptana Studio


在vim列可视模式是Ctrl + v,如果这是你的意思?


notepad++, Visual Studio和其他一些:Alt +拖动。 vim: Ctrl + v或(奇怪的是)四键点击拖动。在windows中:Ctrl + Q(因为Ctrl + V是粘贴的标准)


您没有显式地说明emacs,但由于您突出显示了许多编辑器……

在emacs中,您可以为此使用矩形,其中列是宽度为1的矩形。

要创建一个矩形,标记矩形的左上角和右下角(其中右下角的标记是矩形中更右的点的右边一个点)。然后你可以通过:

C-x r k 杀死区域矩形的文本,将其内容保存为“最后杀死矩形”(杀死矩形)。

C-x r d 删除区域矩形的文本(Delete -rectangle)。

C-x r y 拉住最后一个被杀死矩形的左上角(拉住矩形)。

C-x r o 插入空白以填充区域矩形(开放矩形)的空间。这将向右推区域矩形的先前内容。

m x clear-rectangle 通过将区域矩形的内容替换为空格来清除区域矩形。

m x delete-whitespace-rectangle 删除指定矩形上每一行中的空白,从矩形的左边缘列开始。

C-x r t字符串RET 将每行的矩形内容替换为字符串。(string-rectangle)。

M-x string-insert-rectangle RET string RET 在矩形的每一行上插入字符串。


Eclipse过去需要一个列模式插件来选择矩形选区。

从Eclipse 3.5开始,您只需要输入Alt+Shift+A:查看它的News和Noteworthy部分。(在OS X上是选项- command - a。)

或者激活“编辑器演示”操作集(窗口>自定义透视图菜单),以获得用于切换块选择模式的工具栏按钮。

AmbroseChapel在评论中补充道:

这是一个开关。 柱状选择是一种进入和离开的模式:换句话说,Eclipse切换到一种模式,其中所有鼠标选择都必须是柱状的,您将一直保持该模式,直到切换回来(再次使用相同的命令)。 它不像其他编辑器,只有在按下某些键时才启用柱状选择。


在凯特切换Ctrl + shift + B。


该特性在Netbeans的旧版本(最高7.1)中不可用,并且该插件不再受支持。

NetBeans 6.9现在有一个插件。


在Ultra Edit和Crimson(或Emerald) Editor中,您可以使用Alt + C启用/禁用列模式


在TextMate中使用鼠标:开始选择并在移动光标时保持alt键。

没有鼠标的情况下:首先使用⇧和箭头选择,然后点击alt并移动光标。


如果您在Cygwin-X(或任何平台)下使用Nedit,在用鼠标左键选择文本时按住Ctrl键。

此外,您还可以在插入模式下使用按下的鼠标左键拖动所选“方框”,或者在覆盖模式下使用Ctrl+鼠标左键拖动所选“方框”。


在Netbeans 7.1中,可以使用Ctrl + shift + R选择列(矩形选择)。在代码编辑器中还有一个按钮可用。

这是矩形选区的样子:


在textpad。

转到页面的左上方。 按住shift键 现在使用右箭头键选择列。 现在点击“向下箭头”键。 整个列都会被选中。


SublimeText 2、3和4

使用鼠标

在不同的平台上使用不同的鼠标按钮:

OS X

Left Mouse Button + Option
OR: Middle Mouse Button
Add to selection: Command
Subtract from selection: Command+Shift

窗户

Right Mouse Button + Shift
OR: Middle Mouse Button
Add to selection: Ctrl
Subtract from selection: Alt

Linux

Right Mouse Button + Shift
Add to selection: Ctrl
Subtract from selection: Alt

使用键盘

OS X

CTRL + shift +↑

CTRL + shift +↓

窗户

是ctrl + alt +↑。

ctrl + alt +↓

Linux

是ctrl + alt +↑。

ctrl + alt +↓

来源:SublimeText2文档


jEdit:

键盘:按Alt-\(在Mac OS X中是Opt-\)在矩形和普通选择模式之间切换;然后使用Shift +方向键来扩展选择。如果需要,可以用另一个Alt-\ (Mac OS X中的Opt-\)切换回常规选择模式。

使用鼠标:使用Alt-\(在Mac OS X中使用Opt-\)如上所述切换矩形选择模式,然后像往常一样拖动;或者Ctrl-drag(在Mac OS X中是Cmd-drag)。如果需要,可以用另一个Alt-\(在Mac OS X中是Opt-\)切换回常规选择模式。

实际上,你甚至可以用正常的方式做出一个非矩形的选择,然后按Alt-\(在Mac OS X中是Opt-\)将其转换为矩形。


在notepad++中,您可以按住ctrl + alt + shift选择一个特定的列,然后单击鼠标左键并拖动以选择。


在凯特

Ctrl + Shift + B还允许您添加更多的列,只需单击任意位置并粘贴即可。

我在保存从谷歌翻译复制的文本文件时使用了这个并排视图。


在IntelliJ IDEA中,可以使用Alt + Shift + Insert组合来切换选择模式。你也可以通过按住鼠标中间按钮(即滚轮按钮)并拖动来选择列。


在Flash Builder (v 4.5及以上)和Aptana Studio(至少v 2.0.5)中,有一个工具栏按钮来切换块选择。它位于“标记出现”和“显示空白字符”按钮之间。还有一个Alt + Shift + a快捷键。毫不奇怪,这与Eclipse基本相同,但为了完整起见,我在这里将其包括在内。


在MCEdit中切换Shift+F3(即F13)或F9->Edit ->标记列。

注:在这种情况下,MCEdit是为午夜指挥官编写的编辑器。


使用Nedit,你可以对选定的列做几个操作:

CTRL+左键->标记矩形文本区域

中间鼠标按在区域->移动文本区域,推开其他文本

CTRL+中鼠标按在标记区域->移动文本区域,覆盖旁边的文本和删除文本从原来的位置

CTRL+SHIFT+鼠标中按在标记区域->复制文本区域,覆盖旁边的文本,并保持文本从原始位置


在文本编辑:

用鼠标,左键点击+ Alt +拖动。请注意,如果您先使用Alt,然后单击-拖动,它是不起作用的(至少对我来说)。Ctrl+Alt代替Alt也可以。

对于纯键盘,没有鼠标,启用块选择模式与Ctrl+Q, B。 或者使用Alt, C, B的顺序,通过配置菜单来完成。

警告1:如果启用了换行,那么块选择模式将不可用(这有点逻辑)。首先禁用自动换行。这给我带来了一些麻烦,这给了我答案。

警告2:如果你想通过输入在每一行中插入文本,你必须使用编辑,填充块。其他编辑器允许您直接输入。


在Sublime3 (Windows)下:

有些用户可能会在窗口中使用Ctrl+Alt+▲得到一个倒置的屏幕。要解决此问题请转到

首选项- > Bindings-User的关键

并在文件末尾的右括号前添加这两行:

{ "keys": ["ctrl+alt+pageup"], "command": "select_lines", "args": {"forward": false} },

{ "keys": ["ctrl+alt+pagedown"], "command": "select_lines", "args": {"forward": true} } 

或者用你自己的钥匙。


对于任何编辑器,都可以使用下面的快捷方式。这些快捷方式也适用于每个文本区域。

Shift +向上/向下箭头-这将逐行选择文本

Ctrl + Shift + LeftArrow/RightArrow -这将逐字选择文本

Ctrl + BackSpace -这将逐字删除文本