Forum: PC-Programmierung Vim Nerdtree: Kein Editorbefehl NERDTreeCWD


von Lars (Gast)


Lesenswert?

Guten morgen,

für Vim (vesion 9 für Windows) habe ich das Plugin NERDTree und möchte, 
dass es beim aufstart den rootfolder in mein Projekt legt
1
let g:projectName="BootCustom1"
2
if("BootCustom1" == g:projectName)
3
    let g:pr1="H:\\Projects\\Boot_Bosch\\src"
4
    let g:pr2="H:\\Projects\\Boot_Bosch\\src\\application"
5
    let g:pr3="H:\\Projects\\Boot_Bosch\\src\\application\\WORK\\Projekt"
6
    exec 'cd ' . g:pr1
7
    NERDTreeCWD
8
elseif("BootCustom2" == g:projectName)
9
    let g:pr1="H:\\Projects\\Boot_Volvo\\src"
10
    let g:pr2="H:\\Projects\\Boot_Volvo\\src\\application"
11
    let g:pr3="H:\\Projects\\Boot_Volvo\\src\\application\\WORK\\Projekt"
12
    exec 'cd ' . g:pr1
13
    NERDTreeCWD
14
endif

wenn ich vim starte, bekomme ich den Fehler:
Kein Editorbefehl:   NERDTreeCWD

Nerdtree legt den root aber richtig an.

habe zum switchen auch eine Funktion in vimrc erstellt
1
function! ConfigProject(...)
2
    if(a:0 == 1)
3
        if("BootCustom1" == a:1)
4
            silent let g:pr1="H:\\Projects\\Boot_Bosch\\src"
5
            silent let g:pr2="H:\\Projects\\Boot_Bosch\\src\\application"
6
            silent let g:pr3="H:\\Projects\\Boot_Bosch\\src\\application\\WORK\\Projekt"
7
            execute("cd " . g:pr1)
8
            NERDTreeCWD
9
        elseif("BootCustom2" == a:1)
10
            silent let g:projectName = a:1
11
            silent let g:pr1="H:\\Projects\\Boot_Volvo\\src"
12
            silent let g:pr2="H:\\Projects\\Boot_Volvo\\src\\application"
13
            silent let g:pr3="H:\\Projects\\Boot_Volvo\\src\\application\\WORK\\Projekt"
14
            execute("cd " . g:pr1)
15
            NERDTreeCWD
16
        else
17
            echo "invalid ProjectName"
18
        endif
19
    endif
20
endfunction
Hier werden auch die pfade richtig gesetzt und NERDTree legt den root 
auf das entsprechende Projekt um

Warum bekomme ich beim Aufstarten eine Fehlermeldung?

von Christopher B. (chrimbo) Benutzerseite


Lesenswert?

Ich weiß es nicht, aber ich vermute, dass das Plugin beim Laden deiner 
vimrc noch gar nicht verfügbar ist.
Selbst ein NERDTree Aufruf führt bei mir zum Fehler.

Als Workaround könntest du
1
autocmd VimEnter * ConfigProject(BootCustom1)
oder sowas versuchen.

von Lars (Gast)


Lesenswert?

Christopher B. schrieb:
> Selbst ein NERDTree Aufruf führt bei mir zum Fehler.

hatte es auch schon damit versucht, mit selbem Fehler.

Aber es hat funktioniert mit
1
autocmd VimEnter * call ConfigProject(BootCustom1)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.