2016-12-28 4 views
1

Ich versuche zu überprüfen, ob eine Zeile Code in einer Datei in vimscript ist. Ich muss den Rückgabewert von Grep in meinem verwenden, aber ich weiß es nicht heiß bekommen.Vim verwenden Rückgabewert des ausgeführten Bash-Befehls

Dies natürlich nicht funktioniert:

if $(execute '!grep -q ' . shellescape(lineToAdd) . ' ' . shellescape(g:projectPath)) 
    echom "Already added." 
    return 
endif 

Antwort

1

v:shell_error Siehe, wie in diesen Vim documentation gesehen,

Ergebnis des letzten Shell-Befehls. Wenn nicht Null, hatte der letzte Shell-Befehl einen Fehler. Bei Null gab es kein Problem. Dies funktioniert nur, wenn die Shell den Fehlercode an Vim zurückgibt. Der Wert -1 wird oft verwendet, wenn der Befehl nicht ausgeführt werden konnte. Schreibgeschützt.

Verwandte Themen