Warna yang lebih baik sehingga komentar tidak biru tua di Vim?

221

Sebagian besar saya mengedit file Ruby, meskipun komentar file script shell juga #

Saat ini komentar saya menunjukkan biru tua di atas hitam yang sangat sulit dibaca.

Lihat tangkapan layar.

Bagaimana saya bisa mengubah warna mereka?

Saya bersedia mempertimbangkan skema berbeda untuk semua warna meskipun saya suka latar belakang hitam sebagai basis.

Tangkapan layar jendela terminal dengan Vim berjalan di dalamnya.  Komentar tersebut berwarna biru tua dengan latar belakang hitam sehingga hampir tidak terlihat.

Michael Durrant
sumber
4
Saya suka latar belakang yang kontras untuk komentar - itu membuatnya dari kode, misalnya. hi Comment ctermbg=gray ctermfg=darkblue. Anda dapat mengatur skema warna Anda dan kemudian mengubahnya sedikit demi sedikit; letakkan bit dalam file terpisah dan sourcedari vimrc Anda di akhir.
goldilocks
1
TL; DR Cukup sunting ~ / .vimrc dan tambahkan baris colorscheme desert
intotecho

Jawaban:

229

Ada banyak skema warna yang biasanya didistribusikan bersama dengan vim. Anda dapat memilihnya dengan :colorperintah.

Anda dapat melihat skema warna yang tersedia di colorsfolder vim , misalnya dalam kasus saya:

$ ls /usr/share/vim/vimNN/colors/ # where vimNN is vim version, e.g. vim74
blue.vim  darkblue.vim  default.vim  delek.vim  desert.vim  elflord.vim 
evening.vim  koehler.vim  morning.vim  murphy.vim  pablo.vim  peachpuff.vim
README.txt  ron.vim  shine.vim  slate.vim  torte.vim  zellner.vim

Saya biasanya menggunakan desert. Jadi saya buka vim, lalu masuk :color desertdan masuk. Untuk memiliki skema warna secara default setiap kali Anda buka vim, tambahkan :color desertke ~/.vimrc.

(Michael, OP) Ini bagus. Terminal terlihat seperti:

Contoh VIM pada file Ruby yang menunjukkan highlight sintaks dalam berbagai warna

ulangan
sumber
25
Anda juga dapat menggilir warna yang tersedia dengan TAB setelah mengetik :color.
Daddy32
148

Karena Anda menggunakan latar belakang gelap di terminal Anda, Anda hanya perlu mengaturnya

:set background=dark

bukannya default

:set background=light

Warna-warna tersebut kemudian secara otomatis diatur dengan benar.

Jika Anda ingin memiliki ini secara permanen, tambahkan baris

set background=dark

ke $HOME/.vimrcfile Anda .

Jofel
sumber
12
Sementara jawaban yang diterima memiliki informasi yang bermanfaat, jawaban ini jauh lebih singkat tentang akar masalah bagi orang-orang seperti saya yang lebih suka jendela terminal bertema gelap.
Mark Edington
4
Sayangnya ini masih menggunakan warna biru tua yang hampir tidak terbaca di beberapa tempat.
rooby
2
@rooby Seringkali, Anda dapat mengubah warna default di emulator terminal Anda, lihat juga jawaban lainnya.
jofel
3
Tampaknya agak aneh bahwa debian (setidaknya) default ke latar belakang gelap untuk jendela terminalnya tetapi vim distribusi yang sama default ke asumsi latar belakang terang tentang terminal.
James Bowery
2
Saya pikir Anda juga bisa menggunakan bgsajabackground
abonet
26

Anda dapat melakukannya secara manual dengan perintah ini:

:hi Comment guifg=#ABCDEF

Di mana kode hex warna yangABCDEF sesuai .

Untuk membuatnya permanen, Anda perlu menambahkan baris-baris ini ke ~/.vimrcfile Anda (menggunakan hijau sebagai contoh):

syntax on
:highlight Comment ctermfg=green
terdon
sumber
5
Dimungkinkan juga untuk melihat pengaturan sorotan Anda saat ini dengan :hiatau :highlight(yaitu tanpa argumen lain).
evilsoup
1
Anda juga dapat mengubah tipe lain seperti string dalam tipe dokumen pendukung, contoh:highlight String ctermfg=green
aggregate1166877
14

Salah satu opsi yang saya temukan adalah preferensi terminal (menu atas, bukan jendela).

Ini memiliki preferensi profil dan kemudian tab warna, misalnya

masukkan deskripsi gambar di sini

Mengubah entri Palette 5 dari Biru tua ke Light Lilac membantu. Saya akhirnya memilih xterm sebagai skema warna dan menerangi, misalnya warna komentarmasukkan deskripsi gambar di sini

Michael Durrant
sumber
2
Satu-satunya pertanyaan saya sekarang adalah apakah sekarang saya dapat menyimpan preferensi tersebut dalam file sehingga ada untuk pengaturan mesin baru.
Michael Durrant
2
Saya menggunakan xterm, dan mengatur warna biru ke sesuatu yang enak di mata saya di. Sumber: "XTerm * color4: light sky blue".
holygeek
9

Saya mengalami masalah ini beberapa saat yang lalu, solusinya adalah dengan menempatkan baris berikut di file vimrc Anda:

set t_Co=256

Dan kemudian Anda mungkin harus meletakkan yang berikut di akhir profil ~ /. Anda:

#set vim terminal to 256 colors.
if [ -e /usr/share/terminfo/x/xterm-256color ]; then
    export TERM='xterm-256color'
else
    export TERM='xterm-color'
fi

dan kemudian Anda dapat mengatur:

hi Comment      ctermfg=lightblue

dalam file vimrc Anda dan kemudian Anda akan memiliki komentar biru muda.
vimrc 256: http://vim.wikia.com/wiki/256_colors_in_vim

Saya juga melihat layar menjadi lebih cantik dengan mengaturnya ke 256.

Hermann Ingjaldsson
sumber
7

Jika pada latar belakang gelap di Debian, maka uncommenting set background=darkdi /etc/vim/vimrcmembantu, juga.

Atau, jika Anda tidak ingin mengganggu file konfigurasi paket, alih-alih di (baru)
/etc/vim/vimrc.local

Jay
sumber
4

Inilah repo git yang bagus dengan 700+ colorschemes untuk vim

https://github.com/flazz/vim-colorschemes

clone ke ~/.vim/

git clone https://github.com/flazz/vim-colorschemes ~/.vim/

Skema pratinjau sesuai dengan

:colorscheme mrkn256

(ganti mrkn256dengan salah satu nama ini ls ~/.vim/colors(tanpa .vimekstensi))

Untuk mengaturnya, edit ~/.vimrc/ tambah ubah secara permanen

colorscheme mrkn256
Michael D.
sumber
3

Mungkin terlalu jauh dari topik tetapi ini dia

Untuk Windows 10 WSL (Subsistem Windows untuk Linux)

ini berhasil untuk saya (dalam .vimrc)

sintaks aktif

gurun colorscheme (atau skema warna apa pun)

W8WCA
sumber
-1
:colo desert

Saya menggunakan perintah ini untuk menyoroti komentar misalnya;)

pemain bass
sumber