ก็เริ่มมองหา editor ที่ใช้เขียน ว่าจะใช้อะไรเขียนดี
เริ่มตั้งแต่ RDT ที่ใช้ eclipse เป็น platform
,BBEdit, JEdit
สุดท้ายสูงสุดคืนสู่สามัญ
กลับมาใช้ vi เป็น editor หลัก
มูลเหตุที่ใช้ vi ก็เพราะว่า พึ่งจะฉลาดรู้ว่า
vi ที่เป็น vim version นั้น มันมี feature แพรวพราวไม่เบาเลย
(เมื่อก่อนใช้ vi ดัั้งเดิม ใน hp เป็นหลัก
เลยไม่นึกว่าเวลาเปลี่ยน แล้ว vi จะเปลี่ยนด้วย)
ลองมาดูว่าผมทำอะไรลงไปบ้าง เพื่อให้ใช้ vim กับ ruby
ได้อย่างสบายใจ
เริ่มดูการไป copy VimExtension จาก rubyforge ก่อน
ใน package นี้มี vim extension อยู่ 4 ส่วนคือ
- Systax Highlighting อันนี้ไม่ต้องอธิบาย
- Smart Indenting อันนี้ก็ไม่ต้องอธิบายเช่นเดียวกัน
- Compiler อันนี้ช่วย map คำสั่ง make กับ error format
ทำให้เรา run และแก้ไข error ที่เกิด ขณะอยู่ใน vim ได้
เพื่อให้ใช้งาน extension ตามข้างบน ก็ต้องมีการ
set .vimrc ดังนี้
set nocompatible " We're running Vim, not Vi!
syntax on " Enable syntax highlighting
filetype on " Enable filetype detection
filetype indent on " Enable filetype-specific indenting
filetype plugin on " Enable filetype-specific plugins
ด้วยเหตุผลอะไรก็ไม่ทราบ
(คิดว่าคงเนื่องจากไม่รู้จัก vim ดีพอมากกว่า)
ทำให้ function compiler บนเครื่องผมไม่ work
ผมก็เลยต้อง copy command ที่อยู่ใน compiler/ruby.vim
ไปไว้ใน ftplugin/ruby.vim แทน
และเพื่อให้สะดวกในการ Run
โดยให้มัน save ก่อน run
ผมก็เลยเพิ่ม map key เข้าไปดังนี้
function! RunRuby()
w
make %
endfunction
map <C-R> :call RunRuby()<CR>
ได้ข้างบนมาก็ช่วยได้ระดับหนึ่งแล้ว
ก็ต้องเพิ่มความสามารถด้วยการทำ folding
โดยกำหนด
ส่วน tab key ก็ใช้ให้เป็นตัว toggle show/hidden fold
set fdm=syntax
set foldtext=getline(v:foldstart)
set foldcolumn=3
set fillchars=fold:\ "follow by white space
map <TAB> za
function! ToggleFoldColumn()
if &foldcolumn == 3
set foldcolumn=0
else
set foldcolumn=3
endif
endfunction
map <F3> :call ToggleFoldColumn()<CR>
จากนั้นก็ map
map:call ToggleNumber()
function! ToggleNumber()
if &number
set nonumber
else
set number
endif
endfunction
สุดท้ายก็ลง script winmanager เพื่อช่วยให้ access file
กับ switch buffer ได้ง่ายขึ้น
No comments:
Post a Comment