vim如何將製表符改為空格?

發表時間: 2022-09-24

有幾種方法可以做到這一點。最簡單的方法是使用 :set tabstop=4 命令行選項。這會將文檔中的所有選項卡更改為空格。另一種方法是使用 :tabedit 命令行選項。這將打開一個選項卡編輯窗口,您可以在其中輸入要將每個選項卡轉換為的空格數。最後,您可以使用 :set shiftwidth=4 命令行選項將文檔中的所有選項卡更改為四個空格寬。這些只是幾個例子;如果您需要,還有更多可用選項。所有這些方法都適用於文本和代碼文件。

如何讓 vim 使用空格而不是製表符?

有幾種方法可以做到這一點。一種方法是使用 :set tabstop=4 命令行選項。這會將製表位設置為 4 個空格,這將導致 vim 在您將文本插入文檔時使用四個空格而不是製表符。另一種方法是使用自動縮進插件。該插件會根據周圍的行自動縮進文本,因此如果您將 .vimrc 文件中的 autoindent 變量設置為 1,當您將文本插入文檔時,vim 將為每個製表符使用一個空格。最後,您還可以配置 Vim 的鍵盤快捷鍵,以便它們的工作方式不同,具體取決於您使用的是製表符還是空格。例如,可以配置 CTRL-T 快捷方式,以便在 Vim 編輯器模式內(即編輯文件時)使用時插入製表符而不是空格。如果這些方法都不適合您,或者您只是想要一種在製表符和空格之間切換而無需記住任何特定命令或擊鍵的更簡單方法,然後您可以安裝 vim-tabs 擴展。此擴展提供了許多與在 Vim 編輯器模式下切換製表符和空格相關的便利功能,包括自動縮進功能和對多種語言的支持。

在vim中將製表符轉換為空格的最佳方法是什麼?

有幾種方法可以做到這一點,但最簡單的是使用 :set tabstop=4 命令。這會將製表位設置為 4 個空格,這會將文件中的所有製表符轉換為空格。如果您只想將文件的某些部分轉換為空格,可以使用 :setlocal tabstop=n 命令。這會將與給定模式匹配的行的製表位設置為 n 個空格,這只會影響那些行。例如: :setlocal tabstop=2 如果您希望文件中的所有製表符都轉換為空格,無論它們在屏幕,您可以使用 :settab 選項。這將為 vim 打開的所有文件設置默認行為,並將所有製表符轉換為空格。:settab 您還可以通過設置 'stty' 環境變量來更改 Vim 使用的每個製表符的空格數。例如: export STTY='utf8' 然後當 Vim 啟動時,每個 Tab 將使用 8 個空格,而不是

有幾種方法可以做到這一點,但

最簡單的是

使用

:set tabstop=4 命令。這將設置您的製表位

到 4 個空格,其中

會將文件中的所有選項卡轉換為空格。

如果您只想轉換文件的某些部分

到空格,你可以使用

:setlocal tabstop=n 命令。這將為匹配的行設置製表位

給定的模式到 n 空間 s ,這只會影響那些行。

例如: :setlocal tabstop=2 如果你希望文件中的所有製表符都轉換為空格 s ,無論它們在屏幕上的位置如何,都可以使用 :settab 選項。這將為 vim 打開的所有文件設置默認行為,並將所有選項卡轉換為空格 s 。 'st ty' 環境變量。例如: export STTY='utf8' 然後當 Vim 啟動時,它會使用 8 Space s per Tab 而不是

  1. : stty -T utf8 要完全禁用轉換(因此每個字符都被視為自己的標記),請在 .vimrc 文件的末尾添加 ":notab"。: notab
  2. :: stty -T utf8 要完全禁用轉換(因此每個字符都被視為自己的標記),請在我們的末尾添加“:notab”。

如何阻止 vim 使用製表符並改用空格?

這是一個已經被問過很多次的問題,並且有幾種方法可以做到。這裡有四種方法:

:set tabstop=4

讓 g:TabStop = 4

:set softtabstop=4

  1. 使用 :set tabstop=4 命令行選項 在 .vimrc 文件中設置 'tabstop' 變量 使用 :set softtabstop=4 命令行選項 使用 setlocal softtabstop 命令 前兩種方法使用 Vim 默認設置,而第三種方法需要您在 .vimrc 文件中添加一行。第四種方法使用 Vim 對 'softtabstop' 的本地設置。下面是如何使用每種方法的示例: 要使用 :set tabstop=4 命令行選項,請輸入:
  2. 要在 .vimrc 文件中設置 'tabstop' 變量,請輸入:
  3. 要使用 :set softtabstop=4 命令行選項,請輸入:

有沒有辦法強制 vim 使用空格而不是製表符?

有一種方法可以強制 vim 使用空格而不是製表符,但它對用戶不是很友好。為此,您需要在 .vimrc 文件中設置 'tabstop' 和 'softtabstop' 選項。tabstop 選項定義在每個製表符之後將插入多少個空格,而 softtabstop 選項定義將在每個非空格字符之前插入多少個空格。要設置製表符選項:

