使用 bash 在 gedit 中评论和取消评论

commenting and uncommenting in gedit using bash

我是bash的新手。我正在使用新的 bash 命令设置我的 gedit 工具,以使用 this link 中给出的解决方案注释和取消注释选定的行 由于我的评论风格是 '%' ,所以我是这样写的,与 link 中给出的原始解决方案相比。

comment="%"

xargs -i -d\\n echo $comment{} 

我有两个问题:

  1. 当我如上图注释时,选中的行被注释了,但是光标从上一个注释行进入到下一行。因此,如果在最后一个注释行之后存在其他语句,则留空 space 。如何避免这个光标跳到下一行。

  2. bash 命令取消注释 link 中给出的注释行删除选定的行而不是删除注释。我的情况如何解决?

谢谢。

我不确定为什么您引用的示例在注释和取消注释部分都以这种方式使用 xargs。我尝试了一个简单的 sed 并且它好多了。 所以只需使用评论脚本:

#!/bin/bash
sed 's/^/% /'

对于取消注释的脚本:

#!/bin/bash
sed 's/^% //'

这适用于 ubuntu 14.04 上的 gedit 3.10.4 版。


否则恢复 xargs 以确保有一个换行符 最后一行并使用 2 个版本:

#!/bin/bash
xargs -i -d'\n' echo {} | sed 's/^/% /'

#!/bin/bash
xargs -i -d'\n' echo {} | sed 's/^% //'