Provided by:
manpages-pl_20060617-1_all 
NAZWA
wdiff - wyświetla różnice w wyrazach między plikami tekstowymi
SKŁADNIA
wdiff [opcja...] stary_plik nowy_plik
PRAWA AUTORSKIE
Copyright (C) 1992 Free Software Foundation, Inc.
OPIS
Dokumentacja niniejsza nie jest już utrzymywana i może być niedokładna
lub niekompletna. Autorytatywnym źródłem jest obecnie dokumentacja
Texinfo. Dostęp do niej uzyskasz wpisując w wierszu poleceń:
pinfo wdiff
lub
info wdiff.
wdiff porównuje dwa pliki, stwierdzając, które wyrazy usunięto lub
dodano do starego_pliku, by uzyskać nowy_plik. Wyrazem jest cokolwiek
ograniczone białymi znakami. Wyniki są zbierane i używane do utworzenia
skomentowanej kopii nowego pliku na standardowym wyjściu. Odpowiednie
adnotacje dają ładny obraz różnic w wyrazach między pierwotnymi
plikami.
wdiff kończy pracę z kodem 0 jeśli nie odnaleziono różnic, 1 jeżeli
znaleziono różnice, a 2 w przypadku błędu.
Zwykle do oznaczenia usuniętego tekstu stosowane jest podkreślenie, zaś
do oznaczenia tekstu wstawionego pogrubienie lub negatyw. Ten sposób
domyślny można przesłonić opcjami wiersza poleceń. Usunity tekst
oznacza tekst w starym_pliku, którego nie ma w nowym_pliku , podczas
gdy wstawiony tekst oznacza tekst w nowym_pliku, którego brak w
starym_pliku.
OPCJE
--help
-h Wypisuje komunikat pomocy opisujący opcje.
--version
-v Wypisuje numer wersji wdiff na standardowym wyjściu
diagnostycznym.
--no-deleted
-1 Zabrania tworzenia w wyjściu usuniętych wyrazów. Jeśli nie
wybrano ani opcji -1 ani -2, to w niektórych wierszach może
zostać przekroczony pierwotny prawy margines.
--no-inserted
-2 Zabrania tworzenia w wyjściu wstawionych wyrazów. Jeśli nie
wybrano ani opcji -1 ani -2, to w niektórych wierszach może
zostać przekroczony pierwotny prawy margines.
--no-common
-3 Zabrania tworzenia w wyjściu wspólnych wyrazów. Jeśli nie użyto
tej opcji, wspólne wyrazy i białe znaki są pobierane z
nowego_pliku. Gdy jej użyto, to różnice zostaną od siebie
oddzielone wierszami kresek. Ponadto, jeśli opcji tej użyto
równocześnie z -1 lub -2, to w utworzonym wyjściu nie będzie
wyróżnień - tzn. pogrubień ani podkreśleń. Na koniec, jeśli nie
użyto tej opcji, ale użyto obu opcji -1 i -2, to sekcje
wspólnych wyrazów pomiędzy różnicami będą oddzielane wierszami
kresek.
--statistics
-s Na zakończenie wypisywana jest, dla każdego pliku, całkowita
liczba wyrazów, wyrazów wspólnych dla obu plików, usuniętych
bądź wstawionych i liczba zmienionych. (Wyraz zmieniony to taki,
który został zastąpiony lub jest częścią zastąpienia.) Z
wyjątkiem całkowitej liczby wyrazów, po wszystkich pozostałych
liczbach występuje procent względem całkowitej liczby wyrazów w
pliku.
--auto-pager
-a Jeśli wyjście wdiff jest kierowane na terminal, to pomiędzy nie
wstawiany jest program stronicowania (pager). Bez tej opcji nie
będzie wywoływany żaden program stronicujący. Wówczas, jeśli to
potrzebne, użytkownik sam odpowiada za jawne skierowanie
potokiem wyjścia z wdiff to pagera.
Program stronicujący określa się wartością zmiennej
środowiskowej PAGER. Jeśli podczas wykonywania wdiff zmienna
PAGER nie jest zdefiniowana, to zostanie użyty domyślny program
stronicujący, wybrany podczas instalacji. Zdefiniowana, lecz
pusta wartość PAGER oznacza brak jakiegokolwiek programu
stronicowania.
Gdy przez użycie tej opcji stosowany jest program stronicujący,
włączana jest także jedna z opcji -l lub -t, w zależności od
tego, czy w nazwie pagera pojawia się łańcuch "less" czy nie.
Często warto zdefiniować wdiff jako alias dla wdiff -a. Jednak
"ukrywa" to zwykłe zachowanie się programu. Można je przywrócić
po prostu przepuszczając potokiem wyjście wdiff przez cat. Taki
sposób odłącza wyjście od terminala.
--printer
-p Stosuje nadruk do wyróżnienia części wyjścia. Każdy ze znaków
usuniętego tekstu jest podkreślany przez wypisanie najpierw
znaku podkreślenia _, a następnie znaku cofnięcia (backspace) i
litery, jaka ma zostać podkreślona. Każdy ze znaków wstawionego
tekstu jest pogrubiany przez wypisanie go dwukrotnie, z
cofnięciem pomiędzy przebiegami. Domyślnie ta opcja nie jest
włączona.
--less-mode
-l Stosuje nadruk do wyróżnienia części wyjścia. Działa jak opcja
-p, ale dodatkowo nadpisuje białe znaki związane z wstawianym
tekstem. less pokazuje takie białe znaki stosując negatyw
obrazu. Domyślnie ta opcja nie jest włączona. Jest jednak
włączana automatycznie każdorazowo gdy wdiff uruchamia less.
(Zobacz opcję -a.)
Jest często stosowana w połączeniu z less:
wdiff -l stary_plik nowy_plik | less
--terminal
-t Wymusza tworzenie łańcuchów termcap do wyróżniania części
wyjścia, nawet jeśli standardowe wyjście nie jest związane z
terminalem. Zmienna środowiskowa TERM musi zawierać nazwę
poprawnego wpisu z termcap. Jeśli pozwala na to opis danego
terminala, do oznaczania usuniętego tekstu stosowane jest
podkreślenie, a do wstawionego tekstu pogrubienie lub negatyw.
Domyślnie ta opcja nie jest włączona. Jest jednak włączana
automatycznie każdorazowo gdy wdiff uruchamia program
stronicujący i wiadomo, że nie jest to less. (Zobacz opcję -a.)
Tę opcję stosuje się powszechnie gdy wyjście wdiff nie jest
przekierowane, ale wysyłane wprost na terminal, jak w:
wdiff -t stary_plik nowy_plik
Częste rozwiązanie to korzystanie z wdiff razem z programem
stronicującym more:
wdiff -t stary_plik nowy_plik | more
Jednak niektóre wersje more wykorzystują wyróżnienia termcap do
własnych celów, więc mogą wystąpić dziwne wzajemne
oddziaływania.
--start-delete argument
-w argument
Stosuje argument jako łańcuch "początku usuwania". Zostanie on
wypisany przed każdą sekwencją usuniętego tekstu, zaznaczając
jej początek. Domyślnie nie jest używany żaden łańcuch początku
usuwania, chyba że nie ma innych środków, dzięki którym można by
rozpoznać, gdzie się zaczyna taki tekst. Wówczas domyślnym
łańcuchem początku usuwania jest [-.
--end-delete argument
-x argument
Stosuje argument jako łańcuch "końca usuwania". Zostanie on
wypisany po każdej sekwencji usuniętego tekstu, zaznaczając jej
koniec. Domyślnie nie jest używany żaden łańcuch końca usuwania,
chyba że nie ma innych środków, dzięki którym można by
rozpoznać, gdzie się kończy taki tekst. Wówczas domyślnym
łańcuchem końca usuwania jest -] .
--start-insert argument
-y argument
Stosuje argument jako łańcuch "początku wstawiania". Zostanie on
wypisany przed każdą sekwencją wstawionego tekstu, zaznaczając
jej początek. Domyślnie nie jest używany żaden łańcuch początku
wstawiania, chyba że nie ma innych środków, dzięki którym można
by rozpoznać, gdzie się zaczyna taki tekst. Wówczas domyślnym
łańcuchem początku wstawiania jest {+.
--end-insert argument
-z argument
Stosuje argument jako łańcuch "końca wstawiania". Zostanie on
wypisany po każdej sekwencji wstawionego tekstu, zaznaczając jej
koniec. Domyślnie nie jest używany żaden łańcuch końca
wstawiania, chyba że nie ma innych środków, dzięki którym można
by rozpoznać, gdzie się kończy taki tekst. Wówczas domyślnym
łańcuchem końca wstawiania jest +}.
--avoid-wraps
-n Zabrania łączenia końców wiersza podczas pokazywania usuniętego
lub wstawionego tekstu. Każdy pojedynczy fragment usuniętego lub
wstawionego tekstu rozciągający się na wiele wierszy będzie
uważany za złożony z wielu mniejszych kawałków nie zawierających
znaku nowej linii. Zatem na przykład, usunięty tekst będzie
miał łańcuch końca usuwania na końcu każdego wiersza, zaraz
przed znakiem nowej linii, i łańcuch początku usuwania na
początku następnego wiersza. Każdy wiersz w długim akapicie
wstawionego tekstu będzie ujęty pomiędzy łańcuchy początku
wstawiania i końca wstawiania. To zachowanie domyślnie nie jest
włączone.
Zauważ, że opcje -p, -t i -[wxyz] nie wykluczają się wzajemnie.
Używając dowolnej ich kombinacji sumuje się po prostu efekty każdej z
nich. Opcja -l jest wariantem opcji -p.
PRZYKŁADY
Poniższe polecenie tworzy kopię nowego_pliku , przesuniętą o jedno
miejsce w prawo w celu pomieszczenia pionowych kresek zmian od
ostatniej wersji, ignorując zmiany wynikające wyłącznie z wypełnienia
akapitów. Każda linia z nowym lub zmienionym tekstem otrzyma | w
pierwszej kolumnie. Jednak tekst usunięty nie będzie ani pokazywany,
ani oznaczany.
wdiff -1n stary_plik nowy_plik | sed -e 's/^/ /;/{+/s/^
/|/;s/{+//g;s/+}//g'
BŁĘDY
Jeśli znajdziesz błąd w wdiff, wyślij proszę list na adres
pinard@iro.umontreal.ca. Załącz numer wersji, który możesz uzyskać
uruchamiając wdiff --version. W liście załącz dane wejściowe
wystarczające do powielenia problemu a także wyjście, jakiego się
spodziewałeś.
Obecnie wdiff wywołuje diff. Byłby szybszy i czystszy w implementacji,
gdyby był częścią pakietu programów diff.
Oto parę (nie przerobionych) sugestii:
- Zrobić przeniesienie na MS-DOS.
- Wybór opcjami co dokładnie jest białym znakiem.
- Mieć program wpatch. Nie bardzo widać dobry sposób, jak to
zrobić.
IDENTIFIKACJA
Autor: Francois Pinard, pinard@iro.umontreal.ca
Strona podręcznikowa man: Colin M. Brough, cmb@epcc.ed.ac.uk
Numer wersji: 0.4; Data wydania: 1992/12/21.
ZOBACZ TAKŻE
diff(1), less(1), cat(1), more(1), termcap(3).