Aktifkan Penyorotan Sintaks Vim Secara Default


121

Saya tahu cara mengaktifkan dan menonaktifkan penyorotan sintaks di vim dengan menjalankan ini di editor:

:syntax on/off

Tapi saya ingin penyorotan sintaks diaktifkan secara default, jadi saya tidak perlu menyalakannya setiap kali saya menjalankan vim.

Bagaimana saya melakukan ini?


2
Mungkin pindah ke Vim Stack Exchange?
QuantumFool

Jawaban:


178

Edit $HOME/.vimrc(Unix / Linux / OSX) atau $HOME/_vimrc(Windows) Anda untuk menyertakan baris berikut:

syntax on

EDIT

Jika penyorotan sintaks Anda tidak berfungsi saat Anda memulai Vim, Anda mungkin tidak memiliki $HOME/.vimrcatau $HOME/_vimrc( vimrcmulai sekarang dikenal secara kolektif ). Jika demikian, Anda memiliki dua opsi:

  • Buat yang kosong vimrc.
  • Salin vimrc_example.vimsebagai milik Anda vimrc(disarankan, terima kasih @oyenamit). Anda dapat menemukannya vimrc_example.vimdi direktori runtime.

Lokasi direktori runtime bervariasi antara sistem operasi:

  • Di sistem saya (Arch Linux, dan Mac, terima kasih @totophe), sudah masuk /usr/share/vim/vim73.
  • Di Windows, ada dalam \Program Files\Vim\vim73.

1
Saya tidak dapat menemukan .vimrc, im menggunakan mac yang menjalankan Lion. Saya dapat menemukan .viminfo
lilroo

7
Jika tidak ada, Anda bisa membuatnya. Cukup ketik: e ~ / .vimrc to vim, ketik baris dan simpan (: w).
Ilmo Euro

6
@lilroo Meskipun ini menyelesaikan masalah Anda, saya menyarankan Anda untuk tidak membuat vimrc dari awal. Sebagai gantinya, ambil contoh vimrc dari lokasi berikut: /Applications/MacVim.app/Contents/Resources/vim/runtime/vimrc_example.vim. Salin file ini ke $ HOME Anda sebagai .vimrc. Ini mengaktifkan banyak hal dasar untuk Anda secara otomatis (sintaks, sorotan pencarian, cadangan dll). Anda kemudian dapat menyesuaikannya berdasarkan kebutuhan Anda.
oyenamit

3
Apakah ada perbedaan antara syntax ondan syntax enable?
Sonique

4
@Sonique syntax enablemempertahankan pengaturan warna Anda, syntax onmenggantinya ( :help :syn-on).
Ilmo Euro

8

Juga, untuk menyorot JENIS sintaks tertentu (atau bahasa pemrograman) dalam file, Anda dapat menggunakan perintah berikut, sementara file sudah dibuka di Vim:

:set filetype=php

ATAU pintasan:

:se ft=php

Perintah di atas akan mengubah penyorotan sintaks file saat ini seolah-olah menyorot Kode PHP.


6

Menghapus komentar "sintaks pada" di file vimrc.

Pindah ke direktori,

cd /etc/vim/

vim vimrc

sekarang cari "sintaks" dan hapus komentarnya. Simpan dan buka kembali file di vim.


1
Cara terbaik untukku. Tks. Jika Anda tidak perlu syntaxmenambahkan syntax enable,. Lalu source vimrc. Anda mendapatkannya secara permanen untuk digunakan nanti
Ender phan

3

Bagi siapa pun yang sampai di sini karena menggunakan TurnKeyLinux vim-tinyyang tidak mengaktifkan modul sintaks, coba artikel ini untuk menginstal penuhvim

http://www.turnkeylinux.org/forum/support/20140108/solved-bash-command-not-found-after-replacing-package

tl; dr

# apt-get remove vim-tiny
# apt-get install vim
# hash vim
# vim

1
FWIW pada v14.0, Anda cukup menginstal vim dan semuanya berfungsi seperti yang Anda harapkan (terlepas dari apakah Anda menghapus vim-tiny atau tidak). Itu adalah bug dalam cara vim-tiny dikonfigurasi untuk dijalankan sebagai 'vim'. Sekarang ia memperbarui jalur biner dengan benar ...
Jeremy Davis

1

Saya juga menemukan bahwa ini adalah salah satu pelajaran dalam vimtutor.

Untuk menemukannya, Anda dapat mengetikkan perintah vimtutordi Terminal Anda (saya gunakan di Mac), dan gulir ke bawah untuk melihat apakah ada pelajaran yang disebut CREATE A STARTUP SCRIPT(bagi saya itu adalah Pelajaran 7.2), yang menjelaskan cara menyiapkan vimrcfile awal .


Saya mengalami masalah dengan ini. Menjalankan tutorial sudah baik-baik saja meskipun saya tidak memiliki set $ VIMRUNTIME jadi saya tidak tahu di mana vimrc_example.vim ini disimpan.
Nebbles

0

Di saya, $HOME/.vimrcsaya memuat skema warna (terpolarisasi) dan menemukan bahwa saya harus menempatkannya syntax on setelah saya memuat plugin. Jika sebelum memuat plugin itu tidak berfungsi.

" this turns syntax highlighting on by default

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'lifepillar/vim-solarized8'

syntax on
" this does not turn syntax highlighting on by default

syntax on

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'lifepillar/vim-solarized8'
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.