2010-05-05 10 views
5

Ich habe eine Make-Datei, die wie folgt aussieht:Lua Sprung nach rechts Linie

default: 
    lua blah.lua 

nun in Vim, tippe ich "make".

Es gibt einen Fehler in meinem Lua-Code; Es gibt einen Dateinamen + Zeilennummer. Ich möchte, dass Vim zur richtigen Datei/Zeile springt. Wie mache ich das möglich?

Antwort

7

Sie können den Fehler-Format-String gesetzt LUA-Interpreter Ausgabe zu erkennen. Zum Beispiel, fügen Sie diese zu Ihrer .vimrc Datei:

lua: blah.lua:2: '=' expected near 'var' 

Bonus-Tipp:

autocmd BufRead *.lua setlocal efm=%s:\ %f:%l:%m 

, dass die Fehler in Ihrer Version von Lua so aussehen wird davon ausgegangen, anstatt verwenden, um eine Make-Datei, können Sie die makeprg Einstellung:

autocmd BufRead *.lua setlocal makeprg=lua\ % 

, dass die aktuelle Datei durch lua ausgeführt wird, wenn Sie :make eingeben.

+0

Nizza. Vielen Dank! Ich verstehe den% f:% l Teil. Es ist wichtig zu erklären, wie "%.% #" Mit "lua" übereinstimmt. – anon

+1

'%.% #' Ist der Fehler-Format entspricht einem '. *' In einem regulären regex. IOW es stimmt überhaupt überein (z. B./usr/bin/lua). Vielleicht ein bisschen wie ein Hack, aber erledigt den Job! – richq

+0

gibt es eine Möglichkeit, "lua:" anstelle von "%.% #" Zu sagen? das scheint intuitives/klarer für mich, aber ich weiß nicht, wie im fehler Format zum Ausdruck bringt taht – anon

Verwandte Themen