我喜歡使用空格縮進而不是製表符;在一行的開頭代替翼片在sed
或vim
很容易:如何使用空格替換intraline選項卡,保持對齊?
s/^I/ /g
但是,如果有一個線(假裝的空間是標籤炭的寬度)內的選項卡:
'foo'^I ^I => 'bar',
'bazzle'^I => 'qux',
每個選項卡都不對應一定數量的空格以保持對齊。任何人都有一個狡猾的想法,如何在保持正確對齊的同時用空格替換這些製表符?
我喜歡使用空格縮進而不是製表符;在一行的開頭代替翼片在sed
或vim
很容易:如何使用空格替換intraline選項卡,保持對齊?
s/^I/ /g
但是,如果有一個線(假裝的空間是標籤炭的寬度)內的選項卡:
'foo'^I ^I => 'bar',
'bazzle'^I => 'qux',
每個選項卡都不對應一定數量的空格以保持對齊。任何人都有一個狡猾的想法,如何在保持正確對齊的同時用空格替換這些製表符?
在Vim中:
:retab
,或者,如果你有空格後的標籤:
:retab!
在Linux和BSD下,查找expand和unexpand命令行工具。展開將標籤轉換爲空格,而未展開則執行相反的操作。最簡單的用法是:
expand filename
如果你像我一樣,使用4個空格的標籤,然後:
expand -t 4 filename
默認情況下,擴大打印到標準輸出,並保留原始文件的機智。爲了使就地更換,至少有兩個選擇:
$ cp filename backup
$ expand -t 4 filename > tempfile
$ mv tempfile filename
或者,您也可以在六則啓動擴大:
$ vi filename
:%!expand -t 4
我想這樣做沒有使用另一位編輯和「擴展」工作很好。 – fuenfundachtzig 2013-01-17 15:29:24
不要忘記設置expandtab – rampion 2009-10-06 23:33:25