0
的Unix shell腳本來重新格式化互聯/基於大括號代碼文件縮進代碼文件。的Unix shell腳本來重新格式化互聯/縮進基於大括號
環顧四周,發現了一種在vim做到這一點,利用可視化模式和等號,但我似乎無法找到一個辦法做到這一點使用外部UNIX shell腳本。這個想法是能夠運行的:
./scriptName filename(s)
並且所有文件都會根據花括號的深度縮進。它不需要添加額外的換行符/退貨車,只需根據深度縮進即可。
namespace Mine {
Class Yours
{
Yours() { something something; }
~Yours() { something
something more }
Yours(too)
{
etc.
} } // Programmer put two braces on the same line, don't do anything
}
我可以排序的想象使用環境變量來跟蹤括號的深度,然後修剪每行的空間,增加空間的需要,但我似乎無法弄清楚。任何幫助將非常感激!
indent'相當全面的來'選項。如果我沒有記錯,您可以保存一個cfg文件以進行縮進。找出你喜歡的選項設置,將它們保存到cfg文件中,然後每次都按照你想要的方式工作。祝你好運。 – shellter 2011-04-26 17:50:56
不幸的是,'indent'不理解''//註釋,這對於GNU indent來說很奇怪,因爲gcc中有C擴展。請參閱http://www.gnu.org/software/indent/manual/indent.html#SEC15 – lhf 2011-04-26 18:14:31