Hi hamann.w! On Fri, 25 Jul 2008, hamann.w@t-online.de wrote:
die Liste ist einfacher Text, ein Event je Zeile. Für mich liegt nahe, diese (im Vergleich zu den anderen) sehr kleine Datei in ein tk-Fenster zu laden. Klick in eine Zeile würde dann die Suchbegriffe für die anderen beiden Dateien per regexp extrahieren. Less (ggf. sogar vi) soll normal bedient werden können (also auch keine umgeleitete Eingabe), ich will mir nur das lästige Abtippen oder Kopieren der Suchbegriffe sparen.
Mit Vim 7 sollte folgendes gehen Du öffnest Deine Dateien, die Du durchsuchen möchtest. In einem Splitfenster öffnest Du Deine Datei mit den zu suchenden Mustern (:sp ~/pfad/datei). Wechseln zwischen den Fenstern kannst Du mit z.B. Ctrl-W w (siehe auch :h window-move-cursor) In dem Fenster, in dem Deine Muster definiert sind, gibst du jetzt das hier ein: (:sp ~\/pfad\/datei). Wechseln zwischen den Fenstern kannst Du mit z.B. :nnoremap <buffer> <CR> :let @/=escape(getline('.'),'/\')<CR> Das belegt dein Enter in diesem Fenster mit der Funktion, die Muster in deinem Suchregister zu schreiben. Je nachdem wie deine Muster aussehen, mußt du noch mehr escapen als / und \. In Verbindung mit :set hls (Suchmuster hervorheben), sollte das gleich in allen Fenster Deinen Suchstring hervorheben. Möchtest Du gleich ins nächste Fenster wechseln, dann gib folgenden Befehl ein: :nnoremap <buffer> <CR> :let @/=escape(getline('.'),'/\')<bar>wincmd w<CR> und wenn du gleich im nächsten Fenster zur ersten Fundstelle springen willst, dann das folgende: :nnoremap <buffer> <CR> :let @/=escape(getline('.'),'/\')<bar>wincmd w<bar>n<CR> Im Normalfall siehst du dann auch immer kurz die Angabe des Befehls unten. Stört dich das, dann kannst du das auch verhindern: :nnoremap <silent><buffer> <CR> :let @/=escape(getline('.'),'/\')<bar>wincmd w<bar>n<CR> Wenn eine dieser Befehlszeilen das tut, was du willst, dann kopiere sie in deine ~/.vimrc. Dann wird das gleich aktiv, wenn immer du Vim startest. Falls Du das nicht möchtest (evtl. ungewünschte Nebenwirkungen in anderen Dateien), kannst Du sie z.B. per Autocommand aktivieren, wenn eine bestimmte Datei gelesen wird. Diese Mail soll nur einige Ideen geben, wie man sowas erreichen kann. Wenn es noch irgendwelche Probleme gibt, schreib halt kurz dein Problem (am besten mit konkreten Beispiel). Mit freundlichen Grüßen Christian -- hundred-and-one symptoms of being an internet addict: 214. Your MCI "Circle of Friends" are all Hayes-compatible. -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org