在 gedit 中删除多行第一个字符的快捷方式

在 gedit 中删除多行第一个字符的快捷方式

我希望在 gedit 中突出显示多行时能够删除该行的第一个字符。

例子:

%Example is
%Commented Code
%Uncomment using this shortcut

然后我会突出显示/选择这些行,并删除第一个字符,使其看起来像这样:

Example is
Commented Code
Uncomment using this shortcut

我非常确定确实有一个捷径。

如果 Linux 上有其他可以运行的文本编辑器,那么最好知道如何在该编辑器中执行此操作。

答案1

这实际上取决于您使用的软件。

例如,MS-Word 会让你选择行的第一个字符(如果行不换行)。

如果你使用的编辑器允许正则表达式搜索和替换您可以使用类似的方法^.来搜索每行的第一个字符。

不幸的是你需要更具体一点。

答案2

这可以使用 gedit Snippets 来完成。它们作为 gedit-plugins 的一部分从您的发行版的存储库中提供。

安装完成后,打开 gedit,转到编辑 -> 首选项 -> 插件,然后启用 Snippets。

现在您必须创建新的代码片段,这非常简单,并且对于您经常编写的代码来说,可以节省大量时间。

1.转到工具->管理片段。

2.找到您想要使用代码片段的语言/文件类型(或全部的全局),然后单击“+”图标来创建新的代码片段。

3.命名代码片段,然后单击右侧的“快捷键”文本框并按下您想要使用的快捷键组合:例如 Shift_ctrl_%

4.然后在右侧的框中输入:

$<
import re
lines = $GEDIT_SELECTED_TEXT.split("\n");
output = "";
for line in lines:
  output += re.sub('^%((.)*)', r"\1\n", line)
return output
>

这使用 python 正则表达式仅删除行中第一个字符“%”。

笔记:您可以在代码片段中使用任何 Python 代码,例如如果您想删除行首的多个“%”或“#”,您可以使用 lstrip。

$<
lines = $GEDIT_SELECTED_TEXT.split("\n");
output = "";
for line in lines:
    output += line.lstrip('%#') + "\n"
return output
>

5.创建片段后,单击“关闭”,突出显示文本并按快捷键。

笔记:如果您想要一个将 % 返回到所有突出显示的行的开头的代码片段:

$<
lines = $GEDIT_SELECTED_TEXT.split("\n");
output = "";
for line in lines:
  output += "%" + line + "\n";
return output
>

笔记:出于某种原因,带有快捷键的代码片段只有在针对特定语言定义时才有效(对我来说)。全局快捷键不起作用,但它们的选项卡触发器起作用,ymmv。

有关片段的更多信息,请访问http://live.gnome.org/Gedit/Plugins/Snippets

答案3

在 gedit 中有一个非常简单的方法可以做到这一点。

在终端: sudo apt-get install gedit-plugins

打开 gedit,然后转到Edit -> Preferences -> Plugins tab

打钩Code comment

(注意:您只需第一次执行前 3 个步骤即可设置插件。)

打开文件。假设它是 bash、latex,那么希望 gedit 能够自动检测文件类型并应用语法规则。如果您不确定,请查看窗口底部边缘 - 那里有一个下拉语言选择器。

现在只需突出显示几行并点击Ctrl + M进行注释或Ctrl + Shift + M取消注释。

嗨嗨。

答案4

喜欢 (基勒,...) Ctrl+D表示注释,Ctrl++Shift表示D取消注释。

相关内容