[linux-l] vim fragen

Oliver Bandel oliver at first.in-berlin.de
Do Nov 14 13:36:38 CET 2002


On Thu, Nov 14, 2002 at 09:19:33AM +0100, Steffen Dettmer wrote:
> * Soeren Sonnenburg wrote on Wed, Nov 13, 2002 at 11:50 +0100:
> > bin mir nicht sicher ob ich das genau genug ausgedrueckt hab. ich fuege
> > woerter in einer zeile and zB.
> > 
> > wort1
> > wort1 wort2
> > wort1 wort2 ... wortN
> > 
> > wenn die zeile keinen zeilenumbruch enthaelt ist es ein echo -n "wortI"
> 
> Dann geht doch aber genausogut auch:
> 
> wort1
> wort2
> wortN

Ja, das ist möglich.

Je nachdem, wie man das beispeil verstehen soll,
kann man auch die Lösung dafür anpassen:
ist es wirklich so, daß alle "wort1" auch in verschiedenen
Zeilen aber die gleichen Worte sind?
oder sind es jeweils andere "wort1"'e???

Man kann das nach Deiner Variante so recht einfach lesen
und muß ggf. auf leerzeile untersuchen, wenn man die
bisher verschiedenen Zeilen
wort1
wort1 wort2
wort1 wort2 wort3
wort1 wort2 wort3 wort4
unterscheiden will:

wort1

wort1
wort2

wort1
wort2
wort3

wort1
wort2
wort3
wort4


falls alle "wort<n>" aber gleich sind, ist DIES
redundant und braucht mehr Platz, als das eine "\n"
am Zeilenende.

Man kann jedenfalls das Anhängen - in bisheriger
Anordnungsweise - doch einfach mit
Schreiben im Append-Modus machen, aber vorher das File
- wie mit dem Perlscript, das ich gemailt hatte, beschrieben -
um 1 Byte kürzen.

man truncate

> 
> Dann hat man ein Format, daß kompatible zu "sort", "uniq" und
> solch hübschen Sachen ist :)
> 
> Beim Verarbeiten ist das auch so gut. Vielleicht kam daher nur
> die Verwirrung, weil Du anfingst, Deine Wörter nicht einfach
> Zeilenweise zu schreiben, dann hätte es viel Arbeit gespart.
> Vielleicht.


Tja, viele vielleichts.

Das ganze wäre klarer, wenn die Beschreibung/Frage
nochmal klarer gestellt würde.

Statt den vi umzubauen wäre jedenfalls die Anpassung
des Datenformats sinnvoller.

Ich plädiere für Anfügen der Daten durch das Script/programm
mit Anhängen eines "\n" und wegschnippeln des selbigen, bevor
man das nächste Wort anfügt.
Dann hat man für Klartextausgabe immer das "\n" dabei
und kann die Datei mal eben mit cat ausgeben.
Das ganze bleibt dann human readable, kann aber dennoch
mit relativ geringem Aufwand programmiert werden.

Ciao,
   Oliver




Mehr Informationen über die Mailingliste linux-l