Provided by: manpages-pl_20051117-1_all bug

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).