vimhelp 6.2 - en to de translation catalogue (36 entries)

en: *usr_43.txt*	For Vim version 6.2.  Last change: 2002 Jul 14
de: *usr_43.txt*	Für Vim Version 6.2.  Letzte Änderung: 2002-Jul-14

en: 		     VIM USER MANUAL - by Bram Moolenaar
de: 		     VIM-BENUTZERHANDBUCH - von Bram Moolenaar

en: 			       Using filetypes
de: 			       Dateitypen (filetypes) benutzen

en: When you are editing a file of a certain type, for example a C program or a shell script, you often use the same option settings and mappings.  You quickly get tired of manually setting these each time.  This chapter explains how to do it automatically.
de: Wenn Sie eine Datei von einem bestimmten Typ editieren, zum Beispiel ein C-Programm oder ein Shell-Skript, benutzen Sie oft dieselben Einstellungen und Tastaturbelegungen.  Sie werden schnell müde, diese jedes Mal von Hand zu setzen.  Dieses Kapitel erklärt, wie man es automatisiert.

en: |43.1|	Plugins for a filetype |43.2|	Adding a filetype
de: |43.1|	Plugins für einen Dateityp
    |43.2|	Einen Dateityp hinzufügen

en:      Next chapter: |usr_44.txt|  Your own syntax highlighted
     Previous chapter: |usr_42.txt|  Add new menus
    Table of contents: |usr_toc.txt|
de: Nächstes Kapitel: |usr_44.txt|  Eigene Syntax-Hervorhebungen
     Voriges Kapitel: |usr_42.txt|  Neue Menüs hinzufügen
    Inhaltsübersicht: |usr_toc.txt|

en: *43.1*	Plugins for a filetype				*filetype-plugin*
de: *43.1*	Plugins für einen Dateityp				*filetype-plugin*

en: How to start using filetype plugins has already been discussed here: |add-filetype-plugin|.  But you probably are not satisfied with the default settings, because they have been kept minimal.  Suppose that for C files you want to set the 'softtabstop' option to 4 and define a mapping to insert a three-line comment.  You do this with only two steps:
de: Wie mit der Benutzung von Dateitypen-Plugins begonnen wird, wurde bereits unter |add-filetype-plugin| besprochen.  Aber möglicherweise sind Sie mit den Standard-Vorgaben nicht zufrieden, weil diese minimal gehalten wurden.  Angenommen, Sie wollen für C-Dateien die Option 'softtabstop' auf 4 setzen und eine Tastenbelegung definieren, welche einen dreizeiligen Kommentar einfügt.  Dies geht mit nur zwei Schritten:

en: 							*your-runtime-dir*
    1. Create your own runtime directory.  On Unix this usually is "~/.vim".  In
       this directory create the "ftplugin" directory: >
de: 							*your-runtime-dir*
    1. Erzeugen Sie Ihr eigene Laufzeit-Verzeichnis.  Unter Unix ist dies für
    gewöhnlich »~/.vim«.  Erzeugen Sie in diesem Verzeichnis das Verzeichnis
    »ftplugin«: >

en: 	mkdir ~/.vim
    	mkdir ~/.vim/ftplugin
    <
       When you are not on Unix, check the value of the 'runtimepath' option to
       see where Vim will look for the "ftplugin" directory: >
de: 	mkdir ~/.vim
    	mkdir ~/.vim/ftplugin
    <
       Falls Sie nicht unter Unix arbeiten, prüfen Sie den Wert der Option
    'runtimepath', um zu sehen, wo Vim nach dem Verzeichnis »ftplugin« sucht: >

en: <  You would normally use the first directory name (before the first comma).
       You might want to prepend a directory name to the 'runtimepath' option in
       your |vimrc| file if you don't like the default value.
de: <  Sie werden normalerweise den ersten Verzeichnisnamen (vor dem ersten Komma)
    benutzen.  Möglicherweise wollen Sie der Option 'runtimepath' ein Verzeichnis
    in Ihrer Datei |vimrc| voranstellen, falls Ihnen die Vorgabe nicht gefällt.

en: Create the file "~/.vim/ftplugin/c.vim", with the contents: >
de: Erzeugen Sie die Datei »~/.vim/ftplugin/c.vim« mit folgendem Inhalt: >

en: Try editing a C file.  You should notice that the 'softtabstop' option is set to 4.  But when you edit another file it's reset to the default zero.  That is because the ":setlocal" command was used.  This sets the 'softtabstop' option only locally to the buffer.  As soon as you edit another buffer, it will be set to the value set for that buffer.  For a new buffer it will get the default value or the value from the last ":set" command.
de: Versuchen Sie nun eine C-Datei zu editieren.  Sie sollten bemerken, dass die Option 'softtabstop' auf 4 gesetzt wurde.  Wenn Sie aber eine andere Datei editieren, wird sie auf das vorgabemäßige 0 zurückgesetzt.  Das ist so, weil der Befehl »:setlocal« benutzt wurde.  Dieser setzt die Option 'settabstop' nur für den lokalen Puffer.  Sobald Sie einen anderen Puffer editieren, wird sie auf den Vorgabewert für diesen Puffer gesetzt.  Für einen neuen Puffer ist dies der Standardwert oder der Wert des letzten »:set«-Befehls.

