Hallo Wolfgang! On Mon, 30 Dec 2002, Wolfgang Werners-Lucchini wrote: >> > Hallo Wolfgang >> > >> >> Es sollen eine Reihe aufeinander abgestimmter Textersetzungen >> >> abgearbeitet werden. Doch sobald ein Kommando, z.B. >> >> >> >> 1,$s/^"/">/ >> >> >> >> kein Gänsefüßchen am Zeilenanfang findet, werden alle weiteren >> >> Kommandos ignoriert, also das Script abgebrochen. Frage: Wie >> >> kann ich das verhindern? >> > >> g/^"/s//">/ >> >> 1) Finde ich scharf, dass noch jemand nvi verwendet, ich dachte vim >>hätte die vi-Landschaft schon monopolisiert. Nvi ist ein Eck >>haariger, aber darauf kann man ja stehen. >> > > Es geht eher darum, einen Standard-VI zu benutzen. Einen solchen > findet man überall vor! > Kein Grund sich zu geißeln, aber de gustibus non est disputandum ... > >> 2) sed ist für solche Aufgaben vielleicht eine Alternative: >> verbindet den Schweißgeruch des Erdarbeiters mit der >> Ausdruckskraft einer griechischen Tragödiengestalt, z.B. (Ganz >> zu schweigen von den Warmduscherlösungen ;-) >> > > Das Tool werde ich wechseln, sobald klar ist, daß der VI überfordert > ist. Kann ich mir bei meinem eher simplen Problem aber nicht > vorstellen. > Up to you, aber sed 1) erfordert kein großes Umdenken 2) ist das passende nicht-interaktive Werkzeug 1. Problem s.o. [...] > Zweites Problem: Möchte mittels obigem Skript in Zeile - sagen wir - > 5 Text einfügen. Ich setze voraus, daß der Text 5 Zeilen lang ist. > > 5i > Einzufügender Text > . > [weitere Macros] > > funktioniert nicht. Der Punkt wird nicht, wie ich dachte, als > Endemarkierung erkannt, sondern das komplette noch folgende Skript > wird eingefügt und darüber hinaus wartet der Editor dann immer noch > auf einen interaktiv eingegebenen '.' Wie macht man's richtig? > vim macht das anstandslos: g/^-/s//--/ 5 i Anton geht essen und kauft sich keine Schuhe. . g/^Anton/s//Klaus/ g/Schuhe/s//Hose/g Im Übrigen ... > > Das zweite Problem war eigentlich die Folge eines versuchten > workaround für Problem 1. Ich dachte: 'Schmeissen wir ihm halt in > einer Dummyzeile 1 je ein Ersetzungsbeispiel hin (also passend zum > Beispiel oben, '-' am Zeilenanfang), ersetzen, und löschen dann > wieder die Dummyzeile.' > brauchst du nicht mehr > Ciao, Wolfgang Grüße, Michael -- /"\ ASCII Ribbon Campaign \ / No proprietary formats in attachments without request X i.e. *NO* WORD, POWERPOINT or EXCEL documents / \ Respect Open Standards
Attachment:
pgpk7Ra07JMCD.pgp
Description: PGP signature