有沒有辦法強制 vim 使用空格而不是製表符?

有一種方法可以強制 vim 使用輔助字符而不是製表符,但它對用戶不是很友好。要做到這一點,你需要在他們的文件中忍受'製表位'和'軟製表位'選項。'製表位選項定義顯示許多空格將在每個製表符字符之後設置,'軟製表位位置定義顯示許多空格將在每個非空格字符之前設置。設置'製表位選項':

  1. 打開您的 .vimrc 文件 添加以下行:set tabstop=4 保存您的更改設置 softtabstop 選項:打開您的 .vimrc 文件 添加以下行:set softtabstop=4 保存您的更改如果您使用的是 Vim 7 或更高版本,您可以還可以使用“setlocal softtabstop”命令同時設置兩個選項。:如果您使用 Vim 6 或更早版本,則需要為每個設置添加單獨的行。:您也可以使用這些命令之一來更改鍵入時自動將製表符轉換為空格: autocmd BufNewFile * :setlocal shiftwidth=4 autocmd FileType c :setlocal shiftwidth=4 關閉並重新打開您的 .vimrc 文件如果您想恢復使用製表符,只需刪除其中任何一行來自您的 .vimrc 文件。:如果您不想在鍵入時自動將製表符更改為空格,而是在必要時手動調整其寬度,那麼您可以改用以下命令之一:autocmd BufNewFile * :setlocal shiftwidth= 0 autocmd FileType c :setlocal softtab stop = 0 享受吧!
  2. .打開你的'.vircfile'。

為什麼我想在 vim 中將製表符變成空格?

您可能想要這樣做的原因有幾個。一個原因是它可以使您的編輯更有效率。當您在 vim 中打開多個選項卡時,每個選項卡都被視為其自己的單獨文件。通過將製表符轉換為空格,vim 會將這些製表符中的所有文本視為一個文件,這可以在編輯大文件時為您節省大量時間。

將製表符轉換為空格的另一個原因是為了保持一致性。如果您的所有代碼和源文件都寫在製表符中,如果您開始在一行上輸入單詞,然後按製表鍵移動到下一行並最終按空格鍵,這可能會令人困惑。將製表符轉換為空格將解決此問題,以便每個單詞都在一行上。

最後,將製表符轉換為空格有助於保持代碼井井有條。當所有東西都在一條線上時,更容易看到所有東西放在一起的位置,並且在需要時更容易找到特定的代碼片段。

vim中一個製表符代表多少個空格?

當你在 vim 中按 tab 鍵時,它會插入一些空格,這些空格等於 :set tabstop 選項指定的製表符數量。例如,如果您將製表位設置為 8 個空格,則按製表鍵將在文本中插入 8 個空格。如果您沒有設置任何製表位,那麼 vim 將使用在您的用戶配置文件中為 'tabstop' 定義的任何值(通常

如果您想更改按下 Tab 鍵時插入的空格數,可以通過更改 :set tabstop 的值來實現。默認設置為 8 個空格。您還可以使用小數點指定不同數量的空格:值得注意的是,此設置僅影響製表符在 vim 中的處理方式;它對可能使用 Windows 樣式回車 (r) 的其他程序(例如記事本或寫字板)沒有任何影響。在這些情況下,每次你在 vim 中輸入一些文本之後和按 Tab 之前按 Enter 或 Return 時,Vim 都會在你的文本末尾添加一個額外的 r - 無論你是否設置了製表位!

還有一個可選的第三個參數,它允許我們在點擊 TAB 時覆蓋用作空格的佔位符:默認情況下這是 ' ',但我們可以使用 :set tabstops= 更改它.

  1. .因此,如果您想鍵入一個空格而不是 Tab,只需按空格鍵即可。
  2. 5個半個空格,1個空格,以此類推。

我可以更改選項卡在 vim 中代表的空格字符數嗎?

是的。為此,請打開 vim 配置目錄 ( ~/.

在 vim 中將製表符轉換為空格字符會影響我的代碼縮進嗎?

不,它不會。製表符只是空格後帶有不同字符的空格。這就是為什麼即使您將製表符轉換為空格字符,您仍然可以看到它們。但是,如果您想保持代碼的縮進一致,那麼您應該為每一級縮進使用兩個空格而不是一個製表符和一個空格。

在 vim 中將製表符轉換為空格有哪些潛在問題?

  1. 製表符在文本中比空格更容易區分。
  2. 當多個選項卡組合在一起時,可能很難分辨哪個應該轉換為空格,哪個應該保留為選項卡。
  3. 如果您使用某些依賴製表符的插件或腳本,將它們轉換為空格可能會導致問題。
  4. 如果您有許多具有不同選項卡設置的文件,將它們全部轉換為空格可能會導致整個工作站的不一致。
  5. 一些程序(例如 Sublime Text)會在你保存文件時自動將製表符轉換為空格,所以如果你不希望這種情況發生,請確保你的 vim 配置不包含 "tabstop" 選項。