en: Likewise, the mapping for "\c" will disappear when editing another buffer.  The ":map <buffer>" command creates a mapping that is local to the current buffer.  This works with any mapping command: ":map!", ":vmap", etc.  The |<LocalLeader>| in the mapping is replaced with the value of "maplocalleader".
de: Desweiteren verschwindet die Tastaturbelegung für »\c«, wenn ein anderer Puffer editiert wird.  Der Befehl »:map <buffer>« erzeugt eine Tastenbelegung, die lokal zu dem aktuellen Puffer ist.  Dies funktioniert mit jedem Belegungsbefehl: »:map!«, »:vmap« usw.  Das |<LocalLeader> in der Belegung wird durch den Wert der Variablen »maplocalleader« ersetzt.

en: You can find examples for filetype plugins in this directory: >
de: In diesem Verzeichnis können Sie Beispiele für Dateitypen-Plugins finden: >

en: More details about writing a filetype plugin can be found here: |write-plugin|.
de: Weitere Details über das Schreiben von Dateitypen-Plugins können unter |write-plugin| gefunden werden.

en: *43.2*	Adding a filetype
de: *43.2*	Einen Dateityp hinzufügen

en: If you are using a type of file that is not recognized by Vim, this is how to get it recognized.  You need a runtime directory of your own.  See |your-runtime-dir| above.
de: Falls Sie einen Dateityp benutzen, der von Vim nicht erkannt wird, bekommen Sie ihn folgendermaßen erkannt.  Sie brauchen ein eigenes Laufzeitverzeichnis.  Siehe oben |your-runtime-dir|.

en: Create a file "filetype.vim" which contains an autocommand for your filetype.  (Autocommands were explained in section |40.3|.)  Example: >
de: Erzeugen Sie eine Datei »filetype.vim«, die einen automatischen Befehl für Ihren Dateityp enthält.  (Automatische Befehle werden in Abschnitt |40.3| erläutert.)  Zum Beispiel: >

en: This will recognize all files that end in ".xyz" as the "xyz" filetype.  The ":augroup" commands put this autocommand in the "filetypedetect" group.  This allows removing all autocommands for filetype detection when doing ":filetype off".  The "setf" command will set the 'filetype' option to its argument, unless it was set already.  This will make sure that 'filetype' isn't set twice.
de: Dies lässt alle Dateien, die auf ».xyz« enden, als den Dateityp xyz erkennen.  Die Befehle »:augroup« setzen diesen automatischen Befehl in die Gruppe »filetypedetect«.  Dies erlaubt es, alle automatischen Befehle für die Dateityperkennung zu entfernen, wenn der Befehl »:filetype off« gegeben wird.  Der Befehl »setf« setzt die Option 'filetype' auf sein Argument, wenn er es nicht schon ohnehin war.  Dies stellt sicher, dass 'filetype' nicht zweimal gesetzt wird.

en: You can use many different patterns to match the name of your file.  Directory names can also be included.  See |autocmd-patterns|.  For example, the files under "/usr/share/scripts/" are all "ruby" files, but don't have the expected file name extension.  Adding this to the example above: >
de: Sie können viele verschiedene übereinstimmungsmuster für den Namen Ihrer Datei benutzen.  Verzeichnisnamen können ebenfalls einbezogen werden.  Siehe |autocmd-patterns|.  Zum Beispiel sind die Dateien unter »/usr/share/scripts/« alle Ruby-Dateien, aber haben nicht die erwartete Datei-Endung.  Fügen wir dies obigem Beispiel hinzu: >

en: However, if you now edit a file /usr/share/scripts/README.txt, this is not a
    ruby file.  The danger of a pattern ending in "*" is that it quickly matches
    too many files.  To avoid trouble with this, put the filetype.vim file in
    another directory, one that is at the end of 'runtimepath'.  For Unix for
    example, you could use "~/.vim/after/filetype.vim".
       You now put the detection of text files in ~/.vim/filetype.vim: >
de: Falls Sie aber nun eine Datei /usr/share/scripts/READE.txt editieren, ist
    diese keine Ruby-Datei.  Die Gefahr von Mustern, die auf »*« enden ist, dass
    schnell zu viele Dateien erfasst werden.  Um dieses Problem zu vermeiden,
    legen Sie die Datei in ein anderes Verzeichnis, eines, dass am Ende von
    'runtimepath' ist.  Für Unix könnten Sie zum Beispiel
    »~/.vim/after/filetype.vim« benutzen.
      Jetzt packen Sie die Erkennung von Textdateien in ~/.vim/filetype.vim: >

en: That file is found in 'runtimepath' first.  Then use this in ~/.vim/after/filetype.vim, which is found last: >
de: Diese Datei wird zuerst in 'runtimepath' gefunden.  Dann packen Sie dies in die ~/.vim/after/filetype.vim, welche zuletzt gefunden wird: >

