[Vim] 將 Tab 轉換成 Space

Update 2010.08.28: Pspad 轉換既有 Tabs to Spaces by bootleq vim_header 為了統一 Windows 跟 Linux 底下的編輯器在使用 Tab 功能相同,所以調整了 VimPspad(我常用編輯器)的設定,底下是針對 Vim 及 Pspad 的解決方法。首先當大家使用 Vim 編輯器撰寫程式,常常會使用 Tab 來縮排程式碼,我們可以使用 expandtab 來插入空白鍵(Space)取代 Tab:
:set expandtab
控制插入 Tab 時所需要的空白鍵(Tab)字元數,例如用4個空白鍵取代 Tab:
:set tabstop=4
在我們設定完 expandtab 之後,所有的 Tab 鍵將會被 Space 所取代,但是原本在檔案文件中的 Tab 將不會改變,為了取代原有的 Tab 到新的設定,我們必須鍵入:
:retab
針對程式縮排所需要的 Space 個數,我們可以使用 shiftwidth 選項
:set shiftwidth=4
底下舉個例子:
  • 將文件中 Tab 取代成 Space
  • 所有 Tab 用4個 Space 取代
:set tabstop=4
:set shiftwidth=4
:set expandtab

Pspad 設定

Settings -> Programing Settings -> Editor (Part 2) 設定: Tab Width:4 Indent Width:4 請勿勾選 Real Tab 如果要把既有的 Tab 轉換成 Space,可以使用: 編輯特殊轉換將 Tab 轉成空白 Edit->Special conversion->Convert Tabs to Spaces Pspad 針對 Makefile 需要使用 Tab,我們必須在 .vimrc 裡面在加入底下:
autocmd FileType make setlocal noexpandtab
Ref: Converting tabs to spaces

[Vim] 想套用 *.php syntax 顏色於 *.ros

vim_header Vim 是一套強大的編輯器,它分佈於各大 UNIX systems,安裝好一套 UNIX 系統,預設就是 Vi 編輯器(FreeBSD 預設是 ee),相當好用,他也支援各種語言的 syntax,讓您在編輯檔案能夠看到各種不同顏色,在 FreeBSD 底下可以去看 /usr/local/share/vim/vim64/syntax/ 該資料夾支援各種語言,例如 PHP、Ruby、css、html、java、C/C++…等,假設今天我們想要 .ros 的副檔名需要用 php.vim syntax 來開啟,就必須做底下設定: 執行底下:
mkdri ~/.vim
vi ~/.vim/filetype.vim 
寫入 filetype.vim 資訊 if version < 600 syntax clear elseif exists("b:current_syntax") finish endif augroup filetypedetect au! BufRead,BufNewFile *.ros setfiletype php augroup END[/code] ps. on freebsd 7.1-RELEASE-p11 vim version 6.4.9 reference: Vim 套用 Markdown syntax vi 設定

[UNIX] Vim 命令圖解說明

Vim 是一套在 Windows 或者是 UNIX 系統上面非常強大的編輯器,在 vgod’s blog 看到一篇:『給程式設計師的Vim入門圖解說明』,原作者提供了 pdf 以及 png 檔案讓大家下載阿,相當方便,看到這篇就馬上印出來貼在自己的桌子前面,圖解內容也相當清楚,很適合剛學習 UNIX 系統所需要的一些基本 Vim 指令,如何分割視窗,刪除行…等,另外在 Tsung’s Blog 看到 好文: Vim 食譜(CookBook、Recipes),提供了兩個好用連結:
  • Vim Recipes – Vim 由淺入深, 每篇都很短, 非常推薦此書~ (可線上看, 也可免費下載)
  • Vim Cookbook – Vim 食譜, 這篇專門紀錄常用、好用的密技.
都可以參考看看喔,對於學習 Vim 會有相當大的幫助,底下兩張是從 vgod’s blog 轉錄過來的。 vim-cheat-sheet-full vim-cheat-sheet-diagram

Vim 功能介紹

Vim 功能時在太多了,搜尋取代,切換視窗,多重編輯都可以 1.如果想複製整篇檔案的文字,利用下面指令
ggVGy
2.切割畫面
:sp filename 會橫項切割兩個視窗來開檔案
:vsp filename 是直項切割視窗.

Ctrl+w 2次則會切換到令一個視窗

fllow mode 

:set scb 則會紀錄一邊檔案,記的要把一邊檔案按下page down才可以  這樣相差一頁,才是你想要的
3.去除 ^H ^M
man gcc | col -b > gcc.txt

vi 後 :1,$s/^v^H//g  (^v = ctrl + v, ^H = ctrl+h)

sed -i -e 's/^v^H//g' file
Continue reading “Vim 功能介紹”