標籤:使用 strong 檔案 io for re c 問題
在寫代碼時候,特別是在vim中編輯代碼時候,你可能會不太注意代碼風格問題,比如‘{’符號放在行末還是下一行行首等等,
這樣你把自己代碼與別人的代碼merge時候,就會出現代碼風格不一的問題,這裡就推薦一個命令用以調整代碼風格。
linux下使用命令indent, 用於調整原始碼的排版風格,indent後面跟上參數就可以設定你喜歡的代碼風格:
indent [參數選項][源檔案][-o目標檔案] ;
或者不指定目標檔案,那麼就直接更換源檔案: indent [參數選項][源檔案];
關於參數:
-bad或--blank-lines-after-declarations 在聲明區段或加上空白行。
-bap或--blank-lines-after-procedures 在程式或加上空白行。
-bbb或--blank-lines-after-block-comments 在注釋區段後加上空白行。
-bc或--blank-lines-after-commas 在聲明區段中,若出現逗號即換行。
-bl或--braces-after-if-line if(或是else,for等等)與後面執行區段的"{"不同行,且"}"自成一行。
-bli<縮排格數>或--brace-indent<縮排格數> 設定{ }縮排的格數。
-br或--braces-on-if-line if(或是else,for等等)與後面執行跛段的"{"不同行,且"}"自成一行。
-bs或--blank-before-sizeof 在sizeof之後空一格。
-c<欄數>或--comment-indentation<欄數> 將注釋置於程式碼右側指定的欄位。
-cd<欄數>或--declaration-comment-column<欄數> 將注釋置於聲明右側指定的欄位。
-cdb或--comment-delimiters-on-blank-lines 注釋符號自成一行。
-ce或--cuddle-else 將else置於"}"(if執行區段的結尾)之後。
-ci<縮排格數>或--continuation-indentation<縮排格數> 敘述過長而換行時,指定換行後縮排的格數。
-cli<縮排格數>或--case-indentation-<縮排格數> 使用case時,switch縮排的格數。
......(其後省略上百條)
你會發現,這麼多的參數,怎麼記住呢?我的方法是,根本不用記,學習linux核心的代碼風格就可以了,
所以可以在linux下,開啟設定檔:/usr/src/kernels/XXX(核心版本)/scripts/Lindent
找到PARAM變數,然後把它的值作為你的indent參數就可以使得你的代碼排版風格與核心代碼一樣了
PARAM="-npro -kr -i8 -ts8 -sob -l80 -ss -ncs -cp1"(筆者主機開啟的內容)
如果你每次使用indent然後還有加上這麼長一串參數,你會覺得很麻煩,我推薦你可以在.bashrc裡面,alias一個別名
命令:(以我的習慣為例)
alias myindent=‘indent -npro -kr -i8 -ts8 -sob -l80 -ss -ncs -cp1‘
這樣以後,你直接使用myindent filename就可以協助你排版原始碼啦~~~