问题
I know how to turn syntax highlighting on and off in vim by running this in the editor:
:syntax on/off
But I want syntax highlighting to be enabled by default, so I don't have to turn it on every time I run vim.
How do I do this?
回答1:
Edit your $HOME/.vimrc (Unix/Linux/OSX) or $HOME/_vimrc (Windows) to include the following line:
syntax on
EDIT
If your syntax highlighting doesn't work when you start Vim, you probably don't have a
$HOME/.vimrc or $HOME/_vimrc (known collectively as vimrc from now on). In that case, you have two options:
- Create an empty
vimrc. - Copy
vimrc_example.vimas yourvimrc(recommended, thanks @oyenamit). You can findvimrc_example.vimin the runtime directory.
The location of the runtime directory varies between operating systems:
- On my system (Arch Linux, and Mac, thanks @totophe), it's in
/usr/share/vim/vim73. - On Windows, it's in
\Program Files\Vim\vim73.
回答2:
Also, to highlight Specific TYPE of syntax (or programming language) in a file, you can use following commands, while file is already opened in Vim:
:set filetype=php
OR shortcut:
:se ft=php
Above commands will change the syntax-highlighting of current file as if highlighting PHP Code.
回答3:
Uncommenting the "syntax on" in vimrc file.
Move to the directory,
cd /etc/vim/
vim vimrc
now search "syntax" and uncomment it. Save it and reopen the file in vim.
回答4:
For anyone that gets here because of TurnKeyLinux using vim-tiny which doesn't have the syntax module enabled try this article to install full vim
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
回答5:
I also found that this is one of the lessons in vimtutor.
To find it, you can type command vimtutor in your Terminal (I used on Mac), and scroll down to see if there is a lesson called CREATE A STARTUP SCRIPT (for me it was Lesson 7.2), where it describes how to set up an initial vimrc file.
回答6:
In my $HOME/.vimrc I load a color scheme (solarized) and found that I need to place syntax on after I load the plugin. If it's before loading the plugin it doesn't work.
" 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'
来源:https://stackoverflow.com/questions/11272501/enable-vim-syntax-highlighting-by-default