Paling tidak saya selalu batalkan komentar "sintaks pada" di / etc / vim / vimrc
Paling tidak saya selalu batalkan komentar "sintaks pada" di / etc / vim / vimrc
Jawaban:
CTO kami memiliki konfigurasi Vim yang cukup penuh fitur pada GitHub .
Highlight:
Saya merasa hebat untuk pengkodean Ruby, karena alat administrasi sistem kami ditulis dalam Ruby.
Pertama, jika Anda memiliki lebih dari beberapa mesin yang bekerja dengan Anda, pertimbangkan untuk menempatkan Anda ~/.vim/
, ~/.vimrc
dan file lain yang berguna config ( screen
, shell Anda, dll) dalam sistem kontrol revisi. Saya lebih suka menggunakan darcs
- murah pada sistem Debian (tidak perlu menginstal kompiler Haskell, cukup instal paket langsung), didistribusikan, dan memiliki mode interaktif yang hebat. Jika Anda tahu / suka git
, Anda juga bisa tetap menggunakannya.
File konfigurasi saya saat ini tersedia di repositori darcs saya http://repo.harnir.net/
,. Beberapa contoh spesifik dari pengikut saya ~/.vimrc
. Maaf, tidak ada tautan untuk skrip, dll. Karena saya pengguna baru, tetapi semua yang dapat Anda temukan di http://vim.org/
.
skrip cadangan adalah suatu keharusan, ketika Anda mengedit file jarak jauh. Saya menggunakan skrip cbackup.vim , yang menyimpan 10 salinan terakhir dari setiap file yang diedit di direktori pusat dan secara otomatis menghapus yang lama - cukup masukkan ke ~/.vim/plugins/
direktori Anda dan lupakan :-)
TaskList memungkinkan Anda dengan cepat mencari FIXME
, XXX
dan TODO
menandai dalam file saat ini, menampilkannya dan pergi ke tag hanya dengan satu kali penekanan tombol. Jika Anda menggunakan tag ini, pertimbangkan untuk menginstal yang ini
dbext sangat penting untuk semua DBA, juga sangat berguna untuk programmer yang bekerja dengan database. Mari kita jalankan query, periksa struktur database dan yang lainnya. Ini pada dasarnya adalah front end alat bantu seperti mysql
, sqlite3
, sqlplus
dan lain-lain. Jika Anda bekerja dengan database, itu suatu keharusan!
Saya belum melihat banyak sintaks yang berguna di alam, kebanyakan file sysadmin bekerja dengan konfigurasi /etc
dan biasanya disorot dengan cukup baik. Di saya ~/.vim/syntax/
saat ini saya memiliki sintaks untuk warna CSS , yang mengagumkan (juga bagus untuk pengembang web), tetapi sisanya tidak ditulis dengan baik, saya mungkin akan memperbaruinya di waktu luang. Tambahan file sintaks berharga adalah untuk: dhcpd.conf , / etc / network / interfaces , nginx file konfigurasi, dan SpamAssassin local.cf 's.
Kiat bermanfaat dengan sintaks: jika file konfigurasi tidak dikenali (memiliki nama yang aneh, misalnya /etc/apache2/sites-enabled/some.domain.com
, Anda dapat menambahkan ekstensi yang benar ke nama itu (dalam hal ini .conf
) atau menambahkan modelm ViM di akhir file:
# vim: filetype = apache
Sebagian besar opsi konfigurasi sangat populer, seperti set nocompatible ruler
dll. Opsi yang sangat baik untuk dimiliki adalah:
set gdefault
: inverses g
mode in s///g
- with the option /g
akan digunakan secara default, jadi Anda tidak perlu menambahkannya setiap waktu - cukup tambahkan untuk mematikannya
set incsearch ignorecase smartcase hlsearch
: penting untuk mencari melalui file - inkremental, menunjukkan kecocokan secara waktu nyata, pencarian mengabaikan huruf besar kecuali jika Anda menggunakan huruf besar
set pastetoggle=<F6>
: atau kunci lain yang Anda inginkan, beralih di antara paste
dan nopaste
mode, suatu keharusan jika Anda menyalin-menempelkan sesuatu dari halaman web seperti ServerFault :-)
set noerrorbells visualbell t_vb=
: singkirkan lonceng yang mengganggu atau lonceng visual setiap kali Anda melakukan sesuatu;)
rekatkan nama pengguna dan tanggal saat ini ke dalam file, berguna jika Anda bekerja dalam tim dan menambahkan komentar di file tentang siapa yang mengubah sesuatu saat. Cukup tulis xxsig
dan tekan spasi, itu akan diubah menjadi sesuatu seperti harnir 20090531
. Agar ini berfungsi dengan benar dengan root (mis. Tuliskan nama pengguna Anda alih-alih root
), Anda harus masuk menggunakan sudo
.
iabbrev xxsig <Esc>: r! [-n "$ SUDO_USER"] && echo "$ SUDO_USER` date '+ \% Y \% m \% d'` "\ | \ | echo "$ USER` date '+ \% Y \% m \% d'` "<CR> I <BS> <Esc> A
Masukkan komentar "garis", seperti # -- Some title -------------------{{{1
, panjang 78 karakter - tekan \com#
dalam mode normal dan itu dia. Anda akan secara otomatis dalam mode Ganti sehingga Anda dapat menambahkan judul:
nmap \ com # O # <Esc>72A-<Esc>3A{<Esc>A1<Esc> <Home> 4 <Right> R <Space>
Anda dapat dengan mudah memodifikasi untuk sistem komentar yang lain ( "
, //
, dll), atau hanya memeriksa file konfigurasi saya.
Jika Anda memiliki file konfigurasi di sistem RCS, Anda mungkin ingin terkadang menyertakan opsi konfigurasi khusus untuk mesin tertentu. Untuk itu, ada baiknya memiliki ~/.vimrc.local
file, termasuk secara otomatis di akhir konfigurasi (jika ada, tentu saja).
jika filereadable (rentangkan ("~ / .vimrc.local")) sumber ~ / .vimrc.local berakhir jika
Tidak begitu yakin bagian mana dari ini yang secara khusus berhubungan dengan sysadmin, tetapi yang terpenting adalah:
syntax on
set background=dark
set shiftwidth=2
set tabstop=2
if has("autocmd")
filetype plugin indent on
endif
set showcmd " Show (partial) command in status line.
set showmatch " Show matching brackets.
set ignorecase " Do case insensitive matching
set smartcase " Do smart case matching
set incsearch " Incremental search
Saya juga selalu memastikan mesin memiliki akses ke file highlight sintaks nginx .
Jika Anda biasanya bekerja pada pengguna, daripada ini memungkinkan untuk "pipa" file ke sudo sehingga dapat disimpan.
cmap w!! %!sudo tee > /dev/null %
gunakan perintah:
:w!!
untuk memanggil sudo dan menyimpan file.
tee
bukan cat
?
Anda juga dapat melihat pertanyaan SO ini: Apa yang ada di vimrc Anda ?
Steker tak tahu malu. Ini bukan benar-benar perubahan .vimrc melainkan plugin VIM. Saya menggunakan RCSVers pada setiap versi VIM yang diinstal. Pada dasarnya ia menggunakan perintah RCS untuk menyimpan versi file apa pun yang Anda edit. Anda tidak tahu berapa kali saya telah mengacaukan file konfigurasi hanya agar RCSVers menyelamatkan saya dengan menunjukkan kepada saya perubahan yang telah saya buat.
Karena saya tahu bahwa banyak pendatang baru VIM akan membaca ini, saran terbaik yang saya miliki adalah: "Jangan malas dan letakkan entri peta di .vimrc Anda" Mempelajari cara-cara tidak standar dalam melakukan sesuatu di VIM akan membuat Anda merasa seperti gimp total ketika Anda tanpa vimrc Anda. Kurva belajar untuk vi curam, tetapi Anda tidak melakukan kebaikan apa pun dengan memilih untuk tidak belajar.
Setidaknya sebagian dari jawaban saya sama dengan pemrograman saya .vimrc:
set hidden
map <TAB> :e#<CR>
map <F7> :set paste!<CR>
map <F8> :set hlsearch!<CR>
map <F9> :!co -l %<CR>:e<CR>
map <F10> :!rcsdiff %<CR>
map <F11> :!ci -u %<CR>:e<CR>
Jika setidaknya beberapa file yang sedang Anda edit tidak ada dalam RCS, mereka seharusnya! :)
Menonaktifkan semua mode lekukan "pintar". Bagus untuk pemrograman, neraka untuk file konfigurasi.
Saya sering berakhir menggunakan strace untuk melacak masalah aneh. Akibatnya, mencoba sintaks menyoroti beberapa baris bisa menjadi konyol dengan string string yang besar. Karena itu, saya menggunakan set synmaxcol = 2048 untuk membatasi penyorotan sintaksis hingga 2048 kolom.
Saya juga penggemar plugin taglist yang menggunakan tag riang. Sejauh ini saya sudah bisa mendorong binary ctags yang sudah dikompilasi dan belum menemukan masalah perpustakaan. Ini dengan cepat memungkinkan saya untuk menavigasi di antara kode yang saya gunakan. Yang umumnya menjadi Perl, Python, atau C.