Batch script von vimrc mit Parametern aufrufen

Gast #6999474
Lesenswert?
• ▲
▼
Einen schönen guten Morgen :)

Ich habe ein Problem bei vim, bzw. bei einer Funktionserstellung in der 
_vimrc.

ich habe eine Batch-file, welche make aufruft und vorher noch parameter 
setzt.
Das aufrufen dieser Batchfile anfürsich funktioniert auch (und der code 
wird auch gebaut und ich bekomme den Log in VIM selber und nicht in 
einer externen Konsole)

Mein Problem ist, dass die Batchfile mit Parametern aufgerufen werden 
muss (kann).

ich habe es immer versucht mit
1
set makeprg=build\ a:1
aber der batch file wird dann a:1 selber übergeben. (Also nicht der 
Parameter, sondern "a:1")
Ein weg wäre es für jede Möglichkeit ein if zu machen und je nach 
Kombination dann set makeprg setzen. Das ergibt aber viele Kombinationen 
(bis zu 3 Parameter können übergeben werden).

in vim rufe ich dann die Funktion wie folgt auf
1
:call DoBuildBatchFile("MM")

Ist es nicht möglich, den Wert des Parameters direkt zu übergeben?
1
function! DoBuildBatchFile(...)
2
    "save the current working directory so we can come back
3
    let l:starting_directory = getcwd()
4

5
    " build.bat
6
    cd Z:\WORK\Projekt
7
    echo a:1
8
    if("MM" == a:1)
9
        set makeprg=build\ MCM
10
    endif
11
    "let &makeprg='build.bat a:1'
12
    "set makeprg=build\ a:1
13

14
    " Make sure the output doesnt interfere with anything
15
    silent make
16
    " Open the output buffer
17
    copen
18
    echo 'Build Complete'
19

20
    "reset directory
21
    execute "cd " . l:starting_directory
22
endfunction

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.