en: What will happen now is that Vim searches for "filetype.vim" files in each
    directory in 'runtimepath'.  First ~/.vim/filetype.vim is found.  The
    autocommand to catch *.txt files is defined there.  Then Vim finds the
    filetype.vim file in $VIMRUNTIME, which is halfway 'runtimepath'.  Finally
    ~/.vim/after/filetype.vim is found and the autocommand for detecting ruby
    files in /usr/share/scripts is added.
       When you now edit /usr/share/scripts/README.txt, the autocommands are
    checked in the order in which they were defined.  The *.txt pattern matches,
    thus "setf text" is executed to set the filetype to "text".  The pattern for
    ruby matches too, and the "setf ruby" is executed.  But since 'filetype' was
    already set to "text", nothing happens here.
       When you edit the file /usr/share/scripts/foobar the same autocommands are
    checked.  Only the one for ruby matches and "setf ruby" sets 'filetype' to
    ruby.
de: Was nun passiert ist, dass Vim in jedem Verzeichnis in 'runtimepath' nach
    einer Datei »filetype.vim« sucht.  Zuerst wird ~/.vim/filetype.vim gefunden.
    Der automatische Befehl um *.txt Dateien zu erkennen wird dort definiert.
    Dann findet Vim die Datei filetype.vim in $VIMRUNTIME, was in der Mitte von
    'runtimepath' ist.  Schließlich wird ~/.vim/after/filetype.vim gefunden, und
    der automatische Befehl für die Erkennung von Ruby-Dateien in
    /usr/share/scripts wird hinzugefügt.
       Wenn Sie nun /usr/share/scripts/README.txt editieren, werden die
    automatischen Befehle in der Reihenfolge überprüft, in der sie definiert
    wurden.  Das Muster *.txt trifft, also wird »setf text« ausgeführt, um den
    Dateityp auf »text« zu setzen.  Das Muster für Ruby trifft ebenfalls, und
    »setf ruby« wird ausgeführt.  Aber weil 'filetype' bereits auf »text« gesetzt
    war, passiert hier nichts.
       Wenn Sie die Datei /usr/share/scripts/foobar editieren, werden dieselben
    automatischen Befehle überprüft.  Nur der für Ruby passt, und »setf ruby«
    setzt 'filetype' auf Ruby.

en: RECOGNIZING BY CONTENTS
de: ERKENNUNG NACH INHALT

en: If your file cannot be recognized by its file name, you might be able to recognize it by its contents.  For example, many script files start with a line like:
de: Falls Ihre Datei nicht am Dateinamen erkannt werden kann, mag es sein, dass sie sich an ihrem Inhalt erkennen lässt.  Zum Beispiel beginnen viele Skript-Dateien mit einer Zeile wie dieser:

en: To recognize this script create a file "scripts.vim" in your runtime directory (same place where filetype.vim goes).  It might look like this: >
de: Um dieses Skript zu erkennen, erzeugen Sie eine Datei »scripts.vim« in Ihrem Laufzeit-Verzeichnis (an derselben Stelle wie filetype.vim.  Sie könnte so aussehen: >

en: The first check with did_filetype() is to avoid that you will check the
    contents of files for which the filetype was already detected by the file
    name.  That avoids wasting time on checking the file when the "setf" command
    won't do anything.
       The scripts.vim file is sourced by an autocommand in the default
    filetype.vim file.  Therefore, the order of checks is:
de: Die erste Abfrage auf did_filetype() geschieht, um zu vermeiden, dass
    Dateien, die bereits nach ihrem Dateinamen erkannt wurden, auf ihren Inhalt
    untersucht werden.  Dies spart Zeit, die auf das Prüfen der Datei verwandt
    würde, wenn der Befehl »setf« ohnehin ohne Wirkung bliebe.
       Die Datei scripts.vim wird von einem automatischen Befehl in der
    standardmäßigen filetype.vim eingelesen.  Demnach ist die
    Überprüfungsreihenfolge:

en: filetype.vim files before $VIMRUNTIME in 'runtimepath'
de: Dateien filetype.vim vor $VIMRUNTIME in 'runtimepath'

en: first part of $VIMRUNTIME/filetype.vim
de: Der erste Teil von $VIMRUNTIME/filetype.vim

en: all scripts.vim files in 'runtimepath'
de: Alle Dateien scripts.vim in 'runtimepath'

en: remainder of $VIMRUNTIME/filetype.vim
de: Der Rest von $VIMRUNTIME/filetype.vim

en: filetype.vim files after $VIMRUNTIME in 'runtimepath'
de: Dateien filetype.vim nach $VIMRUNTIME in 'runtimepath'

en: If this is not sufficient for you, add an autocommand that matches all files and sources a script or executes a function to check the contents of the file.
de: Falls Ihnen dies nicht ausreicht, fügen Sie einen automatischen Befehl, der auf alle Dateien passt und ein Skript einliest, oder eine Funktion ausführt, die auf den Inhalt der Datei prüft, hinzu.

en: Next chapter: |usr_44.txt| Your own syntax highlighted
de: Nächstes Kapitel: |usr_44.txt| Eigene Syntax-Hervorhebungen

en: Copyright: see |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
de: Copyright: siehe |manual-copyright| vim:tw=78:ts=8:ft=help:norl:
