实际上gnome-terminal显示标签为8个空格,这对于cat文件或查看差异非常烦人,有没有办法永久地改变它?
答案 0 :(得分:27)
您也可以使用隐式间隔:
,而不是写出明确的tabstops列表tabs -n
这将设置每个n
列的tabstops。有关详细信息,请查看http://manpages.ubuntu.com/manpages/maverick/en/man1/tabs.1.html上的标签页的联机帮助页。
答案 1 :(得分:4)
我找到的唯一解决方案是输入终端:
tabs 5,9,13,17,21,25,29,33,37,41
如果你想要永久性的改变,请将它附加到〜/ .bashrc。
PS:这显然可以覆盖10个制表符缩进。
答案 2 :(得分:3)
您需要在底层tty上设置tabwidth,而不是在gnome-terminal本身。
理论上,您应该可以使用'setterm -regtabs 4'在.bashrc中将tabwidth设置为4.
似乎没有在我的Linux发行版上工作,但是当我从远程系统ssh时它可以正常工作。
将tabwidth重置为8的最简单方法是使用'tabs -8'(tabs -d8来查看更改)。
答案 3 :(得分:3)
将其作为“标签-4”的问题是第一个标签停止一个(至少在我的系统上)。例如,如果我输入“tabs -4”,第一个制表位将从第4列开始,前面有3个空格而不是4个。后续制表位将全部正确分隔4个空格。解决此问题的方法是指定制表位,如下所示:
tabs 1,+4,+4,+4,+4,...
答案 4 :(得分:2)
您也可以执行制表符-4,它会在每第4列设置制表位。
答案 5 :(得分:2)
如果您正在使用bash,这就是我在〜/ .bashrc中的内容:
# set tabs to width TABWIDTH
TABWIDTH=4
# for less(1) the option -x4 was added (see above);
# other programs may need their own flags
setterm -regtabs ${TABWIDTH} </dev/tty
tabs -0 </dev/tty
# this erroneously imho sets the first tab at offset 3, not offset 4:
#tabs 1,+${TABWIDTH} </dev/tty
# this works:
tabs 1`for i in {0..40}; do echo -n ",+${TABWIDTH}"; done`
unset TABWIDTH
请注意'for ... done'小调的反复注释。
编辑:'完成'语句之前的最后一个'+4'当然应该是+ $ {TABWIDTH}。
答案 6 :(得分:0)
标签1,5,9,13,17,21,25等 似乎没有完全正确地工作。在输入时,当在选项卡上退格时,gnome-terminal返回8个空格而不是4个空格。看起来这里有一个gnome-terminal错误。 (注意:如果输入shell,你就不会看到这一点,因为它会占用文件夹完成的标签。你必须先运行cat或dc或其他一些不会为了自己的目的而擅自使用制表符的命令。)