2009-08-19 17 views
14

Ich benutze vim mit verschiedenen Plugins zur Bearbeitung von Ruby-Code. Ich habe richtige Syntax-Highlighting-Setup, aber ich fragte mich, ob jemand wusste, wie man Ruby-Syntax Prüfung, ähnlich dem, was Sie in einer IDE wie Visual Studio, Radrails, etc?Ruby-Syntax in vim einchecken

Etwas, das einfach Sachen rot oder Bruchhervorhebung drehen würde, wenn ich ein "Ende" vermisse oder eine falsch konstruierte Linie des Codes hätte, würde süß sein.

Ich googelte und stieß auf dieses Plugin, http://github.com/scrooloose/syntastic/tree/master, aber ich fragte mich, ob jemand bessere Vorschläge hatte.

Antwort

12

awesome_person hat Recht, ":w !ruby -c" wird tun. Um es bequemer, fügen Sie diese Zeile in Ihrer ~/.vimrc:

autocmd FileType ruby map <F9> :w<CR>:!ruby -c %<CR> 

dann die Syntax beim Drücken F9-Taste aktiviert wird.

+0

Es ist nicht genau das, was ich wollte, aber das funktioniert ziemlich gut. Vielen Dank. – roybotnik

0

Das rails.vim-Plugin bietet exzellente Syntax-Hervorhebung, solange Sie innerhalb einiger seiner Formatierungsgrenzen bleiben. Verbinden Sie dies mit der automatischen Einrückung (ggVG =), und Sie sollten in der Lage sein, einen allgemeinen Eindruck zu bekommen, ob das Dokument gut geformt ist oder nicht.

+3

Nur für zukünftige Referenz, gg = G macht das gleiche und spart Ihnen ein paar Tastenanschläge. –

+0

Wort. Ich war mir dessen bewusst, aber ich hatte gehofft, dass irgendjemand etwas von etwas Idealerem wissen könnte. – roybotnik

+0

Danke für den Tipp rson, zählt jeder Tastendruck :) – Kenny

0

Scheint wie ein paar Leute haben versucht, aber niemand hat zu viel versucht. Persönlich empfehle ich Autotest in einem separaten Terminalfenster.

Try this, wenn Sie nur Syntex-Fehler wollen.

Wenn Sie Fehler möchten, als auch zur Laufzeit geschehen, könnte man like this instead.

+0

Ihre Antwort hat nichts hilfreiches. Es enthält nur Links. Wenn Sie Links einfügen, versuchen Sie bitte, mehr Kontext einzubauen, oder zumindest eine Vorstellung davon, was ich beim Klicken darauf finden könnte. – Docunext

0

Schauen Sie sich das CTK-Plugin: http://www.vim.org/scripts/script.php?script_id=2618

und versuchen Sie dies in Ihrem .vimrc:

" Compile Ruby code after writing (show warnings/errors) 
function! Compile() 
    " don't compile if it's an Rspec file (extra warnings) 
    let name = expand('<afile>') 
    if name !~ 'spec' 
    CC 
    endif 
endfunction 
autocmd BufWritePost *.rb call Compile() 

Das (mit ctk.vim) führt jedes Mal eine Kompilierung durch, wenn die Datei gespeichert wird.

+0

Ich sollte klarstellen, durch "kompilieren", ich meine, dass es Ihre Ruby-Datei mit Ruby-Syntaxprüfung Option (-w) ausführen wird. – thnetos

22

Sie können den aktuellen Puffer in Ruby überprüfen, ohne Plugins herunterzuladen. Der Befehl lautet:

:w !ruby -c 
8

Ich denke, die vorhandenen Antworten sind veraltet. Ein Ruby-Compiler-Plugin kommt jetzt mit vim, so dass Sie jetzt ausführen müssen, ist :compiler ruby ausgeführt, oder fügen Sie diesen Befehl zu Ihrer ~/.vim/ftplugin/ruby.vim-Datei hinzu (erstellen Sie es bei Bedarf). Dann wird nicht nur :make Syntax überprüfen Sie Ihren Code, es wird Sie in vim quickfix mode setzen, so dass Sie direkt auf Fehler springen können.

Ich sage "sollte", weil das Compiler-Plugin den Punkt ein bisschen vermisst und nicht sinnvoll gesetzt. Hier ist, was ich tatsächlich legte in ~/.vim/ftplugin/ruby.vim:

compiler ruby 
setlocal makeprg=ruby\ -wc\ % 

ich suggested, dass dies der Standard sein.

+1

Ja, ich denke, das ist der beste Weg. Dann können Sie: cn verwenden, um zur nächsten Fehlermeldung in der Liste zu gelangen, nachdem Sie ausgeführt haben: make. – yoshiwaan