[綜合整理]清理行尾空格跟tab

這個功能的用意是刪除文字行末看不見的字符,的確有極少數的情況是不能刪除行尾空格的(例如MarkDown語法),但大多情況下這些字符是多餘的,而且有可能導致難以察覺的錯誤(makefile就是這樣)。


以下列出各個編輯器的自動清理行尾選項
會在存檔時自動清理行尾空白跟tab

CodeBlocks

Setting->Editor->General settings->Strip trailing blanks

Eclipse

Window->Preferences->C/C++->Editor->Save Actions->Remove trailing whitespace

NetBeans

Tools -> Options -> Editor -> On Save -> Remove Trailing Whitespace From
不過對於最後修改的那一行不會進行清理,很奇怪的設計

Sublime Text

在settings -- User增加下面這行就能啟動自動清理行尾功能
"trim_trailing_white_space_on_save": true,

Notepad++

有手動選項,但是沒有自動清理選項

Geany

編輯->偏好設定->檔案->截除尾隨空白與跳格字元
編輯->外掛程式偏好設定->Addons->Strip trailing blank lines

Vim

把這一段加進vimrc裡面就行了
function RemoveTrailingWhitespace()
  if &ft != "diff"
    let b:curcol = col(".")
    let b:curline = line(".")
    silent! %s/\s\+$//
    silent! %s/\(\s*\n\)\+\%$//
    call cursor(b:curline, b:curcol)
  endif
endfunction
autocmd BufWritePre * call RemoveTrailingWhitespace()

Git

還有一個是git提供的方法,開啟專案資料夾的.git/config(或者去改global版的config),在[core]區增加這行。
whitespace = trailing-space
這會確保送出的修改是不會帶有這些行尾的多餘字符

沒有留言:

張貼留言