mehrere .vimrc's möglich?
![](https://seccdn.libravatar.org/avatar/0c67457537ccf2aaaddeb4ed4150181c.jpg?s=120&d=mm&r=g)
Hai @*, kann vi beim Start eine andere Konfigurationsdatei übergeben werden als die .vimrc z.B. per Startparameter? Wenn nicht, ist es möglich bestimmte Settings der Datei zu- oder abzuschalten? Hintergrund ist, daß durch meine .vimrc z.B. die Umlaute automatisch in Umls konvertiert werden. Soll nun vi aber ausnahmsweise nicht als HTML-Editor verwendet werden, ist es ziemlich doof dauernd ein Uml anstatt eines Umlautes stehen zuhaben. Viele Grüße Thomas
![](https://seccdn.libravatar.org/avatar/b58101fb24c64d0ff1d0f918e61cedd2.jpg?s=120&d=mm&r=g)
Hallo Thomas, hallo Leute, Am Mittwoch, 29. September 2004 22:23 schrieb Thomas Stark:
kann vi beim Start eine andere Konfigurationsdatei übergeben werden als die .vimrc z.B. per Startparameter?
Ist in Deinem Fall unnötig ;-)
Wenn nicht, ist es möglich bestimmte Settings der Datei zu- oder abzuschalten? Hintergrund ist, daß durch meine .vimrc z.B. die Umlaute automatisch in Umls konvertiert werden. Soll nun vi aber ausnahmsweise nicht als HTML-Editor verwendet werden, ist es ziemlich doof dauernd ein Uml anstatt eines Umlautes stehen zuhaben.
autocmd Syntax html source /pfad/zum/umlautscript.vim autocmd Syntax php source /pfad/zum/umlautscript.vim müsste reichen, wird aber mit zunehmender Anzahl der Scripte unhandlich. Die IMHO bessere Alternative: filetype plugin on in die .vimrc schreiben. Dann kannst Du die vim-Scripte in .vim/ftplugin/<filetype>/ ablegen. Diese werden dann automatisch ausgeführt, wenn eine Datei des entsprechenden Typs geladen wird. (den Dateityp erfährst Du mit :set ft ) Dateien in ~/.vim/after/plugin/ werden übrigens nach dem Laden der Plugins geladen, unabhängig vom filetype. Hier mal als Beispiel mein ~/.vim Verzeichnis: cb@cboltz:~> find .vim -type f |grep -v CVS .vim/ftplugin/cb_diff/umlaute.vim .vim/ftplugin/changelog/changelog.vim .vim/ftplugin/changelog/textwidth.vim .vim/ftplugin/html/EasyHtml.vim .vim/ftplugin/html/HTML_insert.vim .vim/ftplugin/html/closetag.vim .vim/ftplugin/html/genutils.vim .vim/ftplugin/html/htmlmap.vim .vim/ftplugin/html/libList.vim .vim/ftplugin/php .vim/after/plugin/SeeTab.vim .vim/after/plugin/zSeeTab_cb.vim cb@cboltz:~> find .vim -type l |grep -v CVS |xargs ls -l .vim/ftplugin/cb_diff/textwidth.vim -> ../changelog/textwidth.vim .vim/ftplugin/cvs/umlaute.vim -> ../cb_diff/umlaute.vim .vim/ftplugin/php -> html/ ### wichtig! ### .vim/ftplugin/xml/closetag.vim -> ../html/closetag.vim Viele Scripte stammen von vim.org, einige sind selbstgebastelt. Die selbstgebastelten sind allerdings in der Regel sehr klein (1-10 Zeilen) und somit nichts weltbewegendes.
Viele Grüße
;-) Gruß Christian Boltz -- Bei etwas größeren Dingen mit 6stelligem Budget kommt gern mal "plötzlich" ein Onlineshop dazu. Oder ein Ticketsystem. So ganz von alleine. Gucki, ich bin eine kleine Kundenidee - ist das viel Arbeit? ;) [Ratti in suse-linux]
![](https://seccdn.libravatar.org/avatar/0c67457537ccf2aaaddeb4ed4150181c.jpg?s=120&d=mm&r=g)
Christian Boltz wrote:
autocmd Syntax html source /pfad/zum/umlautscript.vim autocmd Syntax php source /pfad/zum/umlautscript.vim
müsste reichen, wird aber mit zunehmender Anzahl der Scripte unhandlich.
Die IMHO bessere Alternative: filetype plugin on in die .vimrc schreiben.
Dann kannst Du die vim-Scripte in .vim/ftplugin/<filetype>/ ablegen. Diese werden dann automatisch ausgeführt, wenn eine Datei des entsprechenden Typs geladen wird. (den Dateityp erfährst Du mit :set ft )
Dateien in ~/.vim/after/plugin/ werden übrigens nach dem Laden der Plugins geladen, unabhängig vom filetype.
Das ist ja wesentlich komfortabler, als ich dachte. Genial. Danke für den Tip, werd mich gleich mal an die Umsetzung machen. Schönes Wochenende Thomas -- Wirklich, nix für ungut, aber "Kann mal kurz einer erzählen, wie man einen Braunkohlebagger steuert" ist keine kurz zu beantwortende Frage ("Erstmal anlassen, der Rest findet sich..."). Jörg Rossdeutscher in der Suse-Linux Mailingliste
participants (2)
-
Christian Boltz
-
Thomas Stark