2013-05-28 14 views
11

在工作中,我們有關於使用4個空格代碼縮進的約定。我習慣於使用tabs進行縮進,但希望遵循約定。使空間像Visual Studio中的選項卡一樣工作的技巧

注意:我不打算在這裏開始關於空格和標籤的討論。

我調整了我的Visual Studio設置以用4個空格替換標籤,但我有一些問題調整爲使用空格。

例如:

  • 我怎麼能輕易取消縮進代碼?與tab chararaters,我只有 需要使用退格一次,用空格我需要使用退格 4倍。

  • 我怎樣才能確保始終有正確數量的空間 (不是三個或五個)?

  • 如何通過代碼儘可能快地瀏覽我的代碼? (箭頭向左或向右跳轉 到帶有製表符的下一個縮進,但只移動一個帶空格的位置)

  • 如何在比較文件時忽略空白更改?

Idealy,我希望這些4位的縮進能夠同樣的工作到製表符。

我主要使用c#和基於XML的文件工作。

歡迎任何提示!

+3

使用Shift-Tab在行首的Unindent代碼。使用「重新格式化文檔」來校正縮進,或者在關閉時使VS重新格式化一個塊,或者使用一個插件在編輯器中顯示縮進指南,以便在事物不與它們對齊時更容易識別。 – millimoose

+0

我也建議在選項對話框中查看有多少這是可配置或不可以,可能是我提到的一些必須啓用。 – millimoose

+1

'Ctrl' +'向左箭頭鍵'/'向右箭頭鍵'將帶您到下一個非空白字符。這比只是左/右箭頭快! – Default

回答

9

要取消縮進,突出顯示該行並點擊Shift + Tab。或者只是定位到該行的開頭並點擊Shift + Tab

此外,擊中選項卡將輸入正確數量的空間以在下一個4空間邊界對齊。

要確保縮進是正確的,您可以突出顯示代碼區域,然後選擇編輯 - >高級 - >格式選擇,或者您可以轉到塊的末尾,刪除最後的大括號,然後將其添加回。 IDE將重新格式化您的代碼。

所以,如果你有這樣的:

void foo() 
{ 
    f(); 
    int q = 32; 
    for (; q > 0; --q) 
    { 
    // really messed up indentation 
    } 
    } 

然後刪除並重新添加這最後'}'將重新格式化整個方法。

+0

+1。還有'格式文檔',其功能同樣好(與格式選擇位於同一位置)。但請注意,如果有任何邏輯問題,例如缺少'{'或'}'IDE格式化將不起作用。 – Default

8

這樣的恥辱,Visual Studio沒有實現智能unindent。你甚至可以在最簡單的免費記事本編輯器中找到這個功能。

幸運的是,爲了簡化自動取消縮進與Backspace鍵刪除,有一個真棒插件,通過TabSanity jedmao(傑德胡薩克)。

此包導致Visual Studio文本編輯器將標籤作爲空間視爲,就好像它們實際上是標籤一樣。也就是說,退格鍵 和刪除鍵,箭頭鍵導航和鼠標光標文本選擇 (即將推出)將不允許脫字符號落在 形成選項卡的空間內。

請注意,它需要依賴另一個很酷的插件,EditorConfig

這兩個強烈建議「製表符 - 空格」文本狂人。

快樂編碼!

相關問題