editor vergleich
Geizhals » Forum » Programmierung » editor vergleich (7 Beiträge, 128 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
...
Re(3): editor vergleich
23.02.2005, 22:19:43
Hi !

Genau das macht ja vimdiff.

vimdiff Datei_1 Datei_2
-> Macht 2 Fenster auf, in denen die Dateien nebeneinander stehen.


Wenn dabei in beiden Dateien über ein paar Zeilen derselbe Text vorkommt, wird er "ausgeblendet" - Beispiel:

Datei 1 Datei 2
xyz hugo
abc abc
def def
+-- 94 Zeilen: 3-----                <<=== Das bedeutet, daß 94 idente Zeilen folgen
franz karl
....

Wenn du vorher deine Optionen sortierst, hättest es.

Aber - wenn du dir Perl auf deinen Rechner holst - klappt folgendes:
#!/usr/bin/perl -w

use strict;

open (IN, "<$ARGV[0]") || die "Kann $ARGV[0] nicht lesen: $!";
open (IN2, "<$ARGV[1]") || die "Kann $ARGV[1] nicht lesen: $!";

my (%wert1, %wert2, $datei);


$datei = $ARGV[0];
while () {
        next unless /^(\w+)\s+["'](\w+)['"]$/;
        warn "$datei: Key $1 redefined (alt='$wert1{$1}' neu='$2')"
                if defined ($wert1{$1});
        $wert1{$1} = $2;
}
$datei = $ARGV[1];
while () {
        next unless /^(\w+)\s+["'](\w+)['"]$/;
        warn "$datei: Key $1 redefined (alt='$wert2{$1}' neu='$2')"
                if defined ($wert2{$1});
        $wert2{$1} = $2;
}

foreach (sort keys %wert1) {
        if ( ! defined ($wert2{$_}) ) {
                warn "$_ nur in $ARGV[0] definiert (dort Wert $wert1{$_})";
        } else {
                if ( $wert1{$_} ne $wert2{$_} ) {
                        warn "$_: in $ARGV[0]='$wert1{$_}', in $ARGV[1]='$wert2{$_}'";
                }
                delete $wert2{$_};
        }
}

foreach (sort keys %wert2) {
        warn "$_ nur in $ARGV[1] definiert (dort Wert $wert2{$_})";
}




Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung