Manera fácil de obtener resaltado de sintaxis para Julia en Vim
Estoy tratando de que Julia tenga resaltado de sintaxis en Vim. Desafortunadamente, en este momento, no hay resaltado de sintaxis ( aquí hay un pequeño fragmento de mi código para que pueda ver cómo se ve actualmente ). Intenté instalar julia-vim y ponerlo en el archivo .vimrc e instalarlo, pero en realidad no cambia el resaltado. A continuación se muestra el archivo .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
También estoy seguro de cómo solucionarlo después de leer la documentación de julia-vim . ¿Estoy haciendo algo incorrectamente o hay otra forma de agregar algo de resaltado de sintaxis a Julia?
He visto en una de las respuestas a esta pregunta hecha por @Thomas que podría ser cómo configuré mi terminal, pero preferiría mantener el terminal con el esquema de color actual si es posible. Vea aquí mi configuración actual.
EDITAR: Gracias a @axwr, pude obtener un resaltado de sintaxis al poner
syntax on
al final del archivo .vimrc y luego ejecutando
:so %
mientras edita el archivo .vimrc. Sin embargo, como puede ver aquí , la codificación de colores parece ser menos que ideal. Solo ciertos paquetes aparecen en amarillo, la mayoría sigue siendo verde y los elementos aleatorios (generalmente números) aparecen en púrpura. ¿Es así como julia-vim colorea las cosas o estoy haciendo algo mal?
Respuestas
Bueno entonces.
Hay dos pasos para el resaltado de sintaxis en Vim; activarlo y tener la capacidad de resaltar el idioma específico en el que desea trabajar. Para la mayoría de los idiomas, vim puede hacer esto de forma predeterminada, sin embargo, algunos idiomas, como Julia, requieren un poco de ayuda. En este caso, ha realizado el paso dos utilizando vundle para instalar un complemento de Julia.
Para lograr el paso uno, solo necesita la línea: syntax on
en su archivo vimrc. Un ejemplo mínimo de vimrc para usted podría verse así:
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
Dada la configuración anterior, y una terminal que tiene el esquema de colores "solarizado", un archivo julia se ve así:

Aquí está el pequeño fragmento de julia de fizzbuzz para que pueda compararlo con su resaltado:
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
Entonces, paso a paso:
- Agregue
syntax on
a su.vimrc
- Agregue
filetype plugin indent on
a su.vimrc
- Instale el complemento correspondiente
- Obtenga su
.vimrc
vim o cierre. - abra un archivo con la extensión correcta, es decir:
test.jl