Einfacher Weg, um Syntax-Hervorhebungen für Julia in Vim zu erhalten

Dec 29 2020

Ich versuche Julia dazu zu bringen, Syntax in Vim hervorzuheben. Leider gibt es im Moment keine Syntaxhervorhebung ( hier ist ein kleiner Ausschnitt meines Codes, damit Sie sehen können, wie er aktuell aussieht ). Ich habe versucht, julia-vim zu installieren und in die .vimrc-Datei einzufügen und zu installieren, aber es ändert nichts an der Hervorhebung. Unten ist die .vimrc-Datei:

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

Ich bin mir auch sicher, wie ich das Problem beheben kann, nachdem ich die Julia-Vim-Dokumentation gelesen habe . Mache ich etwas falsch oder gibt es eine andere Möglichkeit, Julia eine Syntaxhervorhebung hinzuzufügen?

Ich habe aus einer der Antworten auf diese Frage von @Thomas gesehen, dass ich möglicherweise mein Terminal so eingerichtet habe, aber ich würde es vorziehen, das Terminal nach Möglichkeit mit dem aktuellen Farbschema beizubehalten . Hier finden Sie meine aktuellen Einstellungen.

EDIT: Dank @axwr konnte ich durch Putten einige Syntaxhervorhebungen erzielen

  syntax on

am Ende der .vimrc-Datei und dann ausgeführt

   :so %

während Sie die .vimrc-Datei bearbeiten. Wie Sie hier sehen können , scheint die Farbcodierung jedoch nicht ideal zu sein. Nur bestimmte Pakete erscheinen gelb, die Mehrheit ist immer noch grün und zufällige Dinge (normalerweise Zahlen) erscheinen lila. Färbt Julia-Vim die Dinge so oder mache ich etwas falsch?

Antworten

4 axwr Dec 29 2020 at 03:04

Okay, also.

Es gibt zwei Schritte zum Hervorheben der Syntax in Vim. Aktivieren Sie es tatsächlich und haben Sie die Möglichkeit, die spezifische Sprache hervorzuheben, in der Sie arbeiten möchten. Für die meisten Sprachen kann vim dies standardmäßig tun, jedoch erfordern einige Sprachen, wie Julia, ein wenig Hilfe. In diesem Fall haben Sie Schritt zwei ausgeführt, indem Sie mit vundle ein Julia-Plugin installiert haben.

Um Schritt eins zu erreichen, benötigen Sie nur die Zeile: syntax onin Ihrer vimrc-Datei. Ein minimales Beispiel für vimrc für Sie könnte folgendermaßen aussehen:

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

Angesichts der obigen Einstellungen und eines Terminals mit dem "solarisierten" Farbschema sieht eine Julia-Datei folgendermaßen aus:

Hier ist das kleine Fizzbuzz-Julia-Snippet, damit Sie es mit Ihrer Hervorhebung vergleichen können:

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

Also, Schritt für Schritt:

  • Fügen Sie syntax onIhrem hinzu.vimrc
  • Fügen Sie filetype plugin indent onIhrem hinzu.vimrc
  • Installieren Sie das entsprechende Plugin
  • Quelle deine .vimrcoder nahe vim.
  • Öffnen Sie eine Datei mit der richtigen Erweiterung, dh: test.jl