在 Vim 中为 Julia 获取语法高亮的简单方法

Easy way to get syntax highlighting for Julia in Vim

我正在尝试让 Julia 在 Vim 中突出显示语法。不幸的是,目前我没有语法高亮显示 (here is a small snippet of my code so you can see what it currently looks like)。我尝试安装 julia-vim 并将其放入 .vimrc 文件并安装它,但它实际上并没有改变突出显示。下面是 .vimrc 文件:

set nocompatible              " be iMproved, required
filetype off                  " required

" set the runtime path to include Vundle and initialize
  set rtp+=~/.vim/bundle/Vundle.vim
 call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')

" let Vundle manage Vundle, required
  Plugin 'VundleVim/Vundle.vim'

" The following are examples of different formats supported.
" Keep Plugin commands between vundle#begin/end.
" plugin on GitHub repo
 Plugin 'tpope/vim-fugitive'
" plugin from http://vim-scripts.org/vim/scripts.html
" Plugin 'L9'
" Git plugin not hosted on GitHub
  Plugin 'git://git.wincent.com/command-t.git'
" git repos on your local machine (i.e. when working on your own 
   plugin)
  Plugin 'file:///home/gmarik/path/to/plugin'
 " The sparkup vim script is in a subdirectory of this repo called vim.
 " Pass the path to set the runtimepath properly.
 Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
 " Install L9 and avoid a Naming conflict if you've already installed a
  " different version somewhere else.
 " Plugin 'ascenator/L9', {'name': 'newL9'}

 " All of your Plugins must be added before the following line
   call vundle#end()            " required
   filetype plugin indent on    " required
  " To ignore plugin indent changes, instead use:
  "filetype plugin on
  "
  " Brief help
  " :PluginList       - lists configured plugins
   " :PluginInstall    - installs plugins; append `!` to update or 
    just :PluginUpdate
   " :PluginSearch foo - searches for foo; append `!` to refresh local cache
   " :PluginClean      - confirms removal of unused plugins; append 
   `!` to auto-approve removal
   "

   Plugin 'JuliaEditorSupport/julia-vim'


  "
  "
  "
  " see :h vundle for more details or wiki for FAQ
  " Put your non-Plugin stuff after this line

我还记下了如何在 reading the julia-vim documentation 之后修复它。我是不是做错了什么,或者是否有另一种方法可以为 Julia 添加一些语法高亮显示?

我从 that it might be how I have set up my terminal, but I'd prefer to keep the terminal with the present color scheme if possible. See here for my current settings.

的一个答案中看到

编辑:感谢@axwr,我能够通过放置

来获得一些语法高亮显示
  syntax on

在 .vimrc 文件的末尾,然后是 运行

   :so %

正在编辑 .vimrc 文件。但是,as you can see here,颜色编码似乎不太理想。只有某些包裹显示为黄色,大多数仍然是绿色,随机的东西(通常是数字)显示为紫色。这是 julia-vim 给事物上色的方式,还是我做错了什么?

好的,所以。

在Vim中有两个语法高亮步骤;实际上打开它,并且能够突出显示您想要使用的特定语言。对于大多数语言 vim 可以默认执行此操作,但是某些语言,如 Julia,需要一些帮助。在这种情况下,您已通过使用 vundle 安装 Julia 插件完成了第二步。

要完成第一步,您只需要在 vimrc 文件中添加以下行:syntax on。 一个最小的例子 vimrc 给你,可能看起来像:

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'JuliaEditorSupport/julia-vim'
call vundle#end()

set nocompatible
set backspace=indent,eol,start
set number
set hidden

syntax on
filetype plugin indent on

鉴于上述设置,以及具有“solarised”配色方案的终端,julia 文件如下所示:

这是 julia 的小 fizzbuzz 片段,因此您可以与突出显示的内容进行比较:

for i in 1:100
    if i % 15 == 0
        println("FizzBuzz")
    elseif i % 3 == 0
        println("Fizz")
    elseif i % 5 == 0
        println("Buzz")
    else
        println(i)
    end
end

所以,一步一步来:

  • syntax on 添加到您的 .vimrc
  • filetype plugin indent on 添加到您的 .vimrc
  • 安装相关插件
  • 获取您的 .vimrc 或关闭 vim。
  • 打开一个具有正确扩展名的文件,即:test.jl