真正的列模式(块选择和编辑)文本编辑器解决方案?


16

在Windows中,我曾经使用一个名为crimson editor的文本编辑,该编辑器具有我尚未使用的最佳列模式编辑支持。

当通过一个简单的启用Alt- C快捷方式,选择可以用鼠标或光标键制成,并且它们会是视觉块而不是缠绕线。

这些选择可以删除,移动,复制,粘贴,并且所有的操作都有意义。您也可以开始输入文字,并且在输入文字时会看到一列字符。

有得到的这些功能上的工作分开讨论部分的多种方式这个论坛的帖子,但没有人尚未提供提供这种无所不包的和易于使用的方法解决。

如果有人可以将我指向一个正在积极从事这项工作的gedit插件,那么也许我可以自己编写代码。如果有人知道已经提供了此完整功能的文本编辑器,那么我将非常感谢您提供的信息。暂时在酒中运行深红色编辑器以及gedit的紧密但并非十分复杂的多编辑插件是我暂时的“临时解决方案”。

更新(2012-11):我现在是崇高文字的非常满意的用户。它支持出色的列模式编辑,并且可以在所有三个主要OS平台上正常工作。强烈推荐!


如果您熟悉emacs,则emacs可通过多种模式提供列编辑支持,但需要习惯(也称为学习曲线)。我可以详细说明它是否会回答您的问题。
koushik 2010年

Answers:


20

盖尼 安装geany通过软件中心安装

是一个集成的开发环境,它提供了很好的列编辑支持,值得一试(这里是一个示例)

简而言之,在选择调用列模式时,按下Alt+ Shift而不是仅按下Shift。一个重要的限制是,列模式下的编辑(到目前为止)尚无法撤消。

要使用鼠标实现相同的功能,请Ctrl在选择时按住。实际上,这适用于大多数基于Scintilla的编辑器(包括SciTE和Geany)。


我正在尝试Geany,并且使用列选择非常好..差不多了。您知道我是否用鼠标进行块选择吗?
tamale

1
用鼠标选择时按住Ctrl键。实际上,这适用于大多数基于Scintilla的编辑器(包括SciTE和Geany)。
2010年

@JanC-感谢您的输入。我已经用这个更新了我的答案。
koushik

Windows和Ubuntu上都可以使用SciTE,如果在两个平台上都可以使用,则可能会发现SciTE很有用。
Firefeather

在Fedora上也很好用。我爱geany!
hakre 2012年

8

要编辑列,我使用vi / gvim。这需要一些学习来习惯于vi的学习,但最终许多人发现它是他们的首选编辑器。

特别是在vi中,您可以使用CTRL-V在可视模式下突出显示列,然后可以按预期进行编辑。我一直使用它来添加和删除注释,或缩进函数,例如CTRL-V(突出显示一列)SHIFT-I'#'ESC将注释掉整个列。


5

您确实使用了Eclipse编辑器。Alt+ Shift+ A应该可以满足您的需求。


5

编辑 安装nedit 通过软件中心安装

我一直在使用NEdit

要使用终端安装它,请使用以下命令:

sudo apt-get install nedit

老派(主题),但带有标签,轻巧简单。具有针对多种编码语言的上下文突出显示功能,并且可以添加更多内容。用鼠标拖动时按Ctrl键可以选择一个文本块。然后,您可以照常复制/粘贴。现在不能没有此功能。


您可以仅使用键盘选择一个块吗?
伊恩·塞缪尔·麦克莱恩

当然,使用键盘时,请按Shift + Alt +箭头。我看不到列输入(仅列粘贴和缩进)。
kubanczyk

1

将gEdit与gmate和插件一起使用。您将获得Linux的TextMate。

sudo apt-get install gedit gedit-plugins
cd ~/Downloads
git clone http://github.com/gmate/gmate.git
cd gmate
sh ./install.sh

通过这种“轻微”的修改,gEdit确实可以动弹了。


但是... gmate提供了块编辑功能吗?
tutuca 2010年

Ctrl + PgDn / PgUp允许您一次选择行以进行块编辑。您也可以按Ctrl +向左键单击以选择变量以立即对其进行编辑。
AndyB 2010年

1
@AndyB,必须激活的插件的确切名称是什么?安装gmate后,这些快捷键不起作用。(我使用的是gedit 3.4.2)
alfC 2012年

搞砸了,但是如何选择列?
weima

1

这在emacs中是可能的,如果使用cua模式,这很容易。C返回键标记矩形的左上方。然后移动光标以突出显示矩形区域。

emacs列模式功能非常酷。它们远不止是复制/粘贴矩形文本。观看视频,以获取有关如何同时编辑列中所有行的演示!非常便利!

如果您不想(或不能)观看视频,则可以参考以下基本知识:

CUA模式的高级矩形支持基于使用所选矩形的真实视觉表示。要开始矩形,请使用[S-return]并使用常规移动键(上,下,左,右,原点,结束,C起始点,C结束)将其扩展。一旦矩形具有所需的大小,就可以使用Cx和Cc对其进行剪切或复制,然后可以使用Cv将其作为矩形插入。因此,要使用CUA模式矩形,您需要知道的唯一新命令是S-return!

在Kubuntu 12.04和emacs v24上,对我来说[S-return]是CONTROL-RETURN(CTRL-ENTER)。

如前所述,Scite具有此内置功能(无需插件)。它很容易使用。Scite在Ubuntu仓库中。

可以通过在Windows上按住Alt键或在GTK +上按住Ctrl键,同时在文本上拖动鼠标来选择矩形文本框。


0

将此命令粘贴到终端中

sudo sed -i.backup -r '/^#\s?deb\s?(http|ftp|-src).*(partner|multiverse|universe)/s/^#\s?//g' /etc/apt/sources.list

sudo apt-get update

sudo apt-get -y vim-gnome vim-doc

vim yourfile

在vim中使用:

ctrl-v ....... to select in mode column
j ............ to down 

看到:

 :help

0

Notepadqq也可以做到这一点:他们在页面中简要介绍了该功能。按住Alt,然后按住Ctrl或,然后Shift通过拖动(或单击,如果按住,则选择)来选择所需的“列”Ctrl用鼠标)。完成选择列后,释放按钮,然后通过使用箭头键键入并复制粘贴开始编辑(单击鼠标将取消多选)。

您选择的点不需要形成实列,它是同时激活的任意数量的游标。复制粘贴时,如果复制和粘贴的文本数匹配,则逐个光标粘贴文本,否则每个目标游标都会得到输入的完整副本。

小麻烦:您不能在保留其他光标的同时取消选择单个光标,也不能使用键盘选择它们(或者至少我不知道如何选择)。


0

KWriteKateKDevelop也支持这一点。它们的区别在于,列编辑模式不是通过修饰键来工作的,而是通过打开和关闭模式来工作的。这三个程序具有不同的功能级别,但是基于相同的编辑器组件。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.