From 20c124956c39ca8ce84c24ab05b1620f3dda46cf Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 17 Aug 2009 16:47:52 +0000 Subject: remove last year's i386-solaris, move gustprog to texmf-dist/doc/support, normalize longdesc of lang collections git-svn-id: svn://tug.org/texlive/trunk@14726 c570f23f-e606-0410-a88d-b1316a301751 --- Master/support/i386-solaris-libs.pkg.gz | Bin 893146 -> 0 bytes Master/support/polish/gustprog/README | 40 --- Master/support/polish/gustprog/l2h-examples.zip | Bin 35599 -> 0 bytes Master/support/polish/gustprog/normtext.awk | 276 --------------------- Master/support/polish/gustprog/plmindex.zip | Bin 258628 -> 0 bytes Master/support/polish/gustprog/porzadki.pl | 214 ---------------- Master/support/polish/gustprog/slim.zip | Bin 8827 -> 0 bytes Master/texmf-dist/doc/support/gustprog/README | 40 +++ .../doc/support/gustprog/l2h-examples.zip | Bin 0 -> 35599 bytes .../texmf-dist/doc/support/gustprog/normtext.awk | 276 +++++++++++++++++++++ .../texmf-dist/doc/support/gustprog/plmindex.zip | Bin 0 -> 258628 bytes Master/texmf-dist/doc/support/gustprog/porzadki.pl | 214 ++++++++++++++++ Master/texmf-dist/doc/support/gustprog/slim.zip | Bin 0 -> 8827 bytes 13 files changed, 530 insertions(+), 530 deletions(-) delete mode 100644 Master/support/i386-solaris-libs.pkg.gz delete mode 100644 Master/support/polish/gustprog/README delete mode 100644 Master/support/polish/gustprog/l2h-examples.zip delete mode 100644 Master/support/polish/gustprog/normtext.awk delete mode 100644 Master/support/polish/gustprog/plmindex.zip delete mode 100755 Master/support/polish/gustprog/porzadki.pl delete mode 100644 Master/support/polish/gustprog/slim.zip create mode 100644 Master/texmf-dist/doc/support/gustprog/README create mode 100644 Master/texmf-dist/doc/support/gustprog/l2h-examples.zip create mode 100644 Master/texmf-dist/doc/support/gustprog/normtext.awk create mode 100644 Master/texmf-dist/doc/support/gustprog/plmindex.zip create mode 100755 Master/texmf-dist/doc/support/gustprog/porzadki.pl create mode 100644 Master/texmf-dist/doc/support/gustprog/slim.zip diff --git a/Master/support/i386-solaris-libs.pkg.gz b/Master/support/i386-solaris-libs.pkg.gz deleted file mode 100644 index c93328225a2..00000000000 Binary files a/Master/support/i386-solaris-libs.pkg.gz and /dev/null differ diff --git a/Master/support/polish/gustprog/README b/Master/support/polish/gustprog/README deleted file mode 100644 index 2b420464f8e..00000000000 --- a/Master/support/polish/gustprog/README +++ /dev/null @@ -1,40 +0,0 @@ -July 2008, Staszek Wawrykiewicz staw gust org.pl>. Public domain - -Polish (iso8859-2) | English -GUSTPROG zawiera programy | GUSTPROG contains utilities -przydatne dla polskich | useful for Polish users of TeX -użytkowników TeX-a | ------------------------------------------------------------------------------ -1. slim.zip - skrypt AWK-owy do konwersji tzw. | AWK script for translating - `standardów' polskich liter | the encodings of Polish diacritic - (dołączone tablice konwersji | characters (DOS .bat and U**X shell - i pliki wsadowe dla DOS i U**X) | scripts provided) -B. Jackowski, P. Pianowski ------------------------------------------------------------------------------ -2. normtext.awk - skrypt AWK-owy do konwersji tekstów | converts badly typed text files - dla potrzeb TeX-a: wstawia tyldy itp.| to a form more suitable for TeX -Piotr K\l{}osowski ------------------------------------------------------------------------------ -3. porzadki.pl - skrypt Perlowy do konwersji tekstów | converts badly typed text files - dla potrzeb TeX-a: wstawia tyldy itp.| to a form more suitable for TeX -Piotr K\l{}osowski ------------------------------------------------------------------------------ -4. plmindex.zip - pliki źródłowe (i .exe dla MS DOS | sources for multilingual MakeIndex; - i Windows) wersji międzynarodowej | support for Polish diacritics and - programu MakeIndex; uwzględnia | sorting; binaries for MS DOS - polskie znaki i reguły sortowania | and Windows included -W. Macewicz ------------------------------------------------------------------------------ -7. l2h-examples.zip - Przykładowe pliki konfiguracyjne | The example LaTeX2HTML - dla pakietu LaTeX2HTML opisane w | configuration files presenting - biuletynie GUST (zeszyt 10) | the possibilities of changing the - prezentujące możliwości zmiany | layout of generated HTML pages. - wyglądu generowanych dokumentów | Referenced in GUST Bulletin - HTML-owych. | (No. 10) article. -P. Bolek ------------------------------------------------------------------------------ diff --git a/Master/support/polish/gustprog/l2h-examples.zip b/Master/support/polish/gustprog/l2h-examples.zip deleted file mode 100644 index c7fdef90e7a..00000000000 Binary files a/Master/support/polish/gustprog/l2h-examples.zip and /dev/null differ diff --git a/Master/support/polish/gustprog/normtext.awk b/Master/support/polish/gustprog/normtext.awk deleted file mode 100644 index 9476f519332..00000000000 --- a/Master/support/polish/gustprog/normtext.awk +++ /dev/null @@ -1,276 +0,0 @@ -#! /usr/bin/awk -f - -#---------------------------------------------- -# normtext.awk v. 0.5á [01-Jul-1996] by Pior Kłosowski -# (pklos@press.umcs.lublin.pl) -# (for UNIX operating system and iso-latin-2 polish letters) -# Convert bad typed text files to better form suitable for TeX. -# Usage: -# awk -f normtext infile > outfile -#---------------------------------------------- -# Na bazie pomysłów Tomasz Przechlewskiego i Marka Ryćki spóbowałem -# skonstruować bardziej uniwersalne rzędzie do filtrowania kiepskich -# plików tekstowych w~postać strawną dla TeX-a. Piotr Kłosowski, maj 1996~r. -# Założenia: -# tekst z akapitami odzielonymi wierszami "blanklines" o początkach -# pasujących do wzorca "parbeg", -# język polski - iso-latin-2; -# teksty spoza nauk ścisłych; -# ignoruję tabelki, przypisy... -# Plan: -#A. Usunięcie podziału na strony wraz z paginowaniem. -#B. Usunięcie przeniesień wyrazów (w trakcie budowania "para"). -#C. Niełamliwe spacje przy spójnikach, inicjałach i skrótach. -#D. Konstrukcja odpowiednich kresek, cudzysłowów, wielokropków, nawiasów. -#E. Kropki, przecinki, odstępy w liczbach. -#F. Uporządkowanie spacji przy znakach przestankowych. -#G. Symbole spotykane w tekstach niematematycznych: %, $, <, >. -#---------------------------------------------- -BEGIN { - stdio = "/dev/null"; - digit = "[0-9]"; - rdigit = "[IVXLCM]"; - capletter = "[A-ZĄĘĆŁŃÓŚŹŻ]"; - lowletter = "[a-ząęćłńóśźż]"; - nonlowletter = "[^a-ząęćłńóśźż]"; - letter = "[A-ZĄĘĆŁŃÓŚŹŻa-ząęćłńóśźż]"; - spojnik = "[AIOUWZaiouwz]"; - wspaces = "[\\ \\t\\n]+"; - nonwspace = "[^\\ \\t\\n]"; - wspacesornot = "[\\ \\t\\n]*"; - # wzorzec wiersza międzyakapitowego (dopasowany do konwersji z TAG-a) - blanklines = "^[\\ \\t]*(- [0-9]+ -)*[\\ \\t]*$"; - nbl = 0; # licznik wierszy międzyakapitowych - # wzorzec początku akapitu - parbeg = "^[\\ \\t]*[^\\t\\ a-ząćęłńóśżź].*$"; -# parbeg = "^[\\ \\t]*[A-ZĄĆĘŁÓŃŚŹŻ0-9].*$"; -} - -# wymień _co_ w kontekście _bef_ _aft_ na _na_ (kontekst jednoznakowy) -# _bef_, _co_ i _aft_ są łańcuchami interpetowanymi jako wyrażenia regularne -# (uwaga na podwójne wtyłciachy); _na_ jest łańcuchem -# pomysł: Marek Ryćko - -function exch (bef, co, aft, na) { - while (match(para, bef co aft) > 0) { - match(para, bef co aft); - nowy = substr(para, 1, RSTART) na substr(para, RSTART+RLENGTH-1); - para = nowy; - } -} # koniec funkcji exch(bef, co, aft, na) - -# wymień _co_ w kontekście _bef_ _aft_ na _na_ (kontekst wieloznakowy) -# _bef_, _co_ i _aft_ są łańcuchami interpetowanymi jako wyrażenia regularne -# (uwaga na podwójne wtyłciachy); _na_ jest łańcuchem -# pomysł: Marek Ryćko - -function xexch (bef, co, aft, na) { - while (match(para, bef co aft) > 0) { - match(para, bef co aft); R1 = RSTART; L1 = RLENGTH; - - test = substr(para,RSTART,RLENGTH); - - test1 = match(test,bef); R2 = RSTART; L2 = RLENGTH; - test2 = match(test,aft); R3 = RSTART; L3 = RLENGTH; - - nowy = substr(para, 1, R1 + L2 - 1) na substr(para, R1 + L1 - L3); - para = nowy; - } -} # koniec funkcji xech(bef, co, aft, na) - -# formatuje akapit na rozsądną szerokość <= 72 zn. - -function print_para() { - words = split(para, paralist, " "); - len = length(paralist[1]); - printf "%s", paralist[1]; - for (i=2; i<=words; i++) { - len += length(paralist[i]); - ###print len, paralist[i] >> stdio; - - if (++len>72) { - printf "\n%s", paralist[i]; - len = length(paralist[i]); - } - else printf " %s", paralist[i]; - } - if (len) printf "\n\n"; - else printf "\n"; -} # koniec funkcji print_para() - -# główna funkcja dokonująca analizy i przekształceń akapitu -# pomysł: T. Przechlewski - -function process_para() { - print "Paragraph: ", length(para), "bytes" >> stdio; - - #spójniki# - gsub(/[ \t\n]+a[ \t\n]+/, " a~", para); gsub(/\~a /, "~a~", para); - gsub(/[ \t\n]+i[ \t\n]+/, " i~", para); gsub(/\~i /, "~i~", para); - gsub(/[ \t\n]+o[ \t\n]+/, " o~", para); gsub(/\~o /, "~o~", para); - gsub(/[ \t\n]+u[ \t\n]+/, " u~", para); gsub(/\~u /, "~u~", para); - gsub(/[ \t\n]+w[ \t\n]+/, " w~", para); gsub(/\~w /, "~w~", para); - gsub(/[ \t\n]+z[ \t\n]+/, " z~", para); gsub(/\~z /, "~z~", para); - - gsub(/[ \t\n]+A[ \t\n]+/, " A~", para); gsub(/\~A /, "~A~", para); - #ryzykowne - cyfry rzymskie# - gsub(/[ \t\n]+I[ \t\n]+/, " I~", para); gsub(/\~I /, "~I~", para); - gsub(/[ \t\n]+O[ \t\n]+/, " O~", para); gsub(/\~O /, "~O~", para); - gsub(/[ \t\n]+U[ \t\n]+/, " U~", para); gsub(/\~U /, "~U~", para); - gsub(/[ \t\n]+W[ \t\n]+/, " W~", para); gsub(/\~W /, "~W~", para); - gsub(/[ \t\n]+Z[ \t\n]+/, " Z~", para); gsub(/\~Z /, "~Z~", para); - - #inicjały# - xexch(capletter, "\\." wspacesornot, capletter lowletter, "\.\~"); - xexch(capletter, "\\." wspacesornot, capletter "\\.\\~", "\.\~"); - - #skróty - daty# - exch(digit, wspacesornot "r", "\\.", "~r"); - exch("r", "\\." wspacesornot, digit, ".~"); - exch(digit, wspacesornot "w", "\\.", "~w"); - exch(rdigit, wspaces "w", "\\.", "~w"); - - #skróty - bibliografia# - exch(nonlowletter, "s\\." wspacesornot, digit, "s.~"); - exch(nonlowletter, "ss\\." wspacesornot, digit, "s.~"); - exch(nonlowletter, "t\\." wspacesornot, digit, "t.~"); - exch(nonlowletter, "t\\." wspacesornot, rdigit, "t.~"); - exch(nonlowletter, "z\\." wspacesornot, digit, "z.~"); - exch(nonlowletter, "art\\." wspacesornot, digit, "art.~"); - - #skróty - inne# - exch(nonlowletter, "[Tt]ab\\." wspacesornot, digit, "tab.~"); - exch(nonlowletter, "[Tt]abl\\." wspacesornot, digit, "tabl.~"); - exch(nonlowletter, "[Rr]yc\\." wspacesornot, digit, "ryc.~"); - exch(nonlowletter, "[Rr]ys\\." wspacesornot, digit, "ryc.~");# ! - exch(nonlowletter, "[Rr]ozdz\\." wspacesornot, digit, "rozdz.~"); - exch(nonlowletter, "nr" wspacesornot, digit, "nr~"); - - #skróty - lokalne# - exch(nonlowletter, "stan\\." wspaces, digit, "stan.~"); - exch(nonlowletter, "w\\." wspaces, digit, "w.~"); - exch(nonlowletter, "Mi" wspaces, digit, "Mi~"); - exch(nonlowletter, "Jr" wspaces, digit, "Jr~"); - exch(nonlowletter, "Ez" wspaces, digit, "Ez~"); - exch(nonlowletter, "Za" wspaces, digit, "Za~"); - exch(nonlowletter, "J" wspaces, digit, "J~"); - exch(nonlowletter, "Oz" wspaces, digit, "Oz~"); - exch(nonlowletter, "Jl" wspaces, digit, "Jl~"); - exch(nonlowletter, "Ps" wspaces, digit, "Ps~"); - exch(nonlowletter, "Wj" wspaces, digit, "Wj~"); - - #liczby, jednostki# - exch(digit, wspacesornot "tys", nonlowletter, "~tys"); - exch(digit, wspacesornot "mln", nonlowletter, "~mln"); - exch(digit, wspacesornot "zł", nonlowletter, "~zł"); - exch(digit, wspacesornot "ha", nonlowletter, "~ha"); - xexch(digit, wspacesornot, "[kcm][glms]" nonlowletter, "~"); - - #endashes# - exch(digit, wspacesornot "-" wspacesornot, digit, "--"); - - #emdashes# - gsub(wspaces "-" wspaces, " --- ", para); - - #cudzysłowy# - exch("[^\\a-ząęćłńóśźż]", "\"", letter, ",,"); - exch(wspaces, "\"", nonwspace, ",,"); - #gsub("Ž", "<<", para); - #gsub("Ż", ">>", para); - - #nawiasy ukośne - ryzykowne (łamane przez)# - #exch(wspaces, "/", nonwspace, "("); - #exch(nonwspace, "/", wspaces, ")"); - - #wielokropek# - gsub(/\.\.\.\.+/, "\\dotfill{}", para); - gsub(/\.\.\./, "\\ldots{}", para); - gsub(/\(\\ldots\{\}\)/, "[\\ldots{}]", para); - - #pisownia liczb - ryzykowne (psuje dziesiętną numerację rozdz., wzorów, itp. - #dziesiętną klasyfikację biblioteczną, klasyfikację chorób itp - #exch(digit, "\\.", digit, ",") - - xexch("[0-9]", "", "[0-9][0-9][0-9][^0-9]", "\\,"); - xexch("[^0-9][0-9]", "\\\\,", "[0-9][0-9][0-9][^0-9\\\\]", ""); - - #spacje przy znakach przestankowych - być może ryzykowne# - exch(nonwspace, wspaces "\\,", "[^\\,]", ","); - exch("[^\\,]", ",", letter, ", "); - - exch(nonwspace, wspaces "\\.", "[^\\.]", "."); - exch(".", "\\.", letter, ". "); - xexch(".", "\\.", ",,", ". "); - #wyjątki# - gsub(/p\. n\. e\./, "p.n.e.", para); - gsub(/n\. e\./, "n.e.", para); - gsub(/m\. in\./, "m.in.", para); - - exch(nonwspace, wspaces ";", ".", ";"); - exch(".", ";", nonwspace , "; "); - - exch(nonwspace, wspaces ":", ".", ":"); - exch(".", ":", nonwspace, ": "); - #wyjątki# - gsub(/\[w: \]/,"[w:]",para); - - exch(nonwspace, wspaces "\\?", ".", "?"); - exch(".", "\\?", letter, "? "); - - exch(nonwspace, wspaces "!", ".", "!"); - exch(".", "!", letter, "! "); - - exch(".", "\\(" wspaces, nonwspace, "("); - exch(letter, "\\(", ".", " ("); - exch(nonwspace, wspaces "\\)", ".", ")"); - exch(".", "\\)", letter, ") "); - - #spacje przy nawiasach klamrowych (wyróżnienia) - xexch(nonwspace, "\\{", "\\\\((bf)|(em)|(it))", " {"); - xexch("(\\~|\\(|(,,)|(>>)|(<<))", "\\ \\{", "\\\\((bf)|(em)|(it))", "{"); - exch(nonwspace, wspaces "\\}", ".", "} "); - #ryzykowne (np. kropki od dziesiętnej numeracji rozdz., wzorów, tabel...) - gsub(/\.\}/, "}.", para); - gsub(/\}\.\./, ".}.", para); - gsub(/\,\}/, "},", para); - - #symbole niematematyczne# - exch(digit, wspacesornot "\\%", ".", "\\%"); - exch(digit, wspacesornot "\\$", "[^\\^\\\\]", "\\$"); - gsub("&","\\&") - exch("[^<\\$]", "<", "[^<\\$]", "$<$"); - exch("[^>\\$]", ">", "[^>\\$]", "$>$"); - - #lokalne - litery akcentowe zagraniczne (TAG)# -# gsub(//, "\\\"u", para); -# gsub(/Ÿ/, "\\v{c}", para); -# gsub(/Ź/, "\\v{C}", para); -# gsub(/í/, "\\oo{}", para); - - #formatowanie akapitu# - print_para(); - para = ""; -} # koniec funkcji process_para() - -# pominięcie wierszy pasujących do "blanklines" -$0~blanklines { - nbl++ -} - -# po pominięciu wierszy pasujących do "blanklines"... -$0!~blanklines { - # sprawdzenie czy następujący tekst jest początkiem nowego - # akapitu i przetwarzanie poprzedniego akapitu - if (nbl>0 && $0~parbeg) {process_para()}; - - # tworzenie łańcucha "para" zawierającego akapit z~usuniętymi - # przeniesieniami wyrazów i odstępami lewego marginesu - # ryzykowne - łączniki, przyrostki na końcu wiersza - sub(/^[\ \t\n]+/,""); - if (match(para, lowletter "-" wspacesornot "$")==0) para = para " " $0 - else para = substr(para, 1, RSTART) $0; - - nbl = 0 -} - -END {process_para();} diff --git a/Master/support/polish/gustprog/plmindex.zip b/Master/support/polish/gustprog/plmindex.zip deleted file mode 100644 index 3bd2c5675cc..00000000000 Binary files a/Master/support/polish/gustprog/plmindex.zip and /dev/null differ diff --git a/Master/support/polish/gustprog/porzadki.pl b/Master/support/polish/gustprog/porzadki.pl deleted file mode 100755 index 793eede8a9d..00000000000 --- a/Master/support/polish/gustprog/porzadki.pl +++ /dev/null @@ -1,214 +0,0 @@ -#! /usr/bin/perl - -# Autor: Piotr Kłosowski Wersja -# pierwsza działająca (0.1a): 1. lutego 1998 r. - -# Skrypt "porzadki" jest napisanym od nowa następcą awkowego skryptu -# "normtext.awk" z lata 96 r., który z kolei był rozwinięciem pomysłów -# Tomasza Przechlewskiego. - -# Filtr do robienia porządków w duchu TeX-a w plikach tekstowych -# (przede wszystkim znaki przestankowe i wstawianie niełamliwych spacji) -# Podstawowe zastosowanie to pomoc w konwersji tekstów napisanych w -# różnych edytorach. - -# Główne założenia i ograniczenia: -# - tekst jest podzielony na akapity pustymi wierszami, -# - tekst jest w języku polskim (kodowanie iso-latin2), -# - wnętrze akapitów z wyjątkiem linijek zakończonych przez "\\" może ulegać -# przeformatowaniu (próba usunięcia przeniesień wyrazów) (uwaga na ew. -# znaki komentarza - "%"!) - -# ======================================================================== -# Stałe wykorzystywane w skrypcie - -$Odstep = "[\ \t~]"; -$NieOdstep = "[^\ \t~]"; -$Spojnik = "[aAiIoOuUwWzZ]"; -$Litera = "[a-zA-ZąĄćĆęĘłŁńŃóÓśŚżŻźŹ]"; -$NieLitera = "[^a-zA-ZąĄćĆęĘłŁńŃóÓśŚżŻźŹ]"; -$DuzaLitera = "[A-ZĄĆĘŁŃÓŚŻŹ]"; -$MalaLitera = "[a-ząćęłńóśżź]"; -$Cyfra = "[0-9]"; -$CyfraRzymska = "[IVXL]"; - -$PominSrodowisko ="(tabular|array|tabbing|figure|equation|eqenarray|verbatim)"; -# ======================================================================== -sub PolaczWiersze { -# usunięcie przeniesień - s/($Litera)-$Odstep*\n$Odstep*($MalaLitera)/$1$2/g; - s/($Litera)-$Odstep*\n$Odstep*-($Litera)/$1\\dywiz $2/g; - s/\n$Odstep+\n/\\\\\ \\\\\ /g; - tr/\n/\ /; -}; -# ======================================================================== -sub PoprawAkapit { - &PoprawNielamliwe; - &PoprawPrzestankowe; -}; -# ------------------------------------------------------------------------ -# Niełamliwe spacje -sub PoprawNielamliwe { - &NielamliweSpojniki; - &NielamliweInicjaly; - &NielamliweDaty; - &NielamliweBibliograf; - &NielamliweJednostki; - &NielamliweTytuly; - &NielamliweInne; - &NielamliweWyliczenia; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe spacje przy słowach jednoliterowych (uwaga na cyfrę rzymską "I") -sub NielamliweSpojniki { - s/([\(,]|$Odstep+)($Spojnik)$Odstep+($Spojnik)$Odstep+/$1$2~$3~/g; - s/([\(,]|$Odstep+)($Spojnik)$Odstep+/$1$2~/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe spacje przy inicjałach -sub NielamliweInicjaly { - s/($DuzaLitera)\.$Odstep*($DuzaLitera)\.$Odstep*($DuzaLitera$MalaLitera)/$1\.~$2\.~$3/g; - s/($DuzaLitera)\.$Odstep*($DuzaLitera$MalaLitera)/$1\.~$2/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe spacje przy skrótach związanych z pisownią daty -sub NielamliweDaty { - s/($Cyfra)$Odstep*(r|w)\./$1~$2\./g; - s/($NieLitera)(r|w)\.$Odstep*($Cyfra)/$1$2\.~$3/g; - s/($CyfraRzymska)$Odstep+w\./$1~w\./g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe spacje przy skrótach występujących w zapisie bibliograficznym -sub NielamliweBibliograf { - s/($NieLitera)([sStTzZ]|ss|SS|[vV]ol|[aA]rt)\.$Odstep*($Cyfra|$CyfraRzymska)/$1$2\.~$3/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe spacje między liczbą a skrótem jednostki miary -$DuzoZer = "tys\\.|mln|mld"; -sub NielamliweJednostki { - s/($Cyfra)$Odstep*($DuzoZer)/$1~$2/g; - s/($Cyfra|$DuzoZer)$Odstep*([kdcm]?[glmsVAW])($NieLitera)/$1~$2$3/g; - s/($Cyfra|$DuzoZer)$Odstep*(zł|gr|ha|t|mies|godz|min|sek)($NieLitera)/$1~$2$3$4/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe spacje po tytułach -sub NielamliweTytuly { - s/($NieLitera)(mgr|dr|prof\.|hab\.|bp|ks\.|o+\.|św\.|prez\.|przew\.|red\.|min\.|gen\.|płk|mjr|kpt\.)$Odstep+/$1$2~/g; -} -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe spacje przy innych skrótach -sub NielamliweInne { - s/($NieLitera)([Tt]ab\.|[Tt]abl\.|[Rr]y[cs]\.|[Rr]ozdz\.|[Nn]r)$Odstep*($Cyfra)/$1$2~$3/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# niełamliwe półfirety przy wyliczeniach -sub NielamliweWyliczenia { - s/^-+$Odstep*/---\\enspace\ /; - s/^($Cyfra+[\.\)\/])$Odstep+/$1\\enspace\ /; - s/^($Litera[\.\)\/])[\ \t]+/$1\\enspace\ /; -}; -# ------------------------------------------------------------------------ -# Znaki przestankowe -sub PoprawPrzestankowe { - &PrzestankowePolpauzy; - &PrzestankowePauzy; - &PrzestankoweDywizy; - &PrzestankoweCudzyslowy; - &PrzestankoweWielokropki; - &PrzestankoweOdstepy; - &PrzestankoweSymbole; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# półpauzy -sub PrzestankowePolpauzy { - s/($Cyfra)$Odstep*-$Odstep*($Cyfra)/$1--$2/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# pauzy -sub PrzestankowePauzy { - s/$Odstep+-$Odstep+/\ ---\ /g; - s/$Odstep+---/~---/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# dywizy -sub PrzestankoweDywizy { - s/($Litera)-($Litera)/$1\\dywiz $2/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# cudzysłowy -sub PrzestankoweCudzyslowy { - s/^\"/,,/; - s/($NieLitera)\"($Litera)/$1,,$2/g; - s/($Odstep)\"($NieOdstep)/$1,,$2/g; - s/\"$/''/; - s/($Litera)\"($NieLitera)/$1''$2/g; - s/($NieOdstep)\"($Odstep)/$1''$2/g; - s/\\,,/\\\"/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# wielokropki -sub PrzestankoweWielokropki { - s/\.{5,}/\\dotfill\{\}/g; - s/\.{3,4}/\\ldots{}/g; -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# odstępy przy znakach przestankowych (uwaga: ryzykowne - dużo wyjątków) -sub PrzestankoweOdstepy { - s/$Odstep*([\.;:!?\)\]])/$1/g; - s/$Odstep*,([^,])/,$1/g; - s/([\.!?;:\)\]])($Litera)/$1 $2/g; - s/([^,]),($Litera)/$1, $2/g; - s/([\(\[])$Odstep*/$1/g; -# skróty - wyjątki - s/m\.\ +in\./m\.in\./g; - s/p\.\ +n\.\ +e\./p\.n\.e\./g; - s/l\.\ +c\./l\.c\./g; - s/w\.\ +c\./w\.c\./g; -# duże liczby - 1 while (s/(.*\d\d)(\d\d\d)/$1\\,$2/ or s/(.*\d)(\d\d\d)\\,/$1\\,$2\\,/); -}; -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# uporządkowanie kolejności nawias klamrowy - znak przestankowy (!!!sprawa -# związana z grupowaniem texem - nie do załatwienia w tym prostym programie) -# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . -# symbole niematematyczne -sub PrzestankoweSymbole { - s/([^\\])([\$\%])/$1\\$2/g; - s/([^\$\<])\<([^\$\<])/$1\$\<\$$2/g; - s/([^\$\>])\>([^\$\>])/$1\$\>\$$2/g; -} -# ======================================================================== -# Zmiany w kształcie akapitu - usunięcie przeniesień i wcięć od marginesu -# i przeformatowanie na szerokość <=70 zn (domyślna w AUCTeX-u) -sub PrzeformatujAkapit { - s/$Odstep*\\\\/\ \\\\/g; - $IloscSlow = split; - $DlugoscWiersza = length($_[0]); - for ($i=1; $i<$IloscSlow; $i++) { - $DlugoscWiersza += length($_[$i]) + 1; - if (($DlugoscWiersza>70) || ($_[$i-1]=~/\\\\/)) { - $_[$i-1] .= "\n"; - $DlugoscWiersza = length($_[$i]); - }; - }; - $_ = join (" ", @_, "\n"); - s/$Odstep\\\\/\\\\/g; - s/\n*\\\\\n\\\\\n/\n\n/g; - s/\n$Odstep+/\n/g; -}; -# ======================================================================== -# Główny program - -$/ = ""; -$\ = "\n"; - -while (<>) { - if (/\\begin{$PominSrodowisko}/../\\end{$PominSrodowisko}/) { - next; - }; - &PolaczWiersze; - &PoprawAkapit; - &PrzeformatujAkapit; -} continue { print; }; - -# Koniec skryptu "porzadki". diff --git a/Master/support/polish/gustprog/slim.zip b/Master/support/polish/gustprog/slim.zip deleted file mode 100644 index df9c748f88f..00000000000 Binary files a/Master/support/polish/gustprog/slim.zip and /dev/null differ diff --git a/Master/texmf-dist/doc/support/gustprog/README b/Master/texmf-dist/doc/support/gustprog/README new file mode 100644 index 00000000000..2b420464f8e --- /dev/null +++ b/Master/texmf-dist/doc/support/gustprog/README @@ -0,0 +1,40 @@ +July 2008, Staszek Wawrykiewicz staw gust org.pl>. Public domain + +Polish (iso8859-2) | English +GUSTPROG zawiera programy | GUSTPROG contains utilities +przydatne dla polskich | useful for Polish users of TeX +użytkowników TeX-a | +----------------------------------------------------------------------------- +1. slim.zip + skrypt AWK-owy do konwersji tzw. | AWK script for translating + `standardów' polskich liter | the encodings of Polish diacritic + (dołączone tablice konwersji | characters (DOS .bat and U**X shell + i pliki wsadowe dla DOS i U**X) | scripts provided) +B. Jackowski, P. Pianowski +----------------------------------------------------------------------------- +2. normtext.awk + skrypt AWK-owy do konwersji tekstów | converts badly typed text files + dla potrzeb TeX-a: wstawia tyldy itp.| to a form more suitable for TeX +Piotr K\l{}osowski +----------------------------------------------------------------------------- +3. porzadki.pl + skrypt Perlowy do konwersji tekstów | converts badly typed text files + dla potrzeb TeX-a: wstawia tyldy itp.| to a form more suitable for TeX +Piotr K\l{}osowski +----------------------------------------------------------------------------- +4. plmindex.zip + pliki źródłowe (i .exe dla MS DOS | sources for multilingual MakeIndex; + i Windows) wersji międzynarodowej | support for Polish diacritics and + programu MakeIndex; uwzględnia | sorting; binaries for MS DOS + polskie znaki i reguły sortowania | and Windows included +W. Macewicz +----------------------------------------------------------------------------- +7. l2h-examples.zip + Przykładowe pliki konfiguracyjne | The example LaTeX2HTML + dla pakietu LaTeX2HTML opisane w | configuration files presenting + biuletynie GUST (zeszyt 10) | the possibilities of changing the + prezentujące możliwości zmiany | layout of generated HTML pages. + wyglądu generowanych dokumentów | Referenced in GUST Bulletin + HTML-owych. | (No. 10) article. +P. Bolek +----------------------------------------------------------------------------- diff --git a/Master/texmf-dist/doc/support/gustprog/l2h-examples.zip b/Master/texmf-dist/doc/support/gustprog/l2h-examples.zip new file mode 100644 index 00000000000..c7fdef90e7a Binary files /dev/null and b/Master/texmf-dist/doc/support/gustprog/l2h-examples.zip differ diff --git a/Master/texmf-dist/doc/support/gustprog/normtext.awk b/Master/texmf-dist/doc/support/gustprog/normtext.awk new file mode 100644 index 00000000000..9476f519332 --- /dev/null +++ b/Master/texmf-dist/doc/support/gustprog/normtext.awk @@ -0,0 +1,276 @@ +#! /usr/bin/awk -f + +#---------------------------------------------- +# normtext.awk v. 0.5á [01-Jul-1996] by Pior Kłosowski +# (pklos@press.umcs.lublin.pl) +# (for UNIX operating system and iso-latin-2 polish letters) +# Convert bad typed text files to better form suitable for TeX. +# Usage: +# awk -f normtext infile > outfile +#---------------------------------------------- +# Na bazie pomysłów Tomasz Przechlewskiego i Marka Ryćki spóbowałem +# skonstruować bardziej uniwersalne rzędzie do filtrowania kiepskich +# plików tekstowych w~postać strawną dla TeX-a. Piotr Kłosowski, maj 1996~r. +# Założenia: +# tekst z akapitami odzielonymi wierszami "blanklines" o początkach +# pasujących do wzorca "parbeg", +# język polski - iso-latin-2; +# teksty spoza nauk ścisłych; +# ignoruję tabelki, przypisy... +# Plan: +#A. Usunięcie podziału na strony wraz z paginowaniem. +#B. Usunięcie przeniesień wyrazów (w trakcie budowania "para"). +#C. Niełamliwe spacje przy spójnikach, inicjałach i skrótach. +#D. Konstrukcja odpowiednich kresek, cudzysłowów, wielokropków, nawiasów. +#E. Kropki, przecinki, odstępy w liczbach. +#F. Uporządkowanie spacji przy znakach przestankowych. +#G. Symbole spotykane w tekstach niematematycznych: %, $, <, >. +#---------------------------------------------- +BEGIN { + stdio = "/dev/null"; + digit = "[0-9]"; + rdigit = "[IVXLCM]"; + capletter = "[A-ZĄĘĆŁŃÓŚŹŻ]"; + lowletter = "[a-ząęćłńóśźż]"; + nonlowletter = "[^a-ząęćłńóśźż]"; + letter = "[A-ZĄĘĆŁŃÓŚŹŻa-ząęćłńóśźż]"; + spojnik = "[AIOUWZaiouwz]"; + wspaces = "[\\ \\t\\n]+"; + nonwspace = "[^\\ \\t\\n]"; + wspacesornot = "[\\ \\t\\n]*"; + # wzorzec wiersza międzyakapitowego (dopasowany do konwersji z TAG-a) + blanklines = "^[\\ \\t]*(- [0-9]+ -)*[\\ \\t]*$"; + nbl = 0; # licznik wierszy międzyakapitowych + # wzorzec początku akapitu + parbeg = "^[\\ \\t]*[^\\t\\ a-ząćęłńóśżź].*$"; +# parbeg = "^[\\ \\t]*[A-ZĄĆĘŁÓŃŚŹŻ0-9].*$"; +} + +# wymień _co_ w kontekście _bef_ _aft_ na _na_ (kontekst jednoznakowy) +# _bef_, _co_ i _aft_ są łańcuchami interpetowanymi jako wyrażenia regularne +# (uwaga na podwójne wtyłciachy); _na_ jest łańcuchem +# pomysł: Marek Ryćko + +function exch (bef, co, aft, na) { + while (match(para, bef co aft) > 0) { + match(para, bef co aft); + nowy = substr(para, 1, RSTART) na substr(para, RSTART+RLENGTH-1); + para = nowy; + } +} # koniec funkcji exch(bef, co, aft, na) + +# wymień _co_ w kontekście _bef_ _aft_ na _na_ (kontekst wieloznakowy) +# _bef_, _co_ i _aft_ są łańcuchami interpetowanymi jako wyrażenia regularne +# (uwaga na podwójne wtyłciachy); _na_ jest łańcuchem +# pomysł: Marek Ryćko + +function xexch (bef, co, aft, na) { + while (match(para, bef co aft) > 0) { + match(para, bef co aft); R1 = RSTART; L1 = RLENGTH; + + test = substr(para,RSTART,RLENGTH); + + test1 = match(test,bef); R2 = RSTART; L2 = RLENGTH; + test2 = match(test,aft); R3 = RSTART; L3 = RLENGTH; + + nowy = substr(para, 1, R1 + L2 - 1) na substr(para, R1 + L1 - L3); + para = nowy; + } +} # koniec funkcji xech(bef, co, aft, na) + +# formatuje akapit na rozsądną szerokość <= 72 zn. + +function print_para() { + words = split(para, paralist, " "); + len = length(paralist[1]); + printf "%s", paralist[1]; + for (i=2; i<=words; i++) { + len += length(paralist[i]); + ###print len, paralist[i] >> stdio; + + if (++len>72) { + printf "\n%s", paralist[i]; + len = length(paralist[i]); + } + else printf " %s", paralist[i]; + } + if (len) printf "\n\n"; + else printf "\n"; +} # koniec funkcji print_para() + +# główna funkcja dokonująca analizy i przekształceń akapitu +# pomysł: T. Przechlewski + +function process_para() { + print "Paragraph: ", length(para), "bytes" >> stdio; + + #spójniki# + gsub(/[ \t\n]+a[ \t\n]+/, " a~", para); gsub(/\~a /, "~a~", para); + gsub(/[ \t\n]+i[ \t\n]+/, " i~", para); gsub(/\~i /, "~i~", para); + gsub(/[ \t\n]+o[ \t\n]+/, " o~", para); gsub(/\~o /, "~o~", para); + gsub(/[ \t\n]+u[ \t\n]+/, " u~", para); gsub(/\~u /, "~u~", para); + gsub(/[ \t\n]+w[ \t\n]+/, " w~", para); gsub(/\~w /, "~w~", para); + gsub(/[ \t\n]+z[ \t\n]+/, " z~", para); gsub(/\~z /, "~z~", para); + + gsub(/[ \t\n]+A[ \t\n]+/, " A~", para); gsub(/\~A /, "~A~", para); + #ryzykowne - cyfry rzymskie# + gsub(/[ \t\n]+I[ \t\n]+/, " I~", para); gsub(/\~I /, "~I~", para); + gsub(/[ \t\n]+O[ \t\n]+/, " O~", para); gsub(/\~O /, "~O~", para); + gsub(/[ \t\n]+U[ \t\n]+/, " U~", para); gsub(/\~U /, "~U~", para); + gsub(/[ \t\n]+W[ \t\n]+/, " W~", para); gsub(/\~W /, "~W~", para); + gsub(/[ \t\n]+Z[ \t\n]+/, " Z~", para); gsub(/\~Z /, "~Z~", para); + + #inicjały# + xexch(capletter, "\\." wspacesornot, capletter lowletter, "\.\~"); + xexch(capletter, "\\." wspacesornot, capletter "\\.\\~", "\.\~"); + + #skróty - daty# + exch(digit, wspacesornot "r", "\\.", "~r"); + exch("r", "\\." wspacesornot, digit, ".~"); + exch(digit, wspacesornot "w", "\\.", "~w"); + exch(rdigit, wspaces "w", "\\.", "~w"); + + #skróty - bibliografia# + exch(nonlowletter, "s\\." wspacesornot, digit, "s.~"); + exch(nonlowletter, "ss\\." wspacesornot, digit, "s.~"); + exch(nonlowletter, "t\\." wspacesornot, digit, "t.~"); + exch(nonlowletter, "t\\." wspacesornot, rdigit, "t.~"); + exch(nonlowletter, "z\\." wspacesornot, digit, "z.~"); + exch(nonlowletter, "art\\." wspacesornot, digit, "art.~"); + + #skróty - inne# + exch(nonlowletter, "[Tt]ab\\." wspacesornot, digit, "tab.~"); + exch(nonlowletter, "[Tt]abl\\." wspacesornot, digit, "tabl.~"); + exch(nonlowletter, "[Rr]yc\\." wspacesornot, digit, "ryc.~"); + exch(nonlowletter, "[Rr]ys\\." wspacesornot, digit, "ryc.~");# ! + exch(nonlowletter, "[Rr]ozdz\\." wspacesornot, digit, "rozdz.~"); + exch(nonlowletter, "nr" wspacesornot, digit, "nr~"); + + #skróty - lokalne# + exch(nonlowletter, "stan\\." wspaces, digit, "stan.~"); + exch(nonlowletter, "w\\." wspaces, digit, "w.~"); + exch(nonlowletter, "Mi" wspaces, digit, "Mi~"); + exch(nonlowletter, "Jr" wspaces, digit, "Jr~"); + exch(nonlowletter, "Ez" wspaces, digit, "Ez~"); + exch(nonlowletter, "Za" wspaces, digit, "Za~"); + exch(nonlowletter, "J" wspaces, digit, "J~"); + exch(nonlowletter, "Oz" wspaces, digit, "Oz~"); + exch(nonlowletter, "Jl" wspaces, digit, "Jl~"); + exch(nonlowletter, "Ps" wspaces, digit, "Ps~"); + exch(nonlowletter, "Wj" wspaces, digit, "Wj~"); + + #liczby, jednostki# + exch(digit, wspacesornot "tys", nonlowletter, "~tys"); + exch(digit, wspacesornot "mln", nonlowletter, "~mln"); + exch(digit, wspacesornot "zł", nonlowletter, "~zł"); + exch(digit, wspacesornot "ha", nonlowletter, "~ha"); + xexch(digit, wspacesornot, "[kcm][glms]" nonlowletter, "~"); + + #endashes# + exch(digit, wspacesornot "-" wspacesornot, digit, "--"); + + #emdashes# + gsub(wspaces "-" wspaces, " --- ", para); + + #cudzysłowy# + exch("[^\\a-ząęćłńóśźż]", "\"", letter, ",,"); + exch(wspaces, "\"", nonwspace, ",,"); + #gsub("Ž", "<<", para); + #gsub("Ż", ">>", para); + + #nawiasy ukośne - ryzykowne (łamane przez)# + #exch(wspaces, "/", nonwspace, "("); + #exch(nonwspace, "/", wspaces, ")"); + + #wielokropek# + gsub(/\.\.\.\.+/, "\\dotfill{}", para); + gsub(/\.\.\./, "\\ldots{}", para); + gsub(/\(\\ldots\{\}\)/, "[\\ldots{}]", para); + + #pisownia liczb - ryzykowne (psuje dziesiętną numerację rozdz., wzorów, itp. + #dziesiętną klasyfikację biblioteczną, klasyfikację chorób itp + #exch(digit, "\\.", digit, ",") + + xexch("[0-9]", "", "[0-9][0-9][0-9][^0-9]", "\\,"); + xexch("[^0-9][0-9]", "\\\\,", "[0-9][0-9][0-9][^0-9\\\\]", ""); + + #spacje przy znakach przestankowych - być może ryzykowne# + exch(nonwspace, wspaces "\\,", "[^\\,]", ","); + exch("[^\\,]", ",", letter, ", "); + + exch(nonwspace, wspaces "\\.", "[^\\.]", "."); + exch(".", "\\.", letter, ". "); + xexch(".", "\\.", ",,", ". "); + #wyjątki# + gsub(/p\. n\. e\./, "p.n.e.", para); + gsub(/n\. e\./, "n.e.", para); + gsub(/m\. in\./, "m.in.", para); + + exch(nonwspace, wspaces ";", ".", ";"); + exch(".", ";", nonwspace , "; "); + + exch(nonwspace, wspaces ":", ".", ":"); + exch(".", ":", nonwspace, ": "); + #wyjątki# + gsub(/\[w: \]/,"[w:]",para); + + exch(nonwspace, wspaces "\\?", ".", "?"); + exch(".", "\\?", letter, "? "); + + exch(nonwspace, wspaces "!", ".", "!"); + exch(".", "!", letter, "! "); + + exch(".", "\\(" wspaces, nonwspace, "("); + exch(letter, "\\(", ".", " ("); + exch(nonwspace, wspaces "\\)", ".", ")"); + exch(".", "\\)", letter, ") "); + + #spacje przy nawiasach klamrowych (wyróżnienia) + xexch(nonwspace, "\\{", "\\\\((bf)|(em)|(it))", " {"); + xexch("(\\~|\\(|(,,)|(>>)|(<<))", "\\ \\{", "\\\\((bf)|(em)|(it))", "{"); + exch(nonwspace, wspaces "\\}", ".", "} "); + #ryzykowne (np. kropki od dziesiętnej numeracji rozdz., wzorów, tabel...) + gsub(/\.\}/, "}.", para); + gsub(/\}\.\./, ".}.", para); + gsub(/\,\}/, "},", para); + + #symbole niematematyczne# + exch(digit, wspacesornot "\\%", ".", "\\%"); + exch(digit, wspacesornot "\\$", "[^\\^\\\\]", "\\$"); + gsub("&","\\&") + exch("[^<\\$]", "<", "[^<\\$]", "$<$"); + exch("[^>\\$]", ">", "[^>\\$]", "$>$"); + + #lokalne - litery akcentowe zagraniczne (TAG)# +# gsub(//, "\\\"u", para); +# gsub(/Ÿ/, "\\v{c}", para); +# gsub(/Ź/, "\\v{C}", para); +# gsub(/í/, "\\oo{}", para); + + #formatowanie akapitu# + print_para(); + para = ""; +} # koniec funkcji process_para() + +# pominięcie wierszy pasujących do "blanklines" +$0~blanklines { + nbl++ +} + +# po pominięciu wierszy pasujących do "blanklines"... +$0!~blanklines { + # sprawdzenie czy następujący tekst jest początkiem nowego + # akapitu i przetwarzanie poprzedniego akapitu + if (nbl>0 && $0~parbeg) {process_para()}; + + # tworzenie łańcucha "para" zawierającego akapit z~usuniętymi + # przeniesieniami wyrazów i odstępami lewego marginesu + # ryzykowne - łączniki, przyrostki na końcu wiersza + sub(/^[\ \t\n]+/,""); + if (match(para, lowletter "-" wspacesornot "$")==0) para = para " " $0 + else para = substr(para, 1, RSTART) $0; + + nbl = 0 +} + +END {process_para();} diff --git a/Master/texmf-dist/doc/support/gustprog/plmindex.zip b/Master/texmf-dist/doc/support/gustprog/plmindex.zip new file mode 100644 index 00000000000..3bd2c5675cc Binary files /dev/null and b/Master/texmf-dist/doc/support/gustprog/plmindex.zip differ diff --git a/Master/texmf-dist/doc/support/gustprog/porzadki.pl b/Master/texmf-dist/doc/support/gustprog/porzadki.pl new file mode 100755 index 00000000000..793eede8a9d --- /dev/null +++ b/Master/texmf-dist/doc/support/gustprog/porzadki.pl @@ -0,0 +1,214 @@ +#! /usr/bin/perl + +# Autor: Piotr Kłosowski Wersja +# pierwsza działająca (0.1a): 1. lutego 1998 r. + +# Skrypt "porzadki" jest napisanym od nowa następcą awkowego skryptu +# "normtext.awk" z lata 96 r., który z kolei był rozwinięciem pomysłów +# Tomasza Przechlewskiego. + +# Filtr do robienia porządków w duchu TeX-a w plikach tekstowych +# (przede wszystkim znaki przestankowe i wstawianie niełamliwych spacji) +# Podstawowe zastosowanie to pomoc w konwersji tekstów napisanych w +# różnych edytorach. + +# Główne założenia i ograniczenia: +# - tekst jest podzielony na akapity pustymi wierszami, +# - tekst jest w języku polskim (kodowanie iso-latin2), +# - wnętrze akapitów z wyjątkiem linijek zakończonych przez "\\" może ulegać +# przeformatowaniu (próba usunięcia przeniesień wyrazów) (uwaga na ew. +# znaki komentarza - "%"!) + +# ======================================================================== +# Stałe wykorzystywane w skrypcie + +$Odstep = "[\ \t~]"; +$NieOdstep = "[^\ \t~]"; +$Spojnik = "[aAiIoOuUwWzZ]"; +$Litera = "[a-zA-ZąĄćĆęĘłŁńŃóÓśŚżŻźŹ]"; +$NieLitera = "[^a-zA-ZąĄćĆęĘłŁńŃóÓśŚżŻźŹ]"; +$DuzaLitera = "[A-ZĄĆĘŁŃÓŚŻŹ]"; +$MalaLitera = "[a-ząćęłńóśżź]"; +$Cyfra = "[0-9]"; +$CyfraRzymska = "[IVXL]"; + +$PominSrodowisko ="(tabular|array|tabbing|figure|equation|eqenarray|verbatim)"; +# ======================================================================== +sub PolaczWiersze { +# usunięcie przeniesień + s/($Litera)-$Odstep*\n$Odstep*($MalaLitera)/$1$2/g; + s/($Litera)-$Odstep*\n$Odstep*-($Litera)/$1\\dywiz $2/g; + s/\n$Odstep+\n/\\\\\ \\\\\ /g; + tr/\n/\ /; +}; +# ======================================================================== +sub PoprawAkapit { + &PoprawNielamliwe; + &PoprawPrzestankowe; +}; +# ------------------------------------------------------------------------ +# Niełamliwe spacje +sub PoprawNielamliwe { + &NielamliweSpojniki; + &NielamliweInicjaly; + &NielamliweDaty; + &NielamliweBibliograf; + &NielamliweJednostki; + &NielamliweTytuly; + &NielamliweInne; + &NielamliweWyliczenia; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe spacje przy słowach jednoliterowych (uwaga na cyfrę rzymską "I") +sub NielamliweSpojniki { + s/([\(,]|$Odstep+)($Spojnik)$Odstep+($Spojnik)$Odstep+/$1$2~$3~/g; + s/([\(,]|$Odstep+)($Spojnik)$Odstep+/$1$2~/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe spacje przy inicjałach +sub NielamliweInicjaly { + s/($DuzaLitera)\.$Odstep*($DuzaLitera)\.$Odstep*($DuzaLitera$MalaLitera)/$1\.~$2\.~$3/g; + s/($DuzaLitera)\.$Odstep*($DuzaLitera$MalaLitera)/$1\.~$2/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe spacje przy skrótach związanych z pisownią daty +sub NielamliweDaty { + s/($Cyfra)$Odstep*(r|w)\./$1~$2\./g; + s/($NieLitera)(r|w)\.$Odstep*($Cyfra)/$1$2\.~$3/g; + s/($CyfraRzymska)$Odstep+w\./$1~w\./g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe spacje przy skrótach występujących w zapisie bibliograficznym +sub NielamliweBibliograf { + s/($NieLitera)([sStTzZ]|ss|SS|[vV]ol|[aA]rt)\.$Odstep*($Cyfra|$CyfraRzymska)/$1$2\.~$3/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe spacje między liczbą a skrótem jednostki miary +$DuzoZer = "tys\\.|mln|mld"; +sub NielamliweJednostki { + s/($Cyfra)$Odstep*($DuzoZer)/$1~$2/g; + s/($Cyfra|$DuzoZer)$Odstep*([kdcm]?[glmsVAW])($NieLitera)/$1~$2$3/g; + s/($Cyfra|$DuzoZer)$Odstep*(zł|gr|ha|t|mies|godz|min|sek)($NieLitera)/$1~$2$3$4/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe spacje po tytułach +sub NielamliweTytuly { + s/($NieLitera)(mgr|dr|prof\.|hab\.|bp|ks\.|o+\.|św\.|prez\.|przew\.|red\.|min\.|gen\.|płk|mjr|kpt\.)$Odstep+/$1$2~/g; +} +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe spacje przy innych skrótach +sub NielamliweInne { + s/($NieLitera)([Tt]ab\.|[Tt]abl\.|[Rr]y[cs]\.|[Rr]ozdz\.|[Nn]r)$Odstep*($Cyfra)/$1$2~$3/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# niełamliwe półfirety przy wyliczeniach +sub NielamliweWyliczenia { + s/^-+$Odstep*/---\\enspace\ /; + s/^($Cyfra+[\.\)\/])$Odstep+/$1\\enspace\ /; + s/^($Litera[\.\)\/])[\ \t]+/$1\\enspace\ /; +}; +# ------------------------------------------------------------------------ +# Znaki przestankowe +sub PoprawPrzestankowe { + &PrzestankowePolpauzy; + &PrzestankowePauzy; + &PrzestankoweDywizy; + &PrzestankoweCudzyslowy; + &PrzestankoweWielokropki; + &PrzestankoweOdstepy; + &PrzestankoweSymbole; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# półpauzy +sub PrzestankowePolpauzy { + s/($Cyfra)$Odstep*-$Odstep*($Cyfra)/$1--$2/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# pauzy +sub PrzestankowePauzy { + s/$Odstep+-$Odstep+/\ ---\ /g; + s/$Odstep+---/~---/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# dywizy +sub PrzestankoweDywizy { + s/($Litera)-($Litera)/$1\\dywiz $2/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# cudzysłowy +sub PrzestankoweCudzyslowy { + s/^\"/,,/; + s/($NieLitera)\"($Litera)/$1,,$2/g; + s/($Odstep)\"($NieOdstep)/$1,,$2/g; + s/\"$/''/; + s/($Litera)\"($NieLitera)/$1''$2/g; + s/($NieOdstep)\"($Odstep)/$1''$2/g; + s/\\,,/\\\"/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# wielokropki +sub PrzestankoweWielokropki { + s/\.{5,}/\\dotfill\{\}/g; + s/\.{3,4}/\\ldots{}/g; +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# odstępy przy znakach przestankowych (uwaga: ryzykowne - dużo wyjątków) +sub PrzestankoweOdstepy { + s/$Odstep*([\.;:!?\)\]])/$1/g; + s/$Odstep*,([^,])/,$1/g; + s/([\.!?;:\)\]])($Litera)/$1 $2/g; + s/([^,]),($Litera)/$1, $2/g; + s/([\(\[])$Odstep*/$1/g; +# skróty - wyjątki + s/m\.\ +in\./m\.in\./g; + s/p\.\ +n\.\ +e\./p\.n\.e\./g; + s/l\.\ +c\./l\.c\./g; + s/w\.\ +c\./w\.c\./g; +# duże liczby + 1 while (s/(.*\d\d)(\d\d\d)/$1\\,$2/ or s/(.*\d)(\d\d\d)\\,/$1\\,$2\\,/); +}; +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# uporządkowanie kolejności nawias klamrowy - znak przestankowy (!!!sprawa +# związana z grupowaniem texem - nie do załatwienia w tym prostym programie) +# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . +# symbole niematematyczne +sub PrzestankoweSymbole { + s/([^\\])([\$\%])/$1\\$2/g; + s/([^\$\<])\<([^\$\<])/$1\$\<\$$2/g; + s/([^\$\>])\>([^\$\>])/$1\$\>\$$2/g; +} +# ======================================================================== +# Zmiany w kształcie akapitu - usunięcie przeniesień i wcięć od marginesu +# i przeformatowanie na szerokość <=70 zn (domyślna w AUCTeX-u) +sub PrzeformatujAkapit { + s/$Odstep*\\\\/\ \\\\/g; + $IloscSlow = split; + $DlugoscWiersza = length($_[0]); + for ($i=1; $i<$IloscSlow; $i++) { + $DlugoscWiersza += length($_[$i]) + 1; + if (($DlugoscWiersza>70) || ($_[$i-1]=~/\\\\/)) { + $_[$i-1] .= "\n"; + $DlugoscWiersza = length($_[$i]); + }; + }; + $_ = join (" ", @_, "\n"); + s/$Odstep\\\\/\\\\/g; + s/\n*\\\\\n\\\\\n/\n\n/g; + s/\n$Odstep+/\n/g; +}; +# ======================================================================== +# Główny program + +$/ = ""; +$\ = "\n"; + +while (<>) { + if (/\\begin{$PominSrodowisko}/../\\end{$PominSrodowisko}/) { + next; + }; + &PolaczWiersze; + &PoprawAkapit; + &PrzeformatujAkapit; +} continue { print; }; + +# Koniec skryptu "porzadki". diff --git a/Master/texmf-dist/doc/support/gustprog/slim.zip b/Master/texmf-dist/doc/support/gustprog/slim.zip new file mode 100644 index 00000000000..df9c748f88f Binary files /dev/null and b/Master/texmf-dist/doc/support/gustprog/slim.zip differ -- cgit v1.2.3