我正在工作的當前項目要求我遵循特定的步驟來消除代碼中的空白。顯然這與線結尾有關,因爲一個要求明確告訴我要「用Unix線結束所有行(\ n)」。有人可以解釋行結束嗎?
我在VIM中從終端輸入代碼,然後按Enter鍵輸入新行。我在這裏錯過了什麼嗎?
爲什麼要保持代碼清潔後續空白並使用特定類型的換行符?
在附註中,你們用什麼標準VI/VIM設置來遵守通用編碼標準?
真誠, 爲什麼
我正在工作的當前項目要求我遵循特定的步驟來消除代碼中的空白。顯然這與線結尾有關,因爲一個要求明確告訴我要「用Unix線結束所有行(\ n)」。有人可以解釋行結束嗎?
我在VIM中從終端輸入代碼,然後按Enter鍵輸入新行。我在這裏錯過了什麼嗎?
爲什麼要保持代碼清潔後續空白並使用特定類型的換行符?
在附註中,你們用什麼標準VI/VIM設置來遵守通用編碼標準?
真誠, 爲什麼
不同的操作系統有不同的換行符約定。類Unix系統更喜歡\n
(LF
); Windows喜歡\r\n
(CR LF
); pre-OSX Mac OS使用\r
(CR
)。在項目中維護一個約定通常是一個好主意。
至於尾隨空白,AFAIK它只是馬虎(可能表示「快速和骯髒」重新格式化)。在一些環境中,結尾空白也可能很重要。
也許不在項目代碼大家在VIM,他們可能使用的是基於Windows的IDE這將插入\r\n
新線。
在提交代碼之前,他們必須確保他們的行尾是正確的,而您不應該有這個問題,因爲vim會使用\n
作爲自然行尾。
要在vim中強制執行此操作,可以使用fileformat
選項。將它設置爲unix
將使你的換行符使用\n
。
Jeff Atwood可以:http://www.codinghorror.com/blog/2010/01/the-great-newline-schism.html – johnny 2011-03-18 09:10:09