--- tetex-base-3.0.orig/debian/patches/patch-deb +++ tetex-base-3.0/debian/patches/patch-deb @@ -0,0 +1,244 @@ + dvips/config/config.ps | 16 +++++++++---- + fonts/map/dvips/context/original-context-symbol.map | 2 - + fonts/map/dvips/omega/omega.map | 3 ++ + scripts/context/perl/texfind.pl | 23 ++++++++++++++++++- + scripts/context/perl/texshow.pl | 23 ++++++++++++++++++- + tex/generic/config/language.dat | 24 +++++++++++++++++--- + texdoctk/texdocrc.defaults | 18 +++++++-------- + web2c/mktex.cnf | 4 +-- + 8 files changed, 91 insertions(+), 22 deletions(-) + +Index: tetex-base-3.0/dvips/config/config.ps +=================================================================== +--- tetex-base-3.0.orig/dvips/config/config.ps 2005-08-07 17:19:18.000000000 +0100 ++++ tetex-base-3.0/dvips/config/config.ps 2005-12-11 06:01:38.000000000 +0000 +@@ -7,13 +7,20 @@ + % to determine this number. (It will be the only thing printed.) + m 3500000 + +-% z1 is "secure", i.e., inhibits execution of `shell commands` in +-% \specials. Dvips allows this by default. ++% A setting of `z1' inhibits execution of shell commands in `\special's ++% and via the `E' option in config files like this one ("secure mode"). ++% Dvips permits these operations by default or with an explit setting of `z0'. ++% Debian GNU/Linux inhibits these operations by default by setting `z1' here. + z1 + +-% How to print, maybe with lp instead lpr, etc. If commented-out, output +-% will go into a file by default. +-o |lpr ++% Where dvips output should go by default. ++% If unspecified, output goes to a file. ++% To send output via a pipe directly to a printing program such as ++% `lpr' or 'lp', use a line like one of the following two: ++% o |lpr ++% o |lpr -Pmyprinter ++% To send output to standard-output by default, use: ++% o - + + % Default resolution of this device, in dots per inch. + D 600 +Index: tetex-base-3.0/texdoctk/texdocrc.defaults +=================================================================== +--- tetex-base-3.0.orig/texdoctk/texdocrc.defaults 2005-08-07 17:19:19.000000000 +0100 ++++ tetex-base-3.0/texdoctk/texdocrc.defaults 2005-12-11 05:59:52.000000000 +0000 +@@ -8,7 +8,7 @@ + # want/need to leave empty. + + # root of doc directory (from $TEXMFMAIN) +-TEXDOCPATH=doc ++TEXDOCPATH=../doc/texmf + # root of local doc directory (from $TEXMFLOCAL) + # can be left empty if equal to TEXDOCPATH or if $TEXMFLOCAL is undefined + LOCALDOCPATH= +@@ -26,28 +26,28 @@ + DVIPS_CONV=dvips -q + + # PostScript handling +-PS_VIEWER=ghostview ++PS_VIEWER=see + + # PDF handling +-PDF_VIEWER=acroread +-PDFPS_CONV=acroread -toPostScript -pairs ++PDF_VIEWER=see ++PDFPS_CONV=pdf2ps + + # HTML handling +-HTML_VIEWER=netscape +-HTMLPS_CONV= ++HTML_VIEWER=x-terminal-emulator -e see ++HTMLPS_CONV=html2ps + # HTMLPS_REDIR must be on, if the html->ps converter normally writes its output + # to stdout instead of a file (e.g. as html2ps) (y or yes to make active) +-HTMLPS_REDIR= ++HTMLPS_REDIR=y + + # Plain text handling + # TDK_OWN is texdoctk's own text file viewer + TXT_VIEWER=TDK_OWN +-TXTPS_CONV=a2ps ++TXTPS_CONV=a2ps -q + # TXTPS_REDIR must be on, if the txt->ps converter normally writes its output + # to stdout instead of a file (e.g. as a2ps) (y or yes to make active) + TXTPS_REDIR=yes + + # printer +-PRINT_CMD=lpr -Plp ++PRINT_CMD=lpr -h + + # end of config +Index: tetex-base-3.0/web2c/mktex.cnf +=================================================================== +--- tetex-base-3.0.orig/web2c/mktex.cnf 2005-08-07 17:33:14.000000000 +0100 ++++ tetex-base-3.0/web2c/mktex.cnf 2005-12-11 05:59:52.000000000 +0000 +@@ -1,5 +1,5 @@ + : ${MT_FEATURES=appendonlydir:varfonts} +-: ${MODE=ljfour} +-: ${BDPI=600} ++#: ${MODE=ljfour} ++#: ${BDPI=600} + # uncomment the following line to use ps2pk instead of gsftopk: + # : ${ps_to_pk=ps2pk} +Index: tetex-base-3.0/tex/generic/config/language.dat +=================================================================== +--- tetex-base-3.0.orig/tex/generic/config/language.dat 2005-08-07 17:31:57.000000000 +0100 ++++ tetex-base-3.0/tex/generic/config/language.dat 2005-12-11 05:59:52.000000000 +0000 +@@ -5,6 +5,16 @@ + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++%% To make it possible for package scripts to parse this file, ++%% please use only "%! " to comment out hyphenation patterns! ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++ ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++% Do not modify the following line! ++% -_- DebPkgProvidedMaps -_- ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++ ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % CAUTION: the first language will be the default if no style-file + % (e.g. german.sty) is used. + % Since version 3.0 of TeX, hyphenation patterns for multiple languages are +@@ -15,7 +25,7 @@ + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +-% The hyphenation pattern files are in the dirctory: ++% The hyphenation pattern files are in the directory: + % texmf/tex/generic/hyphen + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +@@ -35,10 +45,14 @@ + % english should always be defined. Either an alias for american or british. + =english + +-% French, TWO lines! ++ ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++% By default, most languages are enabled - there should be no problems. ++% If you want to use only a subset, please use '%! ' as comment sign. ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++% French and German, TWO lines each! + french frhyph.tex + =patois +- + german dehypht.tex + =austrian + +@@ -98,3 +112,7 @@ + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Email : Thomas Esser, te@dbs.uni-hannover.de + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ++%% checked by postinst 2.0.2a-1 %% ++%% do not remove this comment! %% ++%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +Index: tetex-base-3.0/scripts/context/perl/texfind.pl +=================================================================== +--- tetex-base-3.0.orig/scripts/context/perl/texfind.pl 2005-08-07 17:19:22.000000000 +0100 ++++ tetex-base-3.0/scripts/context/perl/texfind.pl 2005-12-11 05:59:52.000000000 +0000 +@@ -20,7 +20,28 @@ + use Getopt::Long ; + use File::Find ; + use Cwd ; +-use Tk ; ++#use Tk ; ++# patched by Debian ++use File::Basename; ++BEGIN { ++ eval { require Tk; import Tk; }; ++ if ($@) { ++ my $progname = basename($0); ++ my $message; ++ if ($@ =~ /^Can\'t locate Tk\.pm/) { ++ $message = "$progname: you must have the perl-tk package installed\nto use this script\n"; ++ } else { ++ $message = "$progname: problem loading the Tk module:\n $@\nHave you installed the perl-tk package?\n"; ++ } ++ ++ if (! -t STDOUT and exists $ENV{DISPLAY}) ++ { ++ exec("tetex-xwarn", $message); ++ } else { ++ die $message; ++ } ++ } ++} + use Tk::widgets ; + use Tk::ROText ; + +Index: tetex-base-3.0/scripts/context/perl/texshow.pl +=================================================================== +--- tetex-base-3.0.orig/scripts/context/perl/texshow.pl 2005-08-07 17:19:22.000000000 +0100 ++++ tetex-base-3.0/scripts/context/perl/texshow.pl 2005-12-11 05:59:52.000000000 +0000 +@@ -28,7 +28,28 @@ + use Getopt::Long ; + use XML::Parser; + use Data::Dumper; +-use Tk; ++#use Tk ; ++# patched by Debian ++use File::Basename; ++BEGIN { ++ eval { require Tk; import Tk; }; ++ if ($@) { ++ my $progname = basename($0); ++ my $message; ++ if ($@ =~ /^Can\'t locate Tk\.pm/) { ++ $message = "$progname: you must have the perl-tk package installed\nto use this script\n"; ++ } else { ++ $message = "$progname: problem loading the Tk module:\n $@\nHave you installed the perl-tk package?\n"; ++ } ++ ++ if (! -t STDOUT and exists $ENV{DISPLAY}) ++ { ++ exec("tetex-xwarn", $message); ++ } else { ++ die $message; ++ } ++ } ++} + use Tk::ROText ; + use Config; + use Time::HiRes; +Index: tetex-base-3.0/fonts/map/dvips/omega/omega.map +=================================================================== +--- tetex-base-3.0.orig/fonts/map/dvips/omega/omega.map 2005-08-07 17:30:23.000000000 +0100 ++++ tetex-base-3.0/fonts/map/dvips/omega/omega.map 2005-12-11 05:59:52.000000000 +0000 +@@ -1,3 +1,6 @@ ++% map comment changed, so that Debian's dpkg will try to ++% reinstall it after deletion in versions prior to 2.0.2-9 ++% + omseco OmegaSerifCommon + + ++ + Guide to teTeX Documentation + + + + + +

teTeXVersion 3.0   for Debian Sarge

+


+ + + + + + +
What we provideCaveats and shortcomingsBug reports and contactHow to get them +
+ +

This repository provides Debian packages of teTEX 3.0 for sarge. +Please read below about what we provide, and what we cannot promise

+ + + +

What we provide

+ + + +

Caveats and shortcomings: Security

+ + + +

Bug reports and contact

+ +Please submit bugs directly to the Debian Bugtracking System. Please +keep in mind that we are primarily developing etch, the successor +release of sarge, and that bug severities affect the migration into +testing and inclusion of the package in the current candidate for +etch. Therefore, severities of bugreports against such backports +should be lowered: + + + +

How to get them

+ +To get the packages, add the following line to your sources list: + +
deb http://people.debian.org/~frank/teTeX-3.0 sarge main
+ + +
+ + + +

Last update: +July 26, 2005.

+ + + +
+ + --- tetex-base-3.0.orig/debian/TODO +++ tetex-base-3.0/debian/TODO @@ -0,0 +1,19 @@ +- don't patch newhelpindex, rather parse it, find out correct + filenames and create a sed script. Or is there yet a new script that + does that? + +- Generally look at the documentation - should we add some + Debian-specific information in doc/texmf? + +- check perl/ruby scripts for dependencies + +- adapt tetex-xwarn wrapper for XML::Parser + +- permissions of language.dat? + +- the README.pst-osci with the new license information is lost + +- /etc/texmf/updmap.d/00updmap.cfg.dpkg-dist is created without + asking? + +- the symlink-to-dir stuff is missing in tetex-base's postrm --- tetex-base-3.0.orig/debian/cweb-examples/xview_types.w +++ tetex-base-3.0/debian/cweb-examples/xview_types.w @@ -0,0 +1,274 @@ +@q This file tells CWEAVE to treat XView types as reserved words. @> + +@s Attr_attribute int +@s Attr_avlist int +@s Attr_base_cardinality int +@s Attr_base_type int +@s Attr_cu_type int +@s Attr_generic int +@s Attr_list_ptr_type int +@s Attr_list_type int +@s Attr_pkg int +@s Attr_union int +@s Canvas int +@s Canvas_attribute int +@s Canvas_paint_attribute int +@s Canvas_paint_window int +@s Canvas_view int +@s Canvas_view_attribute int +@s Cms int +@s Cms_attribute int +@s Cms_type int +@s Cursor_attribute int +@s Cursor_drag_state int +@s Cursor_drag_type int +@s Defaults_pairs int +@s Destroy_status int +@s Dnd int +@s DndDragType int +@s Dnd_attribute int +@s Drag_drop int +@s Drawable_attr int +@s Drawable_attribute int +@s Drop_site_item int +@s Enumerator int +@s Error_attr int +@s Error_attribute int +@s Error_layer int +@s Error_severity int +@s Event int +@s Firm_event int +@s Font_attribute int +@s Font_string_dims int +@s Font_type int +@s Frame int +@s Frame_accelerator int +@s Frame_attribute int +@s Frame_cmd int +@s Frame_cmd_pin_state int +@s Frame_focus_direction int +@s Frame_help int +@s Frame_props int +@s Fullscreen int +@s Fullscreen_attr int +@s Fullscreen_attribute int +@s Fullscreen_grab_mode int +@s Icon int +@s Icon_attribute int +@s Inputmask int +@s Kbd_cmds_value int +@s Menu int +@s Menu_attribute int +@s Menu_class int +@s Menu_feedback int +@s Menu_generate int +@s Menu_item int +@s Notice_attribute int +@s Notify_arg int +@s Notify_client int +@s Notify_copy int +@s Notify_dump_type int +@s Notify_error int +@s Notify_event int +@s Notify_event_type int +@s Notify_func int +@s Notify_release int +@s Notify_signal_mode int +@s Notify_value int +@s Openwin int +@s Openwin_attribute int +@s Openwin_split_direction int +@s Panel int +@s Panel_abbrev_menu_button_item int +@s Panel_attr int +@s Panel_attribute int +@s Panel_attribute_value int +@s Panel_button_item int +@s Panel_choice_item int +@s Panel_drop_target_item int +@s Panel_gauge_item int +@s Panel_item int +@s Panel_item_type int +@s Panel_list_item int +@s Panel_list_mode int +@s Panel_list_op int +@s Panel_message_item int +@s Panel_multiline_text_item int +@s Panel_numeric_text_item int +@s Panel_ops int +@s Panel_paint_window int +@s Panel_setting int +@s Panel_slider_item int +@s Panel_status int +@s Panel_text_item int +@s Panel_view int +@s Pixwin int +@s Pw_pixel_cache int +@s Rect int +@s Rectlist int +@s Rectnode int +@s Screen_attr int +@s Screen_attribute int +@s Scroll_motion int +@s Scrollable_panel int +@s Scrollbar int +@s Scrollbar_attr int +@s Scrollbar_attribute int +@s Scrollbar_motion int +@s Scrollbar_setting int +@s Sel_cmpat_info int +@s Sel_prop_info int +@s Selection int +@s Selection_attr int +@s Selection_attribute int +@s Selection_item int +@s Selection_owner int +@s Selection_requestor int +@s Seln_access int +@s Seln_attribute int +@s Seln_client int +@s Seln_file_info int +@s Seln_function int +@s Seln_function_buffer int +@s Seln_functions_state int +@s Seln_holder int +@s Seln_holders_all int +@s Seln_inform_args int +@s Seln_level int +@s Seln_rank int +@s Seln_replier_data int +@s Seln_request int +@s Seln_requester int +@s Seln_response int +@s Seln_result int +@s Seln_state int +@s Server_attr int +@s Server_attribute int +@s Server_image int +@s Server_image_attribute int +@s Termsw int +@s Termsw_attribute int +@s Termsw_mode int +@s Termsw_view int +@s Text int +@s Textsw int +@s Textsw_action int +@s Textsw_attribute int +@s Textsw_enum int +@s Textsw_expand_status int +@s Textsw_filter_attribute int +@s Textsw_filter_command int +@s Textsw_index int +@s Textsw_mark int +@s Textsw_menu_cmd int +@s Textsw_opaque int +@s Textsw_status int +@s Textsw_view int +@s Tty int +@s Tty_attribute int +@s Tty_view int +@s Ttysubwindow int +@s Vuid_addr_probe int +@s Vuid_device int +@s WM_Direction int +@s Win_enum_node int +@s Win_enum_result int +@s Win_tree_layer int +@s Window_attr int +@s Window_attribute int +@s Window_handle int +@s Window_input_event int +@s Window_layout_op int +@s Window_rescale_rect_obj int +@s Window_rescale_state int +@s Window_type int +@s Ws_scale int +@s Ws_scale_list int +@s Xv_Color_info int +@s Xv_Cursor int +@s Xv_Drawable int +@s Xv_Font int +@s Xv_Notice int +@s Xv_Screen int +@s Xv_Server int +@s Xv_Window int +@s Xv_attr int +@s Xv_attribute int +@s Xv_base int +@s Xv_canvas int +@s Xv_canvas_pw int +@s Xv_canvas_view int +@s Xv_cms_struct int +@s Xv_cmsdata int +@s Xv_cursor int +@s Xv_cursor_struct int +@s Xv_dnd_struct int +@s Xv_drag_drop int +@s Xv_drawable int +@s Xv_drawable_struct int +@s Xv_drop_site int +@s Xv_drop_site_struct int +@s Xv_embedding int +@s Xv_focus_rank int +@s Xv_font int +@s Xv_font_struct int +@s Xv_frame_base int +@s Xv_frame_class int +@s Xv_frame_cmd int +@s Xv_frame_help int +@s Xv_frame_props int +@s Xv_fullscreen int +@s Xv_generic_attr int +@s Xv_generic_attribute int +@s Xv_generic_struct int +@s Xv_icon int +@s Xv_icon_header_info int +@s Xv_item int +@s Xv_menu int +@s Xv_menu_item int +@s Xv_Notice int +@s Xv_notice int +@s Xv_notice_struct int +@s Xv_object int +@s Xv_opaque int +@s Xv_openwin int +@s Xv_panel int +@s Xv_panel_ambtn int +@s Xv_panel_button int +@s Xv_panel_choice int +@s Xv_panel_drop int +@s Xv_panel_extension_item int +@s Xv_panel_gauge int +@s Xv_panel_list int +@s Xv_panel_message int +@s Xv_panel_multiline_text int +@s Xv_panel_num_text int +@s Xv_panel_or_item int +@s Xv_panel_slider int +@s Xv_panel_text int +@s Xv_panel_view int +@s Xv_pkg int +@s Xv_Screen int +@s Xv_screen int +@s Xv_screen_struct int +@s Xv_scrollbar int +@s Xv_sel int +@s Xv_sel_item int +@s Xv_sel_owner int +@s Xv_sel_requestor int +@s Xv_Server int +@s Xv_server int +@s Xv_server_image int +@s Xv_server_struct int +@s Xv_singlecolor int +@s Xv_termsw int +@s Xv_termsw_view int +@s Xv_textsw int +@s Xv_textsw_view int +@s Xv_tty int +@s Xv_tty_view int +@s Xv_window int +@s Xv_window_struct int +@s Xv_xrectlist int +@s icon_header_handle int +@s icon_header_object int --- tetex-base-3.0.orig/debian/cweb-examples/wordtest.w +++ tetex-base-3.0/debian/cweb-examples/wordtest.w @@ -0,0 +1,539 @@ +\datethis +@* Introduction. This program is a simple filter that sorts and outputs all +lines of input that do not appear in a given set of sorted files. It is called +{\tt wordtest} because each line of input is considered to be a `word' and +each of the sorted files is considered to be a 'dictionary'. Words are +output when they don't appear in any given dictionary. + +The character set and alphabetic order are flexible. Every 8-bit +character is mapped into an integer called its {\it ord}. A character +is called a {\it null\/} if its ord is zero; such characters are +discarded from the input. A character is called a {\it break\/} if +its ord is negative; such characters break the input into so-called words. +Otherwise a character's ord is positive, and the character is called a +{\it letter}. One letter precedes another in alphabetic order if and only +if it has a smaller ord. Two letters are considered identical, for +purposes of sorting, if their ords are the same. + +The null character |'\n'| must have ord~0; thus, it must remain null. +Otherwise the ord mapping is arbitrary. If the user doesn't specify +any special mapping, the default ord table simply maps every 8-bit +character code into itself, considering characters to be unsigned char +values in the range 0--255, except that ASCII codes {\tt a-z} are +mapped into the corresponding codes for {\tt A-Z}, and newline is a +break character. Optional command-line arguments, described below, can +change this default mapping to any other desired scheme. + +A word is any nonempty sequence of letters that is immediately preceded +and followed by break characters, when nulls are ignored. Technically +speaking, we pretend that a break character is present at the beginning of a +file but not at the end; thus, all letters following the final break character +of a file are ignored, if any such letters are present. Two words are +{\it equivalent\/} to each other if their letters have the same sequence +of ord values. If two or more words of the input are equivalent, only +the first will be output, and it will be output only if it is not +equivalent to any word in the given dictionary files. Words in each +dictionary are assumed to be in lexicographic order and to contain no +nulls. Words in the output file will satisfy these conditions; therefore +{\tt wordtest} can be used to generate and update the dictionaries it needs. +Notice that if no dictionaries are given, {\tt wordtest} will act as a +sorting routine that simply discards nulls and duplicate lines. + +@ The \UNIX/ command line `{\tt wordtest} {\tt [options]} {\tt [dictionaries]}' +is interpreted by executing option commands from left to right and then by +regarding any remaining arguments as the names of dictionary files. + +Most of the option commands are designed to specify the |ord| table. +Initially |ord[c]=c| for each unsigned char code~|c|. The command +$$\line{\hskip5em\tt-b\it string\hfil}$$ +makes every character in the string a break character. If the string is +empty, {\tt-b} makes every nonnull character a break (i.e., it sets +|ord[c]=-1| for |1<=c<=255|). The command +$$\line{\hskip5em\tt-n\it string\hfil}$$ +makes every character in the string a null character. If the string is +empty, {\tt-n} makes every character null. The command +$$\line{\hskip5em\tt-a\it string\hfil}$$ +sets the ord of the $k$th element of the string equal to $\delta+k$, +where $\delta$ is an offset value (normally zero). The command +$$\line{\hskip5em\tt-d\it offset\hfil}$$ +sets the value of $\delta$; the offset should be a decimal integer between +0 and 255. + +There is also an option that has no effect on the |ord| table: +$$\line{\hskip5em\tt-m\it length\hfil}$$ +defines the length of the longest word. If any word of a file has +more than this many characters, a break is artificially inserted +so that a word of this maximum length is obtained. The default value is 50. +The maximum legal value is 1000. + +If the given options do not specify at least one break character, +{\tt wordtest} applies the option commands +$$\vbox{\line{\hskip5em\.{-b"\\}\hfil} +\line{\.{" -d64 -a"abcdefghijklmnopqrstuvwxyz"}\hfil}}$$ +which generate the default mapping mentioned above (unless other ords were +changed). + +The program is designed to run fastest when there are at most two +dictionary files (usually one large system dictionary and another +personalized one), although it places no limit on the actual number of +dictionaries that can be mentioned on the command line. Users who want +to specify a multitude of dictionaries should ask themselves why they +wouldn't prefer to merge their dictionaries together first (using +{\tt wordtest}). + +@d MAX_LENGTH_DEFAULT 50 +@d MAX_LENGTH_LIMIT 1000 + +@ The general organization of {\tt wordtest} is typical of applications +written in \CEE/, and its approach is quite simple. If any errors are +detected, an indication of the error is sent to the |stderr| file and +a nonzero value is returned. + +@p +#include +@# +@@; +int main(argc,argv) + int argc; /* the number of command-line arguments */ + char *argv[]; /* the arguments themselves */ +{ + @; + @; + @; + @; + return 0; +} + +@ @= +typedef unsigned char byte; /* our bytes will range from 0 to 255 */ + +@ @= +int targc; /* temporary modifications to |argc| */ +byte **targv; /* pointer to the current argument of interest */ +unsigned delta; /* the offset used in the \.{-a} and \.{-d} options */ +unsigned max_length=MAX_LENGTH_DEFAULT; /* longest allowable word */ +byte breakchar; /* break character to use in the output */ +int ord[256]; /* table of ord values */ +register int c; /* an all-purpose index */ +register byte *u,*v; /* pointer to current string characters */ + +@ We try to use newline as the output break character, if possible. + +@= +for (c=0;c<256;c++) ord[c]=c; +delta=0; +targc=argc-1;@+targv=(byte**)argv+1; +while (targc && **targv=='-') { + @; + targc--;@+targv++; +} +if (ord['\n']<0) breakchar='\n'; +else { + breakchar='\0'; + for (c=255;c;c--) if (ord[c]<0) breakchar=c; + if (!breakchar) @; +} +@; +for (;targc;targc--,targv++) @; + +@ @= +switch((*targv)[1]) { +case 'a': for (c=delta,u=*targv+2;*u;u++) ord[*u]=++c;@+break; +case 'b': if ((*targv)[2]) for (u=*targv+2;*u;u++) ord[*u]=-1; + else for (c=1;c<256;c++) ord[c]=-1; + break; +case 'n': if ((*targv)[2]) for (u=*targv+2;*u;u++) ord[*u]=0; + else for (c=1;c<256;c++) ord[c]=0; + break; +case 'd': if (sscanf((char*)*targv+2,"%u",&delta)==1 && delta<256) break; + goto print_usage; +case 'm': if (sscanf((char*)*targv+2,"%u",&max_length)==1 & + max_length<=MAX_LENGTH_LIMIT) break; + goto print_usage; +default: print_usage: fprintf(stderr, + "Usage: %s {-{{a|b|n}string|{d|m}number}}* dictionaryname*\n",*argv); + return-1; +} + +@ @= +{ + ord['\n']=-1; /* newline is break character */ + breakchar='\n'; + for (c=1;c<=26;c++) ord['a'-1+c]='A'-1+c; +} + +@*Treaps. The most interesting part of this program is its sorting algorithm, +which is based on the ``treap'' data structure of Aragon and Seidel +[{\sl 30th IEEE Symposium on Foundations of Computer Science\/} (1989), +540--546]. +@^Aragon, Cecilia Rodriguez@>@^Seidel, Raimund@> +A treap is a binary tree whose nodes have two key fields. The primary +key, which in our application is a word from the input, obeys +tree-search order: All descendants of the left child of node~$p$ have +a primary key that is less than the primary key of~$p$, and all descendants +of its right child have a primary key that is greater. The secondary key, +which in our application is a unique pseudorandom integer attached to +each input word, obeys heap order: The secondary key of~$p$'s children +is greater than $p$'s own secondary key. + +A given set of nodes with distinct primary keys and distinct secondary +keys can be made into a treap in exactly one way. This unique treap +can be obtained, for example, by using ordinary tree insertion with +respect to primary keys while inserting nodes in order of their +secondary keys. It follows that, if the secondary keys are random, +the binary tree will almost always be quite well balanced. + +We will compute secondary keys as unsigned long integers, assigning +the key $(cn)\bmod 2^{32}$ to the $n$th node, where $c$ is an odd +number. This will guarantee that the secondary keys are distinct. +By choosing $c$ close to $2^{32}/\phi$, where $\phi$ is the golden +ratio $(1+\sqrt5\,)/2$, we also spread the values out in a fashion that +is unlikely to match any existing order in the data. + +@d PHICLONE 2654435769 /* $\approx 2^{32}/\phi$ */ + +@= +typedef struct node_struct { + struct node_struct *left,*right; /* children */ + byte *keyword; /* primary key */ + unsigned long rank; /* secondary key */ +} node; /* node of a treap */ + +@ We want to be able to compare two strings rapidly with respect to +lexicographic order, as defined by the |ord| table. This can be done +if one string is delimited by |'\0'| as usual, while the other is +delimited by a break character. Then we are sure to have an unequal +comparison, and the inner loop is fast. + +Here is a routine that checks to see if a word is already present in the +treap. The word is assumed to be in |buffer|, terminated by |breakchar|. +The words in the treap are terminated by nulls. The +treap is accessed by means of |root|, a pointer to its root node. + +@= +{@+register node *p=root; + while (p) { + for (u=buffer,v=p->keyword;ord[*u]==ord[*v];u++,v++) ; + if (*v=='\0' && *u==breakchar) goto found; + if (ord[*u]left; + else p=p->right; + } +} + +@ We don't need to insert nodes into the treap as often as we need to +look words up, so we don't mind repeating the comparisons already made +when we discover that insertion is necessary. (Actually a more comprehensive +study of this tradeoff ought to be done. But not today; I am trying +here to keep the program short and sweet.) + +The insertion algorithm proceeds just as the lookup algorithm until +we come to a node whose rank is larger than the rank of the node +to be inserted. We insert the new node in its place, then split the +old node and its descendants into two subtrees that will become the +left and right subtrees of the new node. + +@= +{@+register node *p,**q,**qq,*r; + current_rank += PHICLONE; /* unsigned addition mod $2^{32}$ */ + p=root;@+q=&root; + while (p) { + if (p->rank>current_rank) break; /* end of the first phase */ + for (u=buffer,v=p->keyword;ord[*u]==ord[*v];u++,v++) ; + if (ord[*u]left), p=*q; + else q=&(p->right), p=*q; + } + @; + r->rank=current_rank; + *q=r; /* link the new node into the tree */ + @; +} + +@ @= +unsigned long current_rank=0; /* pseudorandom number */ + +@ At this point |p| may already be empty. If not, we can hook its +parts together easily. (A formal proof is a bit tricky, but the computer +doesn't slow down like people do when they get to a conceptually harder +part of an algorithm.) + +@= +q=&(r->left);@+qq=&(r->right); /* slots to fill in as we split the subtree */ +while (p) { + for (u=buffer,v=p->keyword;ord[*u]==ord[*v];u++,v++) ; + if (ord[*u]left); + p=*qq; + } else { + *q=p; + q=&(p->right); + p=*q; + } +} +*q=*qq=NULL; + +@ We allocate node memory dynamically, in blocks of 100 nodes at a time. +We also allocate string memory dynamically, 1000 characters at once +(in addition to space for the current string). +The variable |l| will be set to the length of the word in |buffer|. + +@d NODES_PER_BLOCK 100 +@d CHARS_PER_BLOCK 1000 +@d out_of_mem(x) {@+fprintf(stderr,"%s: Memory exhausted!\n",*argv); + return x;@+} + +@= +if (next_node==bad_node) { + next_node=(node*)calloc(NODES_PER_BLOCK,sizeof(node)); + if (next_node==NULL) out_of_mem(-2); + bad_node=next_node+NODES_PER_BLOCK; +} +r=next_node++; +@keyword| point to it@>; + +@ @= +if (next_string+l+1>=bad_string) {@+int block_size=CHARS_PER_BLOCK+l+1; + next_string=(byte*)malloc(block_size); + if (next_string==NULL) out_of_mem(-3); + bad_string=next_string+block_size; +} +r->keyword=next_string; +for (u=buffer,v=next_string;ord[*u]>0;u++,v++) *v=*u; +*v='\0'; +next_string=v+1; + +@ We had better define the variables we've been assuming in these +storage allocation routines. + +@= +node *next_node=NULL, *bad_node=NULL; +byte *next_string=NULL, *bad_string=NULL; +node *root=NULL; +byte *buffer; +int l; /* length of current string in |buffer| */ + +@ The mechanisms for sorting the input words are now all in place. +We merely need to invoke them at the right times. + +@= +buffer=(byte*)malloc(max_length+1); +if (buffer==NULL) out_of_mem(-5); +while (1) { + @; + if (l) { + @; + @; + found:; + } +} +done:; + +@ @= +u=buffer;@+l=0; +while (l= +if (root!=NULL) {@+register node *p,*q; + p=root; + root=NULL; + while (1) { + while (p->left!=NULL) { + q=p->left; + p->left=root; /* |left| links are now used for the stack */ + root=p; + p=q; + } +visit: @keyword|, if it's not in the dictionaries@>; + if (p->right==NULL) { + if (root==NULL) break; /* the stack is empty, we're done */ + p=root; + root=root->left; /* pop the stack */ + goto visit; + } else p=p->right; + } +} + +@* The dictionaries. So now all we have to do is provide a mechanism +for reading the words in the dictionaries. The dictionaries are sorted, +and by now the input words have been sorted too. +So we need only scan through the +dictionaries once; we'll try to zoom through as quickly as possible. + +First we need data structures. There will be an array of pointers to filenodes, +for all dictionary files currently open. Each filenode will contain +a buffer of size |BUFSIZ+1| for raw input bytes not yet scanned, +as well as a buffer of size |MAX_LENGTH_LIMIT+1| for the current word +being considered. + +@= +typedef struct filenode_struct { + struct filenode_struct *link; /* pointer to next open file */ + FILE *dfile; /* dictionary file */ + byte buf[BUFSIZ+1], curword[MAX_LENGTH_LIMIT+1]; + byte *pos; /* current position in |buf| */ + byte *limit; /* end of input bytes in |buf| */ + byte *endword; /* the first break character in |curword| */ +} filenode; + +@ @= +if (targc) { + curfile=(filenode*)calloc(targc,sizeof(filenode)); + if (curfile==NULL) out_of_mem(-7); + for (f=curfile;flink=f+1; + f->link=curfile; /* circular linking */ +} else curfile=NULL; + +@ @= +filenode *curfile; /* current filenode of interest */ +filenode *f; /* temporary register for filenode list processing */ + +@ @= +{ + curfile->dfile=fopen((char*)*targv,"r"); + if (curfile->dfile==NULL) { + fprintf(stderr,"%s: Can't open dictionary file %s!\n",*argv,(char*)*targv); + return -8; + } + curfile->pos=curfile->limit=curfile->buf; /* |buf| is empty */ + curfile->buf[0]='\0'; + curfile->endword=curfile->curword; /* |curword| is empty too */ + curfile->curword[0]=breakchar; + curfile=curfile->link; /* move to next filenode */ +} + +@ We will implicitly merge the dictionaries together by using a brute force +scheme that works fine when there are only a few of them. Namely, +|curfile| will point to a file having the currently smallest +current word. To get to the next word of the merge, we advance to the +next word in that file, comparing it with the current words of the +other files to see if |curfile| should switch to one of them. +When we get to the end of a file, its filenode simply leaves the circular +list. Eventually the list will be empty, and we will set |curfile| to +|NULL|; we will then have seen all the dictionary words in order. + +@ @keyword|, if it's not in the dictionaries@>= +while (curfile!=NULL) { + for (u=p->keyword,v=curfile->curword;ord[*u]==ord[*v];u++,v++) ; + if (*u=='\0' && *v==breakchar) goto word_done; + /* we found it in the dictionary */ + if (ord[*u]; +} +@keyword| and |breakchar| on |stdout|@>@; +word_done:; + +@ @keyword| and |breakchar| on |stdout|@>= +for (u=p->keyword;*u;u++) putchar(*u); +putchar(breakchar); + +@ @= +@curword|, as fast as you can@>; +@; + +@ The dictionaries are supposed to be in order, and they shouldn't +contain nulls. But if they fail to meet these criteria, we don't want +{\tt wordtest} to crash; it should just run more slowly and/or more +peculiarly. + +The logic of the code here removes null characters, at the cost of speed. +If the dictionary contains words out of order, say $\alpha>\beta$ where +$\alpha$ precedes $\beta$ in the file, the effect will be as if $\beta$ +were not present. (In particular, if the dictionary would happen to have a null +word because of a break character inserted by our |max_length| logic, +that null word would cause no harm, because a null word is always less than +any nonnull word.) + +A null character always appears in |curfile->limit|. + +@curword|...@>= +v=curfile->curword; +l=max_length; /* here |l| represents max characters to put in |curword| */ +while (1) {@+register byte *w=curfile->limit; + u=curfile->pos; + if (u+l>=w) + while (ord[*u]>0) *v++=*u++; /* this is the inner loop */ + else { + w=u+l; + c=*w; + *w='\0'; /* temporarily store a null to avoid overlong string */ + while (ord[*u]>0) *v++=*u++; /* this too is the inner loop */ + *w=c; /* restore the damaged byte */ + } + if (ord[*u]<0) { + curfile->pos=u+1; /* good, we found the next break character */ + break; + } + l-=u-curfile->pos; + if (l==0) { /* |max_length| reached */ + curfile->pos=u; + break; + } + if (u==w) { /* we're at |curfile->limit| */ + @buf|; or remove the current file from the + circular list and |goto update_done|, if it has ended@>; + } else curfile->pos=u+1; /* bypass a null character in the dictionary */ +} +curfile->endword=v; +*v=breakchar; +update_done:; + +@ @buf|...@>= +if (ferror(curfile->dfile)) { + fprintf(stderr,"%s: File read error on dictionary file!\n",*argv); + return -9; +} +if (feof(curfile->dfile)) { + f=curfile->link; + if (f==curfile) curfile=NULL; /* the last dictionary file has ended */ + else { + while (f->link!=curfile) f=f->link; + f->link=curfile->link; /* remove a filenode from the circular list */ + curfile=f; /* and point to one of the remaining filenodes */ + } + goto update_done; +} +curfile->limit=curfile->buf+fread(curfile->buf,1,BUFSIZ,curfile->dfile); +*curfile->limit='\0'; +curfile->pos=curfile->buf; + +@ @= +if (curfile!=NULL) {@+filenode *sentinel=curfile; + for (f=curfile->link;f!=sentinel;f=f->link) + @curwordcurword|@>; +} + +@ @curwordcurword|@>= +{ + *f->endword='\0'; + for (u=f->curword,v=curfile->curword;ord[*u]==ord[*v];u++,v++) ; + if (ord[*u]endword=breakchar; +} + +@* Index. Here is a list of the identifiers used by {\tt wordtest}, +showing the sections in which they appear, underlined at points +of definition. --- tetex-base-3.0.orig/debian/cweb-examples/treeprint.w +++ tetex-base-3.0/debian/cweb-examples/treeprint.w @@ -0,0 +1,248 @@ +\def\covernote{Copyright 1987 Norman Ramsey -- Princeton University} + +\def\vbar{\.{|}} +@*Directory Trees. +Our object is to print out a directory hierarchy in some pleasant way. +The program takes output from {\tt find * -type d -print \vbar\ sort} +@^system dependencies@> +and produces a nicer-looking listing. +More precisely, our input, which is the output of {\tt find} followed +by {\tt sort}, is a list of fully qualified directory names (parent +and child separated by slashes |'/'|); everything has already been +sorted nicely into lexicographic order. + +The {\tt treeprint} routine takes one option, |"-p"|, which tells it +to use the printer's line-drawing set, rather than the terminal's. + +@c +@@; +@@; +@@; + +@# +main(argc, argv) + int argc; + char **argv; +{ +@<|main| variable declarations@>; +@; +@; +@@; +exit(0); +} + +@ +We make all the siblings of a directory a linked list off of its left child, +and the offspring a linked list off the right side. +Data are just directory names. +@d sibling left +@d child right + +@= +typedef struct tnode { + struct tnode *left, *right; + char *data; +} TNODE; +@ @<|main| variable...@>= +struct tnode *root=NULL; + + + +@*Input. +Reading the tree is simple---we read one line at a time, and call on the +recursive |add_tree| procedure. + +@c +read_tree (fp, rootptr) + FILE *fp; + struct tnode **rootptr; +{ + char buf[255], *p; + + while ((fgets(buf, 255, fp))!=NULL) { + @; + add_tree(rootptr, buf); + } + } +@ @= +#include + +@ Depending what system you're on, you may or may not get a newline in |buf|. +@= + p=buf; while (*p!='\0'&&*p!='\n') p++; +@^system dependencies@> + *p='\0'; + +@ +To add a string, we split off the first part of the name and insert it into +the sibling list. We then do the rest of the string as a child of the new node. + +@c +add_tree(rootptr, p) + struct tnode **rootptr; + char *p; +{ + char *s; + int slashed; + + if (*p=='\0') return; + +@; + + if (*rootptr==NULL) { +@; + strcpy((*rootptr)->data,p); + } + if (strcmp((*rootptr)->data,p)==0) { + if (slashed) ++s; + add_tree(&((*rootptr)->child),s); + } + else { + if (slashed) *s='/'; + add_tree(&((*rootptr)->sibling),p); + } + } + +@ We perform some nonsense to cut off the string |p| so that |p| just +holds the first word of a multiword name. Variable |s| points at what +was either the end of |p| or a slash delimiting names. In either case +|*s| is made |'\0'|. Later, depending on whether we want to pass the +whole string or the last piece, we will restore the slash or advance +|s| one character to the right. + +@= + for (s=p;*s!='\0'&&*s!='/';) s++; + if (*s=='/') { + slashed=1; + *s='\0'; + } else slashed=0; + +@ Node allocation is perfectly standard \dots +@= + *rootptr=(struct tnode *) malloc (sizeof(struct tnode)); + (*rootptr)->left = (*rootptr)->right = NULL; + (*rootptr)->data = malloc (strlen(p)+1); + +@ +@= char *malloc(); + +@ In this simple implementation, we just read from standard input. +@= read_tree(stdin,&root); + +@*Output. +We begin by defining some lines, tees, and corners. +The |s| stands for screen and the |p| for printer. +You will have to change this for your line-drawing set. +@^system dependencies@> + +@= +#define svert '|' +#define shoriz '-' +#define scross '+' +#define scorner '\\' /* lower left corner */ + +#define pvert '|' +#define phoriz '-' +#define pcross '+' +#define pcorner '\\' /* lower left corner */ + +@ The default is to use the terminal's line drawing set. +@= +char vert=svert; +char horiz=shoriz; +char cross=scross; +char corner=scorner; + +@ With option |"-p"| use the printer character set. +@= +while (--argc>0) { + if (**++argv=='-') { + switch (*++(*argv)) { + case 'p': + vert=pvert; + horiz=phoriz; + cross=pcross; + corner=pcorner; + break; + default: + fprintf(stderr,"treeprint: bad option -%c\n",**argv); + break; + } + } +} + +@ We play games with a character stack to figure out when to put in vertical +bars. +A vertical bar connects every sibling with its successor, but the last sibling +in a list is followed by blanks, not by vertical bars. The state of +bar-ness or space-ness for each preceding sibling is recorded in the +|indent_string| variable, one character (bar or blank) per sibling. + +@= +char indent_string[100]=""; + +@ Children get printed +before siblings. +We don't bother trying to bring children up to the same line as their parents, +because the \UNIX/ filenames are so long. + +We define a predicate telling us when a sibling is the last in a series. +@d is_last(S) (S->sibling==NULL) + +@c +print_node(fp, indent_string, node) + FILE *fp; + char *indent_string; + struct tnode *node; +{ + char string[255]; + int i; + char *p, *is; + + if (node==NULL) { + } + else { + *string='\0'; + for (i=strlen(indent_string); i>0; i--) + strcat(string,@, " | "); + strcat(string,@t\ \ @> " +--"); +@; + fprintf(fp,"%s%s\n",string,node->data); + +@# + /* Add vertical bar or space for this sibling (claim |*is=='\0'|) */ + *is++ = (is_last(node) ? ' ' : vert); + *is='\0'; + + print_node(fp, indent_string, node->child); /* extended |indent_string| */ + *--is='\0'; + print_node(fp, indent_string, node->sibling); /* original |indent_string| */ + } + +} +@ For simplicity, we originally wrote connecting lines with |'|'|, |'+'|, and +|'-'|. +Now we replace those characters with appropriate characters from the +line-drawing set. +We take the early vertical bars and replace them with characters from +|indent_string|, and we replace the other characters appropriately. +We are sure to put a |corner|, not a |cross|, on the last sibling in +a group. +@= + is=indent_string; + for (p=string; *p!='\0'; p++) switch(*p) { + case '|': *p=*is++; break; + case '+': *p=(is_last(node) ? corner : cross); break; + case '-': *p=horiz; break; + default: break; + } + + +@ For this simple implementation, we just write on standard output. + +@= print_node(stdout, indent_string, root); + +@*Index. --- tetex-base-3.0.orig/debian/cweb-examples/wc-dos.ch +++ tetex-base-3.0/debian/cweb-examples/wc-dos.ch @@ -0,0 +1,8 @@ +% from j.fitzsimons@genie.geis.com who compiled with Top Speed C +% April 1995 + +@x +@d buf_size BUFSIZ /* \.{stdio.h}'s |BUFSIZ| is chosen for efficiency*/ +@y +@d buf_size 2048 /* \.{stdio.h}'s |BUFSIZ| breaks DOS */ +@z --- tetex-base-3.0.orig/debian/cweb-examples/extex.ch +++ tetex-base-3.0/debian/cweb-examples/extex.ch @@ -0,0 +1,23 @@ +@x In my work (mainly TAOCP) I use \: (not \.) for the dot accent +'&`&\relax\^&"&\relax\~&=&.&u&v\cr +@y +'&`&\relax\^&"&\relax\~&=&:&u&v\cr +@z +@x + 1,1,1,1,1,0,0,1, /* \.{\\-} and \.{\\.} */ + 1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1, /* \.{\\=} */ +@y + 1,1,1,1,1,0,1,1, /* \.{\\-} */ + 1,1,1,1,1,1,1,1,1,1,0,1,1,0,1,1, /* \.{:} and \.{\\=} */ +@z +@x and I use |...xref-tag...| for cross-references +case '|': if (web>1) { + save_skipping=skipping; + goto skip_C_prime; + } +@y +case '|': if (web>1) { + save_skipping=skipping; + goto skip_C_prime; + } else discard_to('|'); +@z --- tetex-base-3.0.orig/debian/cweb-examples/xlib_types.w +++ tetex-base-3.0/debian/cweb-examples/xlib_types.w @@ -0,0 +1,92 @@ +@q This file tells CWEAVE to treat X11/Xlib types as reserved words. @> + +@s XExtData int +@s XExtCodes int +@s _XExtension int +@s XPixmapFormatValues int +@s XGCValues int +@s GC int +@s Visual int +@s Depth int +@s Screen int +@s ScreenFormat int +@s XSetWindowAttributes int +@s XWindowAttributes int +@s XHostAddress int +@s XImage int +@s XWindowChanges int +@s XColor int +@s XSegment int +@s XPoint int +@s XRectangle int +@s XArc int +@s XKeyboardControl int +@s XKeyboardState int +@s XTimeCoord int +@s XModifierKeymap int +@s Display int +@s XKeyEvent int +@s XKeyPressedEvent int +@s XKeyReleasedEvent int +@s XButtonEvent int +@s XButtonPressedEvent int +@s XButtonReleasedEvent int +@s XMotionEvent int +@s XPointerMovedEvent int +@s XCrossingEvent int +@s XEnterWindowEvent int +@s XLeaveWindowEvent int +@s XFocusChangeEvent int +@s XFocusInEvent int +@s XFocusOutEvent int +@s XKeymapEvent int +@s XExposeEvent int +@s XGraphicsExposeEvent int +@s XNoExposeEvent int +@s XVisibilityEvent int +@s XCreateWindowEvent int +@s XDestroyWindowEvent int +@s XUnmapEvent int +@s XMapEvent int +@s XMapRequestEvent int +@s XReparentEvent int +@s XConfigureEvent int +@s XGravityEvent int +@s XResizeRequestEvent int +@s XConfigureRequestEvent int +@s XCirculateEvent int +@s XCirculateRequestEvent int +@s XPropertyEvent int +@s XSelectionClearEvent int +@s XSelectionRequestEvent int +@s XSelectionEvent int +@s XColormapEvent int +@s XClientMessageEvent int +@s XMappingEvent int +@s XErrorEvent int +@s XAnyEvent int +@s XEvent int +@s _XQEvent int +@s XCharStruct int +@s XFontProp int +@s XFontStruct int +@s XTextItem int +@s XChar2b int +@s XTextItem16 int +@s XEDataObject int +@s XErrorHandler int +@s XIOErrorHandler int +@s XID int +@s Window int +@s Drawable int +@s Font int +@s Pixmap int +@s Cursor int +@s Colormap int +@s GContext int +@s KeySym int +@s Mask int +@s Atom int +@s VisualID int +@s Time int +@s KeyCode int --- tetex-base-3.0.orig/debian/cweb-examples/kspell.el +++ tetex-base-3.0/debian/cweb-examples/kspell.el @@ -0,0 +1,228 @@ +;; Alternative spelling enterface for Emacs, contributed by Don Knuth +;; (Uses the wordtest and extex programs, which are +;; supplied as examples with the CWEB distribution, +;; available by anonymous ftp from labrea.stanford.edu) + +;; Based in part on "spell.el" from GNU Emacs; redistributed under +;; the terms of the GNU General Public License; NO WARRANTY implied. + +;; To install this, using the default directories defined below, +;; install wordtest and extex in /usr/local/bin, then say +;; "ln /usr/local/bin/extex /usr/local/bin/excweb", then install +;; a suitable dictionary in /usr/local/lib/dict/words; one such +;; dictionary can be found in ~ftp/pub/dict/words at labrea.stanford.edu. +;; Also create an empty file called .words in your home directory. +;; Finally, add (load-library "kspell") to your .emacs file, or +;; include such a line in site-init.el if kspell is to be used by everybody. +;; If you get a message like "Checking spelling of buffer...not correct" +;; and nothing else, the probable cause is that the wordtest program +;; could not open /usr/local/lib/dict/words or ~/.words for reading. + +;; Note (10 Feb 1998): The spell-check logic failed to catch "obso1ete" +;; as a scanner-typo for "obsolete". The reason is that, although "obso" +;; and "ete" are non-words, they couldn't be found in query-replace +;; for the regexps "\bobso\b" and "\bete\b". + +(provide 'kspell) + +(defvar wordtest-command "wordtest" ;; maybe "/usr/local/bin/wordtest" better? + "*Command to run the wordtest program; can include command-line options.") + +;; "wordtest [options] [dictionaries] outfile" outputs all +;; lines of infile that don't appear in the dictionaries. The options +;; can define arbitrary character code mappings of 8-bit characters. +;; The default mapping takes a-z into A-Z, otherwise is ASCII. + +(defvar wordtest-filter "extex" ;; maybe "/usr/local/bin/extex" is better? + "*Command to run the filter needed by wordtest.") +(make-variable-buffer-local 'wordtest-filter) + +;; The extex filter extracts words from its input and outputs them on +;; separate lines as required by wordtest. It removes TeX control +;; sequences except those used to make accents and special characters. +;; There's a companion filter excweb that also removes C code from CWEBs. +(setq cweb-mode-hook '(lambda () (setq wordtest-filter "excweb"))) + +(defvar wordtest-system-dictionary "/usr/local/lib/dict/words" + "*Sorted dictionary containing all \"correct\" words, +including all variant forms obtained by prefix and suffix transformations.") +;; The standard UNIX dictionary /usr/dict/words is NOT satisfactory. + +(defvar wordtest-personal-dictionary "~/.words" + "*Default dictionary to supplement the words in the system dictionary. +If nil, no supplementary dictionary will be used. +This dictionary must be in alphabetic order as defined by wordtest. +Inserting any word with the + option to kspell-region will sort the file.") +(make-variable-buffer-local 'wordtest-personal-dictionary) + +(defun set-personal-dictionary (filename) + "Defines the supplementary personal dictionary for kspell to use in the +current buffer, overriding the default value of wordtest-personal-dictionary." + (interactive "FPersonal dictionary file name: ") + (setq wordtest-personal-dictionary filename)) + +(defun unset-personal-dictionary () + "Tells kspell not to use personal spelling dictionary with current buffer." + (interactive) + (setq wordtest-personal-dictionary nil)) + +(defun insert-into-personal-dictionary (word) + "Put WORD into user's dictionary and sort that dictionary." + (interactive "sword: ") + (let ((xword (concat word "\n"))) + (if (null wordtest-personal-dictionary) + (setq wordtest-personal-dictionary + (read-string "Personal dictionary file name: " "~/.words"))) + (set-buffer (find-file-noselect wordtest-personal-dictionary)) + (goto-char (point-min)) + (insert xword) + (call-process-region (point-min) (point-max) shell-file-name + t t nil "-c" wordtest-command) + (search-backward xword (point-min) 1) ;; in case the user is watching + (while (not (bolp)) (search-backward xword (point-min) 1)) + (save-buffer))) + +(defun kspell-buffer () + "Check spelling of every word in the buffer. +For each incorrect word, you are asked for the correct spelling +and then put into a query-replace to fix some or all occurrences. + +If you do not want to change a word, just give the same word +as its \"incorrect\" spelling; then the query replace is skipped. +Words are given in lowercase, but they will be Capitalized when +replacing Capitalized words, ALL_CAPS when replacing ALL_CAPS words. +If you type ? after a replacement, your correction will first be +looked up in the dictionary, and the query-replace will occur +only if the replacement is found. If you type + after a replacement, +your replacement will be inserted into the current personal dictionary. + +You can leave the minibuffer to do some other editing and then come +back again to the query-replace loop by typing \\[other-window]." + (interactive) + (save-excursion (kspell-region (point-min) (point-max) "buffer"))) + +(defun kspell-word () + "Check spelling of the word at or before point. +If it is not correct, ask user for the correct spelling and +query-replace the entire buffer to substitute it as with kspell-buffer." + (interactive) + (let (beg end wordtest-filter) + (save-excursion + (if (not (looking-at "\\<")) + (forward-word -1)) + (setq beg (point)) + (forward-word 1) + (setq end (point)) + (kspell-region beg end (buffer-substring beg end))))) + +(defun kspell-region (start end &optional description) + "Like kspell-buffer but checks only words in the current region. +Used in a program, applies from START to END. +DESCRIPTION is an optional string naming the unit being checked: +for example, \"buffer\"." + (interactive "r") + (let (correct + (filter wordtest-filter) + (buf (get-buffer-create " *kspell*")) ;; hidden by list-buffers + (dicts wordtest-system-dictionary)) + (if wordtest-personal-dictionary + (setq dicts (concat dicts " " wordtest-personal-dictionary))) + (save-excursion + (save-excursion + (set-buffer buf) + (widen) + (erase-buffer)) + (message "Checking spelling of %s..." (or description "region")) + (if (and (null filter) + (< end (point-max)) + (= ?\n (char-after end))) + (call-process-region start (1+ end) shell-file-name + nil buf nil "-c" + (concat wordtest-command " " dicts)) + (let ((oldbuf (current-buffer))) + (save-excursion + (set-buffer buf) + (insert-buffer-substring oldbuf start end) + (or (bolp) (insert ?\n)) + (if filter + (call-process-region (point-min) (point-max) shell-file-name + t t nil "-c" filter)) + (call-process-region (point-min) (point-max) shell-file-name + t t nil "-c" + (concat wordtest-command " " dicts))))) + (setq correct (save-excursion (set-buffer buf) (= (buffer-size) 0))) + (message "Checking spelling of %s...%scorrect" + (or description "region") + (if correct "" "not ")) + (if correct t + (let (word newword qtext lastchar + (case-fold-search t) + (case-replace t)) + (while (save-excursion + (set-buffer buf) + (> (buffer-size) 0)) + (save-excursion + (set-buffer buf) + (goto-char (point-min)) + (setq word (downcase + (buffer-substring (point) + (progn (end-of-line) (point))))) + (forward-char 1) ;; pass the newline + (delete-region (point-min) (point)) + (setq qtext (concat "\\b" (regexp-quote word) "\\b"))) + (goto-char (point-min)) + (setq lastchar nil) + (if (re-search-forward qtext nil t) + (while (null lastchar) + (setq newword + (read-string + (concat "edit a replacement for `" word "': ") + word)) + (if (null newword) (setq lastchar 0) + (setq lastchar (string-to-char (substring newword -1))) + (if (memq lastchar '(?? ?+)) + (setq newword (substring newword 0 -1)))) + (cond ((= lastchar ??) + (cond ((or (string= word newword) (string= "" newword)) + (describe-function 'kspell-buffer) + (setq lastchar nil)) + ((not (kspelt-right newword)) + (setq lastchar nil)))) + ((= lastchar ?+) + (save-excursion + (insert-into-personal-dictionary newword)))) + (cond ((string= word newword)) + ((null lastchar)) + (t + (goto-char (point-min)) + (if (or (equal word newword) (null lastchar)) t + (query-replace-regexp qtext newword)))))))))))) + +(defun kspelt-right (word) + "T if WORD is in the system dictionary or user's personal dictionary." + (let ((buf (get-buffer-create " *temp*")) + (pdict wordtest-personal-dictionary)) + (message "Checking spelling of %s..." word) + (save-excursion + (set-buffer buf) + (widen) + (erase-buffer) + (insert word "\n") + (if pdict + (call-process-region (point-min) (point-max) shell-file-name + t t nil "-c" + (concat wordtest-command " " + wordtest-system-dictionary " " + pdict)) + (call-process-region (point-min) (point-max) shell-file-name + t t nil "-c" + (concat wordtest-command " " + wordtest-system-dictionary))) + (= 0 (buffer-size))))) + +(defun kspell-string (string) + "Check spelling of string supplied as argument." + (interactive "sSpell string: ") + (message "%s is %scorrect" string + (if (kspelt-right string) "" "in"))) + --- tetex-base-3.0.orig/debian/cweb-examples/wmer-os2.ch +++ tetex-base-3.0/debian/cweb-examples/wmer-os2.ch @@ -0,0 +1,21 @@ +Change file for wmerge, for OS/2 and WinNT and MSVC++ 2.2 +contributed May 1996 by Andreas Scherer, Aaxen University of TeXnology +(scherer@physik.rwth-aachen.de) + +@x Line 594 +An omitted change file argument means that |'/dev/null'| should be used, +@y +An omitted change file argument means that |'NUL'| should be used, +@z + +@x Line 620 + else if (*s=='/') dot_pos=NULL,++s; +@y + else if (*s==':' || *s=='\\' || *s=='/') dot_pos=NULL,++s; +@z + +@x Line 630 + if (!found_change) strcpy(change_file_name,"/dev/null"); +@y + if (!found_change) strcpy(change_file_name,"NUL"); +@z --- tetex-base-3.0.orig/debian/cweb-examples/wmerge.w +++ tetex-base-3.0/debian/cweb-examples/wmerge.w @@ -0,0 +1,717 @@ +% Modified 16 Jan 2002 to agree with COMMON version 3.64 + +\def\9#1{} % this hack is explained in CWEB manual Appendix F11 + +@* Introduction. This file contains the program \.{wmerge}, +which takes two or more files and merges them according +to the conventions of \.{CWEB}. Namely, it takes an ordinary \.{.w} +file and and optional \.{.ch} file and sends the corresponding +\.{.w}-style file to standard output (or to a named file), +expanding all ``includes'' +that might be specified by \.{@@i} in the original \.{.w} file. +(A more precise description appears in the section on ``command line +arguments'' below.) + +@c +#include +#include /* declaration of |getenv| */ +#include /* definition of |isalpha|, |isdigit| and so on */ +@@; +@@; +@@; +main (ac,av) +int ac; char **av; +{ + argc=ac; argv=av; + @; + @; + reset_input(); + while (get_line()) + put_line(); + fflush(out_file); + check_complete(); + fflush(out_file); + return wrap_up(); +} + +@ @= +typedef short boolean; +typedef unsigned char eight_bits; +typedef char ASCII; /* type of characters inside \.{WEB} */ + +@ We predeclare some standard string-handling functions here instead of +including their system header files, because the names of the header files +are not as standard as the names of the functions. (There's confusion +between \.{} and \.{}.) + +@= +extern int strlen(); /* length of string */ +extern char* strcpy(); /* copy one string to another */ +extern int strncmp(); /* compare up to $n$ string characters */ +extern char* strncpy(); /* copy up to $n$ string characters */ + +@ @= + +@ The lowest level of input to the \.{WEB} programs +is performed by |input_ln|, which must be told which file to read from. +The return value of |input_ln| is 1 if the read is successful and 0 if +not (generally this means the file has ended). +The characters of the next line of the file +are copied into the |buffer| array, +and the global variable |limit| is set to the first unoccupied position. +Trailing blanks are ignored. The value of |limit| must be strictly less +than |buf_size|, so that |buffer[buf_size-1]| is never filled. + +Some of the routines use the fact that it is safe to refer to +|*(limit+2)| without overstepping the bounds of the array. + +@d buf_size 1024 + +@= +ASCII buffer[buf_size]; /* where each line of input goes */ +ASCII *buffer_end=buffer+buf_size-2; /* end of |buffer| */ +ASCII *limit; /* points to the last character in the buffer */ +ASCII *loc; /* points to the next character to be read from the buffer */ + +@ In the unlikely event that your standard I/O library does not +support |feof|, |getc| and |ungetc|, you may have to change things here. +@^system dependencies@> + +Incidentally, here's a curious fact about \.{CWEB} for those of you +who are reading this file as an example of \.{CWEB} programming. +The file \.{stdio.h} includes a typedef for +the identifier |FILE|, which is not, strictly speaking, part of \CEE/. +It turns out \.{CWEAVE} knows that |FILE| is a reserved word (after all, +|FILE| is almost as common as |int|); indeed, \.{CWEAVE} knows all +the types of the ISO standard \CEE/ library. But +if you're using other types like {\bf caddr\_t}, +@:caddr_t}{\bf caddr_t@> +which is defined in \.{/usr/include/sys/types.h}, you should let +\.{WEAVE} know that this is a type, either by including the \.{.h} file +at \.{WEB} time (saying \.{@@i /usr/include/sys/types.h}), or by +using \.{WEB}'s format command (saying \.{@@f caddr\_t int}). Either of +these will make {\bf caddr\_t} be treated in the same way as |int|. + +@= +input_ln(fp) /* copies a line into |buffer| or returns 0 */ +FILE *fp; /* what file to read from */ +{ + register int c=EOF; /* character read; initialized so some compilers won't complain */ + register char *k; /* where next character goes */ + if (feof(fp)) return(0); /* we have hit end-of-file */ + limit = k = buffer; /* beginning of buffer */ + while (k<=buffer_end && (c=getc(fp)) != EOF && c!='\n') + if ((*(k++) = c) != ' ') limit = k; + if (k>buffer_end) + if ((c=getc(fp))!=EOF && c!='\n') { + ungetc(c,fp); loc=buffer; err_print("! Input line too long"); +@.Input line too long@> + } + if (c==EOF && limit==buffer) return(0); /* there was nothing after + the last newline */ + return(1); +} + +@ Now comes the problem of deciding which file to read from next. +Recall that the actual text that \.{CWEB} should process comes from two +streams: a |web_file|, which can contain possibly nested include +commands \.{@@i}, and a |change_file|, which might also contain +includes. The |web_file| together with the currently open include +files form a stack |file|, whose names are stored in a parallel stack +|file_name|. The boolean |changing| tells whether or not we're reading +from the |change_file|. + +The line number of each open file is also kept for error reporting. + +@f line x /* make |line| an unreserved word */ +@d max_include_depth 10 /* maximum number of source files open + simultaneously, not counting the change file */ +@d max_file_name_length 60 +@d cur_file file[include_depth] /* current file */ +@d cur_file_name file_name[include_depth] /* current file name */ +@d cur_line line[include_depth] /* number of current line in current file */ +@d web_file file[0] /* main source file */ +@d web_file_name file_name[0] /* main source file name */ + +@= +int include_depth; /* current level of nesting */ +FILE *file[max_include_depth]; /* stack of non-change files */ +FILE *change_file; /* change file */ +char file_name[max_include_depth][max_file_name_length]; + /* stack of non-change file names */ +char change_file_name[max_file_name_length]; /* name of change file */ +char alt_web_file_name[max_file_name_length]; /* alternate name to try */ +int line[max_include_depth]; /* number of current line in the stacked files */ +int change_line; /* number of current line in change file */ +int change_depth; /* where \.{@@y} originated during a change */ +boolean input_has_ended; /* if there is no more input */ +boolean changing; /* if the current line is from |change_file| */ +boolean web_file_open=0; /* if the web file is being read */ + +@ When |changing=0|, the next line of |change_file| is kept in +|change_buffer|, for purposes of comparison with the next +line of |cur_file|. After the change file has been completely input, we +set |change_limit=change_buffer|, +so that no further matches will be made. + +Here's a shorthand expression for inequality between the two lines: + +@d lines_dont_match (change_limit-change_buffer != limit-buffer || + strncmp(buffer, change_buffer, limit-buffer)) + +@= +char change_buffer[buf_size]; /* next line of |change_file| */ +char *change_limit; /* points to the last character in |change_buffer| */ + +@ Procedure |prime_the_change_buffer| sets |change_buffer| in +preparation for the next matching operation. Since blank lines in the change +file are not used for matching, we have +|(change_limit==change_buffer && !changing)| if and only if +the change file is exhausted. This procedure is called only when +|changing| is 1; hence error messages will be reported correctly. + +@= +void +prime_the_change_buffer() +{ + change_limit=change_buffer; /* this value is used if the change file ends */ + @; + @; + @; +} + +@ While looking for a line that begins with \.{@@x} in the change file, we +allow lines that begin with \.{@@}, as long as they don't begin with \.{@@y}, +\.{@@z} or \.{@@i} (which would probably mean that the change file is fouled up). + +@= +while(1) { + change_line++; + if (!input_ln(change_file)) return; + if (limit + } +} + +@ Here we are looking at lines following the \.{@@x}. + +@= +do { + change_line++; + if (!input_ln(change_file)) { + err_print("! Change file ended after @@x"); +@.Change file ended...@> + return; + } +} while (limit==buffer); + +@ @= +{ + change_limit=change_buffer+(limit-buffer); + strncpy(change_buffer,buffer,limit-buffer+1); +} + +@ The following procedure is used to see if the next change entry should +go into effect; it is called only when |changing| is 0. +The idea is to test whether or not the current +contents of |buffer| matches the current contents of |change_buffer|. +If not, there's nothing more to do; but if so, a change is called for: +All of the text down to the \.{@@y} is supposed to match. An error +message is issued if any discrepancy is found. Then the procedure +prepares to read the next line from |change_file|. + +This procedure is called only when |buffer= +void +check_change() /* switches to |change_file| if the buffers match */ +{ + int n=0; /* the number of discrepancies found */ + if (lines_dont_match) return; + while (1) { + changing=1; change_line++; + if (!input_ln(change_file)) { + err_print("! Change file ended before @@y"); +@.Change file ended...@> + change_limit=change_buffer; changing=0; + return; + } + if (limit>buffer+1 && buffer[0]=='@@') { + char xyz_code=isupper(buffer[1])? tolower(buffer[1]): buffer[1]; + @; + } + @; + changing=0; cur_line++; + while (!input_ln(cur_file)) { /* pop the stack or quit */ + if (include_depth==0) { + err_print("! CWEB file ended during a change"); +@.CWEB file ended...@> + input_has_ended=1; return; + } + include_depth--; cur_line++; + } + if (lines_dont_match) n++; + } +} + +@ @= +if (xyz_code=='x' || xyz_code=='z') { + loc=buffer+2; err_print("! Where is the matching @@y?"); +@.Where is the match...@> + } +else if (xyz_code=='y') { + if (n>0) { + loc=buffer+2; + fprintf(stderr,"\n! Hmm... %d ",n); + err_print("of the preceding lines failed to match"); +@.Hmm... n of the preceding...@> + } + change_depth=include_depth; + return; +} + +@ The |reset_input| procedure gets the program ready to read the +user's \.{WEB} input. + +@= +void +reset_input() +{ + limit=buffer; loc=buffer+1; buffer[0]=' '; + @; + include_depth=0; cur_line=0; change_line=0; + change_depth=include_depth; + changing=1; prime_the_change_buffer(); changing=!changing; + limit=buffer; loc=buffer+1; buffer[0]=' '; input_has_ended=0; +} + +@ The following code opens the input files. +@^system dependencies@> + +@= +if ((web_file=fopen(web_file_name,"r"))==NULL) { + strcpy(web_file_name,alt_web_file_name); + if ((web_file=fopen(web_file_name,"r"))==NULL) + fatal("! Cannot open input file ", web_file_name); +} +@.Cannot open input file@> +@.Cannot open change file@> +web_file_open=1; +if ((change_file=fopen(change_file_name,"r"))==NULL) + fatal("! Cannot open change file ", change_file_name); + +@ The |get_line| procedure is called when |loc>limit|; it puts the next +line of merged input into the buffer and updates the other variables +appropriately. A space is placed at the right end of the line. +This procedure returns |!input_has_ended| because we often want to +check the value of that variable after calling the procedure. + +@= +int get_line() /* inputs the next line */ +{ + restart: + if (changing && include_depth==change_depth) + @; + if (! changing || include_depth>change_depth) { + @; + if (changing && include_depth==change_depth) goto restart; + } + if (input_has_ended) return 0; + loc=buffer; *limit=' '; + if (buffer[0]=='@@' && (buffer[1]=='i' || buffer[1]=='I')) { + loc=buffer+2; *limit='"'; + while (*loc==' '||*loc=='\t') loc++; + if (loc>=limit) { + err_print("! Include file name not given"); +@.Include file name ...@> + goto restart; + } + if (include_depth>=max_include_depth-1) { + err_print("! Too many nested includes"); +@.Too many nested includes@> + goto restart; + } + include_depth++; /* push input stack */ + @; + } + return 1; +} + +void put_line() +{ + char *ptr=buffer; + while (ptr= { + char temp_file_name[max_file_name_length]; + char *cur_file_name_end=cur_file_name+max_file_name_length-1; + char *k=cur_file_name, *kk; + int l; /* length of file name */ + + if (*loc=='"') { + loc++; + while (*loc!='"' && k<=cur_file_name_end) *k++=*loc++; + if (loc==limit) k=cur_file_name_end+1; /* unmatched quote is `too long' */ + } else + while (*loc!=' '&&*loc!='\t'&&*loc!='"'&&k<=cur_file_name_end) *k++=*loc++; + if (k>cur_file_name_end) too_long(); +@.Include file name ...@> + *k='\0'; + if ((cur_file=fopen(cur_file_name,"r"))!=NULL) { + cur_line=0; + goto restart; /* success */ + } + kk=getenv("CWEBINPUTS"); + if (kk!=NULL) { + if ((l=strlen(kk))>max_file_name_length-2) too_long(); + strcpy(temp_file_name,kk); + } + else { +#ifdef CWEBINPUTS + if ((l=strlen(CWEBINPUTS))>max_file_name_length-2) too_long(); + strcpy(temp_file_name,CWEBINPUTS); +#else + l=0; +#endif /* |CWEBINPUTS| */ + } + if (l>0) { + if (k+l+2>=cur_file_name_end) too_long(); +@.Include file name ...@> + for (; k>= cur_file_name; k--) *(k+l+1)=*k; + strcpy(cur_file_name,temp_file_name); + cur_file_name[l]='/'; /* \UNIX/ pathname separator */ + if ((cur_file=fopen(cur_file_name,"r"))!=NULL) { + cur_line=0; + goto restart; /* success */ + } + } + include_depth--; err_print("! Cannot open include file"); goto restart; +} + +@ @= { + cur_line++; + while (!input_ln(cur_file)) { /* pop the stack or quit */ + if (include_depth==0) {input_has_ended=1; break;} + else { + fclose(cur_file); include_depth--; + if (changing && include_depth==change_depth) break; + cur_line++; + } + } + if (!changing && !input_has_ended) + if (limit-buffer==change_limit-change_buffer) + if (buffer[0]==change_buffer[0]) + if (change_limit>change_buffer) check_change(); +} + +@ @= { + change_line++; + if (!input_ln(change_file)) { + err_print("! Change file ended without @@z"); +@.Change file ended...@> + buffer[0]='@@'; buffer[1]='z'; limit=buffer+2; + } + if (limit>buffer) { /* check if the change has ended */ + *limit=' '; + if (buffer[0]=='@@') { + if (isupper(buffer[1])) buffer[1]=tolower(buffer[1]); + if (buffer[1]=='x' || buffer[1]=='y') { + loc=buffer+2; + err_print("! Where is the matching @@z?"); +@.Where is the match...@> + } + else if (buffer[1]=='z') { + prime_the_change_buffer(); changing=!changing; + } + } + } +} + +@ At the end of the program, we will tell the user if the change file +had a line that didn't match any relevant line in |web_file|. + +@= +void +check_complete(){ + if (change_limit!=change_buffer) { /* |changing| is 0 */ + strncpy(buffer,change_buffer,change_limit-change_buffer+1); + limit=buffer+(int)(change_limit-change_buffer); + changing=1; change_depth=include_depth; loc=buffer; + err_print("! Change file entry did not match"); + @.Change file entry did not match@> + } +} + +@* Reporting errors to the user. +A global variable called |history| will contain one of four values +at the end of every run: |spotless| means that no unusual messages were +printed; |harmless_message| means that a message of possible interest +was printed but no serious errors were detected; |error_message| means that +at least one error was found; |fatal_message| means that the program +terminated abnormally. The value of |history| does not influence the +behavior of the program; it is simply computed for the convenience +of systems that might want to use such information. + +@d spotless 0 /* |history| value for normal jobs */ +@d harmless_message 1 /* |history| value when non-serious info was printed */ +@d error_message 2 /* |history| value when an error was noted */ +@d fatal_message 3 /* |history| value when we had to stop prematurely */ +@d mark_harmless {if (history==spotless) history=harmless_message;} +@d mark_error history=error_message + +@= +int history=spotless; /* indicates how bad this run was */ + +@ The command `|err_print("! Error message")|' will report a syntax error to +the user, by printing the error message at the beginning of a new line and +then giving an indication of where the error was spotted in the source file. +Note that no period follows the error message, since the error routine +will automatically supply a period. A newline is automatically supplied +if the string begins with |"!"|. + +The actual error indications are provided by a procedure called |error|. + +@= +void err_print(); + +@ +@= +void +err_print(s) /* prints `\..' and location of error message */ +char *s; +{ + char *k,*l; /* pointers into |buffer| */ + fprintf(stderr,*s=='!'? "\n%s" : "%s",s); + if(web_file_open) @@; + else putc('\n',stderr); + update_terminal; mark_error; +} + +@ The error locations can be indicated by using the global variables +|loc|, |cur_line|, |cur_file_name| and |changing|, +which tell respectively the first +unlooked-at position in |buffer|, the current line number, the current +file, and whether the current line is from |change_file| or |cur_file|. +This routine should be modified on systems whose standard text editor +has special line-numbering conventions. +@^system dependencies@> + +@= +{if (changing && include_depth==change_depth) + fprintf(stderr,". (l. %d of change file)\n", change_line); +else if (include_depth==0) fprintf(stderr,". (l. %d)\n", cur_line); + else fprintf(stderr,". (l. %d of include file %s)\n", cur_line, cur_file_name); +l= (loc>=limit? limit: loc); +if (l>buffer) { + for (k=buffer; k + +@= +wrap_up() { + @; + if (history > harmless_message) return(1); + else return(0); +} + +@ @= +switch (history) { +case spotless: if (show_happiness) fprintf(stderr,"(No errors were found.)\n"); break; +case harmless_message: + fprintf(stderr,"(Did you see the warning message above?)\n"); break; +case error_message: + fprintf(stderr,"(Pardon me, but I think I spotted something wrong.)\n"); break; +case fatal_message: fprintf(stderr,"(That was a fatal error, my friend.)\n"); +} /* there are no other cases */ + +@* Command line arguments. +The user calls \.{wmerge} with arguments on the command line. +These are either file names or flags to be turned off (beginning with |"-"|) +or flags to be turned on (beginning with |"+"|. +The following globals are for communicating the user's desires to the rest +of the program. The various file name variables contain strings with +the names of those files. Most of the 128 flags are undefined but available +for future extensions. + +@d show_banner flags['b'] /* should the banner line be printed? */ +@d show_happiness flags['h'] /* should lack of errors be announced? */ + +@= +int argc; /* copy of |ac| parameter to |main| */ +char **argv; /* copy of |av| parameter to |main| */ +char out_file_name[max_file_name_length]; /* name of |out_file| */ +boolean flags[128]; /* an option for each 7-bit code */ + +@ The |flags| will be initially 1. + +@= +show_banner=show_happiness=1; + +@ We now must look at the command line arguments and set the file names +accordingly. At least one file name must be present: the \.{WEB} +file. It may have an extension, or it may omit it to get |'.w'| +added. + +If there is another file name present among the arguments, it is the +change file, again either with an extension or without one to get |'.ch'| +An omitted change file argument means that |'/dev/null'| should be used, +when no changes are desired. +@^system dependencies@> + +If there's a third file name, it will be the output file. + +@= +void scan_args(); + +@ +@= +void +scan_args() +{ + char *dot_pos; /* position of |'.'| in the argument */ + register char *s; /* register for scanning strings */ + boolean found_web=0,found_change=0,found_out=0; + /* have these names have been seen? */ + boolean flag_change; + + while (--argc > 0) { + if (**(++argv)=='-' || **argv=='+') @@; + else { + s=*argv;@+dot_pos=NULL; + while (*s) { + if (*s=='.') dot_pos=s++; + else if (*s=='/') dot_pos=NULL,++s; + else s++; + } + if (!found_web) @@; + else if (!found_change) @@; + else if (!found_out) @@; + else @; + } + } + if (!found_web) @; + if (!found_change) strcpy(change_file_name,"/dev/null"); +} + +@ We use all of |*argv| for the |web_file_name| if there is a |'.'| in it, +otherwise we add |".w"|. If this file can't be opened, we prepare an +|alt_web_file_name| by adding |"web"| after the dot. +The other file names come from adding other things +after the dot. We must check that there is enough room in +|web_file_name| and the other arrays for the argument. + +@= +{ + if (s-*argv > max_file_name_length-5) + @; + if (dot_pos==NULL) + sprintf(web_file_name,"%s.w",*argv); + else { + strcpy(web_file_name,*argv); + *dot_pos=0; /* string now ends where the dot was */ + } + sprintf(alt_web_file_name,"%s.web",*argv); + *out_file_name='\0'; /* this will print to stdout */ + found_web=1; +} + +@ @= +{ + if (s-*argv > max_file_name_length-4) + @; + if (dot_pos==NULL) + sprintf(change_file_name,"%s.ch",*argv); + else strcpy(change_file_name,*argv); + found_change=1; +} + +@ @= +{ + if (s-*argv > max_file_name_length-5) + @; + if (dot_pos==NULL) sprintf(out_file_name,"%s.out",*argv); + else strcpy(out_file_name,*argv); + found_out=1; +} + +@ @= +{ + if (**argv=='-') flag_change=0; + else flag_change=1; + for(dot_pos=*argv+1;*dot_pos>'\0';dot_pos++) + flags[*dot_pos]=flag_change; +} + +@ @= +{ + fatal("! Usage: wmerge webfile[.w] [changefile[.ch] [outfile[.out]]]\n","")@; +} + +@ @= fatal("! Filename too long\n", *argv); + +@* Output. Here is the code that opens the output file: +@^system dependencies@> + +@= +FILE *out_file; /* where output goes */ + +@ @= +scan_args(); +if (out_file_name[0]=='\0') out_file=stdout; +else if ((out_file=fopen(out_file_name,"w"))==NULL) + fatal("! Cannot open output file ", out_file_name); +@.Cannot open output file@> + +@ The |update_terminal| procedure is called when we want +to make sure that everything we have output to the terminal so far has +actually left the computer's internal buffers and been sent. +@^system dependencies@> + +@d update_terminal fflush(stderr) /* empty the terminal output buffer */ + +@* Index. --- tetex-base-3.0.orig/debian/cweb-examples/README +++ tetex-base-3.0/debian/cweb-examples/README @@ -0,0 +1,55 @@ +This directory contains several files for programs that are tutorial +and/or useful. If you are new to CWEB, read "wc.w" first; it's a +typical example of CWEB applied to system programming. + +The Makefile on this directory is a generic way to build applications +written in CWEB. Say, for example, "make wc" to get an executable +program "wc" from wc.w. Say "make wc.dvi" to get a printable listing +of its documentation. The program "wc" is a slight improvement over +UNIX's standard word-count utility. (Try it, for example, with "wc *".) + +The treeprint program, by Norman Ramsey, generates tree-structured +representations of file hierarchies. To use it, say "make treeprint.run" +and then + find dir -type p -print | sort | treeprint +(on a UNIX system), where dir is a directory with interesting subdirectories. + +The wmerge program, by Silvio Levy, produces a single CWEB file from a +given CWEB file and a change file. It expands any "web include" (@i) +specifications in the original CWEB file. To use it, say "make wmerge.run" +and then, e.g., "wmerge foo.w bar.ch > foobar.w". Both CTANGLE and +CWEAVE already accept change files, so you need not merge anything yourself +in normal day-to-day operations; but wmerge can be useful in connection with +the spelling checker described below. + +If you intend to read the source code of CTANGLE and CWEAVE, you may +well wish to read wmerge.w first, or the hardcopy version obtained from +"make wmerge.dvi"; it is similar but much simpler. + +The extex and wordtest programs, by Don Knuth, are useful spellcheckers. +After "make extex.run" say also "ln extex excweb"; this gives +you two filter programs, extex and excweb, that remove extraneous +material from TeX and CWEB source files, respectively. To use them, +you can say for example + cat foo.w | excweb | spell +(or replace "cat foo.w" with "wmerge foo.w bar.ch"). A similar pipeline +for TeX files would be + cat foo.tex | extex | spell +Even better is to replace "spell" by "wordtest /usr/local/lib/dict/words", +if you have a suitable dictionary. One such dictionary in the public domain +can be found in directory ~ftp/pub/dict at labrea.stanford.edu, available +via anonymous ftp. To make your own dictionary from given ones, + cat dict1 dict2 dict3 dict4 | wordtest > words +is quick and effective. See the documentation of wordtest for more info. + +A file kspell.el that provides an emacs user interface to extex+excweb+wordtest +also appears in this directory. (Somebody should write ELWEB...) + +The files xview_types.w and xlib_types.w are examples of @i (include) files +that can be used when writing XView programs. They are based on the header +files in OpenWindows Version 3.0. + +An example XView application appears in Knuth's program oemacs.w, which +he uses for heavy emacsing. It's not very portable, but if you have +OpenWindows3 and a Sun Type-4 keyboard you may like it as much as he does. +(It replaces "emacstool".) The file oemacs.el goes with it. --- tetex-base-3.0.orig/debian/cweb-examples/extex.w +++ tetex-base-3.0/debian/cweb-examples/extex.w @@ -0,0 +1,365 @@ +\datethis +@* Introduction. This program is a simple filter that inputs \TEX/ or \.{CWEB} +files and outputs its best guess at the ``words'' they contain. The word +list can then be passed to a spelling check routine such as {\tt wordtest}. + +If this program is invoked with the name `{\tt excweb}', it will apply +special rules based on the syntax of \.{CWEB} files. Otherwise it will +use only the \TEX/ conventions. (Note that \UNIX/'s {\tt ln} command +allows a program to be invoked with more than one name although it +appears only once in the computer's memory.) + +The \TEX/ conventions adopted here say that words are what remain +after you remove nonletters, control sequences, +comments triggered by \.\% marks, and material enclosed +within \.{\$...\$} or \.{\$\$...\$\$}. However, an apostrophe within +a word will be retained. The plain \TEX/ control +sequences for accented characters and special text characters, namely +$$\vbox{\halign{&\.{\\#}\hfil\qquad\cr +'&`&\relax\^&"&\relax\~&=&.&u&v\cr +H&t&c&d&b&oe&OE&ae&AE\cr +aa&AA&o&O&l&L&ss&i&j\cr}}$$ +will also be retained, so that users can treat them as parts of words. +A blank space +following any of the alphabetic control sequences in this list will be carried +along too. If any of these control sequences is followed by \.\{, everything +up to the next \.\} will also be retained. Thus, for example, the +construction `\.{m\\=\{\\i\}n\\u\ us}' will be considered a single word, +in spite of the control sequences and the space between the two u's. +Discretionary hyphens `\.{\char`\\-}' are treated in the same way as accents. + +The \.{CWEB} conventions are essentially the same as the \TEX/ conventions, +in the \TEX/ parts of a \.{CWEB} file. The \CEE/ parts of the file +are blanked out. + +No attempt is made to reach a high level of artificial intelligence, +which would be able to truly understand the input file. Tricky users can + confuse us. But we claim that devious tricks are their problem, not ours. + +@ So here goes. The main idea is to keep a one-character lookahead +buffer, called |c|, which is set to zero when the character has been +processed. A giant switch to various cases, depending on the value of~|c|, +keeps everything moving. + +If you don't like |goto| statements, don't read this. (And don't read +any other programs that simulate finite-state automata.) + +@c +#include +#include +extern void exit(); /* system routine that terminates execution */ +@# +@@; +@@; +@# +int main(argc,argv) + int argc; /* the number of arguments (should be 1, but this isn't checked) */ + char *argv[]; /* the arguments (|*argv| is the program name) */ +{ + @; + if (strlen(*argv)>=6 && strcmp(*argv+strlen(*argv)-6,"excweb")==0) { + web=1; + @; + } else web=0; + comment=skipping=c=0; + main_cycle: if (c) goto big_switch; + restart: c=get(); + big_switch: switch(c) { + @@; + case EOF: exit(0); + default: goto restart; + } + @; +} + +@ @= +int c; /* one-character look-see buffer */ + +@ @= +int web; /* are we looking for \.{CWEB} constructs? */ +int comment; /* are we inside a \CEE/ comment in a \.{CWEB} document? */ +int skipping; /* are we skipping \CEE/ code in a \.{CWEB} document? */ +int save_skipping; /* value of |skipping| outside current \CEE/ mode */ +register int cc; /* temporary buffer */ + +@* Simple cases. +Let's do some of the easiest things first, in order to get the hang of +this program. Several special characters will cause us to ignore everything +until the first appearance of something else. + +@d discard_to(x) {@+while (get()!=x) ;@+} +@d discard_to_dol {@+for (cc=c,c=get();c!='$' || cc=='\\';cc=c,c=get()) + if (cc=='\\' && c==cc) c='\0';@+} + +@= +case '%': discard_to('\n');@+goto restart; +case '$': c=getchar(); + if (c!='$') discard_to_dol@; + else { /* after \.{\$\$} we discard everything to the next \.{\$\$} */ + do discard_to_dol@; + while (getchar()!='$'); + } + goto restart; + +@ The `|get|' procedure in the code above is like \Cee's standard +`|getchar|', except that it immediately terminates execution at the end of +the input file. Otherwise malformed input files could lead to +infinite loops. + +@= +int get() +{@+register int x; + x=getchar(); + if (x==EOF) exit(0); + return x; +} + +@ More complex behavior is handled by jumping out of the |switch| statement +to one of the routines following it. None of the cases say |break|, so +the code following the switch statement is accessible only via |goto|. + +@= +case 'a': case 'A': +case 'b': case 'B': +case 'c': case 'C': +case 'd': case 'D': +case 'e': case 'E': +case 'f': case 'F': +case 'g': case 'G': +case 'h': case 'H': +case 'i': case 'I': +case 'j': case 'J': +case 'k': case 'K': +case 'l': case 'L': +case 'm': case 'M': +case 'n': case 'N': +case 'o': case 'O': +case 'p': case 'P': +case 'q': case 'Q': +case 'r': case 'R': +case 's': case 'S': +case 't': case 'T': +case 'u': case 'U': +case 'v': case 'V': +case 'w': case 'W': +case 'x': case 'X': +case 'y': case 'Y': +case 'z': case 'Z': +goto out_word; + +@ When letters appear in |stdin|, we pass them immediately through to |stdout| +with little further ado. +An apostrophe is rejected unless it is immediately followed by a letter. + +@= +out_word: putchar(c); +continue_word: c=getchar(); +checkout_word: +if (isalpha(c)) goto out_word; +if (c=='\'') { + c=getchar(); + if (isalpha(c)) { + putchar('\'');@+goto out_word; + } + goto end_word; +} +if (c=='\\' && controlseq()) goto control_seq_in_word; +end_word: putchar('\n'); + goto main_cycle; + +@* Control sequences. The |controlseq()| function is the only +delicate part of this program. After a backslash has been scanned, +|controlseq| looks to see if the next characters define one of the +special plain \TEX/ macros listed above. If so, the control sequence +and its immediately following argument (if any) are output and +|controlseq| returns a nonzero value. If not, nothing is output and +|controlseq| returns zero. In both cases the value of |c| will be +nonzero if and only if |controlseq| has had to look ahead at a +character it decided not to process. + +@ @= +control_seq_in_word: if (!c) goto continue_word; +goto checkout_word; + +@ @= +case '\\': if (controlseq()) goto control_seq_in_word; +goto main_cycle; + +@ @= +int controlseq() +{ + int l; /* number of letters in the control sequence */ + char a,b; /* the first two characters after `\.\\' */ + l=0; + a=c=getchar(); + while (isalpha(c)) { + l++; + c=getchar(); + if (l==1) b=c; + } + if (l==0) c=getchar(); + @; + return 0; +} + +@ @d pair(x,y) (a==x && b==y) + +@= +if ((a>='"' && a<='~' && ptab[a-'"']==l) || + (l==2 && (pair('a','e') || pair('A','E')@| + || pair('o','e') || pair('O','E')@| + || pair('a','a') || pair('A','A') || pair('s','s')))) { + putchar('\\'); + putchar(a); + if (l==2) putchar(b); + if (l && c==' ') { + putchar(' '); /* optional space after alphabetic control sequence */ + c=getchar(); + } + if (c=='{') { + do@+{putchar(c); + c=get(); + }@+while (c!='}'); /* optional argument after special control sequence */ + putchar(c); + c=0; + } + return 1; +} + +@ The |ptab| entries for nonletters are 0 when the control sequence is +special, otherwise~1; the conventions for letters are reversed. + +@= +char ptab[]={0,1,1,1,1,0, /* \.{\\"} and \.{\\'} */ + 1,1,1,1,1,0,0,1, /* \.{\\-} and \.{\\.} */ + 1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1, /* \.{\\=} */ + 1,0,0,0,0,0,0,0,1,0,0,0,1,0,0,1, /* \.{\\H}, \.{\\L}, \.{\\O} */ + 0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1, /* \.{\\\^} */ + 0,0,1,1,1,0,0,0, /* \.{\\`}, \.{\\b}, \.{\\c}, \.{\\d} */ + 0,1,1,0,1,0,0,1, /* \.{\\i}, \.{\\j}, \.{\\l}, \.{\\o} */ + 0,0,0,0,1,1,1,0, /* \.{\\t}, \.{\\u}, \.{\\v} */ + 0,0,0,1,1,1,0}; /* \.{\\\~} */ + +@ In \.{CWEB} the \TEX/ control sequence `\.{\\.}' denotes the typewriter +font used for strings, not the dot-over accent. We must modify +|ptab| to reflect this unfortunate (but too-late-too-change) design decision. + +@= +ptab[12]=1; + +@* CWEB considerations. +We're finished now with all that would be needed if we only wanted to +handle \TEX/. For \.{CWEB} a bit more should be done. + +The \.{CWEB} escape character is \.{@@}, and the character following +it tells us what mode we should enter. In \TEX/ mode we should not +only do what we normally do for \TEX/ files, we should also ignore +material delimited by \.{\char"7C...\char"7C}, being careful to recognize when +|'|'| is part of a string (as it just was). And we should stop \TEX/ +mode if we scan \.{*/} while in a \CEE/ comment. + +@= +case '@@': if (web) goto do_web; + goto restart; +case '|': if (web>1) { + save_skipping=skipping; + goto skip_C_prime; + } + goto restart; +case '*': if (!comment) goto restart; + c=getchar(); + if (c=='/') { + comment=0; + goto skip_C; + } + goto big_switch; + +@ The characters that follow \.@@ in a \.{CWEB} file can be classified into +a few types that have distinct implications for {\tt excweb}. + +@d nop 0 /* control code that doesn't matter to us */ +@d start_section 1 /* control code that begins a \.{CWEB} section */ +@d start_C 2 /* control code that begins \CEE/ code */ +@d start_name 3 /* control code that begins a section name */ +@d start_index 4 /* control code for \.{CWEB} index entry */ +@d start_insert 5 /* control code for \CEE/ material ended by `\.{@@>}' */ +@d end_item 6 /* `\.{@@>}' */ +@d ignore_line 7 /* `\.{@@i}' or `\.{@@l}' */ + +@= +char wtab[]={start_section,nop,nop,nop,nop,nop,nop,nop, /* \.{\ !"\#\$\%\&'} */ + start_name,nop,start_section,nop,nop,nop,start_index,nop, /* \.{()*+,-./} */ + nop,nop,nop,nop,nop,nop,nop,nop, /* \.{01234567} */ + nop,nop,start_index,nop,start_name,start_insert,end_item,nop, + /* \.{89:;<=>?} */ + nop,nop,nop,start_C,start_C,nop,start_C,nop, /* \.{@@ABCDEFG} */ + nop,ignore_line,nop,nop,ignore_line,nop,nop,nop, /* \.{HIJKLMNO} */ + start_C,start_insert,nop,start_C,start_insert,nop,nop,nop, /* \.{PQRSTUVW} */ + nop,nop,nop,nop,nop,nop,start_index,nop, /* \.{XYZ[\\]\^\_} */ + nop,nop,nop,start_C,start_C,nop,start_C,nop, /* \.{`abcdefg} */ + nop,ignore_line,nop,nop,ignore_line,nop,nop,nop, /* \.{hijklmno} */ + start_C,start_insert,nop,start_C,start_insert}; /* \.{pqrst} */ + +@ We do not leave \TEX/ mode until the first \.{WEB} section has begun. + +@= +do_web: c=getchar(); + if (c<' ' || c>'t') goto restart; + switch(wtab[c-' ']){ + case nop: case start_index: goto restart; + case start_section: web++; /* out of ``limbo'' */ + comment=skipping=0;@+goto restart; + case start_C: if (web>1) goto skip_C; + goto restart; + case start_name: case start_insert: if (web>1) skipping=1; + goto restart; + case end_item: if (skipping) goto skip_C; + goto restart; + case ignore_line: discard_to('\n'); + goto restart; + } + +@ The final piece of program we need is a sub-automaton to pass over +the \CEE/ parts of a \.{CWEB} document. The main subtlety here is that +we don't want to get out of synch while scanning over a supposed +string constant or verbatim insert. + +@= +skip_C: save_skipping=2; +skip_C_prime: skipping=1; + while (1) { + c=get(); + C_switch: switch(c) { + case '/': c=get(); + if (c!='*') goto C_switch; + comment=1; /* fall through to the next case, returning to \TEX/ mode */ + case '|': if (save_skipping==2) continue; /* |'|'| as \CEE/ operator */ + skipping=save_skipping;@+goto restart; /* |'|'| as \.{CWEB} delimiter */ + case '@@': c=getchar(); + inner_switch: if (c<' ' || c>'t') continue; + switch(wtab[c-' ']) { + case nop: case start_C: case end_item: continue; + case start_section: web++; + comment=skipping=0;@+goto restart; + case start_name: case start_index: goto restart; + case start_insert: do@+discard_to('@@')@;@+while ((c=getchar())=='@@'); + goto inner_switch; /* now |c| should equal |'>'| */ + case ignore_line: discard_to('\n'); + continue; + } + case '\'': case '"': + while ((cc=get())!=c && cc!='\n') + if (cc=='\\') getchar(); + else if (cc=='@@') { + cc=getchar(); + if (cc!='@@') { /* syntax error, we try to recover */ + c=cc; goto inner_switch; + } + }; + continue; /* \.{CWEB} strings do not extend past one line */ + default: continue; + } + } + +@* Index. --- tetex-base-3.0.orig/debian/cweb-examples/oemacs.el +++ tetex-base-3.0/debian/cweb-examples/oemacs.el @@ -0,0 +1,176 @@ +;; macros to go with oemacs + +; suntool-map is the map for "\C-x*", the oemacs prefix for function keys +; commented-out lines agree with the settings in $(EMACS)/lisp/term/sun.el + +(setq suntool-map-hooks '( ; not your usual hook list +; (define-key suntool-map "al" 'keyboard-quit) ; Stop +; (define-key suntool-map "bl" 'redraw-display) ; Again L2 +; (define-key suntool-map "b\M-l" 'repeat-complex-command); M-Again = C-X ESC +; (define-key repeat-complex-command-map "\C-x*b\M-l" +; 'previous-complex-command) ; M-Again M-Again... + (define-key suntool-map "bL" 'rerun-prev-command) ; AGAIN (no confirm) +; (define-key suntool-map "b\M-L" 'rerun-prev-command) ; M-AGAIN +; (define-key suntool-map "cl" 'buffer-menu) ; Props +; (define-key suntool-map "dl" 'undo) ; Undo +; (define-key suntool-map "el" 'ignore-key) ; Front +; (define-key suntool-map "fl" 'sun-select-region) ; Copy +; (define-key suntool-map "f," 'copy-region-as-kill) ; C-Copy +; (define-key suntool-map "gl" 'ignore-key) ; Open +; (define-key suntool-map "hl" 'sun-yank-selection) ; Paste +; (define-key suntool-map "h," 'yank) ; C-Paste +; (define-key suntool-map "il" 'research-forward) ; Find (with default) +; (define-key suntool-map "i\M-l" 'research-backward) ; M-Find +; (define-key suntool-map "iL" 'isearch-forward-regexp) ; FIND (incremental) +; (define-key suntool-map "i\M-L" 'isearch-backward-regexp); M-FIND +; (define-key suntool-map "i," 're-search-forward) ; C-Find (ordinary) +; (define-key suntool-map "i\M-," 're-search-backward) ; C-M-Find + (define-key suntool-map "jl" 'sun-cut-region) ; Cut + (define-key suntool-map "j," 'kill-region-and-unmark) ; C-Cut + (define-key suntool-map "jL" 'pop-the-mark) ; CUT +; (define-key suntool-map "j\M-l" 'exchange-point-and-mark); M-Cut + + (define-key suntool-map "at" 'bury-buffer) ; F1 +; (define-key suntool-map "bt" 'toggle-selective-display) ; F2 +; (define-key suntool-map "ct" 'scroll-down-in-place) ; F3 +; (define-key suntool-map "cT" '(lambda(n) (interactive "p") (scroll-down n))) +; (define-key suntool-map "dt" 'scroll-up-in-place) ; F4 +; (define-key suntool-map "dT" '(lambda(n) (interactive "p") (scroll-up n))) + (define-key suntool-map "et" 'jumpup) ; F5 +; (define-key suntool-map "ft" 'shrink-window) ; F6 +; (define-key suntool-map "fT" 'shrink-window-horizontally) ; Shift-F6 +; (define-key suntool-map "gt" 'enlarge-window) ; F7 +; (define-key suntool-map "gT" 'enlarge-window-horizontally) ; Shift-F7 + (define-key suntool-map "ht" 'tags-search) ; F8 + (define-key suntool-map "it" 'tags-query-replace) ; F9 + (define-key suntool-map "jt" 'narrow-to-region) ; F10 + (define-key suntool-map "j\M-t" 'narrow-to-page) ; M-F10 + (define-key suntool-map "kt" 'revert-buffer) ; F11 + (define-key suntool-map "k\M-t" 'quick-revert-other-buffer) ; M-F11 + (define-key suntool-map "lt" 'goto-line) ; F12 + (define-key suntool-map "l\M-t" 'goto-line) ; M-F12 + + (define-key suntool-map "ar" 'redraw-display) ; Pause, R1 + (define-key suntool-map "br" 'call-secondlast-kbd-macro) ; PrSc, R2 + (define-key suntool-map "cr" 'ignore-key) ; Scroll Lock Break, R3 + (define-key suntool-map "dr" 'unbound-key) ; KP=, R4 + (define-key suntool-map "d\M-r" 'bind-last-kbd-macro-to-KP=) ; M-KP=, M-R4 + (define-key suntool-map "er" 'unbound-key) ; KP/, R5 + (define-key suntool-map "e\M-r" 'bind-last-kbd-macro-to-KP/) ; M-KP/, M-R5 + (define-key suntool-map "fr" 'unbound-key) ; KP*, R6 + (define-key suntool-map "f\M-r" 'bind-last-kbd-macro-to-KP*) ; M-KP*, M-R6 +; (define-key suntool-map "gr" 'beginning-of-buffer) ; Home, R7 + +; (define-key suntool-map "hr" 'previous-line) ; Up, R8 +; (define-key suntool-map "ir" 'scroll-down) ; PgUp, R9 +; (define-key suntool-map "iR" 'backward-page) ; Shift-PGUP +; (define-key suntool-map "jr" 'backward-char) ; Lft, R10 + (define-key suntool-map "kr" "\C-u\C-l") ; KP5, R11 +; (define-key suntool-map "lr" 'forward-char) ; Rt, R12 +; (define-key suntool-map "mr" 'end-of-buffer) ; End, R13 +; (define-key suntool-map "nr" 'next-line) ; Dn, R14 +; (define-key suntool-map "or" 'scroll-up) ; PgDn, R15 +; (define-key suntool-map "oR" 'forward-page) ; Shift-PGUP + + (define-key suntool-map "ab" 'apropos) ; Help + (define-key suntool-map "a\M-b" 'mouse-help) ; M-Help + (define-key suntool-map "aB" 'describe-bindings) ; HELP + (define-key suntool-map "a\M-B" 'describe-mouse-bindings); M-HELP + (define-key suntool-map "a\"" 'command-apropos) ; C-Help + (define-key suntool-map "a\C-B" 'apropos) ; C-HELP + (define-key suntool-map "a\M-\C-B" 'help-for-dummies) ; M-C-HELP + (define-key suntool-map "bb" 'ignore-key) ; Alt + (define-key suntool-map "cb" 'ignore-key) ; AltGraph + (define-key suntool-map "db" 'auto-fill-mode) ; Keypad Ins + (define-key suntool-map "eb" 'overwrite-mode) ; Keypad Del + (define-key suntool-map "fb" 'call-last-kbd-macro) ; Keypad Enter + (define-key suntool-map "gb" 'forward-paragraph) ; Keypad + + (define-key suntool-map "hb" 'backward-paragraph) ; Keypad - + )) + + +; redefinition of emacs functions +(defun end-of-buffer () + "Move point to the end of the buffer; leave a mark at previous position. +Scroll so that point is at the bottom of the window, if possible." + (interactive) + (push-mark) + (goto-char (point-max)) + (recenter -1)) + +; new functions +(defun jumpup () + "Scroll so that point is at the top of the window." + (interactive)(recenter 0)) + +(defun quick-revert-buffer () + "Revert the buffer without asking for confirmation." + (interactive) + (revert-buffer t t)) + +(defun quick-revert-other-buffer (n) + "Revert the Nth other buffer without asking for confirmation." + (interactive "p") + (other-window n) + (revert-buffer t t) + (other-window (- n))) + +(defun bind-last-kbd-macro-to-KP= () + "Assign the last keyboard macro to the = key on the numeric keypad." + (interactive) + (define-key suntool-map "dr" last-kbd-macro)) + +(defun bind-last-kbd-macro-to-KP/ () + "Assign the last keyboard macro to the / key on the numeric keypad." + (interactive) + (define-key suntool-map "er" last-kbd-macro)) + +(defun bind-last-kbd-macro-to-KP* () + "Assign the last keyboard macro to the * key on the numeric keypad." + (interactive) + (define-key suntool-map "fr" last-kbd-macro)) + +(defvar secondlast-kbd-macro nil) +(defun pre-end-kbd-macro () + "Preserve last-kbd-macro as secondlast-kbd-macro, then end-kbd-macro." + (interactive) + (setq secondlast-kbd-macro last-kbd-macro) + (end-kbd-macro)) +(substitute-key-definition 'end-kbd-macro 'pre-end-kbd-macro global-map) +(substitute-key-definition 'end-kbd-macro 'pre-end-kbd-macro esc-map) +(substitute-key-definition 'end-kbd-macro 'pre-end-kbd-macro ctl-x-map) + +(defun call-secondlast-kbd-macro (n) + "Like call-last-kbd-macro, but uses the macro defined before that." + (interactive "p") + (let ((last-kbd-macro secondlast-kbd-macro)) + (call-last-kbd-macro n))) + +; The turn-numlock-on/off commands are created automatically by oemacs +; when the NumLock light changes state. +(defun turn-numlock-on () ; numlock is always off when oemacs starts + "Bind keys in keypad area to numeric interpretations." + (interactive) + (setq hb-binding (lookup-key suntool-map "hb")) + (setq gb-binding (lookup-key suntool-map "gb")) + (setq fb-binding (lookup-key suntool-map "fb")) + (setq eb-binding (lookup-key suntool-map "eb")) + (setq db-binding (lookup-key suntool-map "db")) + (define-key suntool-map "hb" "-") + (define-key suntool-map "gb" "+") + (define-key suntool-map "fb" "\C-j") + (define-key suntool-map "eb" ".") + (define-key suntool-map "db" "0")) +(defun turn-numlock-off () + "Rebind keys in keypad area to function-key interpretations." + (interactive) + (define-key suntool-map "hb" hb-binding) + (define-key suntool-map "gb" gb-binding) + (define-key suntool-map "fb" fb-binding) + (define-key suntool-map "eb" eb-binding) + (define-key suntool-map "db" db-binding)) +(defvar hb-binding nil) +(defvar gb-binding nil) +(defvar fb-binding nil) +(defvar eb-binding nil) +(defvar db-binding nil) --- tetex-base-3.0.orig/debian/cweb-examples/wmerg-pc.ch +++ tetex-base-3.0/debian/cweb-examples/wmerg-pc.ch @@ -0,0 +1,21 @@ +Change file for wmerge, for MSDOS and Borland C++ 3.1. +To compile the C file: bcc -w-pro wmerge.c + +(This file contributed by Barry Schwartz, trashman@crud.mn.org, 28 Jun 94.) + +@x Section 19. + cur_file_name[l]='/'; /* \UNIX/ pathname separator */ +@y + cur_file_name[l]='/'; /* A valid {\mc MSDOS} pathname separator */ +@z + + +@x Section 33. + if (*s=='.') dot_pos=s++; + else if (*s=='/') dot_pos=NULL,name_pos=++s; + else s++; +@y + if (*s=='.') dot_pos=s++; + else if (*s==':' || *s=='\\' || *s=='/') dot_pos=NULL,name_pos=++s; + else s++; +@z --- tetex-base-3.0.orig/debian/cweb-examples/oemacs.w +++ tetex-base-3.0/debian/cweb-examples/oemacs.w @@ -0,0 +1,896 @@ +\datethis +@i xview_types.w + +@* Introduction. +This program provides an interface between the GNU Emacs editor and the +OpenWindows environment, using the XView toolkit for interactive graphics. +It is based on \.{emacstool}, a SunView interface written by Jeff Peck +of Sun Microsystems in 1986 and adapted by him in 1988 to \.{xvetool}, +an early XView interface. The present code, by Don Knuth, is designed to work +with OpenWindows Version~3 as distributed in 1992, using a Sun Type~4 +keyboard. + +GNU Emacs is a highly portable and versatile program, which does most +of the hard work involved in editing files. Our job is simply twofold: +To get \.{emacs} started in an appropriate window, and to transmit +keyboard and mouse events as sequences of characters that \.{emacs} +can happily consume. These simple tasks do, however, require us to +get a lot of fussy details right. In fact, this program could not have been +written without a good deal more knowledge about XView than can be found +in the manuals. Fortunately Jeff Peck works for Sun, and his +inside knowledge has provided the necessary clues. (All complaints below +about the XView documentation are based on the reference manuals and +programming manuals available from Sun and from O'Reilly \AM\ Associates, in +the summer of 1992. Let us hope that such problems will not persist; +computer programming should be fun, but some of the code below was +written only after a bitter struggle!) + +The command-line arguments to \.{oemacs} are either standard XView +arguments, which specify the font and the size and position of the window, +the icon, the colors, etc.; or they are standard arguments of \.{emacs}, +which typically specify the file to be edited and a position in that file. +If I decide later to make certain things in \.{oemacs} less hardwired, +I will look for options in the X resource database instead of on the +command line. + +An important note about using \.{xmodmap} to change the behavior of +certain keys appears below. It makes \.{emacs} more powerful, unless you +have other good uses for those keys. (See the entry for \.{xmodmap} +in the index.) + +Before using \.{oemacs}, you must compile \.{emacs} with the +\.{sunfns} module (which the \.{Makefile} will do for you if you've +configured it correctly), and you should include the lines +$$\vbox{\halign{\.{#}\hfil\cr +(load-library "sun-mouse")\cr +(load-library "sun-fns")\cr}}$$ +in Emacs's file \.{lisp/site-init.el}. + +Caution: This program was developed and tested with Peck's improved +versions of sun-mouse and sun-fns; these are available from +\.{peck@@sun.com} if not yet part of the GNU distribution. + +@ We follow the traditional structure of XView applications. The |exit| +statement at the end is important, because \.{oemacs} can be invoked by +the \.{system} command in \TEX/ (when the user has typed \.e in response +to an error message); without |exit(0)|, \TEX/ would complain of trouble +executing this program, although we would simply be terminating the program +without returning any particular value. + +@c +@@; +@# +Frame frame; /* the base frame where we will live */ +@@; /* additional globals besides |frame| */ +@# +@@; +@# +main(argc,argv) + int argc;@+char *argv[]; /* typical \UNIX/ setup */ +{ + @; + @; + xv_main_loop(frame); + exit(0); +} + +@ Including the header file \.{} also causes other +basic header files like \.{}, \.{}, etc., +to be loaded. We must call the \CEE/ compiler with the flag +\.{-I\$(OPENWINHOME)/include} so that the \CEE/ preprocessor will +find the OpenWindows header files. + +Some \UNIX/ systems define string functions in \.{}, some in +\.{}; the Sun documentation calls for \.{}. My +experiments indicate that Sun's compiler and loader work perfectly +well with string functions even when no header files are given, so the +programmer doesn't really have to remember the right name. Similarly, +\.{} isn't really needed with Sun's \CEE/, unless certain macros +are used. I'll include \.{} and \.{} anyway, in the +spirit of being obedient to the stated rules. + +@= +#include +#include +#include + +@* The icon and frame. +First we attach an icon that will appear if the user closes the \.{oemacs} +window later. + +There are two reasons for doing this first. One is that we might as well +begin with an easy task, in order to get warmed up. The other is that +if we specify the icon {\it after\/} creating the frame, we will unconditionally +override an icon that the user may have specified with the \.{-WI} +option on the command line. (This is one of the little things a +programmer has to turn by trial and error, since the XView documentation +leaves much unsaid.) + +The colors used in the icon will be inherited from the frame, so they will +be reversed if the user asks for reverse video. I~prefer to have the icon +always in black on a yellow background, so I'm making the color explicit. +(I hope this will work on monochrome displays; it works fine on my +grayscale monitor.) + +@= +{@+Server_image icon_image=(Server_image)xv_create(NULL,SERVER_IMAGE,@| + XV_WIDTH,64,XV_HEIGHT,64,SERVER_IMAGE_BITS,icon_bits,NULL); + Server_image mask_image=(Server_image)xv_create(NULL,SERVER_IMAGE,@| + XV_WIDTH,64,XV_HEIGHT,64,SERVER_IMAGE_BITS,mask_bits,NULL); + Cms cms=(Cms)xv_create(NULL,CMS,CMS_SIZE,2,@| + CMS_NAMED_COLORS,"yellow","black",NULL,NULL); + Icon icon=(Icon)xv_create(NULL,ICON,@| + ICON_IMAGE,icon_image,ICON_MASK_IMAGE,mask_image,@| + WIN_CMS,cms,NULL); + frame=xv_create(NULL,FRAME,FRAME_ICON,icon,NULL); +} + +@ @= +#include + +@ If the user hasn't specified a label with the \.{-Wl} option, we turn off +the header line at the top of the frame. That gives us a chance to see +two more lines of the file \.{emacs} is editing. However, we add a +label of our own; it will show up in the virtual window manager display. + +@= +if (xv_get(frame,XV_LABEL)==NULL) /* no label specified */ + xv_set(frame,FRAME_SHOW_HEADER,FALSE,XV_LABEL,"OEMACS",NULL); + +@ The following icon and mask are derived from the ``what's gnu'' image on the +back cover of the GNU Emacs manual. (This accounts for my black-on-yellow +preference.) + +@= +unsigned short icon_bits[]={@| + 0x0000, 0x0000, 0x0000, 0x1E00, + 0x0000, 0x0000, 0x0000, 0x0900,@| + 0x001E, 0x0000, 0x0000, 0x0880, + 0x0064, 0x0000, 0x0000, 0x0440,@| + 0x0088, 0x0000, 0x0000, 0x0420, + 0x0110, 0x0000, 0x0000, 0x0210,@| + 0x0220, 0x0000, 0x0000, 0x0210, + 0x0420, 0x0FCF, 0x01C0, 0x0108,@| + 0x0840, 0x1030, 0x8620, 0x0088, + 0x1080, 0x00C0, 0x5810, 0x0084,@| + 0x1080, 0x1F00, 0x2008, 0x0044, + 0x2100, 0xE200, 0x1004, 0x0044,@| + 0x4103, 0x0400, 0x0002, 0x0042, + 0x4204, 0x080E, 0x0001, 0x0042,@| + 0x8200, 0x7830, 0x0020, 0x8082, + 0x8203, 0x9040, 0x0018, 0x4102,@| + 0x8204, 0x2080, 0x07C6, 0x3E04, + 0x8108, 0x410C, 0x0021, 0x8004,@| + 0x8080, 0x8210, 0x03D0, 0x6008, + 0x4041, 0x0420, 0x0008, 0x1810,@| + 0x403E, 0x0820, 0x0FFC, 0x0620, + 0x2000, 0x1040, 0x0002, 0x01C0,@| + 0x1000, 0x608C, 0x0FFF, 0x0060, + 0x0801, 0x8110, 0x0080, 0x8118,@| + 0x0406, 0x0220, 0x1FFF, 0x66E0, + 0x0238, 0x044F, 0x0000, 0xD800,@| + 0x01C0, 0x0890, 0x8FFF, 0x4000, + 0x0300, 0x10A6, 0x4041, 0x6000,@| + 0x1C00, 0x2026, 0x4FFF, 0x6000, + 0x60CC, 0x4026, 0x4001, 0x6000,@| + 0x1F33, 0x8010, 0x8FFF, 0x4000, + 0x0012, 0x000F, 0x0040, 0xC000,@| + 0x0022, 0x4000, 0x07FF, 0x4000, + 0x0024, 0x4000, 0x0000, 0x2000,@| + 0x0024, 0x4818, 0x8FFF, 0xE000, + 0x0024, 0x4907, 0x0040, 0x2000,@| + 0x0044, 0x4900, 0x1FFF, 0xE000, + 0x0044, 0x4900, 0x0000, 0x2000,@| + 0x0044, 0x4900, 0x07FF, 0xE000, + 0x0044, 0x4880, 0x0020, 0x2000,@| + 0x0044, 0x4880, 0x07FF, 0xE000, + 0x0044, 0x4840, 0x0000, 0x2000,@| + 0x0044, 0x2A20, 0x07FF, 0xE000, + 0x0044, 0x2410, 0x0020, 0x2000,@| + 0x0042, 0x2448, 0x0FFF, 0xE000, + 0x0042, 0x2948, 0x0000, 0x2000,@| + 0x0041, 0x1144, 0x07FF, 0xA000, + 0x0041, 0x1144, 0x2010, 0x1000,@| + 0x0021, 0x1126, 0x20FA, 0x1000, + 0x0024, 0x8925, 0x2600, 0x1000,@| + 0x0014, 0x8924, 0xA138, 0x7000, + 0x0016, 0x88A4, 0x9090, 0x6000,@| + 0x000A, 0x44A4, 0x4880, 0xA000, + 0x0002, 0x44A2, 0x4401, 0x2000,@| + 0x0003, 0x4492, 0x2001, 0x4000, + 0x0001, 0x2451, 0x3002, 0x8000,@| + 0x0000, 0xA251, 0x1E05, 0x0000, + 0x0000, 0x2248, 0xA1F9, 0x8000,@| + 0x0000, 0x1648, 0x9002, 0x8000, + 0x0000, 0x1A28, 0x4C02, 0x8000,@| + 0x0000, 0x1220, 0x43FC, 0x8000, + 0x0000, 0x0120, 0x2000, 0x8000,@| + 0x0000, 0x0120, 0x2003, 0x0000, + 0x0000, 0x0150, 0x1FFC, 0x0000 +}; +unsigned short mask_bits[]={@| + 0x0000, 0x0000, 0x0000, 0x1E00, + 0x0000, 0x0000, 0x0000, 0x0F00,@| + 0x001E, 0x0000, 0x0000, 0x0F80, + 0x007C, 0x0000, 0x0000, 0x07C0,@| + 0x00F8, 0x0000, 0x0000, 0x07E0, + 0x01F0, 0x0000, 0x0000, 0x03F0,@| + 0x03E0, 0x0000, 0x0000, 0x03F0, + 0x07E0, 0x0FCF, 0x01C0, 0x01F8,@| + 0x0FC0, 0x103F, 0x87F0, 0x00F8, + 0x1F80, 0x00FF, 0xDFF0, 0x00FC,@| + 0x1F80, 0x1FFF, 0xFFF8, 0x007C, + 0x3F00, 0xE3FF, 0xFFFC, 0x007C,@| + 0x7F03, 0x07FF, 0xFFFE, 0x007E, + 0x7E04, 0x0FFF, 0xFFFF, 0x007E,@| + 0xFE00, 0x7FFF, 0xFFFF, 0x80FE, + 0xFE03, 0x9FFF, 0xFFFF, 0xC1FE,@| + 0xFE04, 0x3FFF, 0xFFFF, 0xFFFC, + 0xFF08, 0x7FFF, 0xFFFF, 0xFFFC,@| + 0xFF80, 0xFFFF, 0xFFFF, 0xFFF8, + 0x7FC1, 0xFFFF, 0xFFFF, 0xFFF0,@| + 0x7FFF, 0xFFFF, 0xFFFF, 0xFFE0, + 0x3FFF, 0xFFFF, 0xFFFF, 0xFFC0,@| + 0x1FFF, 0xFFFF, 0xFFFF, 0xFFE0, + 0x0FFF, 0xFFFF, 0xFFFF, 0xFFF8,@| + 0x07FF, 0xFFFF, 0xFFFF, 0xFEE0, + 0x03FF, 0xFFFF, 0xFFFF, 0xF800,@| + 0x01FF, 0xFFFF, 0xFFFF, 0xE000, + 0x03FF, 0xFFFF, 0xFFFF, 0xE000,@| + 0x1FFF, 0xFFFF, 0xFFFF, 0xE000, + 0x7FFF, 0xFFFF, 0xFFFF, 0xE000,@| + 0x1F7F, 0xFFFF, 0xFFFF, 0xC000, + 0x001F, 0xFFFF, 0xFFFF, 0xC000,@| + 0x003F, 0xFFFF, 0xFFFF, 0xC000, + 0x003F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x003F, 0xFFFF, 0xFFFF, 0xE000, + 0x003F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x007F, 0xFFFF, 0xFFFF, 0xE000, + 0x007F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x007F, 0xFFFF, 0xFFFF, 0xE000, + 0x007F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x007F, 0xFFFF, 0xFFFF, 0xE000, + 0x007F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x007F, 0xFFFF, 0xFFFF, 0xE000, + 0x007F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x007F, 0xFFFF, 0xFFFF, 0xE000, + 0x007F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x007F, 0xFFFF, 0xFFFF, 0xE000, + 0x007F, 0xFFFF, 0xFFFF, 0xF000,@| + 0x003F, 0xFFFF, 0xFFFF, 0xF000, + 0x003F, 0xFFFF, 0xFFFF, 0xF000,@| + 0x001F, 0xFFFF, 0xFFFF, 0xF000, + 0x001F, 0xFFFF, 0xFFFF, 0xE000,@| + 0x000B, 0xFFFF, 0xFFFF, 0xE000, + 0x0003, 0xFFFF, 0xFFFF, 0xE000,@| + 0x0003, 0xFFFF, 0xFFFF, 0xC000, + 0x0001, 0xFFFF, 0xFFFF, 0x8000,@| + 0x0000, 0xBFF1, 0xFFFF, 0x0000, + 0x0000, 0x3FF8, 0xFFFF, 0x8000,@| + 0x0000, 0x1FF8, 0xFFFF, 0x8000, + 0x0000, 0x1FF8, 0x7FFF, 0x8000,@| + 0x0000, 0x13E0, 0x7FFF, 0x8000, + 0x0000, 0x01E0, 0x3FFF, 0x8000,@| + 0x0000, 0x01E0, 0x3FFF, 0x0000, + 0x0000, 0x0150, 0x1FFC, 0x0000 +}; + +@* Emulating a terminal. +We will run \.{emacs} in a ``tty subwindow,'' named after the teletype +terminals of ancient yore. + +The |argv| array will be a command line that invokes +\.{emacs} with all arguments not removed by |xv_init|, i.e., all arguments +that remain after generic XView arguments have been removed. + +We have to say |WIN_IS_CLIENT_PANE|, otherwise fonts specified on the +command line will be ignored. (This cryptic instruction is mentioned briefly +in the XView reference manual, but not in the XView programming manual; +I~would never have discovered it without Jeff Peck's help.) + +We also have to set |TTY_QUIT_ON_CHILD_DEATH| to |TRUE|. Otherwise when +\.{emacs} exits (via control-X, control-C) there still will be a terminal +window (into which we can type but not access the shell). + +Before starting \.{emacs} we set the environment variable +\.{TERM} equal to \.{sun}. +This will tell \.{emacs} to initialize itself with the +programs in its source file \.{lisp/term/sun.el}, where special +adaptations for Sun-style terminals have been recorded. + +@= +argv[0]="emacs"; +putenv("TERM=sun"); +tty=(Tty)xv_create(frame,TTY,WIN_IS_CLIENT_PANE,@| + TTY_QUIT_ON_CHILD_DEATH,TRUE,@| + TTY_ARGV,argv,NULL); + +@ @= +Tty tty; + +@ @= +#include + +@ The XView manual doesn't tell us that tty subwindows have a view part +and a pseudo-terminal part. (The manual does mention briefly that text +subwindows have views---at the beginning of section 6.3, and indirectly in +one of the examples in the chapter on color.) + +The view window of an emulated tty will receive keyboard and +mouse events. We need to know its ``handle,'' because we want to +modify XView's default interpretation of many of those events. + +For example, we want to grab the keyboard focus (i.e., to begin receiving +keyboard input) as soon as the user moves the mouse into the \.{emacs} +window. The normal OpenLook default requires a user to click in the window +first, but that is inefficient in a production book-writing environment. +Us \.{emacs} users would rather type than point. + +A secret incantation makes the view window accessible. Dear reader, +would you have guessed how to do this, from reading the manuals only, +without looking at Jeff Peck's code? Be honest now. + +We don't have to enable the notification of other kinds of events; +tty subwindows already do that. + +@= +window=(Xv_window)xv_get(tty,OPENWIN_NTH_VIEW,0); +xv_set(window,WIN_CONSUME_EVENT,LOC_WINENTER,NULL); + +@ @= +Xv_window window; /* the view window of |tty| */ + +@ If the user has specified reverse video with the \.{-rv} option, +we will reverse black and white in the mouse cursor. This will make it +more visible against a black background. + +Changing the cursor is another undocumented reason why we need to know +about the tty's view window; nothing changes if we try to attach +the new cursor to |frame| or to |tty| instead of to |window|. + +@= +if (rv) {Xv_singlecolor white,black; + Xv_cursor cursor; + white.red=white.green=white.blue=255; + black.red=black.green=black.blue=0; + cursor=(Xv_cursor)xv_create(NULL,CURSOR,@| + CURSOR_SRC_CHAR,OLC_BASIC_PTR,CURSOR_MASK_CHAR,OLC_BASIC_MASK_PTR,@| + CURSOR_FOREGROUND_COLOR,&white,CURSOR_BACKGROUND_COLOR,&black,NULL); + xv_set(window,WIN_CURSOR,cursor,NULL); +} + +@ @= +#include /* we're using the cursor package */ + +@ What is the variable |rv| that was tested in the code above? Good question. +We have to scan for \.{-rv} before |xv_init| looks at the command arguments. + +@= +rv=0; +{@+int k=argc; + while (--k>0) if (strcmp(argv[k],"-rv")==0 || + strcmp(argv[k],"-reverse")==0) rv=1; +} + +@ @= +int rv; + +@ We need to know the height and width of characters in the font, in order +to convert mouse positions into coordinates that \.{emacs} will like. +If the user has specified a font explicitly, the font will presumably have +a fixed width for all characters; we can learn the relevant dimensions +by calling |xv_get|. But if the user has not specified a font, the +situation is trickier; |xv_get| will report the width of the default +{\it non\/}-fixed-width font, and this will probably differ from the width of +the actual fixed-width font the tty subwindow will choose. + +Curiously, if we call |xv_find(NULL,FONT,FONT_FAMILY, +FONT_FAMILY_DEFAULT_FIXEDWIDTH,NULL)| {\it before\/} calling |xv_init|, +without even doing anything with the result returned by |xv_find|, +|xv_init| will not install any fonts specified on the command line. +The trick we used for icons---installing the default gnu icon on the first +call to |xv_create|---will therefore fail. + +Thus, we have to work around two distinct bugs in XView. The solution +is to discover the effects of the user's command line after |xv_init| +has acted and the frame has been set up; we can determine by brute force what +font will go into the tty window. The program below works correctly +even if the command line specifies \.{-scale} \.{large}, say, instead of +specifying a new font explicitly by something like \.{-font} \.{9x15}. + +While we are cataloguing peculiarities of XView, we might as well mention +that the default character dimensions of the default font (Lucida) are +reported to be $8\times13$ in the 12-point (medium) size, $8\times15$ in the +14-point (large) size, and $12\times20$ in the 19-point (extralarge) size. +The actual character dimensions in the window come, however, from the +default fixed-width font (Lucida typewriter), and they are $7\times13$, +$9\times15$, and $11\times23$ in the same three sizes. No logical progression +is evident in either the variable-width or the fixed-width dimensions, +although Lucida is a ``scalable font family.'' + +@= +{ + Xv_font font=(Xv_font)xv_get(frame,XV_FONT); + Xv_font dfont=(Xv_font)xv_find(NULL,FONT,FONT_FAMILY, + FONT_FAMILY_DEFAULT,NULL); + if (strcmp((char*)xv_get(font,FONT_NAME), + (char*)xv_get(dfont,FONT_NAME))==0) { + /* the user didn't specify a new font by name */ + dfont=(Xv_font)xv_find(NULL,FONT,FONT_FAMILY, + FONT_FAMILY_DEFAULT_FIXEDWIDTH,NULL); + /* this one will be used by the tty window */ + } else dfont=font; + char_width=(int)xv_get(dfont,FONT_DEFAULT_CHAR_WIDTH); + char_height=(int)xv_get(dfont,FONT_DEFAULT_CHAR_HEIGHT); +} + +@ @= +int char_width, char_height; /* character dimensions in the font */ + +@ @= +#include /* header for the font package */ + +@ OK, we've figured out how to install a tty subwindow with the right +event mask and the right cursor, and how to calculate the sizes of the +characters it will contain. All that remains is for us to do these +operations in the proper order, and to specify a filter routine that +will monitor and edit all communications between the keyboard and the +Emacs processor in the window. + +The new ingredient is the filter specification. We tell the XView +notifier to call |filter| when a window event occurs, instead of +letting it call the tty subroutine event handler directly. The parameter +|NOTIFY_SAFE| implies that the window's event handler is +part of XView, not an alien routine. + +@= +@; +xv_init(XV_INIT_ARGC_PTR_ARGV,&argc,argv,NULL); + /* start XViewing; strip and remember the OpenWin arguments */ +@; +@; +@; +@; +@; +@; +notify_interpose_event_func(window,filter,NOTIFY_SAFE); + +@* Keyboard events. +The job of an interposed filter function is to look at an event and +either process it ourselves or pass it through (possibly modified) +to its normal recipient. In the first case we return the code +value |NOTIFY_DONE|, since we aren't reporting any errors; +in the second case we call the normal event handler and return the value +it returns to us. + +An XView event is a data structure that has been partially +interpreted by the XView routines, which add semantic sugar to +the complex union type of X~Window events. We need not look +too far inside an event structure to do the things that concern us. + +And what is our job? We are looking for three different kinds of events: + +\smallskip +\itemitem{(1)} When the mouse enters the window, +we want to grab the keyboard focus. + +\itemitem{(2)} When a mouse button goes up or down, and we have the keyboard +focus, we want to send a coded sequence of characters to \.{emacs}. + +\itemitem{(3)} When a key goes down, and we have the keyboard focus, we +want to send an appropriate sequence of characters to \.{emacs}. + +\itemitem{(4)} When the status of the Num Lock indicator light changes, we +will send emacs the command {\tt turn-numlock-on} or {\tt turn-numlock-off}, +for reasons described below. + +\smallskip\noindent Other events, like instructions to repaint or +resize the window, will be passed through without change to the tty window. + +@= +Notify_value filter(window,event,arg,type) + Xv_window window; /* the ``client'' on whom we interposed */ + Event *event; /* the data we are filtering */ + Notify_arg arg; /* optional communication parameter between clients */ + Notify_event_type type; /* |NOTIFY_SAFE| or |NOTIFY_IMMEDIATE| */ +{@+register int id=event_id(event); +#ifdef DEBUG + printf("event %d%s, action %d, shift %x, mouse(%d,%d)\n", + event_id(event),event_is_up(event)?"UP":"DOWN",event->action, + event_shiftmask(event),event_x(event),event_y(event)); +#endif + @; + if (id==LOC_WINENTER) @; + if (event_is_button(event)) @; + if (event_is_up(event)) return NOTIFY_DONE; /* key has been released */ + @; + @; + return notify_next_event_func(window,event,arg,type); /* pass it through */ +} + +@ It's easy to take charge of the keyboard and mouse, as soon as the mouse +enters our territory. + +@= +{ + win_set_kbd_focus(window,xv_get(window,XV_XID)); + return NOTIFY_DONE; +} + +@ If the event is not related to mouse buttons or special function keys, +we want to pass it on unchanged, unless its |event_id| is less than 128. +In that case, it represents a character code, and we want to nuke any +semantic ``keyboard acceleration'' actions it might have been assigned +by OpenWindows. + +We also make the Meta key add 128 here. An undocumented macro +called |event_set_id|, found in \.{}, +clears the |action| code as desired. + +@= +if (id<128) + if (event_meta_is_down(event)) event_set_id(event,id+128); + else event_set_action(event,ACTION_NULL_EVENT); + +@* Function keys. +The Sun Type 4 keyboard has lots of keys, and these can be bound to lots +of useful functions when we are \.{emacs}ing to the max. Besides the +letters and punctuation marks of a normal typewriter, there are ten +``left'' function keys, L1--L10; twelve ``top'' function keys, F1--F12; +fifteen ``right'' function keys, R1--R15; and eight additional keys +labeled Help, Alt, AltGraph, Ins, Del, Enter, $+$, $-$, which we will +pretend have been labeled B1--B8. + +The L5 key, also known as Front, is controlled by the Open Look +window manager; it makes a window rise above any that might overlap it, +or shoves the window underneath in case it already was on top. + +The L7 key, aka Open, is likewise preempted by the +window manager. It closes a frame to an icon, or opens an icon. + +The window manager traps the R2 key and calls it the ``language'' key; +but I have no use for that feature. So I have remapped R2 to the comparatively +useless character $3\over4$, and I will translate it back to R2 below. (The +\.{xmodmap} program allows users to reassign the interpretation of key codes.) +I could have recovered the L5 and L7 keys in the same way, but I like +their functions as they stand. (L5 and L7 still come through if a +Shift, Control, and/or Meta key is down.) + +I can never remember the difference between Delete and BackSpace, so I +have mapped them both into control-?, ASCII code 127. + +There are two Shift keys, one at the left and one at the right, which +are best kept indistinguishable from each other. Similarly, the left +and right Meta keys (`\.{\char27}') are essentially identical. There's a +Control key too. These three types of modifier keys generate keypress +events, but we ignore them; the only thing that matters to us is whether +they are currently up or down, when other keys are pressed. + +\font\ttit=cmitt10 +There also are three special keys that do not generate events, so we +never see them. The CapsLock key toggles the Caps Lock light and +changes lowercase letters to uppercase when the light is on. The +NumLock key toggles the Num Lock light and changes the interpretation +of R4--R15 and B4--B8 when that light is on. The Compose key turns the +Compose light on until you type two characters, then it produces a +special symbol if those two characters match a pattern. For example, +when Compose is followed by either \.{a"} or \.{"a} you get the 8-bit +ISO code for {\tt \"a}; when Compose is followed by either \.{th} or +\.{ht} you get the Icelandic thorn; when it's followed by \.{??} you get {\tt +?`}; \.{c/} and \.{L-} give \rlap{\./}\.c and {\ttit\char`\$} +and so on. (A list of all composition patterns +appears in \.{}, but not in any of the manuals +I've seen.) The light goes off after two characters have been +typed, or if your first character is not composable, or if +you hit Compose again prematurely. If no proper two-character pattern +was specified, only ``up'' events (key releases) are transmitted, and +nothing will pass through to \.{emacs}. + +One other feature is worth noting: The key between F12 and Delete +produces a backslash `\.\\', or a vertical line `\.{\char125}' when +shifted. Everybody knows that, but even more is true. If you hold the +AltGraph key down and press this key, it turns out that you get the +broken-bar character `{\tt\hbox to1em{\hss\vbox{\hrule width 1pt height +3pt\vskip1.5pt\hrule height2pt depth1pt}\hss}}'. This is the only key that the +engineers chose to endow with three different graphic symbols. + +A few other anomalies occur; for example, AltGraph-R1 gives ASCII null, +while AltGraph does not affect R4. But I didn't discover any additional +combinations that are either useful or harmful. + +Once upon a time the Caps Lock key might have affected the |event_shiftmask| +field of an event, but it has no effect now. The shiftmask is always an +even number, contrary to the implications of \.{}. + +@ The function keys will be translated into a four-character code. +First comes control-X; then an asterisk; then a letter, \.{a}--\.{o} +for function numbers 1--15, respectively; and then another letter, +identifying left, right, top, or bottom. The final letter is +ordinarily `\.l', `\.r', `\.t', or `\.b', respectively. But it is `\.L', `\.R', +`\.T', or `\.B' if a Shift key is down. Furthermore the Control key +subtracts 64 from the ASCII code, so you get `\.,', `\.2', `\.4', or +`\."' with Control and no Shift. With both Control and Shift you get +\.{\\C-L}, \.{\\C-R}, \.{\\C-T}, \.{\\C-B}. A Meta key adds another 128 +to the code. Thus, each function key leads to eight possibilities. + +For example, if F4 is pressed when Control and Shift are down, but not +Meta, the four-letter code is \.{\\C-X*d\\C-T}. The user could type +that sequence of four characters and get the same effect. + +Shifted function keys sometimes have a nice mnemonic significance. +For example, key R14, also labeled PgDn, is usually bound to the Emacs +operation `\.{scroll-up}', which moves the window down [sic] by one +screenful; we can then bind Shift-R14 to \.{forward-page}, which advances +down to the next page boundary. In \.{cweb-mode}, the next page boundary +is the next \.{@@*}, beginning a major part of the program. Similarly, +it's convenient to bind B7, the keypad `\.+' key, to \.{forward-paragraph}. +Then in \.{cweb-mode}, Shift-B7 goes to the next module (the next +\.{@@\ } or \.{@@*}). + +A Composed character will be preceded by \.{\\C-Q}, the Emacs `quote' +character, to distinguish it from a character that was generated with the +Meta key down. This also applies to the broken-bar character, which +will incidentally be preceded by AltGraph, which is B3; you'll probably +want to bind B3 to a no-op if broken bars are important to you. + +@ This program assumes that several key codes have been rebound from +their normal values. Namely, the commands +$$\vbox{\halign{\.{#}\hfil\cr +keysym R2 = threequarters\cr +keysym KP\_Subtract = onehalf\cr +keysym KP\_Add = onequarter\cr +keysym KP\_Enter = threesuperior\cr +keysym KP\_Decimal = twosuperior\cr +keysym KP\_0 = onesuperior\cr}}$$ +should be executed by \.{xmodmap}, preferably in the user's \.{.xinitrc} file. +This makes the keys act as $3\over4$, $1\over2$, $1\over4$, $^3$, $^2$, and +$^1$, respectively. The corresponding 8-bit codes are respectively +190, 189, 188, 179, 178, 185. (By the way, can anybody explain why the ISO +LATIN-1 code has $^0$, $^2$, and $^3$ in the positions of meta-0, meta-2, +and meta-3, while $^1$ is in the position of meta-9?) +@.xmodmap@> + +We haven't actually bound the keys this way to use them in editing. +We did it to provide linguistically unimportant codes that OpenWindows +wouldn't mess up; its normal conventions make those valuable keys +unusable for editing, except as duplicates for other existing keys. + +We send \.{turn-numlock-on/off} commands so that \.{emacs} can keep in +synch with the keyboard state. Namely, it will rebind the function +keys B4--B8 to their numeric-keypad equivalents while the Num Lock light is on. + +On the other hand, our remapping does make the Num Lock +feature useless in other (non-Emacs) applications. If you don't +rebind the keys as stated, you lose the functionality of R2 and B4--B8, +but \.{oemacs} will still work. + +The Help key is another special case. We don't want to remap it, +because it gives useful help information with other OpenWindows +applications. If Help is pressed without the shift or control key, +the |event_id| is zero and the |event_action| is |ACTION_HELP|. +Control-Help is similar, but with |ACTION_TEXT_HELP|. Shift-Help is +more complicated; it invokes `helpopen: starting new Viewer', after +generating an event that has |event_action=WIN_VISIBILITY_NOTIFY|. The +program below considers the Help key B1 to be characterized by any +event with |event_id=0| and either |event_action!=0| or +|event_shiftmask!=CTRLMASK|. + +@= +{@+register int bank='b'; /* |'l'|, |'r'|, |'t'|, or |'b'| */ + register int n; /* function key serial number, |1<=n<=15| */ + if (id>=KEY_LEFT(1)) @@; + else if (id>=256) @@; + else if (id>=128) + @@; + else if (id>0 || + (event_action(event)==0 && event_shiftmask(event)==CTRLMASK)) + goto non_function; + else n=1; /* Help key */ +emit_function_key:@; +non_function:; +} + +@ I'm assuming here that the event id codes occur in the order left, right, +top, bottom, and that no higher event codes exist. + +@= +{ + if (id} +but not in the XView reference manual. + +@= +if (id==SHIFT_ALT) { + n=2;@+goto emit_function_key; +} else if (id==SHIFT_ALTG) { + n=3;@+goto emit_function_key; +} else goto non_function; + +@ The |ttysw_input| routine sends text to a tty's view window. +The second parameter is a string, not necessarily terminated by +|'\0'| or anything else; the third parameter is the string length. + +@= +{ + if (event_shift_is_down(event)) bank-=32; + if (event_ctrl_is_down(event)) bank-=64; + if (event_meta_is_down(event)) bank+=128; + buf[2]=n+'a'-1; + buf[3]=bank; + ttysw_input(window,buf,4); + return NOTIFY_DONE; +} + +@ @= +char buf[]="\030*??\021"; /* |030| and |021| give control-X, control-Q */ + +@ @= +switch (id) { +case 190: bank='r';@+n=2;@+goto emit_function_key; +case 189: n=8;@+goto emit_function_key; +case 188: n=7;@+goto emit_function_key; +case 179: n=6;@+goto emit_function_key; +case 178: n=5;@+goto emit_function_key; +case 185: n=4;@+goto emit_function_key; +default: buf[5]=id; /* composed character or broken-bar */ + ttysw_input(window,buf+4,2); + return NOTIFY_DONE; +} + +@* The NumLock key. +The global variable |num_lock_state| will be 0 if the Num Lock indicator +light is off, 1 if it is on. Whenever an event occurs, we check to see +if |num_lock_state| should change; if so, we change it and send an +appropriate command to \.{emacs}. + +To read the state of the keyboard LED indicator lights, we need an I/O +control command called the |KIOCGLED| ioctl, described on the +man page for \.{kb(4m)}. + +@= +int num_lock_state; +char turnon[]="\370turn-numlock-on\r", turnoff[]="\370turn-numlock-off\r"; +int keyboard; /* file descriptor of \.{/dev/kbd} */ + +@ @= +#include /* definition of |O_RDWR| for |open| */ +#include /* definition of |KIOCGLED| for |ioctl| */ + +@ @d LED_NUM_LOCK 0x1 /* the official definition is in \.{}, + but that header file includes huge gobs of other stuff */ + +@= +{@+char leds; /* binary encoding of LED lights */ + ioctl(keyboard,KIOCGLED,&leds); + if ((leds&LED_NUM_LOCK)!=num_lock_state) { + num_lock_state=leds&LED_NUM_LOCK; + if (num_lock_state) ttysw_input(window,turnon,17); + else ttysw_input(window,turnoff,18); + } +} + +@ Any ordinary user can apparently open the keyboard as a file. I would +have tried read-only access if read-write had failed; but read-write access +gives a sense of power even though I won't be writing anything. + +@= +keyboard=open("/dev/kbd",O_RDWR); +if (keyboard<0) { + fprintf(stderr,"%s: Can't open /dev/kbd!\n",argv[0]); + exit(1); +} + +@* Mouse events. +When a mouse button is pressed or released, we send \.{emacs} the +codes control-X and ASCII null, followed by a parenthesized list +of four numbers and carriage-return. +For example, as I was typing this paragraph, I +clicked the left mouse button on the screen just for fun; \.{emacs} +received the characters +$$\.{\\030\\0(1 18 28 9999)\\r\\030\\0(129 18 28 141)\\r}$$ +as a result (according to `\.{view-lossage}'). I would have received +the same response if I had typed these characters myself, instead +of clicking the mouse. + +The first of the four numbers identifies the mouse button itself +as the code number 1, 2, or 4 (for left, middle, right), plus 8 if +a Shift key is down, plus 16 if the Control key is down, plus 32 +if a Meta key is down, plus 128 if the mouse key is being released +instead of pressed. + +The second number is the row number in the frame, the top row being +considered row~0. + +The third number is the column number in the frame, the left column being +considered column~0. + +The fourth number is the elapsed time between this mouse event and the +previous one, in milliseconds. If the elapsed time was 10 seconds or +more, 9999 is substituted. + +Macros inside \.{emacs} can use the second and third numbers to +position the cursor. The fourth number can be used to determine if the +user is ``double clicking'' or using ``chords.'' Examples of such +macros appear in the Emacs source file \.{lisp/sun-mouse.el}. + +Incidentally, the ASCII null character in mouse sequence makes us happy that +the string parameter to |ttysw_input| is not null-terminated. + +@= +{@+register int button_code,elapsed_time; + button_code=(id==MS_LEFT? 1: id==MS_MIDDLE? 2: 4); + if (event_shift_is_down(event)) button_code += 8; + if (event_ctrl_is_down(event)) button_code += 16; + if (event_meta_is_down(event)) button_code += 32; + if (event_is_up(event)) button_code += 128; + @; + sprintf(mouse_buf+2,"(%d %d %d %d)\r",button_code,@| + event_x(event)/char_width, event_y(event)/char_height,@| + elapsed_time); + ttysw_input(window,mouse_buf,12+strlen(mouse_buf+12)); /* length is at least 12 */ + return NOTIFY_DONE; +} + +@ @= +char mouse_buf[24]="\030"; + +@ XView's event structure includes |event_time(event)|, which has +type |struct timeval|; this data type is declared in \.{}, +which is one of the files included automatically as a result of +including \.{}. +A |timeval| structure consists of two |long| integers, |tv_sec| and |tv_usec|, +denoting clock time in seconds and microseconds, respectively. + +@= +{@+struct timeval now; /* current time */ + long delta_sec, delta_usec; /* difference between current and + previous time */ + now=event_time(event); + delta_sec=now.tv_sec-prev_mouse_time.tv_sec; + delta_usec=now.tv_usec-prev_mouse_time.tv_usec; + if (delta_usec<0) delta_usec+=1000000,delta_sec--; + if (delta_sec>=10) elapsed_time=9999; /* infinity (or close enough) */ + else elapsed_time=(delta_sec*1000)+(delta_usec/1000); + prev_mouse_time=now; +} + +@ @= +struct timeval prev_mouse_time; + +@* Remaining problems. There's a terribly unfortunate bug in the +present implementation of XView, causing characters of tty subwindows +to be badly painted at crucial times; the rightmost column of pixels +in a character is often clobbered. If I could figure out how to +generate repaint events for the tty subwindow, I might build a mechanism +into \.{oemacs} that does this after the keyboard has been idle for 10 +seconds, say. This would blink the screen; maybe I'll get used to that, +or maybe I'll prefer to refresh the window manually by binding +\.{redraw-display} to the L2 and R1 keys. In any case a lot of screen +refreshing is necessary at the moment, alas. + +(Note added later: I doubt if I'll get used to blinking, and the present +method of manual refresh is tolerable so I won't pursue the 10-second +timer idea. I have meanwhile noticed a procedure |wmgr_refreshwindow(window)| +mentioned in \.{}; it will presumably refresh any +given window. + +Another bug, much less serious, occurs when the window is resized. +If the window gets smaller, \.{emacs} isn't told to correct its +assumptions; so it puts information in strange places or offscreen. +(Internally, emacs uses the \.{TIOCGWINSZ} or \.{TIOCSWINSZ} ioctl, +described in the man page for \.{termio}.) +You can work around this by first making the window very small, then +making it large. + +@* Index. + + --- tetex-base-3.0.orig/debian/cweb-examples/Makefile +++ tetex-base-3.0/debian/cweb-examples/Makefile @@ -0,0 +1,57 @@ +# +# generic Makefile to use when you've got CWEB +# (add it to, or add to it, whatever you like) +# +#====================================================================== + +CFLAGS = -g +MLIB = -lm +RM = /bin/rm -f +WFILES = extex.w treeprint.w wc.w wmerge.w wordtest.w oemacs.w + +#====================================================================== + +.SUFFIXES: .tex .dvi .w + +.w.tex: + cweave $* + +.tex.dvi: + tex $< + +.w.dvi: + make $*.tex + make $*.dvi + +.w.c: + ctangle $* + +.w.o: + make $*.c + make $*.o + +.c.o: + cc $(CFLAGS) -c $*.c + +.w: + make $*.c + cc $(CFLAGS) $*.c -o $* + +#====================================================================== + +all: $(WFILES: .w=) excweb + +excweb: extex + ln extex excweb + +oemacs: oemacs.c + cc $(CFLAGS) -I/usr/openwin/include oemacs.c \ + -o oemacs -lxview -lolgx -lX11 + +doc: $(WFILES:.w=.dvi) + +clean: + $(RM) *~ \#~ .\#* *.o *.log *.dvi *.toc core a.out + +clobber: clean + $(RM) $(WFILES:.w=) $(WFILES:.w=.c) $(WFILES:.w=.tex) --- tetex-base-3.0.orig/debian/cweb-examples/wc.w +++ tetex-base-3.0/debian/cweb-examples/wc.w @@ -0,0 +1,254 @@ +% wc: An example of CWEB by Silvio Levy and Donald E. Knuth + +\nocon % omit table of contents +\datethis % print date on listing +\def\SPARC{SPARC\-\kern.1em station} + +@* An example of {\tt CWEB}. This example, based on a program by +Klaus Guntermann and Joachim Schrod [{\sl TUGboat\/ \bf7} (1986), +135--137] presents the ``word count'' program from \UNIX/, rewritten in +\.{CWEB} to demonstrate literate programming in \CEE/. The level of +detail in this document is intentionally high, for didactic purposes; +many of the things spelled out here don't need to be explained in +other programs. + +The purpose of \.{wc} is to count lines, words, and/or characters in a +list of files. The number of lines in a file is the number of newline +characters it contains. The number of characters is the file length in bytes. +A ``word'' is a maximal sequence of consecutive characters other than +newline, space, or tab, containing at least one visible ASCII code. +(We assume that the standard ASCII code is in use.) + +This version of \.{wc} has a nonstandard ``silent'' option (\.{-s}), +which suppresses printing except for the grand totals over all files. + +@ Most \.{CWEB} programs share a common structure. It's probably a +good idea to state the overall structure explicitly at the outset, +even though the various parts could all be introduced in unnamed +sections of the code if we wanted to add them piecemeal. + +Here, then, is an overview of the file \.{wc.c} that is defined +by this \.{CWEB} program \.{wc.w}: + +@c +@
@/ +@@/ +@@/ +@ + +@ We must include the standard I/O definitions, since we want to send +formatted output to |stdout| and |stderr|. + +@
= +#include + +@ The |status| variable will tell the operating system if the run was +successful or not, and |prog_name| is used in case there's an error message to +be printed. + +@d OK 0 /* |status| code for successful run */ +@d usage_error 1 /* |status| code for improper syntax */ +@d cannot_open_file 2 /* |status| code for file access error */ + +@= +int status=OK; /* exit status of command, initially |OK| */ +char *prog_name; /* who we are */ + +@ Now we come to the general layout of the |main| function. + +@= +main (argc,argv) + int argc; /* the number of arguments on the \UNIX/ command line */ + char **argv; /* the arguments themselves, an array of strings */ +{ + @@; + prog_name=argv[0]; + @; + @; + @; + exit(status); +} + +@ If the first argument begins with a `\.{-}', the user is choosing +the desired counts and specifying the order in which they should be +displayed. Each selection is given by the initial character +(lines, words, or characters). For example, `\.{-cl}' would cause +just the number of characters and the number of lines to be printed, +in that order. The default, if no special argument is given, is `\.{-lwc}'. + +We do not process this string now; we simply remember where it is. +It will be used to control the formatting at output time. + +If the `\.{-}' is immediately followed by `\.{s}', only summary totals +are printed. + +@= +int file_count; /* how many files there are */ +char *which; /* which counts to print */ +int silent=0; /* nonzero if the silent option was selected */ + +@ @= +which="lwc"; /* if no option is given, print all three values */ +if (argc>1 && *argv[1] == '-') { + argv[1]++; + if (*argv[1]=='s') silent=1,argv[1]++; + if (*argv[1]) which=argv[1]; + argc--; argv++; +} +file_count=argc-1; + +@ Now we scan the remaining arguments and try to open a file, if +possible. The file is processed and its statistics are given. +We use a |do|~\dots~|while| loop because we should read from the +standard input if no file name is given. + +@= +argc--; +do@+{ + @; + @; + @; + @; + @; + @; /* even if there is only one file */ +}@+while (--argc>0); + +@ Here's the code to open the file. A special trick allows us to +handle input from |stdin| when no name is given. +Recall that the file descriptor to |stdin| is~0; that's what we +use as the default initial value. + +@= +int fd=0; /* file descriptor, initialized to |stdin| */ + +@ @d READ_ONLY 0 /* read access code for system |open| routine */ + +@= +if (file_count>0 && (fd=open(*(++argv),READ_ONLY))<0) { + fprintf (stderr, "%s: cannot open file %s\n", prog_name, *argv); +@.cannot open file@> + status|=cannot_open_file; + file_count--; + continue; +} + +@ @= +close(fd); + +@ We will do some homemade buffering in order to speed things up: Characters +will be read into the |buffer| array before we process them. +To do this we set up appropriate pointers and counters. + +@d buf_size BUFSIZ /* \.{stdio.h}'s |BUFSIZ| is chosen for efficiency*/ + +@= +char buffer[buf_size]; /* we read the input into this array */ +register char *ptr; /* the first unprocessed character in |buffer| */ +register char *buf_end; /* the first unused position in |buffer| */ +register int c; /* current character, or number of characters just read */ +int in_word; /* are we within a word? */ +long word_count, line_count, char_count; /* number of words, lines, + and characters found in the file so far */ + +@ @= +ptr=buf_end=buffer; line_count=word_count=char_count=0; in_word=0; + +@ The grand totals must be initialized to zero at the beginning of the +program. If we made these variables local to |main|, we would have to +do this initialization explicitly; however, \CEE/'s globals are automatically +zeroed. (Or rather, ``statically zeroed.'') (Get it?) +@^Joke@> + +@= +long tot_word_count, tot_line_count, tot_char_count; + /* total number of words, lines, and chars */ + +@ The present section, which does the counting that is \.{wc}'s {\it raison +d'\^etre}, was actually one of the simplest to write. We look at each +character and change state if it begins or ends a word. + +@= +while (1) { + @; + c=*ptr++; + if (c>' ' && c<0177) { /* visible ASCII codes */ + if (!in_word) {word_count++; in_word=1;} + continue; + } + if (c=='\n') line_count++; + else if (c!=' ' && c!='\t') continue; + in_word=0; /* |c| is newline, space, or tab */ +} + +@ Buffered I/O allows us to count the number of characters almost for free. + +@= +if (ptr>=buf_end) { + ptr=buffer; c=read(fd,ptr,buf_size); + if (c<=0) break; + char_count+=c; buf_end=buffer+c; +} + +@ It's convenient to output the statistics by defining a new function +|wc_print|; then the same function can be used for the totals. +Additionally we must decide here if we know the name of the file +we have processed or if it was just |stdin|. + +@= +if (!silent) { + wc_print(which, char_count, word_count, line_count); + if (file_count) printf (" %s\n", *argv); /* not |stdin| */ + else printf ("\n"); /* |stdin| */ +} + +@ @= +tot_line_count+=line_count; +tot_word_count+=word_count; +tot_char_count+=char_count; + +@ We might as well improve a bit on \UNIX/'s \.{wc} by displaying the +number of files too. + +@= +if (file_count>1 || silent) { + wc_print(which, tot_char_count, tot_word_count, tot_line_count); + if (!file_count) printf("\n"); + else printf(" total in %d file%s\n",file_count,file_count>1?"s":""); +} + +@ Here now is the function that prints the values according to the +specified options. The calling routine is supposed to supply a +newline. If an invalid option character is found we inform +the user about proper usage of the command. Counts are printed in +8-digit fields so that they will line up in columns. + +@d print_count(n) printf("%8ld",n) + +@= +wc_print(which, char_count, word_count, line_count) +char *which; /* which counts to print */ +long char_count, word_count, line_count; /* given totals */ +{ + while (*which) + switch (*which++) { + case 'l': print_count(line_count); break; + case 'w': print_count(word_count); break; + case 'c': print_count(char_count); break; + default: if ((status & usage_error)==0) { + fprintf (stderr, "\nUsage: %s [-lwc] [filename ...]\n", prog_name); +@.Usage: ...@> + status|=usage_error; + } + } +} + +@ Incidentally, a test of this program against the system \.{wc} +command on a \SPARC\ showed that the ``official'' \.{wc} was slightly +slower. Furthermore, although that \.{wc} gave an appropriate error +message for the options `\.{-abc}', it made no complaints about the +options `\.{-labc}'! Dare we suggest that the system routine might have been +better if its programmer had used a more literate approach? + +@* Index. +Here is a list of the identifiers used, and where they appear. Underlined +entries indicate the place of definition. Error messages are also shown. --- tetex-base-3.0.orig/debian/rules.d/filelists.mk +++ tetex-base-3.0/debian/rules.d/filelists.mk @@ -0,0 +1,118 @@ +## variables for sorting tetex-base and tetex-extra +# base variables +latexbase_pattern = /tex/latex/(base|config|tools|graphics|mfnfss) +latexbasefonts_pattern = /fonts/.*/(public/latex|mflogo) + +# fonts for tetex-extra +extra_fontslist = adobe ams bbold bbm bitstrea cmextra concrete \ + ec gothic pandora rsfs sauter stmary tc urw wasy# fontinst has a rsfs.etx +extra_fontfilelist = bsr.*map +# directories or files starting with this go to tetex-extra +extra_namelist = eurosym lambda.ini +# files in directories with that name are for tetex-extra +# extra_dirlist = amstex bluesky french hoekwater omega pictex pstricks texdraw xypic +extra_dirlist = bluesky french hoekwater omega lambda pictex pstricks texdraw xypic +# files in subdirectories of texmf/ with that name are for tetex-extra +extra_topdirlist = bibtex metapost +# documentation infrastructure to go into tetex-extra +#extra_doclist = texdoctk +# hits that should _not_ go to tetex-extra +extra_excludelist = Catalogue +extra_unusedlist = french # in fact two are found, don't know why! + +# generated variables +extra_fonts = $(extra_fontslist)# $(extra_fontpackagelist) +extra_names = $(extra_namelist) $(extra_fontfilelist)# $(extra_fontpackagelist) #$(extra_doclist) +# patterns for tetex-extra +extra_fontspattern = /fonts/.*/(`echo $(extra_fonts) | sed -e 's/ /|/g'`)/ +extra_dirpattern = /(`echo $(extra_dirlist) | sed -e 's/ /|/g'`)/ +extra_topdirpattern = /(`echo $(extra_topdirlist) | sed -e 's/ /|/g'`)/ +extra_namepattern = /(`echo $(extra_names) | sed -e 's/ /|/g'`)# no trailing / here! + +# internal variables for Makefile function +debian_filelists=debian/tetex-doc.files debian/tetex-extra.files + +destdir=debian/tetex-base/usr/share/texmf-tetex + +filelists: build $(stampdir)/copy-texmf-stamp $(stampdir)/install-remove-stamp +filelists: $(stampdir)/filelists-stamp + +$(stampdir)/filelists-stamp: $(stampdir)/files.all $(stampdir)/nonfree.files debian/tetex-doc.files debian/tetex-extra.files# debian/xfonts-tetex.files + touch $@ + +$(stampdir)/files.all: +## Create a list of all files and links. +# find ./texmf/ -path ./texmf/source -prune -o -type f -print -o -type l -print > files.all + find $(destdir) -path "./debian" -prune -o -path "./stampdir" -prune -o \ + -type f -print -o -type l -print > $(stampdir)/files.all + +$(stampdir)/nonfree.files: $(stampdir)/files.all +# Filter nonfree +# If we had a tetex-nonfree package, we'd pull the names of the files +# that would go in that package here. + +$(stampdir)/files.all-nodoc debian/tetex-doc.files: $(stampdir)/files.all +# Create a list of documentation files. + +## Generate the pattern on-the-fly, catching some stuff we may have +## been missing. + (docpattern=`find $(destdir)/doc -mindepth 1 -maxdepth 1 -type d -print | \ + sed -e 's#debian/tetex-base/usr/share/texmf-tetex#|#' | \ + awk -F"\n" '{ORS="";print $$1}' | \ + sed -e 's/^|//'` && \ + grep -E "$$docpattern" $(stampdir)/files.all > $(stampdir)/files.doc) + +# Create a list of files less documentation files. + sort $(stampdir)/files.all $(stampdir)/files.doc | uniq -u > $(stampdir)/files.all-nodoc + +# Change the pathnames of the files in files.doc and put the result +# into a debian/tetex-doc file list. +# (not needed) +# sed -e "s#^debian/tetex-base/usr/share/texmf/doc/#usr/share/doc/texmf/#g" $(stampdir)/files.doc > \ +# debian/tetex-doc.files + +$(stampdir)/files.extra debian/tetex-extra-fonts.files $(stampdir)/files.all-nodoc-noextra $(stampdir)/files.all-nodoc-noextra-nolatexbase: $(stampdir)/files.all-nodoc +# Create a list of files for tetex-extra. + grep -E \ + "$(extra_dirpattern)|$(extra_namepattern)|$(extra_fontspattern)|/tex/amstex/|$(extra_topdirpattern)" \ + $(stampdir)/files.all-nodoc > $(stampdir)/files.extra + +# Also drop extra from the main file list. + sort $(stampdir)/files.all-nodoc $(stampdir)/files.extra | \ + uniq -u > $(stampdir)/files.all-nodoc-noextra + +# Create a list of base files. These are the files from /tex/latex and the fonts directory +# that will _not_ go into tetex-extra. + grep -E "$(latexbase_pattern)|$(latexbasefonts_pattern)" \ + $(stampdir)/files.all-nodoc-noextra > $(stampdir)/files.base + sort $(stampdir)/files.all-nodoc-noextra $(stampdir)/files.base | \ + uniq -u > $(stampdir)/files.all-nodoc-noextra-nolatexbase + +# All other (i.e. non-base) files with /tex/latex in their paths go to tetex-extra, +# except lm which will be removed anyway + grep -E "/tex/latex" $(stampdir)/files.all-nodoc-noextra-nolatexbase | \ + grep -v "/tex/latex/lm/" >> $(stampdir)/files.extra + +# # Now split off Type1-files. +# grep -E '\.(afm|pfb)$$' files.extra > files.extra-fonts +# sort files.extra files.extra-fonts | uniq -u > tetex-extra.tmp +# mv -f tetex-extra.tmp files.extra +# sort files.extra-fonts > debian/tetex-extra-fonts.files + +debian/xfonts-tetex.files debian/xfonts-tetex.links: debian/tetex-extra-fonts.files +# create soft links in usr/X11R6/lib/X11/fonts/Type1/ and list these files +# in xfonts-tetex + sed -ne \ + 's@^\.\(.*[/]\)\([^/]\{1,\}\)$$@/usr/share\1\2 usr/X11R6/lib/X11/fonts/Type1/\2@p' \ + debian/tetex-extra-fonts.files > debian/xfonts-tetex.links + sed -ne \ + 's@^\..*[/]\([^/]\{1,\}\)$$@usr/X11R6/lib/X11/fonts/Type1/\1@p' \ + debian/tetex-extra-fonts.files > debian/xfonts-tetex.files + +debian/tetex-extra.files : $(stampdir)/files.extra +# Process files.extra into a debian/tetex-extra.files file that can be +# used by dh_movefiles + sed -e "s#debian/tetex-base/##" \ + $(stampdir)/files.extra > debian/tetex-extra.files + + --- tetex-base-3.0.orig/debian/rules.d/install.mk +++ tetex-base-3.0/debian/rules.d/install.mk @@ -0,0 +1,151 @@ +md5sums-extra = config.ams config.amz config.cm config.cmz +lmdirs = tex/latex/lm/ doc/fonts/lm/ fonts/afm/public/lm/ \ + fonts/enc/dvips/lm/ fonts/map/dvips/lm/ fonts/tfm/public/lm/ \ + fonts/type1/public/lm/ +preview-latex-dirs = doc/latex/preview/ tex/latex/preview +pgf-dirs = tex/latex/pgf doc/latex/pgf +xcolor-dirs = tex/latex/xcolor doc/latex/xcolor +texinfo-dirs = tex/texinfo +beamer-dirs = tex/latex/beamer doc/latex/beamer +remove-dirs = $(lmdirs) $(preview-latex-dirs) $(pgf-dirs) $(xcolor-dirs) $(texinfo-dirs) $(beamer-dirs) + + +setup-install: $(stampdir)/setup-install-stamp + +$(stampdir)/setup-install-stamp: $(stampdir)/eperl-stamp +# Make sure we're in the right directory and that we have root-like privileges. + dh_testdir + dh_testroot + dh_clean -k +# Install the directories listed in debian/*dirs into package subdirectories. + dh_installdirs -A + touch $@ + +$(stampdir)/copy-texmf-stamp: $(stampdir)/build-stamp $(stampdir)/setup-install-stamp +# Copy the whole texmf tree to the install directory. + cp -a `ls -1 | egrep -v 'debian|stampdir'` $(txmfdir) + touch $@ + +install-remove: $(stampdir)/install-remove-stamp + +$(stampdir)/install-remove-stamp: $(stampdir)/copy-texmf-stamp + # remove files that are in other packages: + # lmodern, preview-latex, pgf, xcolor, texinfo + for dir in $(remove-dirs); do rm -rf $(txmfdir)/$$dir; done + + touch $@ + + +install-base: $(stampdir)/install-base-stamp + +$(stampdir)/install-base-stamp: $(stampdir)/build-stamp $(stampdir)/setup-install-stamp +$(stampdir)/install-base-stamp: $(stampdir)/filelists-stamp $(stampdir)/copy-texmf-stamp +$(stampdir)/install-base-stamp: $(stampdir)/install-remove-stamp +### Install tetex-base. + +## set up configuration files, make a lot of links, and +## copy the md5sum files for ucf + debian/setup-conflinks -base + +# updmap cfg + cp debian/10tetex-base.updmap.cfg debian/$(package)/etc/texmf/updmap.d/10tetex-base.cfg + cp debian/tetex-base.fontmap.list debian/$(package)$(FONTMAP_MEMORY_DIR)/tetex-base.list + +## documentation and licensing stuff + +# Move the documentation directory from the texmf tree to /usr/share/doc in tetex-doc + mv debian/$(package)/usr/share/texmf-tetex/doc debian/$(docpack)/usr/share/doc/texmf +# Remove unneeded files in tetex-doc + rm debian/$(docpack)/usr/share/doc/texmf/Makefile +# Create a link within the texmf tree to the documentation. + (cd debian/$(package)/usr/share/texmf-tetex/; ln -s ../doc/texmf doc) +# Create a link within the package doc directory to the documentation. + (cd debian/$(package)/usr/share/doc/tetex-base/; ln -s ../texmf texmf) + +# Copy the dhelp definition file to the package documentation directory. + cp debian/dhelp debian/$(package)/usr/share/doc/tetex-base/.dhelp + +# Copy the LPPL file to /usr/share/doc/tetex-base. + cp -p doc/latex/base/lppl*.txt debian/$(package)/usr/share/doc/tetex-base + +# Do something about making the mkhtml script usable. +## We should move this binary to tetex-bin, really, but at least into +## an appropriate directory. In the meantime, we'll leave it where it +## is. +# chmod +x $(txmfdir)/doc/mkhtml + +# setup map state directory + cp debian/README.texmaps debian/$(package)/usr/share/$(package)/ + +# replace buggy marvosym.pfb with a version from CTAN, +# http://www.ctan.org/tex-archive/fonts/psfonts/marvosym/ + rm $(txmfdir)/fonts/type1/public/marvosym/marvosym.pfb + uudecode -o $(txmfdir)/fonts/type1/public/marvosym/marvosym.pfb debian/patches/marvosym.pfb.uu + +## Done installing tetex-base! + touch $@ + +install-nonfree: +# nothing to be done, no tetex-nonfree + +install-extra: $(stampdir)/install-extra-stamp + +$(stampdir)/install-extra-stamp: $(stampdir)/install-base-stamp +### Install tetex-extra and tetex-doc + dh_movefiles --sourcedir=debian/$(package) +# remove empty dirs from tetex-base - some might become symlinks in tetex-extra! + $(remove-emptybasedirs) +# install font config file + cp debian/20tetex-extra.updmap.cfg debian/$(extra)/etc/texmf/updmap.d/20tetex-extra.cfg + cp debian/tetex-extra.fontmap.list debian/$(extra)$(FONTMAP_MEMORY_DIR)/tetex-extra.list + + +# cweb stuff + mkdir -p debian/$(docpack)/usr/share/doc/texmf/programs/cweb-examples + cp debian/cweb-examples/* \ + debian/$(docpack)/usr/share/doc/texmf/programs/cweb-examples + +# (cd debian/$(package); find . -type d -empty -prune -exec rm -rf {} \; && find . -type d -empty -prune -exec rm -rf {} \; && find . -type d -empty -prune -exec rm -rf {} \; || true) + +# setup conffiles for tetex-extra + debian/setup-conflinks -extra +# debian/setup-conffiles -extra + for file in $(md5sums-extra); do \ + cp debian/md5sums/$$file.md5sum debian/$(extra)/usr/share/$(extra); \ + done + +# unnecessary, useful only for the CVS repository. + rm -f debian/$(docpack)/usr/share/doc/texmf/metapost/base/.cvsignore + +# Move the helpindex.html file to /var/lib/texmf (where it can be +# safely updated without violating the FHS), and link it back to +# /usr/share/doc/texmf. + mv debian/$(docpack)/{usr/share/doc/texmf/helpindex.html,var/lib/texmf} + ln -s /var/lib/texmf/helpindex.html debian/$(docpack)/usr/share/doc/texmf/ + +# install additional documentation for the Sueterlin fonts - this +# was put on CTAN only after teTeX-3.0 was released + mkdir debian/$(docpack)/usr/share/doc/texmf/fonts/gothic + uudecode -o debian/$(docpack)/usr/share/doc/texmf/fonts/gothic/suet.pdf debian/patches/suet.pdf.uu +# provide a file that allows to access documentation via http://localhost/doc/texmf/texdoc.php + cp debian/tetex-doc.apache2.sites-available debian/$(docpack)/etc/apache2/sites-available/tetex-doc + ln -s ../sites-available/tetex-doc debian/$(docpack)/etc/apache2/sites-enabled/050-tetex-doc + # disable this for now + # mv debian/$(docpack)/usr/share/doc/texmf/mkhtml.nawk debian/$(docpack)/usr/bin/index-tetexdoc + # chmod a+x debian/$(docpack)/usr/bin/index-tetexdoc + # cp debian/index-tetexdoc.1 debian/$(docpack)/usr/share/man/man1/ + + touch $@ + +install-tmp: +# very temporary; marvosym.pfb was duplicated and should not be here. + rm debian/$(package)/usr/share/doc/texmf/fonts/marvosym/marvosym.pfb + +define remove-emptybasedirs + find debian/$(package)/usr/share/texmf-tetex -type d -empty | xargs rmdir || true + find debian/$(package)/usr/share/texmf-tetex -type d -empty | xargs rmdir || true + find debian/$(package)/usr/share/texmf-tetex -type d -empty | xargs rmdir || true + find debian/$(package)/usr/share/doc/texmf -type d -empty | xargs rmdir || true + find debian/$(package)/usr/share/doc/texmf -type d -empty | xargs rmdir || true + find debian/$(package)/usr/share/doc/texmf -type d -empty | xargs rmdir || true +endef --- tetex-base-3.0.orig/debian/preinst.in +++ tetex-base-3.0/debian/preinst.in @@ -0,0 +1,71 @@ +#include variables +#!/bin/bash -e +# +# preinst maintainer script for the Debian tetex-base package. +# $Id: preinst.in 461 2006-01-17 12:13:37Z frank $ +# don't try to understand this generated script as installed with the package. +# instead, look at the source files in the source package +<:=@COPYRIGHT:>// + +## Variables needed for upgrading +dvipdfmdef=/usr/share/texmf/tex/latex/graphics/dvipdfm.def +UNUSED_CONFFILES="<:=$UNUSED_CONFFILES_BASE:>" +PREINST_MOVE_EXT=<:=$PREINST_MOVE_EXT:> +FORMER_UCF="<:=$BASE_UCF:>" +oldstuff_dir=<:=$OLDSTUFFDIR:> +UNUSED_CONFDIRS="<:=$UNUSED_CONFDIRS_BASE:>" + +# UPDMAP_CFG=/etc/texmf/updmap.d/10tetex-base.cfg +# UPDMAP_CFG_TRANSITION=/etc/texmf/updmap.d/00updmap.cfg_keep-for-tetex-base + + + +################################################################# +# Functions +################################################################# + +<:open(FUNCTIONS,'common.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +################################################################# +# Here starts the real action +################################################################# + +case "$1" in + # install is also used if the old package is in state rc + upgrade|install) + +# force removal of a file diversion of dvipdfm + if [ -f ${dvipdfmdef}.tetex ]; then + rm -f ${dvipdfmdef} + dpkg-divert --package dvipdfm --remove --rename \ + --divert ${dvipdfmdef}.tetex ${dvipdfmdef} + fi + +# remove obsolete conffiles if they are unchanged, +# otherwise move them to the appropriate place + test -d $oldstuff_dir || mkdir $oldstuff_dir + for file in $UNUSED_CONFFILES; do + preinst_remove_or_move $file + done + for file in $FORMER_UCF; do + preinst_remove_or_move_ucf $file + done + for dir in $UNUSED_CONFDIRS $oldstuff_dir; do + test -d $dir && rmdir --ignore-fail-on-non-empty $dir || true + done + + ;; + failed-upgrade|abort-upgrade) + : + ;; +esac + +#DEBHELPER# + + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: + --- tetex-base-3.0.orig/debian/control +++ tetex-base-3.0/debian/control @@ -0,0 +1,60 @@ +Source: tetex-base +Section: tex +Priority: optional +Build-Depends-Indep: debhelper (>= 4.1.16), eperl, sharutils, quilt +Maintainer: teTeX maintainers +Uploaders: Julian Gilbey , C.M. Connelly , Atsuhito KOHDA , Frank Küster +Standards-Version: 3.6.2 + +Package: tetex-base +Architecture: all +Depends: ${misc:Depends}, ucf (>= 1.02), tex-common (>= 0.12) +Replaces: texidoc, bibtex, texpsfnt, mfbasfnt, xdvik, dvipsk, mfnfss, latex, texlib, mflib, textfm, kpathsea, latex2e-doc, ltxgraph, csplain, cslatex, cstexfonts, tetex-extra (<< 2.0.2a-1), tetex-doc (<< 1.0.2+20011128), tetex-nonfree, pxfonts, txfonts, mfpic, texdoctk, tetex-bin (<< 2.99) +Pre-Depends: dpkg (>=1.6.8) +Conflicts: texidoc, bibtex, texpsfnt, mfbasfnt, xdvik, mfnfss, texlib, mflib, textfm, kpathsea, latex2e-doc, ltxgraph, csplain, cslatex, cstexfonts, tetex-bin (<= 2.99.7), xbase (<< 3.3.2.3a-2), tetex-nonfree (<< 1.0.2+20000804-2), pxfonts, txfonts, mfpic, cspsfonts, arabtex (<= 3.10-5) +Recommends: tetex-doc (>> 2.0) +Suggests: tetex-extra +Description: Basic library files of teTeX + This is a subset of all teTeX library files provided by Debian. + It should give you a working basic LaTeX system. + . + Together with tetex-bin you'll have a minimal installation. For + a full installation of teTeX, you should also install tetex-extra. + +Package: tetex-extra +Architecture: all +Pre-Depends: dpkg (>=1.6.8) +Conflicts: kpathsea, texlib, textfm, bibtex, texpsfnt, mfbasfnt, mfnfss, xdvik, amsfonts, amstex, amslatex, ltxmisc, ltxtool, psnfss, mfdcfnt, mflib, hyperref, tetex-french, cspsfonts, tetex-nonfree, pb-diagram, revtex4 (<= 4.0-2), tetex-eurosym, tetex-base (<< 2.0.2a) +Replaces: kpathsea, texlib, textfm, latex, bibtex, texidoc, texpsfnt, mfbasfnt, mfnfss, xdvik, amsfonts, amstex, amslatex, ltxmisc, ltxtool, psnfss, mfdcfnt, mflib, hyperref, cspsfonts, tetex-bin (<< 1.0.7+20021025-3), tetex-french, tetex-nonfree, pb-diagram, tetex-eurosym, tetex-base (<= 1.0.2+20011202-4) +Depends: tetex-base (>= 3.0-11), tetex-bin (>= 2.99), ucf (>= 1.02) +Provides: tetex-nonfree, pb-diagram, tetex-eurosym +Description: Additional library files of teTeX + This package contains some additional parts of teTeX that some users + might not need. This includes some PostScript fonts from Adobe, + Bitstream, URW etc. It contains fonts like EC, some from the AMS, + and some decorative fonts. Furthermore, there are additional support + files for BibTeX, Omega, PSTricks, pdfTeX, LaTeX etc. + . + Together with tetex-bin and tetex-base, this will give you a + complete teTeX installation. + +Package: tetex-doc +Section: doc +Architecture: all +Pre-Depends: dpkg (>=1.6.8) +Replaces: latex2e-doc, tetex-base (<< 3.0), tetex-nonfree +Conflicts: latex2e-doc, tetex-extra (<< 2.0) +Recommends: tetex-bin (>> 2.0) | dvi2tty, xpdf | pdf-viewer, gv | postscript-viewer, mozilla-browser | www-browser +Suggests: libapache2-mod-php4 | libapache2-mod-php5 +Description: The documentation component of the Debian teTeX packages + This package contains all the documentation of (La)TeX-packages + which are contained in tetex-base and tetex-extra. There are + several FAQ's, the LaTeX Catalogue and some more documentation about + MetaPost, fonts, PSTricks, kpathsea, pdfTeX etc. + . + To search and view the documentation, three main tools are provided: The + command line tool texdoc, the graphical tool texdoctk, and the web interface + at http://localhost/doc/texmf/texdoc.php. To use the web interface, you have + to run a local web server, e.g. apache which is installed with the suggested + apache module. + --- tetex-base-3.0.orig/debian/remove-oldmaps +++ tetex-base-3.0/debian/remove-oldmaps @@ -0,0 +1,105 @@ +#!/bin/sh +# +# Script to remove unused conffiles from /etc/texmf/dvips +# +# In previous versions, font map files were treated as configuration +# files by the teTeX packages and therefore installed in /etc/texmf +# (some were handled using ucf). In fact, however, these files hardly +# ever need to be edited. (Indeed it is much more likely that there is +# an error in the *.sty or *fd files). Therefore, these files are now +# installed in the usual TEXMF tree. +# +# Since they formally were conffiles previously, dpkg treats them +# specially: They will not be altered or removed when the package is +# updated. The purpose of this is to keep any local configuration +# changes - even if the files are no longer used, the changes therein +# can be taken as a model for new changes elsewhere. In our case, +# however, it also results in lots of unused files that probably were +# never changed. +# +# If you want, you can remove these files - it will not affect tetex's +# behavior at all. You can do this manually, or let this script do the +# work for you. When working manually, note that there are still some +# files left in /etc/texmf/dvips: Files with other extensions than "map" +# as well as map files from other packages, and generated map files. +# + +DVIPS=/etc/texmf/dvips + +ANTP="config.antp antp.map antp.enc" +ANTT="config.antt antt.map antt.enc" +BLUESKY="psfonts.ams psfonts.cm psfonts.amz psfonts.cmz" +CCPL="ccpl.map" +LUCIDA="lucidabr-k.map lucidabr.map lumath-k.map lumath.map" +PSNFSS="charter.map pazo.map psnfss.map" +MISC="cmcyr.map mathpi.map cs.map config.mirr marvosym.map pcrr8rn.map wolfram.map" +EXTRAMISC="eurosym.map" +TETEX="hoekwater.map mt-yy.map txfonts.map lucidabr-o.map pdftex35.map mathpple.map \ + ps2pk35.map mt-belleek.map pxfonts.map dvips35.map mt-plus.map ttcmex.map \ + dvipdfm35.map lumath-o.map" +PL="config.pl pl.map" +QFNT="config.qbk config.qpl config.qzc config.qcr config.qhv config.qtm qbk.map qcr.map qhv.map qpl.map qtm.map qzc.map" +XYPIC="xypic.map" + +OMEGA_UCF="omega.map" +BSRTETEX_UCF="bsr-interpolated.map bsr.map" + +# from tetex-1.x +oldfiles='antp.cfg +antt.cfg +ar-ext-adobe-bi.map +ar-ext-adobe-kb.map +ar-ext-urw-kb.map +ar-ext-urw-urw.map +ar-std-adobe-bi.map +ar-std-adobe-kb.map +ar-std-urw-kb.map +ar-std-urw-urw.map +bakoma-extra.map +config.qf +lw35extra-adobe-bi.map +lw35extra-adobe-kb.map +lw35extra-urw-kb.map +lw35extra-urw-urw.map +mathpple-ext.map +mtsupp-ext-adobe-bi.map +mtsupp-ext-adobe-kb.map +mtsupp-ext-urw-kb.map +mtsupp-ext-urw-urw.map +mtsupp-std-adobe-bi.map +mtsupp-std-adobe-kb.map +mtsupp-std-urw-kb.map +mtsupp-std-urw-urw.map +pl.cfg +raw-ar-ext-adobe-bi.map +raw-ar-ext-adobe-kb.map +raw-ar-ext-urw-kb.map +raw-ar-ext-urw-urw.map +raw-ar-std-adobe-bi.map +raw-ar-std-adobe-kb.map +raw-ar-std-urw-kb.map +raw-ar-std-urw-urw.map +raw-lw35extra-adobe-bi.map +raw-lw35extra-adobe-kb.map +raw-lw35extra-urw-kb.map +raw-lw35extra-urw-urw.map +utopia.map' + +# generated files and links are still needed, but will probably +# be moved to VARTEXMF +generated="download35.map builtin35.map psfonts_t1.map psfonts_pk.map pdftex_dl14.map pdftex_ndl14.map dvipdfm_dl14.map dvipdfm_ndl14.map ps2pk.map" + +generated_links="dvipdfm.map pdftex.map psfonts.map" + +for oldmap in $ANTP $ANTT $BLUESKY $CCPL $LUCIDA $PSNFSS \ + $MISC $EXTRAMISC $TETEX $PL $QFNT $XYPIC $OMEGA_UCF $BSRTETEX_UCF $oldfiles; do +# $generated $oldfiles; do + file=$DVIPS/$oldmap + if [ -e $file -a ! -L $file ]; then rm $file; fi +done + +# for oldlink in $generated_links; do +# file=$DVIPS/$oldlink +# if [ -L $file -a ! -f "`readlink $file`" ]; then rm $file; fi +# done + --- tetex-base-3.0.orig/debian/postinst.in +++ tetex-base-3.0/debian/postinst.in @@ -0,0 +1,145 @@ +#include variables +#!/bin/sh -e +# +# postinst maintainer script for the Debian tetex-base package. +# $Id: postinst.in 461 2006-01-17 12:13:37Z frank $ +# don't try to understand th generated script as installed with the package. +# instead, look at the source files in the source package +<:=@COPYRIGHT:>// + +## Define static variables we need +VARDVIPS=<:=$vardvips:> +VARDVIPDFM=<:=$vardvipdfm:> +VARPDFTEX=<:=$varpdftex:> +GENERATED_MAPS_DVIPS="<:=$generated_maps_dvips:>" +GENERATED_MAPS_DVIPDFM="<:=$generated_maps_dvipdfm:>" +GENERATED_MAPS_PDFTEX="<:=$generated_maps_pdftex:>" +mapdir=/usr/share/tetex-base/maps +etc=<:=$etc:> + +## Variables needed for upgrading +obsolete_dirs="/usr/lib/texmf/local, /usr/share/texmf/local" +POSTINST_MOVE_EXT="<:=$POSTINST_MOVE_EXT:>" +PREINST_MOVE_EXT=<:=$PREINST_MOVE_EXT:> +OLD_LDAT=$etc/language.dat + +oldstuff_dir=<:=$OLDSTUFFDIR:> +FORMER_UCF="<:=$BASE_UCF:>" +UNUSED_CONFFILES="<:=$UNUSED_CONFFILES_BASE:>" + +umask 022 + +# no debconf questions currently +# . <:=${CONFMODULE}:> +# db_version 2.0 + +<:open(FUNCTIONS,'common.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +<:open(FUNCTIONS,'postinst.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +################################################################# +# Here starts the real action +################################################################# + +## some things we have to do for upgraders from pre-woody versions +rmdir $obsolete_dirs 2>/dev/null || true +# case $1 in +# upgrade|reconfigure) +# ;; +# esac + +## some things we have to do for upgraders from 2.0.2 versions +case $1 in + configure|reconfigure) + # is there a file /etc/texmf/language.dat already? Move it out of the way + if [ -f $OLD_LDAT ]; then + old_ldat_md5sum=`md5sum $OLD_LDAT` + # do nothing if the md5sum matches sarge's or woody's default: + if [ ! "$old_ldat_md5sum" = fe9baf0768ade79a585a9df568dac5f6 ] && \ + [ ! "$old_ldat_md5sum" = 1d2d9b25a41ab1cec892bd3382af7645 ]; then + cat > $OLD_LDAT.$POSTINST_MOVE_EXT <> $OLD_LDAT.$POSTINST_MOVE_EXT + fi + rm $OLD_LDAT + fi + + # remove generated files that are now put into a new place + rm -rf /var/lib/texmf/dvips + + pdftexconfig_transition + + ;; +esac + +## common installation and upgrading tasks +case "$1" in + configure|reconfigure) + + # remove backup files from preinst + if [ -n "$2" ] && dpkg --compare-versions "$2" le 3.0-10 ; then + # we should echo only if there are actual files. But this would require + # to put the echo command in the loop, with checks to echo only once. + # Instead, we just prevent it from being displayed if a version has + # been configured that already had the confiles removed. + echo -n "Removing unchanged obsolete conffiles ... " + fi + for file in $UNUSED_CONFFILES; do + rm -f $oldstuff_dir/`basename $file`.$PREINST_MOVE_EXT + done + for file in $FORMER_UCF; do + rm -f $oldstuff_dir/`basename $file`.$PREINST_MOVE_EXT + if [ -x /usr/bin/ucf ]; then ucf --purge /etc/texmf/$file; fi + done + rmdir $oldstuff_dir 2>/dev/null || true # ignore errors if nonexistent or non-empty + if [ -z "$2" ] || dpkg --compare-versions "$2" le 3.0-10 ; then + echo "done" + fi + +# Update language.dat (update-language is in tex-common on which we depend) + update-language + +# if tetex-base is upgraded while tetex-bin is already installed, we must +# call mktexlr, and regenerate the formats and font maps. + clean_texenvironment + TEXINIT_P="" + TEXLINKS_P="" + KPSEWHICH="" + test -x `which fmtutil` && TEXINIT_P=`which fmtutil` || true + test -x `which texlinks` && TEXINIT_P=`which texlinks` || true + test -x `which kpsewhich` && TEXINIT_P=`which kpsewhich` || true + if [ -n "$TEXINIT_P" ] && [ -n "$TEXLINKS_P" ] && [ -n "$KPSEWHICH" ]&& \ + kpsewhich --format='web2c files' fmtutil.cnf >/dev/null && \ + kpsewhich --expand-var='$TEXMF' | grep -q "/usr/share/texmf" 2> /dev/null + then + mktexlsr + # Update fontmap configuration file and language.dat + update-updmap + # now call updmap + create_fontmaps + # create formats + mktexlsr + create_tetex_formats + mktexlsr + fi + + ;; + abort-*) + ;; +esac + + +#DEBHELPER# + + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: --- tetex-base-3.0.orig/debian/postrm.in +++ tetex-base-3.0/debian/postrm.in @@ -0,0 +1,93 @@ +#include variables +#!/bin/sh -e +# +# postrm maintainer script for the Debian tetex-base package. +# $Id: postrm.in 378 2005-12-06 19:44:38Z frank $ +# +# don't try to understand this generated script as installed with the package. +# instead, look at the source files in the source package +<:=@COPYRIGHT:>// + +## Define static variables +BASE_UCF_FILES="/etc/texdoctk/texdocrc" +DPKG_EXT="<:=$PURGE_EXTENSIONS:>" + +UNUSED_CONFFILES="<:=$UNUSED_CONFFILES_BASE:>" +PREINST_MOVE_EXT=<:=$PREINST_MOVE_EXT:> +FORMER_UCF="<:=$BASE_UCF:>" + +UNUSED_CONFDIRS="<:=$UNUSED_CONFDIRS_BASE:>" + +## Variables needed for upgrading +generated="download35.map builtin35.map psfonts_t1.map psfonts_pk.map \ + pdftex_dl14.map pdftex_ndl14.map dvipdfm_dl14.map dvipdfm_ndl14.map ps2pk.map" +generated_links="psfonts.map pdftex.map dvipdfm.map" +#/var/lib/texmf has been removed from vardirlist - some files must be removed differently +vardirlist="/var/spool/texmf /var/cache/fonts" +old_texdoctk="<:=$OLD_TEXDOCTK:>" + + +<:open(FUNCTIONS,'common.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +<:open(FUNCTIONS,'postrm.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +################################################################# +# Here starts the real action +################################################################# + +case "$1" in + upgrade) + ;; + remove) + ;; + purge) + # if these files still exist, remove them now + for file in $generated $generated_links; do + rm -f /etc/texmf/dvips/$file + done + # these directories are ours, and no package that does not (directly + # or indirectly) depend on tetex-base should ever place files there + for dir in $vardirlist; do rm -rf $dir; done + # old files from a beta texdoctk installation + rm -f $old_texdoctk + # this old file, and some possible backups, was under maintainer script control + remove_with_backups /etc/texmf/language.dat + + # remove files that were installed in 2.0.2, and renamed in our preinst + # - app-defaults/XDvi was not renamed, just taken over by + # tetex-bin if it was installed + # - 10tetex-base.cfg is a conffile, but there might be a *.postinst-bak file + for oldconffile in /etc/texmf/pdftex/pdftex.cfg /etc/texmf/updmap.d/10tetex-base.cfg /etc/X11/app-defaults/XDvi; do + remove_with_backups $oldconffile + done + for oldconffile in $UNUSED_CONFFILES $FORMER_UCF; do + newname=`get_newfilename $oldconffile` + remove_with_backups /etc/texmf/$newname + done + for oldconfdir in $UNUSED_CONFDIRS; do + rmdir /etc/texmf/$oldconfdir 2>/dev/null || true + done + + ucf_purge $BASE_UCF_FILES + ;; + abort-install|abort-upgrade) + for file in $UNUSED_CONFFILES; do + postrm_abort_restore_file $file + done + for file in $FORMER_UCF; do + postrm_abort_restore_file_ucf $file + done + ;; +esac + + +#DEBHELPER# + + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: + --- tetex-base-3.0.orig/debian/tetex-base.fontmap.list +++ tetex-base-3.0/debian/tetex-base.fontmap.list @@ -0,0 +1 @@ +10tetex-base --- tetex-base-3.0.orig/debian/postinst.functions +++ tetex-base-3.0/debian/postinst.functions @@ -0,0 +1,98 @@ +################################################################# +## Function definitions - included from file postinst.functions +################################################################# + +# common.functions need to be included also! + +# for pdftexconfig_transition() +# args: 1. command to change/add, 2. setting +ConfigReplace(){ + pdfcommand=$1 + setting="$2" + if grep $pdfcommand $newfile | grep -v '^[[:space:]]*%' >/dev/null; then + new_tempfile=`mktemp` + sed -e "s/^[[:space:]]*\\$pdfcommand=[^%]*/\\$pdfcommand=$setting /" $newfile > $new_tempfile + savemove $new_tempfile $newfile + else + # is there still an \endinput? + if [ $endinput_removed = 0 ]; then + new_tempfile=`mktemp` + sed -e 's/^[\]endinput//' $newfile > $new_tempfile + savemove $new_tempfile $newfile + endinput_removed=1 + fi + echo "\\$pdfcommand=$setting" >> $newfile + fi +} + +pdftexconfig_transition(){ + # if pdftex.cfg still exists, and the new pdftexconfig.tex does not yet + # exist, we try to provide a transition for the settings. The + # pdftexconfig.tex file that results from the transition of 2.0.2's + # unchanged default pdftex.cfg is already registered to ucf; therefore + # the user will only be asked if they have changed pdftex.cfg. + oldfile=/etc/texmf/pdftex/pdftex.cfg + newfile=/etc/texmf/tex/generic/pdftexconfig.tex + template=/usr/share/texmf-tetex/tex/generic/config/pdftexconfig.tex + + # only act if the old file is there, and the new one not yet: + test -f $oldfile && test ! -f $newfile || return 0 + # If the old file is unchanged, remove it and stop. The default md5sum is needed + # in case tetex-base 2.0.2 is removed without purging and 3.0 installed afterwards. + default_sarge_md5sum="8d08d2723661c86cd45e4a1408a5f923" + dpkg_md5sum=`dpkg_md5sum $oldfile` + : ${dpkg_md5sum:=$default_sarge_md5sum} + actual_md5sum=`md5sum $oldfile | cut -f 1 -d ' '` + if [ "$dpkg_md5sum" = "$actual_md5sum" ]; then + rm $oldfile + return 0 + fi + + # start the work + echo -n "Using obsolete pdftex.cfg to generate pdftexconfig.tex ... " + mkdir -p `dirname $newfile` + cp $template $newfile + + pdf_tempfile=`mktemp` + grep -v '^[[:space:]]*%' $oldfile > $pdf_tempfile + + # do not fiddle with \pdfoutput! + parameters="pdfadjustspacing adjust_spacing_level + pdfcompresslevel compress_level + pdfdecimaldigits decimal_digits + pdfmovechars move_chars + pdfimageresolution image_resolution + pdfpkresolution pk_resolution + pdfhorigin horigin + pdfvorigin vorigin + pdfpageheight page_height + pdfpagewidth page_width + pdflinkmargin link_margin + pdfthreadmargin thread_margin" + + + set $parameters + endinput_removed=0 + while [ $# -gt 0 ]; do + pdfcommand=$1 + parameter=$2 + setting=`grep "^[[:space:]]*$parameter" $pdf_tempfile | \ + sed -e "s/^[[:space:]]*$parameter[[:space:]][[:space:]]*\([^%]*\).*/\1/"` + if [ -n "$setting" ]; then + ConfigReplace $pdfcommand "$setting" + fi + shift; shift + done + if [ $endinput_removed = 1 ]; then + echo "\endinput" >> $newfile + fi + + rm $pdf_tempfile + + mv $oldfile $oldfile$POSTINST_MOVE_EXT + echo "done." +} + +################################################################# +## End of function definitions from file postinst.functions +################################################################# --- tetex-base-3.0.orig/debian/restore-symlinks +++ tetex-base-3.0/debian/restore-symlinks @@ -0,0 +1,65 @@ +#! /bin/sh +#(setq skeleton-pair t) + +restorelink () { if [ ! -L $1 -a ! -e $1 ]; then ln -s $2 $1; fi; } +rmlink () { if [ -L $1 ]; then rm $1; echo "rm $1"; else echo "$1 isn't symlink"; fi; } + +# to get the marvosym_links variable from a ls -l of the directory +# in the upstream sources: +# ls -l doc/fonts/marvosym/ | grep -- "->" | sed -e 's#.*:.. \(.*\) -> \(.*\)$#texmf/doc/fonts/marvosym/\1 \2#' +# and similarly for other directories. Some have been manually put together. + +marvosym_links=" +texmf/doc/fonts/marvosym/astro.README README.1st +texmf/doc/fonts/marvosym/euro.README README.1st +texmf/doc/fonts/marvosym/zodiac.README README.1st +" + +koma_links=" +texmf/doc/latex/koma-script/komascript.pdf koma-script.pdf +texmf/doc/latex/koma-script/komascr.pdf koma-script.pdf +" + +html_links=" +texmf/doc/index.html newhelpindex.html +" + +map_links=" +texmf/fonts/map/dvips/updmap/psfonts.map psfonts_t1.map +texmf/fonts/map/dvipdfm/updmap/dvipdfm.map dvipdfm_ndl14.map +texmf/fonts/map/pdftex/updmap/pdftex.map pdftex_ndl14.map +" + +linklist="$marvosym_links $koma_links $html_links $map_links" + +if [ $# -eq 0 ]; then + set $linklist + while [ $# -gt 0 ]; do + if [ $# -eq 1 ]; then + echo "Variable linklist contains odd number of filenames!" + echo "Exiting." + exit 1 + else + restorelink $1 $2 + shift 2 + fi + done +else + set $linklist + while [ $# -gt 0 ]; do + if [ $# -eq 1 ]; then + echo "Variable linklist contains odd number of filenames!" + echo "Exiting." + exit 1 + else + rmlink $1 + shift 2 + fi + done +fi + +#restorelink texk/odvipsk/newprotos.h ../dvipsk/newprotos.h +#restorelink texk/web2c/pdftexdir/pdfcrypt.c pdfcrypt-full.c +#restorelink utils/texinfo/intl/libintl.h .././intl/libgettext.h +#restorelink texk/dvipsk/ptexmac.h ../web2c/pdftexdir/ptexmac.h +#restorelink texk/oxdvik/c-auto.in ../xdvik/c-auto.in --- tetex-base-3.0.orig/debian/reportbug.extra +++ tetex-base-3.0/debian/reportbug.extra @@ -0,0 +1,53 @@ +#!/bin/sh + +cat <&3 <&3 +echo " List of ls-R files" >&3 +echo >&3 +for file in $ls_R_files; do + ls -l $file >&3 +# echo >&3 +# cat $file >&3 +# echo "######################################" >&3 +done --- tetex-base-3.0.orig/debian/unclear_license +++ tetex-base-3.0/debian/unclear_license @@ -0,0 +1,56 @@ +This file contains preliminary information about unclear licenses. It +is intended for maintainers only - I want to collect unclear files +instead of contacting upstream for each single one. + +Also note that I am often working offline - an entry might only +reflect that I would need CTAN access to clarify the license. + +A. Packages with unclear or problematic licenses + +- euler: LPPL according changelog, but no indication in file. + +- listings: LPPL, plus: + +,---- +| *Modification*advice* +| +| Permission is granted to modify the listings package as well as +| lstdrvrs.dtx. You are not allowed to distribute a modified version of +| the listings package or lstdrvrs.dtx unless you change the file names +| and provide the original files. In any case it is better to contact +| the address below; other users will welcome removed bugs, new +| features, and additional programming languages. + +This is more restrictive than LPPL 1.3 (6.a and 6.d.2). The title is advice... + +- ae: Just a formal problem, the GPL is included, but nowhere is it + explicitly stated that this license applies to the package. + +- amsclass.dtx, amsfonts.dtx, amsmath.dtx: LPPL according to catalogue, + but more restrictive in the file; nothing in 00readme on CTAN. + +- antp: PD according to catalogue, no indication in files or on CTAN + +- cite: chapterbib.sty has no formal license statement + +- cmbright: tfm files are not in mf/manifest text, license? Source? + (--> Walter Schmidt) + +- concmath fonts: no license at all (concmath.dtx' license is probably + meant to cover them, but it doesn't. + +- cslatex.dtx/ins: No license at all, at least not in english (and it + seems also not in czech). + +- custom-bib: no formal license statement for mbs files, only for + dtx. + +- dstroke: is the restriction ("don't use DEKs filenames") DFSG-free? + +- dvilj: no license statement at all in the installed files + +- endfloat: horrible wording, even GPL is spelled out wrong... + +- extsizes: Many of the files don't have a license statement. + +- fancyheadings: no license statement --- tetex-base-3.0.orig/debian/missingfiles +++ tetex-base-3.0/debian/missingfiles @@ -0,0 +1,3 @@ +mathpi.map +wolfram.map + --- tetex-base-3.0.orig/debian/dhelp +++ tetex-base-3.0/debian/dhelp @@ -0,0 +1,9 @@ + +tex +TeX +texmf +texmf/index.html + +teTeX, A Documentation Guide + + --- tetex-base-3.0.orig/debian/NEWS.Debian +++ tetex-base-3.0/debian/NEWS.Debian @@ -0,0 +1,71 @@ +tetex-base (3.0-12) unstable; urgency=low + + * Customisation in 00updmap.cfg + + Parts of the file /etc/texmf/updmap.d/00updmap.cfg have been taken + over by the tex-common package; the rest has been moved to + 10tetex-base.cfg and 10tetex-extra.cfg. Since some map files have + changed name or have been split, automatic migration isn't possible. + If you have previously disabled or added font map files in this file, + you should manually transfer your changes to 10tetex-base.cfg, + 10tetex-extra.cfg or (in case of additions) something like + 99local.cfg. + + -- Frank Küster Fri, 13 Jan 2006 17:42:34 +0100 + +tetex-base (3.0-11) unstable; urgency=low + + * Configuration file handling: + + teTeX does no longer ship any TeX input or map files as configuration + files (see tetex-bin's README.Debian, section "Configuration file + placement", and the Debian TeX Policy in tex-common). Former + conffiles are removed if they are unchanged from the last distributed + version. + + * New TEXMF trees + + teTeX now installs its files into /usr/share/texmf-tetex, accessible + as TEXMFDIST. It also depends on a version of tex-common that + supports the new TEXMFSYSCONFIG tree in /etc/texmf. + + -- Frank Küster Mon, 5 Dec 2005 18:02:19 +0100 + +tetex-base (3.0-7) unstable; urgency=low + + * The new TeX Directory Structure (TDS) has new locations for some font + files, in particular the map files. If you have locally installed + fonts, you will get warnings when updmap is run, indicating the + changed locations. The location for encocding files has also + changed. + + Later in etch's release cycle, we should turn that text into an + easy-to-follow explanation what to do, and the warnings back to + errors. + + + -- Frank Küster Tue, 18 Oct 2005 17:08:12 +0200 + +tetex-base (3.0-4) unstable; urgency=low + + * In version 2.0.2c, *.ini files for format generation were treated as + conffiles. However, this is not really the case - according to the + LPPL, changed format files should nearly always be renamed anyway. + Therefore these files are in the main TEXMF tree from version 3.0 + onwards. Because they might contain user-specific adaptation, they + have been kept on the system, and been given the extension + ".preinst.bak". You can safely delete them. + + -- Frank Küster Tue, 29 Mar 2005 18:52:20 +0200 + +tetex-base (2.99.3) unstable; urgency=low + + * Previously, tetex-base came with some static font map files which + were enough for external programs to use the TeX fonts included in + tetex-base. Starting with this upstream version, such static templates + do no longer exist, and the map files are only generated when + tetex-bin is installed. Packages that need such mapfiles therefore + need to depend on tetex-bin now. + + -- Frank Küster Wed, 17 Nov 2004 21:54:38 +0100 + --- tetex-base-3.0.orig/debian/common.variables_newer +++ tetex-base-3.0/debian/common.variables_newer @@ -0,0 +1 @@ +dummy content so that dpkg-source will keep this timestamp file --- tetex-base-3.0.orig/debian/COPYRIGHT.scripts +++ tetex-base-3.0/debian/COPYRIGHT.scripts @@ -0,0 +1,19 @@ +# The eperl code is taken from the auctex package, Copyright (C) 1999, +# 2000, 01, 02, 03, 04 by Davide Giovanni Maria Salvetti. +# +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This file is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to: The Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +# +# On Debian GNU/Linux System you can find a copy of the GNU General Public +# License in "/usr/share/common-licenses/GPL". --- tetex-base-3.0.orig/debian/create-md5sums +++ tetex-base-3.0/debian/create-md5sums @@ -0,0 +1,19 @@ +#!/bin/sh +#(setq skeleton-pair t) + +filelist=$1 +dirhier=$2 +version=$3 + +target_dir=debian/md5sums + +for file in `cat $filelist`; do + destfile=$target_dir/`basename $file`.md5sum + if [ -f $dirhier/$file ]; then + if ! grep $version $destfile >/dev/null 2>&1; then + md5sum $dirhier/$file | sed -e "s@$dirhier/$file@$version@" >> $destfile + fi + else + echo "$file does not exist in $version" + fi +done --- tetex-base-3.0.orig/debian/oldmaps +++ tetex-base-3.0/debian/oldmaps @@ -0,0 +1,45 @@ +The following maps existed in tetex-1.0*, but not in 2.0*. They were +deleted by a maintainer script in some versions. Therefore, should +they ever need to be resurrected, they need to be modified (e.g. by +some comment, just as we do it with omega.map in patch-deb. + +oldfiles='antp.cfg +antt.cfg +ar-ext-adobe-bi.map +ar-ext-adobe-kb.map +ar-ext-urw-kb.map +ar-ext-urw-urw.map +ar-std-adobe-bi.map +ar-std-adobe-kb.map +ar-std-urw-kb.map +ar-std-urw-urw.map +bakoma-extra.map +config.qf +lw35extra-adobe-bi.map +lw35extra-adobe-kb.map +lw35extra-urw-kb.map +lw35extra-urw-urw.map +mathpple-ext.map +mtsupp-ext-adobe-bi.map +mtsupp-ext-adobe-kb.map +mtsupp-ext-urw-kb.map +mtsupp-ext-urw-urw.map +mtsupp-std-adobe-bi.map +mtsupp-std-adobe-kb.map +mtsupp-std-urw-kb.map +mtsupp-std-urw-urw.map +pl.cfg +raw-ar-ext-adobe-bi.map +raw-ar-ext-adobe-kb.map +raw-ar-ext-urw-kb.map +raw-ar-ext-urw-urw.map +raw-ar-std-adobe-bi.map +raw-ar-std-adobe-kb.map +raw-ar-std-urw-kb.map +raw-ar-std-urw-urw.map +raw-lw35extra-adobe-bi.map +raw-lw35extra-adobe-kb.map +raw-lw35extra-urw-kb.map +raw-lw35extra-urw-urw.map +utopia.map' + --- tetex-base-3.0.orig/debian/rules.in +++ tetex-base-3.0/debian/rules.in @@ -0,0 +1,250 @@ +#include "variables" +<:###############################################################################:>// +<:# WARNING: The rules file AUTOMATICALLY REGENERATES itself from this very one #:>// +<:# Read the GNU Make Manual if you don't understand Makefile Remaking! #:>// +<:###############################################################################:>// +#!/usr/bin/make -f +# +# do not edit this file, instead edit rules.in! +# $Id: rules.in 387 2005-12-08 17:56:37Z frank $ + +# The debian/rules(.in) file was nearly completely rewritten by +# Frank Küster frank@debian.org in 2004, with patches by +# Florent Rougon , 2005, +# +# who share the copyright. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This is the debhelper compatibility version to use. +export DH_COMPAT=3 + +EPERL_FILES := debian/preinst debian/postinst debian/postrm \ + debian/tetex-base.dirs \ + debian/tetex-extra.postinst debian/tetex-extra.preinst \ + debian/tetex-extra.postrm debian/tetex-extra.dirs \ + debian/setup-conflinks \ + debian/common.functions +eperl_sourcefiles=debian/variables debian/COPYRIGHT.scripts \ + debian/common.variables debian/common.functions +tex_common_dir = ../../tex-common/tex-common +real_common_variables=$(tex_common_dir)/debian/common.variables +real_common_functions_in=$(tex_common_dir)/debian/common.functions.in + +SHELL = /bin/bash + +package=tetex-base +extra=tetex-extra +docpack=tetex-doc +txmfdir=debian/$(package)/usr/share/texmf-tetex +extxmfdir=debian/$(extra)/usr/share/texmf-tetex +vardir=debian/$(package)/var/lib/texmf +pkgdir=debian/$(package)/usr/share/tetex-base +etcdir=/etc/texmf +debetc=debian/$(package)/etc/texmf + +### helper targets for the install target +stampdir=stampdir +include debian/rules.d/filelists.mk +include debian/rules.d/install.mk + +# needed for quilt: +export QUILT_PATCHES=./debian/patches + + +### variables from eperl that need to be passed to the static helper makefiles +FONTMAP_MEMORY_DIR=<:=$FONTMAP_MEMORY_DIR:> + +############### +# Main targets +############### + +# Eperl is simply great: thanks, Davide! +% :: %.in $(eperl_sourcefiles) + eperl -P -o $@ $< + -head -1 $@ | grep '^#!/' >/dev/null && chmod a+x $@ + +# Override this rule for debian/rules, which needs an additional command +debian/rules: debian/rules.in $(eperl_sourcefiles) + # Refresh debian/common.variables and debian/common.functions.in every + # time the rules file is going to be regenerated + $(update_commonstuff) + # Regenerate the rules file + eperl -P -o $@ $< + +# Override the general rule for eperl-generated files in order to avoid a +# circular dependency (debian/common.functions is listed in +# $(eperl_sourcefiles)). +debian/common.functions: debian/common.functions.in debian/common.variables + eperl -P -o $@ $< + + +build: $(stampdir)/build-stamp + +install: $(stampdir)/eperl-stamp $(stampdir)/install-stamp + +binary: binary-indep binary-arch + +sarge: debian/sarge-stamp + +sid: debian/sid-stamp + + +############################## +# Subtargets that do the work +############################## + +# common.variables and common.functions are shared between the +# tetex-base and tetex-bin source packages. On a normal build, the +# versions included in the individual source packages are used. +# Developers can use the most recent version from tex-commons svn +# repository. If you want to use this mechanism, check out the trunk +# of the tetex-common tree and pass the variable $(tex_common_dir) to +# make, indicating its location relative to the build dir. The +# default is ../../tex-common/tex-common/. +define update_commonstuff +test -e $(real_common_variables) && \ + test $(real_common_variables) -nt debian/common.variables && \ + cp $(real_common_variables) debian/ || true + +test -e $(real_common_functions_in) && \ + test $(real_common_functions_in) -nt debian/common.functions.in && \ + cp $(real_common_functions_in) debian/ && \ + eperl -P -o debian/common.functions debian/common.functions.in || true +endef + +# For command-line use +commonstuff_update: + $(update_commonstuff) + +$(stampdir): + -mkdir $(stampdir) + +$(stampdir)/eperl-stamp: $(stampdir) $(EPERL_FILES) + touch $@ + +$(stampdir)/build-stamp: $(stampdir) patch-stamp + $(check-svn) + dh_testdir +# Make sure that our build scripts are executable. +# (only needed after upstream changes) +# chmod +x debian/remove-bad-license-files + + touch $(stampdir)/build-stamp + +# quilt patch targets +clean-patches: + -quilt pop -a + rm -f patch-stamp + +patch-stamp: + quilt push -a + touch $@ + + +### Clean up the source tree. +clean: clean-patches + dh_testdir + dh_testroot + $(update_commonstuff) + + dh_testdir + dh_testroot +# Make sure that our build scripts are executable. + chmod +x debian/remove-bad-license-files + +# Remove files that we can't distribute if they're still in the tree +# (needed only after an upstream change) +# debian/remove-bad-license-files + +# Run dh_clean to clean up the source tree, and remove stamps and filelists + dh_clean -Xconfig.old ./$(stampdir)/*-stamp ./$(stampdir)/files* ./debian/*.links ./debian/*.files + +# clean eperl files + rm -f $(EPERL_FILES) + +### Install the files for the packages. + +$(stampdir)/install-stamp: $(stampdir)/build-stamp $(stampdir)/setup-install-stamp +$(stampdir)/install-stamp: filelists install-base install-extra install-nonfree + # these targets are in debian/rules.d/{filelists.mk,install.mk} + touch $(stampdir)/install-stamp + +binary-indep: build install + $(check-svn) + dh_testdir + dh_testroot +# no debconf questions currently +# dh_installdebconf -p$(package) + dh_installdocs -i -N tetex-extra-fonts <:=$README_sarge:> +# dh_installdocs -p tetex-extra-fonts debian/copyr.type1 debian/changelog -X copyright + + +# Remove the /usr/share/doc/tetex-extra directoriy and +# replace ist with a link to the /usr/share/doc/tetex-base directory + rm -rf debian/$(extra)/usr/share/doc/$(extra) + ln -s tetex-base debian/$(extra)/usr/share/doc/tetex-extra +# rm -rf debian/xfonts-tetex/usr/share/doc/xfonts-tetex +# (cd debian/xfonts-tetex/usr/share/doc/; ln -s tetex-extra-fonts xfonts-tetex) + ln -s ../texmf debian/$(docpack)/usr/share/doc/$(docpack)/ + + dh_installchangelogs ChangeLog -p tetex-base -p tetex-doc + cp debian/changelog.Debian.experimental debian/$(package)/usr/share/doc/$(package)/ + cp debian/changelog.Debian.experimental debian/$(docpack)/usr/share/doc/$(docpack)/ + dh_compress -Xhelpfile + dh_installinfo + +# Install reportbug scripts + install -D --mode=755 debian/reportbug.base debian/$(package)/usr/share/bug/tetex-base/script + install -D --mode=644 debian/reportbug-control.base debian/$(package)/usr/share/bug/tetex-base/control + install -D --mode=755 debian/reportbug.extra debian/$(extra)/usr/share/bug/tetex-extra/script + + dh_fixperms -i --exclude=var/cache/fonts + dh_gencontrol -i + dh_installdeb -i + dh_md5sums -i + dh_builddeb -i + +# Beep to let the builder know we're done. + echo -en "\a" + +## There are none now, but if we fix the mkhtml situation without +## moving the script to tetex-bin, there will be need to be a manpage. +# dh_installman + + +binary-arch: build +# There are no architecture-dependent files generated by this package. +# If there were any they would be made here. + + +#################################################################### +# targets to compile for sarge +#################################################################### + +debian/sarge-stamp: + cp debian/changelog debian/sarge/changelog.sid + sed -e s/<:=$VERSION:>/<:=$SARGEVERSION:>/ debian/sarge/changelog.sid \ + > debian/changelog && rm debian/sid-stamp + # need to remake rules + touch debian/rules.in + echo "dummy content for dpkg-source" > debian/sarge-stamp + +debian/sid-stamp: + mv debian/sarge/changelog.sid debian/changelog && rm debian/sarge-stamp + # need to remake rules + touch debian/rules.in + echo "dummy content for dpkg-source" > debian/sid-stamp + +.PHONY: build clean binary-indep binary-arch binary install sarge sid +.PHONY: commonstuff_update + +define check-svn + test -d debian/.svn && \ + (echo "please clean subversion directories"; exit 1) || true +endef + +# Local Variables: +# mode: Makefile +# End: --- tetex-base-3.0.orig/debian/tetex-extra.postinst.in +++ tetex-base-3.0/debian/tetex-extra.postinst.in @@ -0,0 +1,63 @@ +#include variables +#!/bin/sh -e +# +# postinst maintainer script for the Debian tetex-extra package. +# $Id: tetex-extra.postinst.in 400 2005-12-11 14:10:30Z frank $ +<:=@COPYRIGHT:>// + +## Define static variables we need +UNUSED_CONFFILES="<:=$UNUSED_CONFFILES_EXTRA:>" +FORMER_UCF="<:=$BLUESKY_UCF:>" +PREINST_MOVE_EXT=<:=$PREINST_MOVE_EXT:> +oldstuff_dir=<:=$OLDSTUFFDIR:> + + +<:open(FUNCTIONS,'common.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +################################################################# +# Here starts the real action +################################################################# + +case "$1" in + configure|abort-*) + + # remove backup files from preinst + if [ -z "$2" ] || dpkg --compare-versions "$2" le 3.0-10 ; then + # we should echo only if there are actual files. But this would require + # to put the echo command in the loop, with checks to ech only once. + # Instead, we just prevent it from being displayed if a version has + # been configured that already had the confiles removed. + echo -n "Removing unchanged obsolete conffiles ... " + fi + for file in $UNUSED_CONFFILES; do + rm -f $oldstuff_dir/`basename $file`.$PREINST_MOVE_EXT + done + for file in $FORMER_UCF; do + rm -f $oldstuff_dir/`basename $file`.$PREINST_MOVE_EXT + if [ -x /usr/bin/ucf ]; then ucf --purge /etc/texmf/$file; fi + done + rmdir $oldstuff_dir 2>/dev/null || true # ignore errors if nonexistent or non-empty + if [ -z "$2" ] || dpkg --compare-versions "$2" le 3.0-10 ; then + echo "done" + fi + + mktexlsr + echo "Creating missing formats." + create_tetex_formats --missing + update-updmap --quiet + create_fontmaps + ;; + *) + echo "tetex-extra: postinst called with unknown argument: '$1''" >&2 + ;; +esac + + +#DEBHELPER# + + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: --- tetex-base-3.0.orig/debian/watch +++ tetex-base-3.0/debian/watch @@ -0,0 +1,2 @@ +version=2 +ftp://cam.ctan.org/pub/archive/systems/unix/teTeX/current/distrib/tetex-texmf-(.*).tar.gz --- tetex-base-3.0.orig/debian/fixhyphenation.in +++ tetex-base-3.0/debian/fixhyphenation.in @@ -0,0 +1,139 @@ +#include variables +#!/bin/sh -e +# +# fixhyphenation script for the Debian tetex packages. +# $Id: fixhyphenation.in 113 2005-08-04 15:02:54Z frn $ +<:=@COPYRIGHT:>// + +# static variables +LDAT=/etc/texmf/language.dat + + +###################################### +# Explanations +###################################### + +# in teTeX 2.0.2 in Debian, language.dat handling was mixed between +# the postinst scripts of tetex-bin and tetex-base. Since the betas +# for 3.0, this has been moved to this external script, which is part +# of tetex-base. +# +# It will usually be called by tetex-base's postinst, +# but since it uses kpsewhich this will only work in an upgrade +# situation, when tetex-bin is yet installed. If tetex-base was +# removed, but not purged, with an unusable language.dat file present, +# it has to be called again after tetex-bin has been installed. +# +# The script simply ignores that language.dat is handled by ucf. This +# can be justified as follows: a) the script only makes changes to +# language.dat if the user has made changes to it, i.e. the installed +# version is not the same and has a different md5sum as the version in +# /var/lib/ucf/hashfile. Therefore, from the point of view of ucf, +# nothing is changed. b) The script only makes changes that are needed +# to prevent the fmtutil call later in the postinst scripts from +# failing. "Preserve user changes" does not mean to preserve user +# errors. +# +# Here comes a history of the different checks/fixes: +# +# 2.0.2b-4, 2004-08-30 +# The following bugfix checks have entered tetex-bin at the times and +# versions indicated, but they are also necessary in tetex-base. +# +# 2.0.2-16, 2004-07-21 +# before we do our fancy language.dat handling, we have to work around a +# temporary problem: ukhyphen.tex is no longer contained in tetex-base. +# We have to disable it, without offering it in the debconf dialog. If, +# however, the user has a local copy in her TEXMF tree, we want to keep it. +# We have to do this even if language.dat is not managed by debconf. +# +# 2.0.2-20, 2004-08-25 +# There's one more fix to do: In some tetex-base version, we accidently +# shipped language.dflt with a missing comment sign. If this is still +# in language.dat, we have to fix this. +# +# upgrade from 2.0.2 to 3.0 (or 2.99...): +# tetex-base now contains huhyphn.tex instead of huhyph.tex, and eshyph.tex instead of sphyph.tex +# if the user has not accepted the changes to language.dat, the format +# generation later in this postinst would fail if we don't change +# these entries. + +############################################################################ +# function definitions - look for "real action" to find the starting point +############################################################################ + +comment_pattern(){ + oldpattern=$1 + alias=$2 + comment="$3" # must have newlines escaped with \ + if grep $oldpattern $LDAT | grep -v ^% >/dev/null; then # &2 is not redirected on purpose + if ! kpsewhich $oldpattern >/dev/null; then + tempfile=`mktemp -t` + if [ $alias ]; then + sed -e "s/^\(.*$oldpattern\)/%! \1/; s/\(=$alias\)/%! \1/; /$alias/ a \ +$comment +" $LDAT > $tempfile + else + sed -e "s/^\(.*$oldpattern\)/%! \1/; /$oldpattern/ a \ +$comment +" $LDAT > $tempfile + fi + chown --reference=$LDAT $tempfile + chmod --reference=$LDAT $tempfile + mv $tempfile $LDAT + fi + fi +} +change_pattern(){ + oldpattern=$1 + newpattern=$2 + comment="$3" # must have newlines escaped with \ + if grep $oldpattern $LDAT | grep -v ^% >/dev/null; then # &2 is not redirected on purpose +# if ! kpsewhich $oldpattern >/dev/null; then + if true; then + tempfile=`mktemp -t` + # only replace when active, but add comment always + sed -e "/$oldpattern/ { s/^\([^%]*\)$oldpattern/\1$newpattern/; a \ +$comment +} " $LDAT > $tempfile + chown --reference=$LDAT $tempfile + chmod --reference=$LDAT $tempfile + mv $tempfile $LDAT + fi + fi +} + +###################################### +# Here starts the real action +###################################### + +test -x "`which kpsewhich`" || exit 0 # tetex-bin not yet installed + +# for versions less than 2.0.2-16 + comment_pattern "ukhyphen.tex" "UKenglish" \ +"%! The british patterns in ukhyphen.tex are non-free and \ +%! therefore no longer included in teTeX \ +%! [ added by teTeX postinst] +" +# for versions less than 2.0.2-21 +# look for the missing comment sign + tempfile=`mktemp -t` + sed 's@^\(For use with ngerman\)@\% \1@' < $LDAT > $tempfile + mv $tempfile $LDAT + +# for versions less than 2.99.3 + change_pattern "huhyph.tex" "huhyphn.tex" \ +"%! The hungarian (magyar) hyphenation patterns file has been \\ +%! renamed from huhyph.tex to huhyphn.tex \\ +%! [ added by teTeX postinst] +" +change_pattern "sphyph.tex" "eshyph.tex" \ +"%! The spanish hyphenation patterns file has been \\ +%! renamed from sphyph.tex to eshyph.tex \\ +%! [ added by teTeX postinst] +" + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: --- tetex-base-3.0.orig/debian/tetex-extra.postrm.in +++ tetex-base-3.0/debian/tetex-extra.postrm.in @@ -0,0 +1,76 @@ +#include variables +#!/bin/sh -e +# +# postrm maintainer script for the Debian tetex-extra package. +# $Id: tetex-extra.postrm.in 387 2005-12-08 17:56:37Z frank $ +<:=@COPYRIGHT:>// + +<:open(FUNCTIONS,'postrm.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +<:open(FUNCTIONS,'common.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +## Static variable definitions +UNUSED_CONFFILES="<:=$UNUSED_CONFFILES_EXTRA:>" +FORMER_UCF="<:=$BLUESKY_UCF:>" +PREINST_MOVE_EXT=<:=$PREINST_MOVE_EXT:> +UNUSED_CONFDIRS="<:=$UNUSED_CONFDIRS_EXTRA:>" + +EXTRA_FORMATS="amstex.fmt lambda.fmt lamed.fmt metafun.mem mpost.mem" + +################################################################# +# local function definition +################################################################# + +remove_formats(){ + for format in $EXTRA_FORMATS; do + rm -f /var/lib/texmf/web2c/$format + basename=${format%.*} + rm -f /var/lib/texmf/web2c/$basename.log + done +} + +################################################################# +# Here starts the real action +################################################################# + +case "$1" in + remove|disappear) + # we remove tetex-extra's formats always, also on upgrade: If there was an error in + # tetex-extra that caused a corrupted format to be build, it has to be redone. + # on abort-* it does not hurt. + remove_formats + run_if_exist update-updmap --quiet + if run_if_exist --check-only updmap; then create_fontmaps; fi + # now play it again, Sam + run_if_exist mktexlsr + ;; + purge) + for oldconffile in $UNUSED_CONFFILES $FORMER_UCF; do + newname=`get_newfilename $oldconffile` + remove_with_backups /etc/texmf/$newname + done + for oldconfdir in $UNUSED_CONFDIRS; do + rmdir /etc/texmf/$oldconfdir 2>/dev/null || true + done + run_if_exist mktexlsr + ;; + abort-install|abort-upgrade) + for file in $UNUSED_CONFFILES; do + postrm_abort_restore_file $file + done + for file in $FORMER_UCF; do + postrm_abort_restore_file_ucf $file + done + ;; +esac + +#DEBHELPER# + + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: + --- tetex-base-3.0.orig/debian/tetex-base.dirs.in +++ tetex-base-3.0/debian/tetex-base.dirs.in @@ -0,0 +1,11 @@ +#include variables +usr/share/texmf-tetex +usr/share/doc/tetex-base +usr/share/tetex-base/maps +etc/X11/app-defaults +etc/texmf/updmap.d +<:=$LANGUAGE_DIR:> +var/lib/texmf/web2c +var/lib/tex-common/fontmap-cfg +var/lib/tex-common/language-cnf +var/cache/fonts --- tetex-base-3.0.orig/debian/tetex-legalese +++ tetex-base-3.0/debian/tetex-legalese @@ -0,0 +1,248 @@ +#!/bin/sh +# $Id: tetex-legalese 113 2005-08-04 15:02:54Z frn $ +# Script that should help the maintainers of the tetex packages in Debian +# with maintaining the copyright file. +# License: GPL +# Copyright: Frank Küster (2004) +# +#(setq skeleton-pair t) + +# variable initialization. The main program starts at "main program" +action="" +exitcode=0 +old_pwd=`pwd` +sortorder=file + +# internal variables +list_classified=Copyright.Files +filelist=tetex-texmf.files + +# function defining +usage(){ +cat < /dev/null | \ + sed -e 's@[.][.]@/usr/share@g' | \ + sort > $filelist +} + +list_classified(){ + case $sortorder in + file) + egrep -v '^#|^%|^$' $list_classified | sort + ;; + package) + grep -v ^# $list_classified + ;; + *) + err_msg 2 "Internal error: impossible sortorder" + ;; + esac +} + +list_classified_packages(){ + grep '^%' $list_classified | \ + sed -e 's/^% //g' | \ + sed -e 's/[[:space:]]%src%.*$//g' | \ + grep -v "Individual Files, not belonging to any package" +} + +list_unclassified(){ + check_filelist + output_sortorder=$sortorder + sortorder=file + tempfile=`mktemp` + tempfile2=`mktemp` + list_classified | grep -v "/source/" > $tempfile + sortorder=$output_sortorder + case $sortorder in + file) + egrep -v '^#|^%|^$' $filelist > $tempfile2 + sort $tempfile $tempfile2 | uniq -u + ;; + package) + echo "Package ordering for unclassified files is not yet implemented." + echo "Please teach me perl." + ;; + *) + err_msg 2 "Internal error: impossible sortorder" + ;; + esac +} + +list_unclassified_packages(){ + echo "This function has not been implemented yet," + echo "because we do not have a list of all packages installed." +} + +query_file(){ + if grep $queryname $list_classified > /dev/null 2>&1; then + while read first second ; do + if [ "$first" = '%' ]; then + package=$second + fi + if echo $first | grep $queryname; then + echo "The file: $first" + echo "matches $queryname" + echo "It has been classified and is in Package: $package" + echo + fi + done < $list_classified + else + echo "The file" + echo $queryname + echo "has not yet been classified with respect to its license." + fi +} + +query_package(){ + while read first second; do + if [ "$first" = '%' ]; then + if echo $second | grep $queryname > /dev/null 2>&1; then + echo "The package: $second" + echo "matches $queryname" + echo "and has been classified." + echo + fi + fi + done < $list_classified +} + +# main program +# +# parameter handling + +if [ $# -eq 0 ]; then + err_msg_usage 1 "Please specify an action" +fi + +while [ $# -gt 0 ]; do + case $1 in + -h|--help|--usage) + usage;; + -c|--classified-files) + assign_action list_classified ;; + -u|--unclassified-files) + assign_action list_unclassified ;; + -C|--classified-packages) + assign_action list_classified_packages ;; + -U|--unclassified-packages) + assign_action list_unclassified_packages ;; + -f|--query-file) + assign_action query_file + queryname="$2" + shift;; + -p|--query-package) + assign_action query_package + queryname="$2" + shift;; + -N|--sort-filename) + sortorder=file ;; + -P|--sort-package) + sortorder=package ;; + -r|--regenerate-list) + assign_action regenerate ;; + *) + err_msg_usage 1 "Unrecognized option" + esac + shift +done + +if [ -z "$action" ]; then + err_msg 1 "Please specify an action! (-c, -u, -C, -U, -f, -p, -r)" +fi + +trap 'cleanup' 1 2 3 7 13 15 +checkdir + +$action --- tetex-base-3.0.orig/debian/variables +++ tetex-base-3.0/debian/variables @@ -0,0 +1,111 @@ +<:# Copyright (C) 1999, 2000, 01, 02, 03, 04 by Davide Giovanni Maria Salvetti.:>// +<:# Copyright (C) 2004 by Frank Küster .:>// +<:# $Id: variables 400 2005-12-11 14:10:30Z frank $:>// +<:use File::Basename:>// +<:$PACKAGE="tetex-base":>// +<:open(CHANGELOG,"changelog");($_=)=~/tetex-bin \((.*)\)/;$VERSION="$1":>// +<:$VARTEXMF="/var/lib/texmf":>// +<:$PKG_SHAREDIR="/usr/share/tetex-base":>// +<:$LDAT_PATTERNS="inhyph.tex bahyph.tex cahyph.tex hrhyph.tex czhyph.tex \\ + dehypht.tex dehyphn.tex dkhyphen.tex nehyph.tex fi8hyph.tex frhyph.tex \\ + gahyph.tex grhyph.tex icehyph.tex ithyph.tex lahyph.tex huhyphn.tex nohyph.tex \\ + nohyphb.tex nohyphbc.tex plhyph.tex pt8hyph.tex rohyphen.tex ruhyphen.tex \\ + sehyph.tex skhyph.tex sihyph23.tex sphyph.tex trhyph.tex ukrhyph.tex \\ + ukrhyph.t2a ukrhyph.lcy ukrhyph.ot2":>// +<:# this list is from dpkg-1.10.9/include/dpkg.h.in: :>// +<:$VARTOP_GENERATED="helpindex.html ls-R ls-R-TEXMFMAIN":>// +<:$STANDARD_INFO_TEXT="This file is no longer needed. You may safely delete it.":>// +<:$MOVE_GENERIC_UCF="generic/fontmath.cfg generic/fonttext.cfg generic/preload.cfg":>// +<:#$MOVE_CONTEXT_NOUCF="original-adobe-euro.map original-context-symbol.map original-vogel-symbol.map":>// +<:$MOVE_CONTEXT_UCF="original-ams-euler.map original-ams-cmr.map original-youngryu-tx.map original-youngryu-px.map":>// +<:$unused_contextmaps="il2-ams-cmr.map pl0-ams-cmr.map original-adobe-euro.map original-context-symbol.map original-vogel-symbol.map":>// +<:$contextmaps_oldplace="pdftex/context":>// +<:$contextmaps_newplace="map/dvips/context":>// +<:for (@unused_contextmaps_oldplace=split(/ /,$unused_contextmaps)){s{(.*)}{$contextmaps_oldplace/$1}}:>// +<:for (@unused_contextmaps_newplace=split(/ /,$unused_contextmaps)){s{(.*)}{$contextmaps_newplace/$1}}:>// +<:for (@MOVE_CONTEXT_UCF_NEWPLACE=split(/ /,$MOVE_CONTEXT_UCF)){s{(.*)}{$contextmaps_newplace/$1}}:>// +<:for (@MOVE_CONTEXT_UCF_OLDPLACE=split(/ /,$MOVE_CONTEXT_UCF)){s{(.*)}{$contextmaps_oldplace/$1}}:>// +<:$unused_inifiles="cyrplain/cyrtex.ini cyrplain/cyrtxinf.ini cyrplain/cyramstx.ini \ + latex/latex.ini platex/platex.ini etex/etex.ini \ + context/cont-cz.ini context/cont-de.ini context/cont-en.ini context/cont-it.ini \ + context/cont-nl.ini context/cont-ro.ini context/cont-uk.ini":>// +<:$unused_conffiles_map_3="map/dvips/antp/antp.map map/dvips/antt/cork-antt.map map/dvips/antt/cs-antt.map \ +map/dvips/antt/exp-antt.map map/dvips/antt/greek-antt.map map/dvips/antt/qx-antt.map map/dvips/antt/t2a-antt.map \ +map/dvips/antt/t2b-antt.map map/dvips/antt/t2c-antt.map map/dvips/antt/texnansi-antt.map map/dvips/antt/wncy-antt.map \ +map/dvips/antt/t5-antt.map map/dvips/cc-pl/ccpl.map map/dvips/lucida/lucidabr-k.map map/dvips/lucida/lucidabr.map \ +map/dvips/lucida/lumath-k.map map/dvips/lucida/lumath.map map/dvips/misc/cmcyr.map map/dvips/misc/cs.map \ +map/dvips/misc/marvosym.map map/dvips/misc/pcrr8rn.map map/dvips/misc/dstroke.map map/dvips/pl/pl.map \ +map/dvips/psnfss/charter.map map/dvips/psnfss/pazo.map map/dvips/psnfss/psnfss.map map/dvips/psnfss/fpls.map \ +map/dvips/psnfssx/pcr8y.map map/dvips/psnfssx/phv8y.map map/dvips/psnfssx/ptm8y.map map/dvips/psnfssx/README.mapfiles \ +map/dvips/qfonts/qbk.map map/dvips/qfonts/qcr.map map/dvips/qfonts/qhv.map map/dvips/qfonts/qpl.map \ +map/dvips/qfonts/qtm.map map/dvips/qfonts/qzc.map map/dvips/tetex/dvipdfm35.map map/dvips/tetex/dvips35.map \ +map/dvips/tetex/hoekwater.map map/dvips/tetex/lucidabr-o.map map/dvips/tetex/lumath-o.map map/dvips/tetex/mathpple.map \ +map/dvips/tetex/mt-belleek.map map/dvips/tetex/mt-plus.map map/dvips/tetex/mt-yy.map map/dvips/tetex/pdftex35.map \ +map/dvips/tetex/ps2pk35.map map/dvips/tetex/pxfonts.map map/dvips/tetex/ttcmex.map map/dvips/tetex/txfonts.map \ +map/dvips/urwvn/urwvn.map map/dvips/vntex/vnr.map map/dvips/context/8r-base.map map/dvips/context/context-base.map \ +map/dvips/context/cork-public-lm.map map/dvips/context/cork-var-exclusive-public-lm.map \ +map/dvips/context/cork-var-public-lm.map map/dvips/context/ec-base.map map/dvips/context/ec-public-lm.map \ +map/dvips/context/ec-var-exclusive-public-lm.map map/dvips/context/ec-var-public-lm.map \ +map/dvips/context/original-adobe-euro.map map/dvips/context/original-base.map \ +map/dvips/context/original-context-symbol.map map/dvips/context/original-dummy.map map/dvips/context/original-empty.map \ +map/dvips/context/original-micropress-informal.map map/dvips/context/original-public-csr.map \ +map/dvips/context/original-public-lm.map map/dvips/context/original-public-plr.map \ +map/dvips/context/original-vogel-symbol.map map/dvips/context/psclean.map map/dvips/context/qx-base.map \ +map/dvips/context/qx-public-lm.map map/dvips/context/texnansi-base.map map/dvips/context/texnansi-public-lm.map \ +map/dvips/context/texnansi-var-exclusive-public-lm.map map/dvips/context/texnansi-var-public-lm.map \ +map/dvips/context/original-public-vnr.map map/dvips/context/t5-base.map map/dvips/context/t5-public-lm.map \ +map/dvipdfm/tetex/cm-dvipdfm-fix.map map/pdftex/cmttf/cmttf.map":>// +<:$unused_conffiles_misc_3="plain/language.def platex/language.dat platex/hyphen.cfg cyrplain/cyrtex.cfg \ +cslatex/fonttext.cfg cslatex/hyphen.cfg latex/latex209.cfg latex/ltxdoc.cfg latex/ltxguide.cfg \ +latex/texsys.cfg latex/color.cfg latex/graphics.cfg context/texexec.ini context/texexec.rme \ +context/cont-usr.tex dvips/config.ps dvips/config.antp dvips/config.antt dvips/config.mirr \ +dvips/config.outline dvips/config.dfaxhigh dvips/config.pdf dvips/config.dfaxlo dvips/config.pk \ +dvips/config.download35 dvips/config.www dvips/config.gsftopk dvips/config.pl dvips/config.qbk \ +dvips/config.qcr dvips/config.qhv dvips/config.qpl dvips/config.qtm dvips/config.qzc dvips/config.omega \ +dvips/omega.cfg dvipdfm/README.config modes.mf":>// +<:$unused_conffiles_misc_2="dvips/context.map etex/language.def latex/fontmath.cfg latex/fonttext.cfg \ +latex/preload.cfg pdftex/cmttf.map":>// +<:$UNUSED_CONFFILES_BASE="@unused_contextmaps_newplace @unused_contextmaps_oldplace $unused_inifiles \ +$unused_conffiles_misc_3 $unused_conffiles_map_3 $unused_conffiles_misc_2":>// +<:#unused confdirs are not in fact necessarily unused; they just need:>// +<:#to be removed upon purge, after deleting files in them.:>// +<:$OLDSTUFFDIR="/etc/texmf/oldstuff_unused":>// +<:$UNUSED_CONFDIRS_BASE="etex pdftex $OLDSTUFFDIR dvipdfm dvips generic context latex cslatex\ +cyrplain platex plain map map/pdftex map/pdftex/cmttf map/dvipdfm map/dvipdfm/tetex map/dvips \ +map/dvips/context map/dvips/vntex map/dvips/urwvn map/dvips/tetex map/dvips/qfonts map/dvips/psnfssx \ +map/dvips/ps map/dvips/misc map/dvips/lucida map/dvips/cc-pl map/dvips/antt map/dvips/antp":>// +<:#$BASE_UCF contains a list of files with their destination directories below /etc/texmf/:>// +<:$BASE_UCF="mktex.cnf dvips/config.builtin35 dvipdfm/config \\ + map/dvips/tetex/contnav.map generic/pdftexconfig.tex \\ + $MOVE_GENERIC_UCF @MOVE_CONTEXT_UCF_NEWPLACE @MOVE_CONTEXT_UCF_OLDPLACE":>// +<:$unused_conffiles_extra_latex="SIunits.cfg adrdir.cfg adrplaner.cfg adrsmall.cfg draftcopy.cfg efxmpl.cfg geometry.cfg htex4ht.cfg hyperref.cfg jblong.cfg jurabib.cfg lettrine.cfg listings.cfg microtype.cfg mt-bch.cfg mt-cmr.cfg mt-pad.cfg mt-pmn.cfg mt-ppl.cfg mt-ptm.cfg pict2e.cfg subfig.cfg subfigure.cfg seminar.con":>// +<:for (@unused_conffiles_extra_latex=split(/ /,$unused_conffiles_extra_latex)){s{(.*)}{latex/$1}}:>// +<:$unused_conffiles_extra_misc="map/dvips/ams/psfonts.ams map/dvips/ams/psfonts.amz map/dvips/ams/psfonts.cm map/dvips/ams/psfonts.cmz map/dvips/misc/eurosym.map map/dvips/omega/omega.map map/dvips/tetex/bsr-interpolated.map map/dvips/tetex/bsr.map map/dvips/xypic/xypic.map lambda/language.dat":>// +<:$UNUSED_CONFFILES_EXTRA="@unused_conffiles_extra_latex $unused_conffiles_extra_misc":>// +<:$BLUESKY_UCF="dvips/config.ams dvips/config.cm dvips/config.amz dvips/config.cmz":>// +<:$UNUSED_CONFDIRS_EXTRA="map map/dvips map/dvips/ams map/dvips/misc map/dvips/omega map/dvips/tetex \ +lambda dvips latex":>// +<:$generated_maps_dvips="download35.map builtin35.map psfonts_t1.map psfonts_pk.map ps2pk.map":>// +<:$generated_maps_dvipdfm="dvipdfm_dl14.map dvipdfm_ndl14.map":>// +<:$generated_maps_pdftex="pdftex_dl14.map pdftex_ndl14.map":>// +<:$vardvips="/var/lib/texmf/fonts/map/dvips/updmap":>// +<:$vardvipdfm="/var/lib/texmf/fonts/map/dvipdfm/updmap":>// +<:$varpdftex="/var/lib/texmf/fonts/map/pdftex/updmap":>// +<:### Variables needed for upgrades from pre-woody:>// +<:$VERYOLD_TEXMF="/usr/lib/texmf/web2c":>// +<:### Variables needed for upgrades since woody:>// +<:$OLD_WEB2C="/usr/share/texmf/web2c":>// +<:$WOODY_FMTCNF="$PKG_SHAREDIR/fmtutil.cnf.1.0.7":>// +<:$NOWLINKDIRS="":>// +<:$NOWDIRLINKS="tex/latex/config tex/platex/config tex/cyrplain/config tex/context/config \ + dvips/config fonts/map/dvipdfm fonts/map/dvips fonts/map/pdftex dvipdfm/config \ + tex/generic/config tex/lambda/config":>// +<:$OLD_TEXDOCTK="texdoc-100.dat texdoc-102.dat texdoc-103.dat":>// +<:### Variables needed for upgrades since sarge:>// +<:# Misc package variables:>// +#include "common.variables" +<: +# Local variables: +# mode: shell-script +# end: +:>// --- tetex-base-3.0.orig/debian/config.in +++ tetex-base-3.0/debian/config.in @@ -0,0 +1,62 @@ +#include variables +#!/bin/sh -e +# +# config maintainer script for the Debian tetex-base package. +# $Id: config.in 461 2006-01-17 12:13:37Z frank $ +# Copyright (C) 200? by ? +# Copyright (C) 2004 by Frank Küster . +# +<:=@COPYRIGHT:>// + +# variables +etcdir=/etc/texmf +etctk=/etc/texdoctk +old_texdoctk="<:=$OLD_TEXDOCTK:>" +tkflag="" + + +. <:=${CONFMODULE}:> +db_version 2.0 + +#(copyright?) +if [ -f ${etcdir}/updmap ]; then + MD5SUM_1_0=64ab21acb1aee5ee9004b54417f22014 + MD5SUM_1_0_2=ae1883f5a9a065d8b290943783ae5699 + CURMD5SUM=`md5sum ${etcdir}/updmap | awk '{print $1};'` + if [ ${CURMD5SUM} = ${MD5SUM_1_0} ] || [ ${CURMD5SUM} = ${MD5SUM_1_0_2} ]; then + # it's one of the file versions we installed, unchanged + rm ${etcdir}/updmap + else + db_input medium tetex-base/oldupdm || true + db_go || true + mv ${etcdir}/updmap ${etcdir}/updmap.<:=${POSTINST_MOVE_EXT}:> + fi +fi + +#copyright? +for d in ${oldtexdoctk}; do + if [ -f ${etctk}/${d} ]; then tkflag=yes; break; fi +done + +if [ X${tkflag} = "Xyes" ] ; then + db_input low tetex-base/olddat || true + db_go || true + db_get tetex-base/olddat || true + if [ X"$RET" = X"true" ]; then + for f in ${olddat} + do + rm -f ${etctk}/${f} + rm -f ${etctk}/${f}.dpkg-* + done + fi +fi + +# purge obsolete questions +db_unregister tetex-base/fmtutil-failed || true +db_unregister tetex-base/updmap-failed || true + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: + --- tetex-base-3.0.orig/debian/changelog +++ tetex-base-3.0/debian/changelog @@ -0,0 +1,1321 @@ +tetex-base (3.0-13) unstable; urgency=low + + * The "Mind your docs" release + * Update the main documentation index to link to files in TEXMFSITE, and + update some upstream links - many thanks to Braun Gabor + (closes: #347931) [frank] + * Also adapt texdoc.php to TEXMFSITE [frank] + * Don't insist on removing helpindex.html in tetex-doc's postinst, + because it might not exist; also provide an upgrade path. Thanks to + Rene Engelhard (closes: #348614) [frank] + + -- Frank Küster Wed, 18 Jan 2006 09:12:44 +0100 + +tetex-base (3.0-12) unstable; urgency=low + + * add magic comment to language.d/00tetex.cnf [preining] + * tetex-extra now depends on tetex-base (>= 3.0-11), in order to prevent + partial upgrades with tetex-extra's files already in TEXMFDIST without + tetex-base and tex-common being updated appropriately (closes: + #343572) [frank] + * Add two missing md5sums to the list in common.functions (closes: + #344212) [frank] + * Bump standards-version to 3.6.2 (no changes needed except the + still outstanding fixes for #139353) [frank] + * When handling obsolete conffiles, also cater for files from woody, + necessary if tetex-extra has been in state rc throughout sarge + (closes: #347355) [frank] + * Again add the watchfile which was lost in sid; update it's syntax a + little. [frank] + * Do not keep a copy of the static language.dat if it is the version + shipped with woody or sarge (closes: #321804) [frank] + * Don't claim to remove unchanged conffiles if no conffiles are on the + system at all [frank] + * Unregister obsolete debconf questions (closes: #334723) [frank] + * Document in NEWS.Debian that we cannot migrate user's changes from old + 00updmap.cfg to 10tetex-base.cfg and 10tetex-extra.cfg (closes: + #321257) [frank] + * Do not let the preinst fail just because the previously installed + version is pre-sarge, as we did deliberately during experimental + development. + * Fix reportbug script handling [preining] + + -- Frank Küster Tue, 17 Jan 2006 13:14:15 +0100 + +tetex-base (3.0-11) unstable; urgency=low + + * Since /etc/texmf is a real TEXMF tree now, TeX input files are no + longer treated as configuration files. Upon upgrade, unchanged files + are removed, changed ones are moved to appropriate directories where + they are found by kpathsea [frank] + * Install files in TEXMFDIST, i.e. /usr/share/texmf-tetex, and depend on + tex-common (>=0.12) [frank] + * Install changelog.Debian in tetex-doc, too (closes: #338334) + * Unset variables that might override texmf.cnf settings in postinst + [frank] + * Remove tetex-extra's format and log files when the package is removed, + thanks to Kevin B. McCarty (closes: #341110) + [frank] + * Install an updated copy of marvosym.pfb from CTAN, it is still buggy + in teTeX 3.0 (closes: #261529) [frank] + * dvips/config.ps: keep lines under 80 characters long [jdg] + + -- Frank Küster Sun, 11 Dec 2005 15:10:55 +0100 + +tetex-base (3.0-10) unstable; urgency=low + + * Remove unneeded file /usr/share/doc/texmf/Makefile from tetex-doc + which caused a conflict with old tetex-base, and declare Replaces for + the files that are still needed (closes: #334659) [frank] + * Install changelog.Debian.experimental (closes: #334655) [frank] + * Do not generate helpindex.html dynamically. The upstream script is + too specialized to adapt it to Debian (closes: #334643, #334688) [frank] + + -- Frank Küster Wed, 19 Oct 2005 15:35:53 +0200 + +tetex-base (3.0-9) unstable; urgency=low + + * Upload new upstream release to unstable. The changelog of the + versions in experimental is available in + changelog.Debian.experimental.gz. + + Upstream changes: + + * Lots of bugs are closed by this upload - all bugs listed below have + already been tagged fixed-upstream, and there should be an explanation + in the bug logs at http://bugs.debian.org/. In some cases + the explanation is only a link to the LaTeX Project bug database, or + it is in the comments of the mail sent to the control server, but it's + always there. + + - For tetex-base: (closes: #221262, #261529, #272560, #119531, + #267768, #195711, #181310, #206315, #230931, #258976, #145339, + #190873, #214415, #255137, #181310, #219573, #229598, #286722) + + - For tetex-extra: (closes: #273246, #218178, #195109, #215925, + #251143, #202472, #259696, #261736, #271463, #273247) + + - For tetex-doc: (closes: #160692, #223569, #153985) + * Files are now arranged according to the TeX Directory Structure v. 1.1 + (changes mainly involve font maps and encoding files, and the script + directory). If you have locally installed fonts, see NEWS.Debian for + instructions. + * tetex-doc now supports a web interface to the documentation at + http://localhost/texmf/doc/texdoc.php, using the data from texdoctk. + + + Debian-specific changes: + + * All information for users and developers, Debian-specific or not, has + been collected in the README files of the tetex-bin package, as well + as in the draft for a Debian TeX Policy in the tex-common package. + * The packaging has been revised and partly rewritten: + - We now work with a pristine upstream tarball as orig.tar.gz. + - Most files needed for creation of the package, as well as the + maintainer scripts, are now generated using ePerl. The configuration + is done, as much as possible, through the files variables, + common.variables, and common.functions. + - To synchronise this and the tetex-bin package, common.functions and + common.variables from the tex-common package tree are used. + * We provide infrastructure to allow for easy backporting of teTeX 3.0 + to sarge. + * tetex-base now depends on tex-common, and has "lost" some configuration + files to that package. + * In particular, the updmap configuration files have been changed: + - 00updmap.cfg is now 10tetex-base.cfg (except the parts in + tex-common's 00updmap.cfg). + - 05tetex-extra.cfg is now 05tetex-extra.cfg + - language.dat is now a generated file, too, with the configuration + files in /etc/texmf/language.d/ + * The format ini files have been moved back to TEXMFMAIN, they are not + configuration files. + * A lot of files that used to be conffiles and are now unused, are + removed if they are unchanged. Thanks to Ralf Stubner. + * All debconf questions have been dropped or moved to tex-common + (closes: #332113). + * The following bugs only existed in experimental and were marked as + fixed-in-experimental by uploads to experimental. Some of them might + not have been closed manually, therefore this upload to unstable + finally (closes: #291531, #299843, #309596, #300855, #320066, #321361, + #320061, #320074, #324826, #325891, #325891) + + -- Frank Küster Fri, 14 Oct 2005 16:28:11 +0200 + +tetex-base (2.0.2c-9) unstable; urgency=low + + * Do no longer depend on texinfo, so that the new texinfo packages can + depend on tetex-bin. This could have been Recommends or Suggests, + anyway. [frank] + * Generate the debconf dependency with debhelper, thus adding + debconf-2.0 as an alternative. + * Translations: + - Added Vietnamese debconf translation, thanks to Clytie Siddall + (closes: #310054)[frank] + + -- Frank KÃŒster Tue, 4 Oct 2005 18:11:07 +0200 + +tetex-base (2.0.2c-8) unstable; urgency=low + + * Add documentation for the Sueterlin fonts (ancient german handwriting) + (closes: #300596) [frank] + * Add conflict with ivritex (closes: #309008) [julian] + + -- Julian Gilbey Mon, 16 May 2005 13:17:16 +0100 + +tetex-base (2.0.2c-7) unstable; urgency=low + + * Correctly purge and ucf-purge /etc/texdoctk/texdocrc in postrm [frank] + * Provide Debian-specific documentation in the tetex-doc package + (closes: #297934) [frank] + * The maintainer scripts now will again fail if the format or map file + generation fails. This has been turned into a debconf note in version + 2.0.2b-2 as an emergency action, and must be dropped now the packages + proved to be stable. + + -- Frank Küster Tue, 15 Mar 2005 17:52:33 +0100 + +tetex-base (2.0.2c-6) unstable; urgency=low + + * Fix a typo in the new postinst code that creates + /usr/local/share/texmf. This caused the directory to be created with + group root instead of staff + + -- Frank Küster Tue, 1 Feb 2005 17:21:11 +0100 + +tetex-base (2.0.2c-5) unstable; urgency=high + + * RC bug fix: Don't ship subdirectories of /usr/local in the deb, + instead create them in postinst, thanks to Kevin B. McCarty" + (closes: #292752) [frank] + + -- Frank Küster Mon, 31 Jan 2005 14:03:00 +0100 + +tetex-base (2.0.2c-4) unstable; urgency=low + + * Do no longer create any of the obsolete directories in /usr/local in + postinst. Instead ship today's LOCALTEXMF directory, + /usr/local/share/texmf, in the deb, thanks to Hans Ekbrand + (closes: #291541) [frank] + * Translations: + - Updated french debconf translation, thanks to Clement Stenac + (closes: #286518) [frank] + + -- Frank Küster Mon, 24 Jan 2005 00:08:28 +0100 + +tetex-base (2.0.2c-3) unstable; urgency=high + + * Fix bug in prerm script of tetex-base, this was a serious bug - hence + the urgency, and acknowlegdes the NMU [frank]. + * For some LaTeX packages in tetex-extra, the conffiles were in + tetex-base. These have now been moved to tetex-extra, too, and some + missing symbolic links were restored (closes: #284912) [frank] + + -- Frank Küster Fri, 10 Dec 2004 14:02:32 +0100 + +tetex-base (2.0.2c-2.1) unstable; urgency=low + + * NMU. Cleanup prerm removal of a possibly non-existant directory. + Closes: #284800 + + -- LaMont Jones Thu, 9 Dec 2004 10:02:15 -0700 + +tetex-base (2.0.2c-2) unstable; urgency=medium + + * This version contains updated translations, as well as fixes to our + packaging, and should got to sarge, therefore medium urgency + * Fix handling of old updmap script (closes: #278177) [frank] + * Add the floatflt package and its documentation, which has now been put + under LPPL (closes: #278235) [frank] + * Moved the tetex-doc symlink transition to the right package [frank] + * Put /etc/texdoctk/texdocrc under ucf control, to allow for a + smooth upgrade from woody when texdoctk was installed [frank] + * Fix a small error in the LaTeX html documentation, thanks to Jan Minar + (closes: #278362) [frank] + * Translations: + - added italian translation, thanks to Luca Monducci + (closes: #279714) [frank] + - added lithuanian translation, thanks to KÄ™stutis BiliÅ«nas + (closes: #280726) [frank] + + -- Frank Küster Mon, 6 Dec 2004 18:41:37 +0100 + +tetex-base (2.0.2c-1) unstable; urgency=high + + * Urgency high because the first three fixes address serious bugs. + * Removed letterspacing.tex from orig.tar.gz because it is non-free, + increased the version number accordingly (closes: #274868). [frank] + * Because of the move of two mapfiles from tetex-base to extra in the + last upload, we should have declared a Replaces relation; this is done + in this upload [frank] + * tetex-extra's ucf-managed configuration files were deleted when the + package was removed, not only when purged: Fixed now [frank] + * #273176 was not properly fixed. Now tetex-doc no longer depends on + tetex-base, and the symlink will safely be made a directory even when + upgrading. [frank] + * Backport 8000dpi mode for dvips -Ppdf from current upstream (closes: + #138446, #184875) [frank] + * Translations: + - added czech translation, thanks to Miroslav Kure + (closes: #273711) [frank] + + -- Frank Küster Wed, 20 Oct 2004 11:43:36 +0200 + +tetex-base (2.0.2b-6) unstable; urgency=medium + + * Translation update release, should go into sarge, therefore medium + urgency. Additionally addresses an important bug for upgraders from + older sarge/sid versions. + * Force removal of dvipdfm's file diversion of dvipdfm.def, and do no + longer "Replace: dvipdfm", because we only share this diverted + file. Furthermore, the dvipdfm config file is now handled by ucf to + prevent bogus dpkg dialogs. + + If dpkg cannot remove dvipdfm and gives an error about dpkg-divert, + you ran into an old bug of tetex-base which cannot be fixed + automatically. You have to manually remove the file + /usr/share/texmf/tex/latex/graphics/dvipdfm.def in this case. + + As good as possible, this (closes: #272341) [frank] + + * Small fixes in the postinst script (closes: #271603) + * Move bsr.map and bsr-interpolated.map back from tetex-base to + tetex-extra (closes: #269930) [frank] + * Move a dangling symlink from TEXMFMAIN to VARTEXMF where its target + now resides (closes: #271688) [frank] + * Let tetex-doc have it's own directory in /usr/share/doc, not just a + symlink to tetex-base, because it does not depend on tetex-base, + thanks to Hille (closes: #273176) [frank] + * Stylistic corrections to the english debconf template, thanks to + Richard Lewis [frank]. + * Translations: + - updated debconf translations, with many thanks to Javier + Fernández-Sanguino Peña (spanish), Claus Hindsgaul + (danish), Helge Kreutzmann + (german), Kenshi Muto + (japanese), Recai Oktas (turkish), Clément Stenac + (french), Josep Monés i Teixidor + (catalan), Luk Claes + (dutch) (closes: #271343, #271777, #272235). [frank] + - added a brazilian portuguese translation, thanks to Andre Luis Lopes + . [frank] + + -- Frank Küster Fri, 24 Sep 2004 17:18:57 +0200 + +tetex-base (2.0.2b-5) unstable; urgency=low + + * Correct a ConTeXt configuration file, so that the czech format can be + generated properly, thanks to Michal Kovac + (closes: #270356) [frank] + * Mention the remove-oldmaps script in README.Debian, and make the + description clearer, thanks to Ross Boylan + (closes: #269828). The text should + also be proper english now, thanks to Richard Lewis + (also for many other stylistic corrections) [frank] + * Some small fixes to make lintian happy (relative symlinks, and do not + depend on virtual packages without naming a real one) [frank] + + -- Frank Küster Tue, 7 Sep 2004 14:44:04 +0200 + +tetex-base (2.0.2b-4) unstable; urgency=high + + * Load debconf in tetex-extra's postinst script, fixing a RC bug - + thanks to Agustin Martin Domingo (closes: + #269416) [frank] + * Copy the fix to language.dat and texmf.cnf from tetex-bin to + tetex-base, because upon upgrade, tetex-base is configured first (see + the misled Followup-for bug in #267299) [frank] + * Translations: + - update danish debconf translation, thanks to Claus Hindsgaul + (closes: #268426) [frank] + + -- Frank Küster Wed, 1 Sep 2004 14:42:12 +0200 + +tetex-base (2.0.2b-3) unstable; urgency=high + + * Fix permissions of the font cache directories, causing FTBFS of zope + (and possibly others) (Closes: #267413), thanks to Pierre Machard + [frank] + + -- Frank Küster Wed, 25 Aug 2004 13:50:36 +0200 + +tetex-base (2.0.2b-2) unstable; urgency=high + + * If the generation of formats (and map files) fails in postinst, + display a critical debconf note, instead of exiting with an + error. This will lower the severity of some bugs, when only + unimportant formats failed, because the package generally becomes + usable. Currently, this lowers #267299 from release-critical to + important, and should go into sarge: Hence urgency=high + + -- Frank Küster Sun, 22 Aug 2004 12:53:33 +0200 + +tetex-base (2.0.2b-1) unstable; urgency=high + + * Fixes RC bugs that are also in sarge, hence the urgency + * Another repackaged orig.tar.gz: To really remove the non-free floatflt + (RC bug #263549), the files also have to be removed from the + orig.tar.gz [frank] + * Move configuration files from /usr/share/texmf to /etc/texmf, and + create appropriate symlinks (closes: #92594) [frank] + * Remove bashism (and thinko, anyway) from tetex-extra's postrm, thanks + to Hilmar, Adrian Bunk , Florent Rougon + and Ryan Murray (closes: + #264241)[frank] + * Test for the correct fmtutils.cnf file in the postinst scripts of + tetex-base and tetex-extra (closes: #265611) [frank] + * Fix tetex-extra's reportbug script and install a reportbug control + file, so that tetex-bin and tetex-extra are always reported together + with tetex-base, thanks to Hilmar (closes: #264388) [frank] + * Some fixes needed because of the introduction of VARTEXMF in 2.0.2a-2, + thanks to Hilmar [frank] + * Translations: + - updated french debconf translation, thanks to Clément Stenac + (closes: #265832) [frank]. + - updated danish debconf translation, thanks to Claus Hindsgaul + (closes: #266716) [frank] + + -- Frank Küster Thu, 19 Aug 2004 16:45:26 +0200 + +tetex-base (2.0.2a-3) unstable; urgency=low + + * This upload was practically by Hilmar. Thanks to Hilmar. [kohda] + * Fixed language.dat [kohda] (Closes: #263343) + * Removed floatflt which was non-free. [kohda] (Closed: #263549) + * Updated da.po, thanks to Claus Hindsgaul [kohda] + (Closes: #263919) + + -- Atsuhito KOHDA Fri, 13 Aug 2004 20:35:54 +0900 + +tetex-base (2.0.2a-2) unstable; urgency=low + + * By default, enable all hyphenation patterns in language.dat [frank] + * tetex-bin now uses $VARTEXMF, and thus /var/lib/texmf/ has its own + ls-R file. Therefore, the link from /usr/share/texmf into that + directory now points to ls-R-TEXMFMAIN. [frank] + + -- Frank Küster Fri, 30 Jul 2004 12:55:50 +0200 + +tetex-base (2.0.2a-1) unstable; urgency=high + + * Don't rely on /var/lib/texmf/web2c's existense in tetex-extra's + postrm - urgency high because of this bug's severity (Closes: + #261137). [frank] + + * New upstream tarball: Repacked by the Debian team to remove files with + non-free licenses: + + - british hyphenation (ukhyphen.tex) - users, please bug the UK-TUG to + resolve this issue! Some of the other hyphenation files mentioned in + #139900 are not contained in 2.0.2 any more, the other were taken + from CTAN (with clarified license). (Closes: #139900) + - Pandora fonts (closes: #175623, #261496) + - psfig.sty (People still using it should consider switching + to the graphics package. As long as this is not done you may use + epsfig.sty from the same package) (closes: #182324) + + Some files have been updated with now free versions from CTAN: + - russion, swedish, and galician hyphenation patterns (see #139900 and + above) + - g-brief: license clarified, new version from CTAN (europs.sty is + only used if available) (closes: #176153) + - caption.sty and caption2.sty (closes: #251761) + - fancyverb-examples in fvrb-ex.sty (closes: #177401) + + Wile on the way, + - we removed the obsolete pdfcrypt.sty. PDF encryption is no longer + supported by pdfTeX, please use external tools! (closes: #186869) + - include (now free) cahyph.tex and icehyph.tex in orig.tar.gz + (Closes: #219294, #223912) + - We updated listings.sty which was first deleted from the + orig.tar.gz, then added in diff.gz. But the version we had in + diff.gz had a problematic license, the new one is LPPL. euler.sty + also is in the orig.tar.gz again. + - we included updated kpathsea.{pdf,dvi} in the documentation (fix to + tetex-bin's bug #253958) + [frank] with thanks to Hilmar + + * Static font map files are no longer treated as conffiles (or with + ucf), but instead are installed as ordinary files under + /usr/share/texmf. Nobody really needs to edit those files (and they + can still be overriden by putting files in /usr/local/share/texmf). + Please refer to README.debian in order to learn how to get rid of the + old files in /etc/texmf/dvips (closes: 259003). [frank] + * Conflict with tetex-bin (<=2.0.2-15) because older versions will fail + to install if ukhyph.tex is missing. [frank] + * Include a correct fancyvrb.ps (in patch-tmp) (Closes: #256911) [frank] + * Use correct name for the tetex-xwarn binary in texfind.pl and + texshow.pl, thanks to Hilmar (closes: #258267) [frank] + * Remove tetex-extra's formats in postrm, also upon upgrade - thanks to + Hilmar (closes: 245599) [frank] + * Translations: + - Updated Danish translation, thanks to Claus Hindsgaul (Closes: + #255246) [frank]. + - Updated japanese translation, thanks to Kenshi Muto + (closes: #255672) [frank] + - Updated french translation, thanks to Christian Perrier + (closes: #255891) [frank] + + -- Frank Küster Sat, 24 Jul 2004 19:48:40 +0200 + +tetex-base (2.0.2-9) unstable; urgency=low + + * Correct redirections in reportbug scripts (thanks to Yannick + ) (closes: #246821) [frank] + * Applied patch to metapost's boxes.mp (in patch-tmp, because there will + be an upstream fix somewhen), thanks to Hilmar (closes: #182211) + [frank] + * Don't ask about /etc/texmf/updmap's removal without need [frank] + * Don't remove omega.map, add a comment to it and let tetex-extra + replace old tetex-base, so that it will be reinstalled by dpkg. Also + don't remove other old conffiles, and add a remark to + README.Debian. (closes: #246818) [frank] + * Apply patch to wasychr.mf (also uploaded the patched version to CTAN + on behalf of the author) (closes: #134763) [frank] + * Correctly remove format files in postrm [frank] + * Patch context's texfind.pl and texshow.pl to use tetex-xwarn if + perl-tk is not installed [frank] + * Do not leave spurious tempfiles around (see tetex-bin's bug #249597) + [frank] + * Translation: + - Added turkish po-debconf translation", thanks to Recai Oktas + (Closes: #252937) [frank] + - Added german debconf tmplate (Closes: #254547) [frank] + + -- Frank Küster Fri, 11 Jun 2004 16:52:49 +0200 + +tetex-base (2.0.2-8) unstable; urgency=low + + * Fix links to compressed files in helpindex.html and newhelpindex.html, + thanks to Hannu Koivisto (closes: #158352) [frank] + * Remove empty directories in /usr/share/doc/texmf/ from tetex-base + (closes: #148216) [frank] + * Add dependency on ucf (closes: #245502) + * Even better description of options in config.ps, thanks to Matthew + Swift (closes: #181065) [frank] + * Corrected directory for reportbug scripts (thanks to "Mario + 'BitKoenig' Holbe" ) (closes: #246318) + [frank] + + -- Frank Küster Wed, 28 Apr 2004 15:21:25 +0200 + +tetex-base (2.0.2-7) unstable; urgency=medium + + * Added Frank Küster to the Uploaders field in the + control file. [kohda] + * Added reportbug scripts in order to make bug reports more + informative. [frank] + * Some configuration files which were changed or renamed since woody's + version are now under ucf control (closes: #233886). [frank] + * Added patch by Hilmar Preusse that moves some + forgotten map files into /etc/texmf/dvips. [frank] + * Patching typo in config.builtin35 (fixed-upstream), thanks to + Hilmar. [frank] + * Included ca.po by Josep Monés i Teixidor . Thanks to + Josep Monés i Teixidor. [kohda] (Closes: #237302) + * Removed m4 from build-dependencies, it has not been used since ages, + thanks to Hilmar. [frank] + * Moved files for texdoctk from tetex-extra to tetex-base, let + tetex-base declare "Replaces: texdoctk". tetex-bin now depends on + these files to provide texdoctk's functionality (see: #200264) [frank] + + -- Frank Küster Fri, 16 Apr 2004 14:59:37 +0200 + +tetex-base (2.0.2-6) unstable; urgency=low + + * Cleaned up a bit; suggested by Hilmar Preusse [kohda] + - removed debian/ttlkeys.def which was not used any more. + - removed surplus marvosym.pfb from tetex-doc but this caused duplicated + marvosym.pfb in tetex-base so we removed (possibly) unnecessary + /usr/share/doc/texmf/fonts/marvosym/marvosym.pfb with rules. + * Added arabtex (<= 3.10-5) to Conflicts: entry. (Closes: #229725) [kohda] + * Refined a test for TEXMFMAIN in postinst suggested by Florent Rougon + . Thanks to Florent Rougon. [kohda] + * Removed language.dat handling from postinst for our new mechanism + suggested by Frank Küster . Now language.dat + would be handled with tetex-bin only. Thanks to Frank Küster. [kohda] + - Also we modified prerm of tetex-base with a patch by Frank. + * Run "debconf-updatepo" which I forgot to run. [kohda] + * Fixed control file. Thanks to Florent Rougon, Frank Küster and Hilmar + Preusse. [kohda] + - tetex-base: removed Replace: tetex-bin (<< 2.0.2-2) because there was + Conflicts: tetex-bin (<= 2.0.2-3) already. + - tetex-extra: removed Replaces: tetex-base (<< 2.0-2) and added + Conflicts: tetex-base (<< 2.0-2) which should be correct relation. + - tetex-doc: removed Replaces: tetex-extra (<< 2.0) and added + Conflicts: tetex-extra (<< 2.0) in the same reason as above. + * Included da.po by Claus Hindsgaul . Thanks to + Claus Hindsgaul. [kohda] (Closes: #232870) + + -- Atsuhito KOHDA Fri, 27 Feb 2004 23:35:48 +0900 + +tetex-base (2.0.2-5.1) unstable; urgency=low + + * Changed dependency: added "Recommends: tetex-doc (>> 2.0)" to tetex-base + and added "Recommends: tetex-bin (>> 2.0) | dvi2tty, pdf-viewer, + postscript-viewer, www-browser" to tetex-doc. [kohda] + * Fixed postinst and postrm so that unnecessary updmap.cfg and language.dat + would not be installed in /etc/texmf anymore. [kohda] + * Fixed a way of removing obsolete /etc/texmf/dvips/updmap [kohda] + (Closes: #197954) + * Removed obsolete sentence on tetex-nonfree in copyright file. [kohda] + + -- Atsuhito KOHDA Mon, 13 Nov 2003 21:46:19 +0900 + +tetex-base (2.0.2-5) unstable; urgency=low + + * Updated es.po and installed ja.po, nl.po Thanks to Carlos Valdivia Yagüe + and Kenshi Muto , Tim Dijkstra + [kohda] (Closes: #210386, #214600) + + -- Atsuhito KOHDA Fri, 24 Oct 2003 09:19:17 +0900 + +tetex-base (2.0.2-4.2) unstable; urgency=low + + * Modified language.dat so that debconf (of tetex-bin) could handle it + more flexibly. [kohda] + * Refined Description substantially. Thanks to Hilmar Preusse + and Stefan Ulrich + [kohda] (Closes: #189343) + * Fixed wrong place of fmtutil.cnf of tetex-extra.postinst [kohda] + (Closes: #207742) + * Removed unnecessary entries (tetex-base/updmap, tetex-base/lang_dat) + in debian/config [kohda] + + -- Atsuhito KOHDA Tue, 26 Aug 2003 22:43:37 +0900 + +tetex-base (2.0.2-4.1) unstable; urgency=low + + * Fixed postrm so that it didn't delete conffiles of other packages. + [kohda] (Closes: #197579) + + -- Atsuhito KOHDA Sat, 21 Jun 2003 23:50:13 +0900 + +tetex-base (2.0.2-4) unstable; urgency=low + + * Fixed tetex-extra.postinst, it would now call updmap. [kohda] + (Closes: #192716) + * Fixed newhelpindex.html with a patch by Hilmar Preusse + Thanks to his contribution. cf. #188150, couldn't close yet? [kohda] + * Added sharutils to Build-Depends-Indep: field. [kohda] (Closes: #189886) + - Note for maintainers: this is only for generating euler.dvi which was + lost by mistake so when the next upstream would be released, this should + be unnecessary. + + -- Atsuhito KOHDA Sat, 31 May 2003 20:24:38 +0900 + +tetex-base (2.0.2-3) unstable; urgency=low + + * Changed to use po-debconf now. Thanks to Carlos Valdivia Yagüe + for his spanish translation. [kohda] + (Closes: #183699) + * remove-bad-license-files: Removed lines dropping euler.sty and + euler.dvi (now under LPPL) [cmc] (Closes: #187179) + - we had already removed them from orig.tar.gz, so we added euler.sty + directly and euler.dvi through patch-tmp with uudecode/encode. [kohda] + * Installed fr.po, thanks to Christian Perrier + [kohda] (Closes: #185707) + + -- Atsuhito KOHDA Mon, 7 Apr 2003 16:14:18 +0900 + +tetex-base (2.0.2-2) unstable; urgency=low + + * Added cweb examples lost in transition to doc package [jdg] + * Installed web2c/mktex.cnf which I had failed in 2.0.2-1 [kohda] + * Added listings.sty (with patch-tmp) which seemed missing in upstream. + [kohda] (Closes: #184719, #172483) + -- Atsuhito KOHDA Sat, 15 Mar 2003 15:58:24 +0900 + +tetex-base (2.0.2-1) unstable; urgency=low + + * New Upstream Release. + * Added *.tcx files in texmf/web2c [kohda] (Closes: #182556) + * Installed web2c/mktex.cnf, formerly installed in tetex-bin. [kohda] + * /etc/texmf/language.dat was a configuration file and not a conffile, + and now it could be handled automatically with debconf with the new + tetex-bin (>> 2.0.1-2). [kohda] + * Removed g-brief because its license problem. [kohda] + * beton.sty was included in the upstream because it was free (LPPL) now. + [kohda] (Closes: #182602) + + -- Atsuhito KOHDA Fri, 28 Feb 2003 07:57:31 +0900 + +tetex-base (2.0.1-3) unstable; urgency=low + + * Fixed postinst; didn't call updmap any more. [kohda] (Closes: #182125) + * Moved language.def, language.dat under /etc/texmf and now they were + conffiles. [kohda] (Closes: #62271) + + -- Atsuhito KOHDA Tue, 25 Feb 2003 07:36:24 +0900 + +tetex-base (2.0.1-2) unstable; urgency=low + + * Fixed postinst a bit. [kohda] (Closes: #181882) + + -- Atsuhito KOHDA Sat, 22 Feb 2003 20:18:14 +0900 + +tetex-base (2.0.1-1) unstable; urgency=low + + * New Upstream Release. + * There was duplication with older tetex-extra and this tetex-doc so we + setted Replaces: tetex-extra (<< 2.0) in tetex-doc. [kohda] + * Added Section: doc in tetex-doc entry so the disparity should be fixed. + [kohda] + + -- Atsuhito KOHDA Tue, 18 Feb 2003 15:09:35 +0900 + +tetex-base (2.0-2) unstable; urgency=low + + * Fixed dependency and setup-conffiles. [kohda] + (Closes: #180360, #180297, #180600) + * Fixed postrm so /etc/texdoctk should be removed at purge. Also old + dat files would be removed with debconf. [kohda] (Closes: #180400) + * Fixed handling of generated files with updmap; now they were not conffiles + but configuration files and only installed when they didn't exist. + [kohda] (Closes: #180770) + * Fixed Description. [kohda] + + -- Atsuhito KOHDA Mon, 10 Feb 2003 07:23:47 +0900 + +tetex-base (2.0-1) unstable; urgency=low + + * New Upstream Release. + - Included dvipdmf stuffs. + - bsr-interpolated.map and bsr.map were moved from bluesky to tetex, and + lucida map files were added so we modified setup-conffiles. [kohda] + - config.ps was fixed in the upstream so we removed the patch. + - xdvi.cfg was removed and moved tetex-bin again. + * rules by cmc and updated. [kohda] (Closes: #177639) + * Used updmap again in postinst, but experimental yet. [kohda] + * Removed debian/conffiles, debian/tetex-extra.conffiles because we already + setted DH_COMPAT=3 in rules. [kohda] + * Refined config and templates. [kohda] (Closes: #175457) + + -- Atsuhito KOHDA Mon, 3 Feb 2003 17:36:09 +0900 + +tetex-base (1.0.2+20021025-7) unstable; urgency=low + + * Stopped to run updmap. This need much more investigation. [kohda] + + -- Atsuhito KOHDA Sat, 11 Jan 2003 08:56:39 +0900 + +tetex-base (1.0.2+20021025-6) unstable; urgency=low + + * Fixed handling of updmap in postinst. [kohda] (Closes: #175606) + * Fixed templates; added more elaborated explanation. Thanks to "R. Lewis" + [kohda] + + -- Atsuhito KOHDA Wed, 8 Jan 2003 10:07:28 +0900 + +tetex-base (1.0.2+20021025-5) unstable; urgency=low + + * Fixed templates. [kohda] (Closes: #175381) + * Fixed handling of psfonts.map, pdftex.map; if possible, used updmap now. + [kohda] + + -- Atsuhito KOHDA Mon, 6 Jan 2002 12:12:32 +0900 + +tetex-base (1.0.2+20021025-4) unstable; urgency=low + + * Added note for tetex maintainers about how to create orig.tar.gz + This is irrelevant for users but might be helpful for maintainers + cooperation. [kohda] + * Now postinst and tetex-extra.postinst checked the existence of + /etc/texmf/fmtutil.cnf" before running "texconfig init". [kohda] + (Closes: #62539) + * Now updmap.cfg is not a conffile but a configuration file generated by + update-updmap of tetex-bin. [kohda] (Closes: #70581) + * Found extsizes was included. [kohda] (Closes: #111561) + * Removed unnecessary /etc/X11/Xresources from dirs. [kohda] + * Moved eurosym and texdoctk stuffs in tetex-extra so modified dependency + correspondingly. [kohda] (Closes: #173872, #170382) + * Moved pdftex/pdflatex stuffs in tetex-base so now pdftex/pdflatex + should work without tetex-extra. [kohda] + (Closes: #143751, #95995, #139298) + * Removed FMT files when tetex-extra would be removed. Note, obsolete + omaga.fmt and lambda.fmt would be removed with preinst of tetex-bin. + [kohda] (Closes: #45930) + * Fixed handling way of psfonts.map pdftex.map ; first removed + obsolete wrong files if any in preinst and set them up correctly in + postinst. [kohda] + * Tried to remove obsolete conffiles with debconf. [kohda] + * Fixed handling of /usr/share/texmf/doc in rules; in the former version + symlinks were messed up. In this time, they would be corrected and #170592 + should be fixed really. + + -- Atsuhito KOHDA Wed, 18 Dec 2002 07:50:57 +0900 + +tetex-base (1.0.2+20021025-3) unstable; urgency=low + + * Changed Conflicts: revtex4 (<= 4.0-2) as the revtex4 maintainer, + Alexei Kaminski, kindly made a dummy revtex4 4.0-3 for smooth upgrade. + I would like to express the greatest thanks to Alexei Kaminski! + (Closes: #169902) + * Now provided xdvi.cfg [kohda] (Closes: #171196, #171913) + * Fixed config.ps with patch-tmp. Now dvips was in secure mode by default + and '-R' option should work fine. This will be fixed in the upstream + soon, so we should remove this modification at that instance! [kohda] + (Closes: #51586, #127893, #133589, #139085, #156406) + * Removed tetex-extra.preinst and preinst completely. [advised by jdg and + done by kohda] (Closes: #170592) + - I believe this would fix the failure of installation + (Closes: #78640, #153891, #170102) + * Removed listings.*, this package might be not DFSG-free. [kohda] + + -- Atsuhito KOHDA Mon, 2 Dec 2002 08:05:11 +0900 + +tetex-base (1.0.2+20021025-2) unstable; urgency=low + + * Added lost directories at cvs-upgrade. [kohda] + * Removed very obsolete 'babel' from Conflicts/Replaces entries. This was + a bug of serious, so we should fix this. [kohda] (Closes: #169799) + * Changed the condition in postinst from "if [ ! -e /usr/share/texmf/doc ]" + to "if [ ! -L /usr/share/texmf/doc ]" This might fix #170592 [kohda] + * Now remove /etc/texmf (and /var/cache/fonts) at purge by postrm. [kohda] + (Closes: #61293) + * Setted Conflicts/Replace with old tetex-bin because prologues for dvips + was moved in tetex-bin now. + * ttlkeys.def was included in the upstream source so I stopped fiddling + with it. [kohda] + * Added cspsfonts (tetex-base) and revtex4 (tetex-extra) to Conflicts + field. [kohda] (Closes: #159939, #169937) + * Following bugs could be closed. [kohda] + - newhelpindex.html could display the links. (closes: #141988) + - pool size was large enough. (closes: #165732) + - installed booktabs again. (closes: #167920) + + -- Atsuhito KOHDA Fri, 29 Nov 2002 10:15:02 +0900 + +tetex-base (1.0.2+20021025-1) unstable; urgency=low + + * New Upstream Release (20021025 beta version). + - web2c 7.3.9 in 20021025 version. (Closes: #165733) + - context would work. (Closes: #132232, #132237) + * Used the original tarball and applied necesary patches explicitly + to clarify our modifications but removed bad-license-files already + from .orig.tar.gz [kohda] + * Removed obsolete /var/spool/texmf and added /var/cache/fonts (debian/dirs) + [kohda] + * Added conffiles of dvips as possible as I could do. + (with debian/setup-conffiles) [kohda] + - utopia.map was removed in upstream (20021017) + * List explicitly already removed bad license files in the upstream source + in README.Debian [kohda] + * bookstabs, picinpar.sty were added because the license problems were + cleared. [kohda] + * Refined mktexlsr handling in postinst/postrm files. [kohda] + * Modified restore-symlinks a bit. [kohda] + * Modified remove-bad-license-files a bit [kohda] + * Added pxfonts, txfonts, mfpic, texdoctk, tetex-eurosym to a field of + Conflicts/Replaces. Thanks to Adrian Bunk . [kohda] + - removed Suggests: texdoctk from tetex-doc. + * Added and updated ttlkeys.def, and installed it by rules. But ttlps.def + was now present in original. [kohda] + * Added code to debian/rules to chmod our extra scripts to be executable + [cmc] (Closes: #148537) + + -- Atsuhito KOHDA Mon, 18 Nov 2002 17:00:03 +0900 + +tetex-base (1.0.2+20011202-4) unstable; urgency=low + + * For smooth upgrading, I collected every modifications to patch-deb, + so I hope cvs-upgrade would not cause troubles. + Please do NOT upload this version. [kohda] + * texmf/doc/generic/pstricks/multido.doc: Remove extra + ``\end{description}'' line [cmc] (Closes: #145478) + + -- Atsuhito KOHDA Sat, 16 Nov 2002 20:45:59 +0900 + +tetex-base (1.0.2+20011202-3) unstable; urgency=high + + * Added ttlkeys.def and ttlps.def from tetex-src package [cmc] + (Closes: #123981, #123989) + * Removed extra copy of draftcopy.sty [cmc] (Closes: #137238) + * texmf/: doc/fonts/oldgerman/corkpaper.dvi, + doc/fonts/oldgerman/suet.dvi, doc/generic/pstricks/README.pst-osci, + doc/latex/booktabs/booktabs.dvi, doc/latex/booktabs/booktabs.readme, + doc/latex/caption/caption.dvi, doc/latex/fancyvrb/fvrb-ex.dvi, + doc/latex/styles/algorithms.dvi, doc/latex/styles/beton.dvi, + doc/latex/styles/caption.dvi, doc/latex/styles/euler.dvi, + doc/latex/styles/footbib.dvi, doc/latex/styles/picinpar.dvi, + fonts/source/public/gothic/suet14.mf, + fonts/tfm/public/gothic/suet14.tfm, tex/latex/algorith/algorithm.sty, + tex/latex/algorith/algorithmic.sty, tex/latex/caption/caption.sty, + tex/latex/fancyvrb/fvrb-ex.sty, tex/latex/misc/beton.sty, + tex/latex/misc/booktabs.sty, tex/latex/misc/euler.sty, + tex/latex/misc/footbib.sty, tex/latex/misc/picinpar.sty: Files removed + because of licensing issues [cmc] (Closes: #131191) + * Add complete list of authorized folks to the Uploaders field in the + control file [cmc] + * Added debian/remove-bad-license-files to remove files we cannot + distribute if they are present (removed from CVS, but present in the + upstream tar file) [cmc] + * Removed executable bit from *.sty files in /texmf/tex/latex/cite/ [cmc] + * Rebuilt orig.tar.gz so that it unpacks into tetex-base-20011202 rather + than tetex-texmf-20011202 [cmc] + * Added missing angle bracket to + texmf/doc/latex/latex2e-html/ltx-174.html (Closes: #140394) [cmc] + * Should go into woody + + -- C.M. Connelly Sat, 27 Apr 2002 16:18:59 -0700 + +tetex-base (1.0.2+20011202-2) unstable; urgency=low + + * change vardir in original texmf.cnf in tetex-bin so that we don't have + to change it via texconfig while installing or upgrading. (closes: + #69600) + * don't install xdvi.cfg with tetex-base (closes: #127596, #129165, #129168) + + -- Christoph Martin Fri, 18 Jan 2002 23:56:48 +0100 + +tetex-base (1.0.2+20011202-1) unstable; urgency=low + + * New upstream release. + * Changed the dvips default to print to a file. + (closes: #106448) + + -- Adrian Bunk Mon, 3 Dec 2001 11:25:50 +0100 + +tetex-base (1.0.2+20011128-1) unstable; urgency=high + + * New upstream release. This release includes: + - the non-free cmbright fonts + macros were removed + - pb-diagram; added a Conflicts + Provides + Replaces on + the pb-diagram package. + - LaTeX 2001/06/01 (closes: #111366, #111489) + - updated semhelv package (closes: #46774) + - updated babel (closes: #79420) + - updated listings package (closes: #121821) + - marvosym works now as expected (closes: #109456) + * Removed latin9.def and latin10.def (reopens: #119531) + + -- Adrian Bunk Fri, 30 Nov 2001 20:51:51 +0100 + +tetex-base (1.0.2+20000804a-2) unstable; urgency=medium + + * fix empty tetex-extra.prerm (closes: #120960) + + -- Christoph Martin Sun, 25 Nov 2001 10:43:59 +0100 + +tetex-base (1.0.2+20000804a-1) unstable; urgency=low + + * fix copyrights in gs fonts (closes: #111284, #111289) + * remove predepends on essential package perl(5)-base (closes: #120300) + * add latin9.def and latin10.def (closes: #119531) + * added correct psnfss.html (closes: #119191) + + -- Christoph Martin Thu, 22 Nov 2001 19:17:40 +0100 + +tetex-base (1.0.2+20000804-9) unstable; urgency=low + + * Removed the directory /usr/share/texmf/tex/texinfo from + tetex-base since it's now in texinfo and versioned the + dependency of tetex-base on texinfo. (closes: #105594) + * Changed the priority of tetex-base from standard to optional + in debian/control. + * Added an "Uploaders:" field to debian/control. + + -- Adrian Bunk Thu, 19 Jul 2001 22:21:59 +0200 + +tetex-base (1.0.2+20000804-8) unstable; urgency=low + + * tetex-base does now suggest tetex-extra. (closes: #60253) + * Updated README.debian: (closes: #99297) + - tetex-nonfree is gone. + - xdvi does display .dvi.gz files. + - s|/usr/doc|/usr/share/doc|g + * Fixed a typo in newhelpindex.html. (closes: #96270) + + -- Adrian Bunk Sat, 2 Jun 2001 15:45:56 +0200 + +tetex-base (1.0.2+20000804-7) unstable; urgency=low + + * Removed the empty tetex-nonfree package - it's enough that the + other packages conflict with tetex-nonfree to force the removal + of tetex-nonfree. + Let tetex-extra provide tetex-nonfree to make upgrades easier. + * /etc/X11/app-defaults/XDvi is now a conffile. + + -- Adrian Bunk Sat, 24 Mar 2001 23:05:49 +0100 + +tetex-base (1.0.2+20000804-6) unstable; urgency=low + + * tetex-extra now conflicts/replaces cspsfonts (closes: #86415, #86698) + * move Build-Depends to Build-Depends-Indep in right place and add m4 + (closes: #88374) + * tetex-extra depends on gsfonts (closes: #87517) + + -- Christoph Martin Sun, 11 Mar 2001 12:05:15 +0100 + +tetex-base (1.0.2+20000804-5) unstable; urgency=medium + + * remove Predepends: dpkg-perl (closes: #82227) + * conflicts now with csplain, cslatex and cstexfonts (closes: #83711) + + -- Christoph Martin Sat, 17 Feb 2001 19:50:26 +0100 + +tetex-base (1.0.2+20000804-4) unstable; urgency=low + + * exclude some files which belong into tetex-src (closes: #78029) + * make tetex-nonfree an update-convenience package (closes: #69511) + * tetex-base depends on texinfo because of cyrtxinf (closes: #61990) + + -- Christoph Martin Sun, 10 Dec 2000 15:25:35 +0100 + +tetex-base (1.0.2+20000804-3) unstable; urgency=low + + * move /usr/X11R6/lib/X11/app-defaults/XDvi to /etc/X11/app-defaults + (closes: #76812, #76763) + + -- Christoph Martin Tue, 21 Nov 2000 17:20:16 +0100 + +tetex-base (1.0.2+20000804-2) unstable; urgency=low + + * unset some more TEX variables when installing (closes: #66634) + + -- Christoph Martin Sat, 30 Sep 2000 16:39:20 +0200 + +tetex-base (1.0.2+20000804-1) unstable; urgency=low + + * new upstream beta + * no more nonfree packages (closes: #65961) + * remove some files which are now in texinfo (closes: #65825) + * update Standards-Version to 3.2.0 and introduce Build-Depends (closes: + #67781) + * tetex-doc suggests texdoctk (closes: #67756) + * new hyphenation-patterns for dutch (nehyph) (closes: #55001) + + -- Christoph Martin Sat, 19 Aug 2000 13:48:43 +0200 + +tetex-base (1.0.2-2) unstable; urgency=high + + * preinst end with "exit 0" instead of "exit 1" (closes: #66024, #66283) + * Removed obsolete /usr/share/doc/tetex-base/copyright.seminar.gz + and corrected description of tetex-nonfree (closes: #65826) + * Moved koma-script from tetex-nonfree to tetex-extra (closes: #65827) + * Added a note at debian/copyright about the licence change of seminar + and koma-script + * Corrected typo in the description of tetex-doc + * Upload sponsored by Tony Mancill + + -- Adrian Bunk Sat, 24 Jun 2000 03:08:08 +0200 + +tetex-base (1.0.2-1) unstable; urgency=low + + * new upstream version (closes: Bug#57493, #56993) + * new LaTeX version + * new changebar.sty (closes: Bug#63930) + * move seminar back from tetex-nonfree as it seems to be free now + (closes: Bug#63912) + * move stmary back from tetex-nonfree as it seems to be free now + (closes: Bug#63331) + * new multicol.sty (closes: Bug#65111) + * do not check anymore for old tex packages (closes: Bug#62541) + + -- Christoph Martin Mon, 12 Jun 2000 14:53:40 +0200 + +tetex-base (1.0-10) frozen unstable; urgency=low + + * run mktexlsr in tetex-doc.postinst (closes: #62697) + * move stmary* to nonfree (closes: #62776, #62775) + * corrected description of tetex-extra (closes: #62520) + + -- Christoph Martin Fri, 21 Apr 2000 18:15:17 +0200 + +tetex-base (1.0-9) frozen unstable; urgency=high + + * Change maintainer address to new list + debian-tetex-maint@lists.debian.org. This should really go into + potato, so that we have the same maintainer address in frozen and + unstable. The old address will vanish soon. + * No codechanges + + -- Christoph Martin Sun, 9 Apr 2000 12:54:38 +0200 + +tetex-base (1.0-8) frozen unstable; urgency=medium + + * fixed broken french option in babel (closes: Bug#42698) + * remove ^Z from picins.sty (closes: Bug#42938) + + -- Christoph Martin Sat, 18 Mar 2000 16:07:00 +0100 + +tetex-base (1.0-7) unstable; urgency=low + + * typo in description of tetex-nonfree (closes: Bug#54821) + * add koma-script to description of tetex-nonfree (closes: Bug#54822) + + -- Christoph Martin Sat, 15 Jan 2000 11:36:33 +0100 + +tetex-base (1.0-6) unstable; urgency=high + + * use some more debhelpers + * change maintainer to tetex-maint .. + * move /usr/doc/* to /usr/share/doc/* (closes: Bug#51031) + * y2k fix in dinbrief.cls (closes: Bug#54385) + * fix permissions of some files (closes: Bug#54125, #53207) + + -- Christoph Martin Sun, 9 Jan 2000 14:51:40 +0100 + +tetex-base (1.0-5) unstable; urgency=low + + * add some copyright files to tetex-nonfree (closes: Bug#46445) + * resolve some dangling sysmlinks (closes: Bug#42794) + + -- Christoph Martin Tue, 26 Oct 1999 16:10:28 +0200 + +tetex-base (1.0-4) unstable; urgency=low + + * remove info entry for texinfo + * don't check for old texinfo on new install (Bug #41215) + + -- Christoph Martin Tue, 13 Jul 1999 11:32:05 +0200 + +tetex-base (1.0-3) unstable; urgency=high + + * remove texinfo.tex from tetex-base (Bug #40981, #40998, #40999, + #40960, #40961, #40983) + + -- Christoph Martin Fri, 9 Jul 1999 09:50:56 +0200 + +tetex-base (1.0-2) unstable; urgency=low + + * koma-script has to be in non-free + + -- Christoph Martin Mon, 5 Jul 1999 00:37:11 +0200 + +tetex-base (1.0-1) unstable; urgency=low + + * new upstream release (Bug #39234) + * change permission and ownership of files in /usr/local (Bug #35752) + * Xresources for XDvi are now in /etc/X11/Xresources/tetex-base + (Bug #38259) + * we have koma-script in non-free again + + -- Christoph Martin Sat, 3 Jul 1999 18:12:33 +0200 + +tetex-base (0.9.990601-2) unstable; urgency=low + + * fix move of files from nonfree to base etc. (Bug #38896) + + -- Christoph Martin Thu, 3 Jun 1999 22:55:48 +0200 + +tetex-base (0.9.990601-1) unstable; urgency=low + + * New upstream version, almost 1.0. + * Upstream removes some nonfree packages, so they are no longer in + tetex-base, -extra or nonfree. (foiltex, french) + * move natbib, ntgclass, multicol, makebst back to base, as they are + free now (LaTeX Project Public License) + * License for a lot of files is in lppl.txt + * context moved to main, as it is GPLed now + + -- Christoph Martin Thu, 3 Jun 1999 13:39:45 +0200 + +tetex-base (0.9.990510-2) unstable; urgency=high + + * remove dir /usr/share/texmf/pdftex/config before update, because dpkg + can't replace a dir with a link (Bug #38207, #38278) + + -- Christoph Martin Tue, 25 May 1999 11:00:29 +0200 + +tetex-base (0.9.990510-1) unstable; urgency=low + + * new upstream version + * patch newhelpindex.html to point to compressed files (Bug #33819, + #37148) + * include pointers to nehyph2.tex in language.dat and README.debian (Bug + #36049) + * new version (3.6x) of babel (Bug #36908) + * fix for postinst (Bug #37095) + * add dhelp support (Bug #31171) + * compress all the .dvi files (Bug #29690) + * add a special copyright file for tetex-nonfree (Bug #36346) + * call fmtutil --missing in postinst of tetex-extra to generate missing + formats (Bug #37146) + + -- Christoph Martin Sat, 22 May 1999 16:49:47 +0200 + +tetex-base (0.9.990406-1) unstable; urgency=low + + * new upstream version + * rm /var/lib/texmf/ls-R (Bug #35808) + * test for correct paths before configuring + + -- Christoph Martin Sat, 10 Apr 1999 14:18:57 +0000 + +tetex-base (0.9.990311-2) unstable; urgency=low + + * conflicts now with tetex-bin << 0.9.990310 (Bug #35584, #35589) + + -- Christoph Martin Mon, 5 Apr 1999 22:58:08 +0200 + +tetex-base (0.9.990311-1) unstable; urgency=low + + * new upstream version (Bug #34646) + * move to /usr/share/texmf (Bug #32714) + * move uktug-fag/index.html to tetex-doc (Bug #32288) + * make /usr/doc/texmf/mkhtml executable (Bug #33790) + * rm /usr/lib/texmf/local as tetex can now search in multiple + paths. (Bug #33290) + * move etex to tetex-base + + -- Christoph Martin Sun, 4 Apr 1999 12:32:37 +0200 + +tetex-base (0.9.981113-1) frozen unstable; urgency=high + + * New upstream bugfix (which hopefully fixes some problems) + * really move french/ to nonfree (Bug #30509) + * check for parameter of nonfree.postinst (Bug #22130) + * corrected typo in copyright file (Bug #30772) + + -- Christoph Martin Sun, 10 Jan 1999 18:07:44 +0100 + +tetex-base (0.9.981030-3) frozen unstable; urgency=medium + + * removed some disturbing warning message from postrm (Bug #28938, + #30484) + * check if texmf.cnf is really there where texconfig and friends search + for it before running texconfig etc. in postinst (Bug #28940, #29213, + #30276, #30485) + * add conficts/replaces for tetex-french as tetex-extra now includes + french.sty (Bug #30387) + * move nehyph[12], context/ and french/ to nonfree (Bug #29485, #29341, + #30509) + + -- Christoph Martin Sun, 13 Dec 1998 18:38:46 +0100 + +tetex-base (0.9.981030-2) frozen unstable; urgency=medium + + * corrected wrong source format. .orig.tar.gz and .diff were missing. + + -- Christoph Martin Sat, 28 Nov 1998 23:19:46 +0100 + +tetex-base (0.9.981030-1) unstable frozen; urgency=low + + * new upstream version (981030) + * /usr/doc/texmf/mkhtml is now executable (bug #28151) + * README.debian now contains more usefull information and a pointer to + more documentation (bug #25286) + * tetex-extra now too suggest tetex-nonfree + * changing descriptions of packages to have better information about + tetex-nonfree + * adding some information to the copyright file about the copyrights and + where to find them of the individual parts of teTeX (Bug #28423) + * fixing making link for /usr/lib/texmf/doc + * fixes draftcopy problem (bug #20458) + + -- Christoph Martin Sat, 31 Oct 1998 16:37:32 +0100 + +tetex-base (0.9.981008-2) unstable; urgency=high + + * onother fix for Bug #27162 + + -- Christoph Martin Fri, 16 Oct 1998 15:21:01 +0200 + +tetex-base (0.9.981008-1) unstable; urgency=low + + * New upstream version (981008) + * koma-script moved to komascr + * do not remove everything on purge in /etc/texmf (Bug #27231) + * include latest version of hyperref (Bug #27026) + * moved /usr/lib/texmf/doc to /usr/doc/texmf and give hint to it in + README.debian (Bug #26695, #27612) + * added bibentry (Bug #24520) + * changed /usr/local/lib/texmf links from relativ to absolut (Bug + #27041) + + -- Christoph Martin Sun, 11 Oct 1998 19:12:51 +0200 + +tetex-base (0.9.980803-1) unstable; urgency=low + + * New upstream version (980803) + * Includes June 1998 LaTeX Release (fixes: bug #26299) + * web2c.info now registerd (fixes: bug #26365) + * moved some files from tetex-base to tetex-extra + * moved a4wide.sty to nonfree, because a4.sty depends on it (fixes: + bug #24320, #25263) + * corrected copyright file (fixes: bug #24018) + * moved multicol to nonfree + + -- Christoph Martin Sat, 5 Sep 1998 21:51:22 +0200 + +tetex-base (0.9-8) frozen unstable; urgency=high + + * fixed check for old texmf.cnf in postinst (bug #23030) + * remove some more files on purge + + -- Christoph Martin Mon, 15 Jun 1998 14:08:42 +0200 + +tetex-base (0.9-7) frozen unstable; urgency=high + + * fixed problems with old and incompatible texmf.cnf (bug #22680, + #22694, #22672, #22683) + + -- Christoph Martin Thu, 21 May 1998 12:05:47 +0200 + +tetex-base (0.9-6) frozen unstable; urgency=high + + * new upstream version (teTeX 0.9 980511) + * removed info links since info files are no longer available; docu is + in html (bug #21479) + * fixed circular dependency of tetex-bin and tetex-base (bug #21558) + * tetex-base now Suggests rather then Recommends tetex-nonfree (bug + #21492) + * fixed postinst (bug #21590) + * removed some junk (bug #21505) + * more html docs (bug #16322) + + -- Christoph Martin Fri, 15 May 1998 22:55:42 +0200 + +tetex-base (0.9-5) frozen unstable; urgency=low + + * new upstream release (teTeX 0.9 980325) + * include french hyphenation patterns per default (Bug #20610) + * fixed type in tabbing.html (was in latex.info) (Bug #20412) + * added kris.eps and ross.eps (Bug #19737) + * added conflicts and replaces for obsolete hyperref (Bug #20333, + #20346, #20437, #20457) + * moved more files into tetex-nonfree + + -- Christoph Martin Sat, 11 Apr 1998 22:05:32 +0200 + +tetex-base (0.9-4) frozen unstable; urgency=low + + * move some nonfree files to new package tetex-nonfree (bugs #13456, #10568) + + -- Christoph Martin Fri, 27 Mar 1998 10:53:34 +0100 + +tetex-base (0.9-3) unstable; urgency=low + + * fixed dependencies again (bug #20119) + * added comment in postinst about long initex run + + -- Christoph Martin Wed, 25 Mar 1998 17:34:41 +0100 + +tetex-base (0.9-2) unstable; urgency=low + + * added Replaces and Depends for 0.4 versions + * fixed important problems reported by lintian (bug #19721) + * fixed missing set -e in scripts (bug #18633) + * added koma-script/readme.txt (bug #16410) + + -- Christoph Martin Mon, 23 Mar 1998 14:22:52 +0100 + +tetex-base (0.9-1) frozen unstable; urgency=medium + + * New Upstream Release (teTeX 0.9-980318). + * includes new sphyph.tex (bug #9999) + * latin2.def defines now \dj etc (bug #12173) + * fixes errors reportet by lintian for tetex-base (bug #19417) + * fixes errors reportet by lintian for tetex-doc (bug #19419) + * pstricks/multido.doc is now included (bug #16338) + * koma-script/readme.txt is now included (bug #16310) + * fixes errors reportet by lintian for tetex-extra (bug #19420) + * use tempfile in postinst (bug #19719) + * \noindent now works in quote environment (bug #18370) + + -- Christoph Martin Sun, 22 Mar 1998 18:05:19 +0100 + + +;; Local Variables: +;; coding: utf-8 +;; End: --- tetex-base-3.0.orig/debian/README.texmaps +++ tetex-base-3.0/debian/README.texmaps @@ -0,0 +1,13 @@ +Some of the configuration files of TeX-related packages cannot be +present in /etc when the package is removed (but not purged). In +particular, font configuration files in /etc/texmf/updmap.d/ will +cause errors when the respective map files (or symlinks) in +/usr/share/texmf/fonts/map are not present. + +To preserve user changes, maintainer scripts can put those +configuration files into subdirectories of this directory to preserve +changes made by the local administrator. + +When tetex-base is purged, these files will stay in this directory, +causing a warning by dpkg. Please do not remove this directory, unless +it is empty. --- tetex-base-3.0.orig/debian/index-tetexdoc.1 +++ tetex-base-3.0/debian/index-tetexdoc.1 @@ -0,0 +1,32 @@ +.TH INDEX-TETEXDOC 8 +.\" NAME should be all caps, SECTION should be 1-8, maybe w/ subsection +.\" other parms are allowed: see man(7), man(1) +.SH NAME +index-tetexdoc \- shell script to generate an index of all TeX documentation files +.SH SYNOPSIS +.B index-tetexdoc +.I "[options]" +.br +.SH DESCRIPTION +This manual page documents briefly the +.BR index-tetexdoc +command. +.PP +.B index-tetexdoc +is a shell script to generate a html file that contains links to all +TeX documentation files in TEXMF/doc. The default output file is +/var/lib/texmf/helpindex.html +.PP +.PP +.SH OPTIONS +.B \-o, \-\-output\-file +.I "[filename]" +.br +.PP +Output to +.I filename +instead. +.PP +.SH AUTHOR +This manual page was written by Frank Küster , +for the Debian GNU/Linux system (but may be used by others). --- tetex-base-3.0.orig/debian/tetex-doc.postrm +++ tetex-base-3.0/debian/tetex-doc.postrm @@ -0,0 +1,14 @@ +#!/bin/sh +set -e + + +case "$1" in + remove|failed-upgrade) + if [ -x /usr/bin/mktexlsr ]; then + /usr/bin/mktexlsr + rm -f /var/lib/texmf/helpindex.html + fi + ;; +esac + +#DEBHELPER# --- tetex-base-3.0.orig/debian/tetex-extra.dirs.in +++ tetex-base-3.0/debian/tetex-extra.dirs.in @@ -0,0 +1,4 @@ +#include variables +etc/texmf/updmap.d +usr/share/tetex-extra +<:=$FONTMAP_MEMORY_DIR:> --- tetex-base-3.0.orig/debian/reportbug.base +++ tetex-base-3.0/debian/reportbug.base @@ -0,0 +1,53 @@ +#!/bin/sh + +cat <&3 <&3 +echo " List of ls-R files" >&3 +echo >&3 +for file in $ls_R_files; do + ls -l $file >&3 +# echo >&3 +# cat $file >&3 +# echo "######################################" >&3 +done --- tetex-base-3.0.orig/debian/setup-conflinks-perl +++ tetex-base-3.0/debian/setup-conflinks-perl @@ -0,0 +1,148 @@ +#!/usr/bin/perl +# +# setup-conflinks, internal packaging script for tetex-base and -extra. +# $Id: setup-conflinks-perl 113 2005-08-04 15:02:54Z frn $ +# The eperl code is taken from the auctex package, Copyright (C) 1999, +# 2000, 01, 02, 03, 04 by Davide Giovanni Maria Salvetti. +# +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This file is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to: The Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. +# +# On Debian GNU/Linux System you can find a copy of the GNU General Public +# License in "/usr/share/common-licenses/GPL". +# +# +use strict; +use warnings; +use diagnostics; + +use Getopt::Long; +use File::Basename; + +################################### +# internal Variables +################################### + +my $progname = $0; +my $package; + + +################################### +# teTeX Variables +################################### + +my @base_conffiles = ( +"tex/cslatex/fonttext.cfg", +"tex/cslatex/hyphen.cfg", +"tex/latex/base/latex209.cfg", +"tex/latex/base/ltxdoc.cfg", +"tex/latex/base/ltxguide.cfg", +"tex/latex/base/texsys.cfg", +"tex/latex/graphics/color.cfg", +"tex/latex/graphics/graphics.cfg", +"context/config/texexec.ini", +"context/config/texexec.rme" +); +# $BASE_UCF is substituted by a space-separated list +# my $base_ucf = "mktex.cnf dvips/config.builtin35 updmap.d/00updmap.cfg dvipdfm/config language.dat generic/fontmath.cfg generic/fonttext.cfg generic/preload.cfg"; +my @base_ucf = split / /, "mktex.cnf dvips/config.builtin35 updmap.d/00updmap.cfg dvipdfm/config language.dat generic/fontmath.cfg generic/fonttext.cfg generic/preload.cfg"; + +################################### +# Function definitions +################################### + +sub usage () { + print < \$package ); +$package = "tetex-$package"; + +for ($package) { + if (/base/) { + +# miscellaneous config files + for my $conffile (@base_conffiles) { + ( my $destdir = dirname ($conffile) ) =~ s@^tex/@@; + $destdir =~ s@/.*@@; +# commented for testing +# move_and_link $conffile, $destdir; + }; + move_and_link "tex/generic/config", ".", "generic"; + +# ucf move +# commented for testing +# rename "debian/$package/usr/share/texmf/web2c/updmap.cfg", +# "debian/$package/usr/share/texmf/web2c/00updmap.cfg" +# or die "debian/$package/usr/share/texmf/web2c/updmap.cfg not found"; + for (@base_ucf){print "$_\n"}; +# print "@base_ucf\n"; +# for my $ucffile (){ +# }; + } + elsif (/extra/) { + print "extra\n"; + } + else { usage } +}; + +#print "$package\n"; + +# Local Variables: +# mode: cperl +# skeleton-pair: t +# End: + --- tetex-base-3.0.orig/debian/postrm.functions +++ tetex-base-3.0/debian/postrm.functions @@ -0,0 +1,97 @@ +################################################################# +# Function definitions included from file postrm.functions +################################################################# +# $Id: postrm.functions 379 2005-12-07 09:38:32Z frank $ +# Copyright 2004 Frank Küster + +remove_with_backups(){ + file=$1 + for extension in $DPKG_EXT; do + rm -f $file$extension + done + rm -f $file +} + +ucf_purge(){ + directory=/etc/texmf + case "$1" in + -d|--directory) + directory=$2 + shift 2 + ;; + esac + filelist="$@" + if [ -x /usr/bin/ucf ]; then # we can't rely on ucf being still installed in postrm + purgefile(){ ucf --purge $1; remove_with_backups $1; } + else + purgefile(){ remove_with_backups $1; } + fi + for file in $filelist; do + # does this filename start with a leading slash? + relativename=${file#/} + if [ ! "$file" = "$relativename" ]; then + # leading slash, change directory + directory=`dirname $file` + file=`basename $file` + fi + purgefile $directory/$file + done +} + +run_if_exist(){ + checkonly=false + if [ "$1" = "-c" ] || [ "$1" = "--check-only" ]; then + checkonly=true + shift + fi + command=$1 + shift + args="$@" + binary="" + test -x `which $command` && binary=`which $command` || true + if [ $checkonly = false ]; then + if [ -n "$binary" ]; then # else return 0 - no need to code that + $command $args + fi + else + if [ -n "$binary" ]; then return 0; else return 1; fi + fi +} + +debug(){ + true "$*" +} +# debug(){ +# echo -en "$*" +# } + +postrm_abort_restore_file(){ + file=/etc/texmf/$1 + newname=`get_newfilename $1` + debug $file + test -f "$file" || return 0 + debug "handled\n" + if [ -e $file.$PREINST_MOVE_EXT ]; then + mv $file.$PREINST_MOVE_EXT $file + else + if [ -e /etc/texmf/$newname ]; then + mv /etc/texmf/$newname $file + fi + fi +} +postrm_abort_restore_file_ucf(){ + file=/etc/texmf/$1 + newname=`get_newfilename $1` + debug $file + test -f "$file" || return 0 + debug "handled\n" + if [ -e $file.$PREINST_MOVE_EXT ]; then + mv $file.$PREINST_MOVE_EXT $file + else + if [ -e /etc/texmf/$newname ]; then + mkdir /etc/texmf/`dirname $newname` + ucf /etc/texmf/$newname $file + rm /etc/texmf/$newname + fi + fi +} --- tetex-base-3.0.orig/debian/rules +++ tetex-base-3.0/debian/rules @@ -0,0 +1,245 @@ +#!/usr/bin/make -f +# +# do not edit this file, instead edit rules.in! +# $Id: rules.in 387 2005-12-08 17:56:37Z frank $ + +# The debian/rules(.in) file was nearly completely rewritten by +# Frank Küster frank@debian.org in 2004, with patches by +# Florent Rougon , 2005, +# +# who share the copyright. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 + +# This is the debhelper compatibility version to use. +export DH_COMPAT=3 + +EPERL_FILES := debian/preinst debian/postinst debian/postrm \ + debian/tetex-base.dirs \ + debian/tetex-extra.postinst debian/tetex-extra.preinst \ + debian/tetex-extra.postrm debian/tetex-extra.dirs \ + debian/setup-conflinks \ + debian/common.functions +eperl_sourcefiles=debian/variables debian/COPYRIGHT.scripts \ + debian/common.variables debian/common.functions +tex_common_dir = ../../tex-common/tex-common +real_common_variables=$(tex_common_dir)/debian/common.variables +real_common_functions_in=$(tex_common_dir)/debian/common.functions.in + +SHELL = /bin/bash + +package=tetex-base +extra=tetex-extra +docpack=tetex-doc +txmfdir=debian/$(package)/usr/share/texmf-tetex +extxmfdir=debian/$(extra)/usr/share/texmf-tetex +vardir=debian/$(package)/var/lib/texmf +pkgdir=debian/$(package)/usr/share/tetex-base +etcdir=/etc/texmf +debetc=debian/$(package)/etc/texmf + +### helper targets for the install target +stampdir=stampdir +include debian/rules.d/filelists.mk +include debian/rules.d/install.mk + +# needed for quilt: +export QUILT_PATCHES=./debian/patches + + +### variables from eperl that need to be passed to the static helper makefiles +FONTMAP_MEMORY_DIR=/var/lib/tex-common/fontmap-cfg + +############### +# Main targets +############### + +# Eperl is simply great: thanks, Davide! +% :: %.in $(eperl_sourcefiles) + eperl -P -o $@ $< + -head -1 $@ | grep '^#!/' >/dev/null && chmod a+x $@ + +# Override this rule for debian/rules, which needs an additional command +debian/rules: debian/rules.in $(eperl_sourcefiles) + # Refresh debian/common.variables and debian/common.functions.in every + # time the rules file is going to be regenerated + $(update_commonstuff) + # Regenerate the rules file + eperl -P -o $@ $< + +# Override the general rule for eperl-generated files in order to avoid a +# circular dependency (debian/common.functions is listed in +# $(eperl_sourcefiles)). +debian/common.functions: debian/common.functions.in debian/common.variables + eperl -P -o $@ $< + + +build: $(stampdir)/build-stamp + +install: $(stampdir)/eperl-stamp $(stampdir)/install-stamp + +binary: binary-indep binary-arch + +sarge: debian/sarge-stamp + +sid: debian/sid-stamp + + +############################## +# Subtargets that do the work +############################## + +# common.variables and common.functions are shared between the +# tetex-base and tetex-bin source packages. On a normal build, the +# versions included in the individual source packages are used. +# Developers can use the most recent version from tex-commons svn +# repository. If you want to use this mechanism, check out the trunk +# of the tetex-common tree and pass the variable $(tex_common_dir) to +# make, indicating its location relative to the build dir. The +# default is ../../tex-common/tex-common/. +define update_commonstuff +test -e $(real_common_variables) && \ + test $(real_common_variables) -nt debian/common.variables && \ + cp $(real_common_variables) debian/ || true + +test -e $(real_common_functions_in) && \ + test $(real_common_functions_in) -nt debian/common.functions.in && \ + cp $(real_common_functions_in) debian/ && \ + eperl -P -o debian/common.functions debian/common.functions.in || true +endef + +# For command-line use +commonstuff_update: + $(update_commonstuff) + +$(stampdir): + -mkdir $(stampdir) + +$(stampdir)/eperl-stamp: $(stampdir) $(EPERL_FILES) + touch $@ + +$(stampdir)/build-stamp: $(stampdir) patch-stamp + $(check-svn) + dh_testdir +# Make sure that our build scripts are executable. +# (only needed after upstream changes) +# chmod +x debian/remove-bad-license-files + + touch $(stampdir)/build-stamp + +# quilt patch targets +clean-patches: + -quilt pop -a + rm -f patch-stamp + +patch-stamp: + quilt push -a + touch $@ + + +### Clean up the source tree. +clean: clean-patches + dh_testdir + dh_testroot + $(update_commonstuff) + + dh_testdir + dh_testroot +# Make sure that our build scripts are executable. + chmod +x debian/remove-bad-license-files + +# Remove files that we can't distribute if they're still in the tree +# (needed only after an upstream change) +# debian/remove-bad-license-files + +# Run dh_clean to clean up the source tree, and remove stamps and filelists + dh_clean -Xconfig.old ./$(stampdir)/*-stamp ./$(stampdir)/files* ./debian/*.links ./debian/*.files + +# clean eperl files + rm -f $(EPERL_FILES) + +### Install the files for the packages. + +$(stampdir)/install-stamp: $(stampdir)/build-stamp $(stampdir)/setup-install-stamp +$(stampdir)/install-stamp: filelists install-base install-extra install-nonfree + # these targets are in debian/rules.d/{filelists.mk,install.mk} + touch $(stampdir)/install-stamp + +binary-indep: build install + $(check-svn) + dh_testdir + dh_testroot +# no debconf questions currently +# dh_installdebconf -p$(package) + dh_installdocs -i -N tetex-extra-fonts +# dh_installdocs -p tetex-extra-fonts debian/copyr.type1 debian/changelog -X copyright + + +# Remove the /usr/share/doc/tetex-extra directoriy and +# replace ist with a link to the /usr/share/doc/tetex-base directory + rm -rf debian/$(extra)/usr/share/doc/$(extra) + ln -s tetex-base debian/$(extra)/usr/share/doc/tetex-extra +# rm -rf debian/xfonts-tetex/usr/share/doc/xfonts-tetex +# (cd debian/xfonts-tetex/usr/share/doc/; ln -s tetex-extra-fonts xfonts-tetex) + ln -s ../texmf debian/$(docpack)/usr/share/doc/$(docpack)/ + + dh_installchangelogs ChangeLog -p tetex-base -p tetex-doc + cp debian/changelog.Debian.experimental debian/$(package)/usr/share/doc/$(package)/ + cp debian/changelog.Debian.experimental debian/$(docpack)/usr/share/doc/$(docpack)/ + dh_compress -Xhelpfile + dh_installinfo + +# Install reportbug scripts + install -D --mode=755 debian/reportbug.base debian/$(package)/usr/share/bug/tetex-base/script + install -D --mode=644 debian/reportbug-control.base debian/$(package)/usr/share/bug/tetex-base/control + install -D --mode=755 debian/reportbug.extra debian/$(extra)/usr/share/bug/tetex-extra/script + + dh_fixperms -i --exclude=var/cache/fonts + dh_gencontrol -i + dh_installdeb -i + dh_md5sums -i + dh_builddeb -i + +# Beep to let the builder know we're done. + echo -en "\a" + +## There are none now, but if we fix the mkhtml situation without +## moving the script to tetex-bin, there will be need to be a manpage. +# dh_installman + + +binary-arch: build +# There are no architecture-dependent files generated by this package. +# If there were any they would be made here. + + +#################################################################### +# targets to compile for sarge +#################################################################### + +debian/sarge-stamp: + cp debian/changelog debian/sarge/changelog.sid + sed -e s/3.0-13/3.0-12sarge13/ debian/sarge/changelog.sid \ + > debian/changelog && rm debian/sid-stamp + # need to remake rules + touch debian/rules.in + echo "dummy content for dpkg-source" > debian/sarge-stamp + +debian/sid-stamp: + mv debian/sarge/changelog.sid debian/changelog && rm debian/sarge-stamp + # need to remake rules + touch debian/rules.in + echo "dummy content for dpkg-source" > debian/sid-stamp + +.PHONY: build clean binary-indep binary-arch binary install sarge sid +.PHONY: commonstuff_update + +define check-svn + test -d debian/.svn && \ + (echo "please clean subversion directories"; exit 1) || true +endef + +# Local Variables: +# mode: Makefile +# End: --- tetex-base-3.0.orig/debian/moved_files +++ tetex-base-3.0/debian/moved_files @@ -0,0 +1,2 @@ +files moved from tetex-base to tetex-bin: +XDvi --- tetex-base-3.0.orig/debian/setup-conflinks-perl.in +++ tetex-base-3.0/debian/setup-conflinks-perl.in @@ -0,0 +1,130 @@ +#include variables +#!/usr/bin/perl +# +# setup-conflinks, internal packaging script for tetex-base and -extra. +# $Id: setup-conflinks-perl.in 113 2005-08-04 15:02:54Z frn $ +<:=@COPYRIGHT:>// +# +# +use strict; +use warnings; +use diagnostics; + +use Getopt::Long; +use File::Basename; + +################################### +# internal Variables +################################### + +my $progname = $0; +my $package; + + +################################### +# teTeX Variables +################################### + +my @base_conffiles = ( +"tex/cslatex/fonttext.cfg", +"tex/cslatex/hyphen.cfg", +"tex/latex/base/latex209.cfg", +"tex/latex/base/ltxdoc.cfg", +"tex/latex/base/ltxguide.cfg", +"tex/latex/base/texsys.cfg", +"tex/latex/graphics/color.cfg", +"tex/latex/graphics/graphics.cfg", +"context/config/texexec.ini", +"context/config/texexec.rme" +); +# $BASE_UCF is substituted by a space-separated list +my @base_ucf = split / /, "<:=$BASE_UCF:>"; + +################################### +# Function definitions +################################### + +sub usage () { + print < \$package ); +$package = "tetex-$package"; + +for ($package) { + if (/base/) { + +# miscellaneous config files + for my $conffile (@base_conffiles) { + ( my $destdir = dirname ($conffile) ) =~ s@^tex/@@; + $destdir =~ s@/.*@@; +# commented for testing +# move_and_link $conffile, $destdir; + }; + move_and_link "tex/generic/config", ".", "generic"; + +# ucf move +# commented for testing +# rename "debian/$package/usr/share/texmf/web2c/updmap.cfg", +# "debian/$package/usr/share/texmf/web2c/00updmap.cfg" +# or die "debian/$package/usr/share/texmf/web2c/updmap.cfg not found"; + for (@base_ucf){print "$_\n"}; +# print "@base_ucf\n"; +# for my $ucffile (){ +# }; + } + elsif (/extra/) { + print "extra\n"; + } + else { usage } +}; + +#print "$package\n"; + +# Local Variables: +# mode: cperl +# skeleton-pair: t +# End: + --- tetex-base-3.0.orig/debian/setup-conflinks.in +++ tetex-base-3.0/debian/setup-conflinks.in @@ -0,0 +1,74 @@ +#include variables +#!/bin/bash -e +# +# setup-conflinks, internal packaging script for tetex-base and -extra. +# $Id: setup-conflinks.in 411 2005-12-15 12:37:49Z preining-guest $ +<:=@COPYRIGHT:>// + +################################### +# Variables +################################### + +# tetex-extra +#EXTD=$extra_prefix/usr/share/texmf/dvips +#EXETC=$extra_prefix${DVIPS} +basedir=debian/tetex-base +pkgdir=$basedir/usr/share/tetex-base +ldatdir=$basedir/usr/share/texmf-tetex/tex/generic/config +LANGUAGE_DIR="$basedir/<:=$LANGUAGE_DIR:>" +LANGUAGE_MEMORY_DIR=<:=$LANGUAGE_MEMORY_DIR:> + + + +################################### +# Here starts the main program +################################### + +if [ x"$1" = "x-base" ] ; then + package=tetex-base + texmfdir=debian/$package/usr/share/texmf-tetex + +# add the magic header to the language config file + printf "%% 00tetex.cnf +%% +%% You really can change stuff in this file, but it is NOT RECOMMENDED +%% to play around with this file if you do not know what you are doing! +%% Please leave this comment! +%% -_- DebPkgProvidedMaps -_- +%% +" >> $LANGUAGE_DIR/00tetex.cnf + +# install latex's language dat in language.d + sed -n -e '0,\@^% The hyphenation pattern files are in the dir@ d; 0,/^$/ d; p' \ + $ldatdir/language.dat >> $LANGUAGE_DIR/00tetex.cnf + rm $ldatdir/language.dat + cp debian/tetex-base.language.list debian/$package/$LANGUAGE_MEMORY_DIR/tetex-base.list + +# remove upstream's updmap.cfg + rm $texmfdir/web2c/updmap.cfg + + rm -f $texmfdir/ls-R +# create our ls-R symlink + ln -s /var/lib/texmf/ls-R-TEXMFDIST-TETEX $texmfdir/ls-R + + # texdoctk stuff + mv $texmfdir/texdoctk debian/$package/etc + ln -s /etc/texdoctk $texmfdir + # texdocrc is handled by ucf + mv debian/$package/etc/texdoctk/texdocrc.defaults $pkgdir/texdocrc + cp debian/md5sums/texdocrc.md5sum $pkgdir/ + +elif [ x"$1" = "x-extra" ] ; then + package=tetex-extra + texmfdir=debian/$package/usr/share/texmf-tetex + + : +else + echo "Bad usage!" + exit 1 +fi + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: --- tetex-base-3.0.orig/debian/common.variables +++ tetex-base-3.0/debian/common.variables @@ -0,0 +1,68 @@ +<:# Copyright (C) 1999, 2000, 01, 02 by Davide Giovanni Maria Salvetti .:>// +<:# Copyright (C) 2004, 05 by Frank Küster .:>// +<:# $Id: common.variables 464 2006-01-17 14:34:12Z frank $:>// +<:# this list is from dpkg-1.10.9/include/dpkg.h.in: :>// +<:$DPKG_EXTENSIONS="'~' '%' .bak .dpkg-tmp .dpkg-new .dpkg-old .dpkg-dist":>// +<:$PREINST_MOVE_EXT=".preinst-bak":>// +<:$POSTINST_MOVE_EXT=".postinst-bak":>// +<:$PURGE_EXTENSIONS="$DPKG_EXTENSIONS $PREINST_MOVE_EXT $POSTINST_MOVE_EXT":>// +<:# package specific:>// +<:$ETC="/etc/":>// +<:$etc="/etc/texmf/":>// +<:$doc="/usr/share/doc/$PACKAGE/":>// +<:$TEXMFSYSVAR="/var/lib/texmf":>// +<:$MKTMPDIR="/tmp":>// +<:$FONTMAP_MEMORY_DIR="/var/lib/tex-common/fontmap-cfg":>// +<:$LANGUAGE_MEMORY_DIR="/var/lib/tex-common/language-cnf":>// +<:$LANGUAGE_DIR="$etc/language.d":>// +<:$LDAT_PATTERNS="inhyph.tex bahyph.tex cahyph.tex hrhyph.tex czhyph.tex \\ + dehypht.tex dehyphn.tex dkhyphen.tex nehyph.tex fi8hyph.tex frhyph.tex \\ + gahyph.tex grhyph.tex icehyph.tex ithyph.tex lahyph.tex huhyph.tex nohyph.tex \\ + nohyphb.tex nohyphbc.tex plhyph.tex pt8hyph.tex rohyphen.tex ruhyphen.tex \\ + sehyph.tex skhyph.tex sihyph23.tex sphyph.tex trhyph.tex ukrhyph.tex \\ + ukrhyph.t2a ukrhyph.lcy ukrhyph.ot2":>// +<:$TEXMF_CNF="/etc/texmf/texmf.cnf":>// +<:$TEXMF_PARTS="05TeXMF 15Plain 45TeXinputs 55Fonts 65BibTeX 75DviPS 85Misc 90TeXDoc 95NonPath":>// +<:for (@TEXMF_PARTS_FULLNAME=split(/ /,$TEXMF_PARTS)){s{(.*)}{texmf.d/$1.cnf}}:>// +<:$TEX_COMMON_UCF_FILES="@TEXMF_PARTS_FULLNAME updmap.d/00updmap.cfg":>// +<:#$confstatedir="/var/lib/tetex":>// +<:#$no_config_prefix="admin-wants-no":>// +<:$LSRS="/var/lib/texmf/ls-R /var/lib/texmf/ls-R-TEXMFMAIN /var/lib/texmf/ls-R-LOCAL /var/cache/fonts/ls-R":>// +<:# get the package version - must be usable in subdirectories, too:>//) +<:if(-f "changelog"){open(CHANGELOG,"changelog")} else {open(CHANGELOG, "../changelog")}; +# get the version even if the first line is blank +while($VERSION=){last if('' ne $VERSION=~s/$PACKAGE \((.*)\).*\n/$1/)}:>// +<:# compute the corresponding version for a sarge backport:>// +<:if ( ($rev=$VERSION)=~ s/.*-([[:digit:]]*).*/$1/, $rev == 0) + # if the debian revision is 0 or 0.x, don't make a backport + {$SARGEVERSION = ''} +else { + $sarge_rev=$rev-1; + ($SARGEVERSION=$VERSION)=~s/(.*-)$rev(.*)/$1${sarge_rev}sarge$rev$2/; +# ($SARGEVERSION=$VERSION)=~s/(.*-)$rev(.*)/$1$rev.0.sarge1/; +}:>// +<:$FIRST_BASE_VERSION_WITH_COMMON="3.0-4":>// +<:$README_sarge=''; $README_sarge='debian/sarge/README.sarge' if -e 'sarge-stamp':>// +<:# upgrading stuff:>// +<:$SYMLINK_MOVE_EXT="moved-by-preinst":>// +<:# debconf:>// +<:$CONFMODULE="/usr/share/debconf/confmodule":>// +<:# docbase:>// +<:$DINSTALL="test -x /usr/sbin/install-docs && install-docs --install":>// +<:$DREMOVE="test -x /usr/sbin/install-docs && install-docs --remove":>// +<:$docbase="/usr/share/doc-base/":>// +<:# info:>// +<:$IINSTALL="install-info --section \"$INFOSEC\" \"$INFOSEC\"" + . " --menuentry=\"$INFOMENU\"" + . " --description=\"$INFODESC\"" + . " --quiet":>// +<:$IREMOVE="install-info --quiet --remove":>// +<:$info="/usr/share/info/":>// +<:# misc:>// +<:$GPL="/usr/share/common-licenses/GPL":>// +<:open(COPYRIGHT,'COPYRIGHT.scripts');@COPYRIGHT=;close(COPYRIGHT):>// +<: +# local variables: +# mode: shell-script +# end: +:>// --- tetex-base-3.0.orig/debian/finddoubles +++ tetex-base-3.0/debian/finddoubles @@ -0,0 +1,26 @@ +#!/bin/bash + +contentsfile=/var/lib/dpkg/Contents-unstable-i386.gz + +texmffiles=texmf.files +relative_files=texmf.files.relative +files_double=texmf.files.double +files_todo=texmf.files.todo +double_packages_known='fonts/.*/lm/|tex/latex/lm|tex/latex/pgf|tex/latex/preview|tex/latex/xcolor|tex/texinfo' + +# create list of files and packages in /usr/share/texmf +zgrep usr/share/texmf $contentsfile | \ + egrep -v 'tex/tetex-extra|tex/tetex-base|tex/tetex-doc|tex/tetex-bin' > $texmffiles + +# filter out the relative filenames +sed -e 's@usr/share/texmf/\([[:alnum:][:punct:]]*\).*@\1@' $texmffiles > $relative_files + +# check whether those files are in our TEXMF tree: + +# for file in `cat $relative_files`; do +# # don't match directories! +# test -f $file && echo $file >> $files_double +# done + +# grep out files that are already removed from the debs +# egrep -v "$double_packages_known" $files_double > $files_todo --- tetex-base-3.0.orig/debian/sid-stamp +++ tetex-base-3.0/debian/sid-stamp @@ -0,0 +1 @@ +dummy content for dpkg-source --- tetex-base-3.0.orig/debian/common.functions_newer +++ tetex-base-3.0/debian/common.functions_newer @@ -0,0 +1 @@ +dummy content so that dpkg-source will keep this timestamp file --- tetex-base-3.0.orig/debian/reportbug-control.base +++ tetex-base-3.0/debian/reportbug-control.base @@ -0,0 +1 @@ +report-with: tetex-bin tetex-extra --- tetex-base-3.0.orig/debian/remove-bad-license-files +++ tetex-base-3.0/debian/remove-bad-license-files @@ -0,0 +1,134 @@ +#!/bin/sh + +## remove-bad-license-files +# +## C.M. Connelly +# +## $Id: remove-bad-license-files 113 2005-08-04 15:02:54Z frn $ +# +## Remove files that Debian can't distribute from the source tree if +## they are still present. (If the package is built with +## cvs-buildpackage, using the CVS tree, this script is unnecessary; +## if the package is being built from the source tar file, however, +## these files will be present and need to be removed.) +# +## This script should be removed once the licensing issues are settled +## and the upstream source changes to reflect the changes. + +badfiles='./texmf/doc/fonts/oldgerman/corkpaper.dvi + ./texmf/doc/fonts/oldgerman/suet.dvi + ./texmf/doc/latex/styles/algorithms.dvi + ./texmf/doc/latex/styles/footbib.dvi + ./texmf/fonts/source/public/gothic/suet14.mf + ./texmf/fonts/tfm/public/gothic/suet14.tfm + ./texmf/tex/latex/algorith/algorithm.sty + ./texmf/tex/latex/algorith/algorithmic.sty + ./texmf/tex/latex/misc/footbib.sty + ./texmf/tex/generic/misc/psfig.sty + ./texmf/tex/generic/hyphen/ukhyphen.tex +' +bad_fontfiles='./texmf/doc/latex/mfnfss/pandora.dvi + ./texmf/tex/latex/mfnfss/pandora.sty + ./texmf/fonts/source/public/pandora/caps.mf + ./texmf/fonts/source/public/pandora/fligs.mf + ./texmf/fonts/source/public/pandora/ligs.mf + ./texmf/fonts/source/public/pandora/number.mf + ./texmf/fonts/source/public/pandora/panaccent.mf + ./texmf/fonts/source/public/pandora/pandor.mf + ./texmf/fonts/source/public/pandora/pangreeku.mf + ./texmf/fonts/source/public/pandora/panlowers.mf + ./texmf/fonts/source/public/pandora/panpunct.mf + ./texmf/fonts/source/public/pandora/pnb10.mf + ./texmf/fonts/source/public/pandora/pnr10.mf + ./texmf/fonts/source/public/pandora/pnsl10.mf + ./texmf/fonts/source/public/pandora/pnss10.mf + ./texmf/fonts/source/public/pandora/pnssb10.mf + ./texmf/fonts/source/public/pandora/pnssi10.mf + ./texmf/fonts/source/public/pandora/pntt9.mf + ./texmf/fonts/source/public/pandora/punctr.mf + ./texmf/fonts/source/public/pandora/puncts.mf + ./texmf/fonts/source/public/pandora/punctt.mf + ./texmf/fonts/source/public/pandora/rotext.mf + ./texmf/fonts/source/public/pandora/ttchar.mf + ./texmf/fonts/source/public/pandora/tttext.mf + ./texmf/fonts/source/public/pandora/widths.mf + ./texmf/fonts/tfm/public/pandora/pnb10.tfm + ./texmf/fonts/tfm/public/pandora/pnr10.tfm + ./texmf/fonts/tfm/public/pandora/pnsl10.tfm + ./texmf/fonts/tfm/public/pandora/pnss10.tfm + ./texmf/fonts/tfm/public/pandora/pnssb10.tfm + ./texmf/fonts/tfm/public/pandora/pnssi10.tfm + ./texmf/fonts/tfm/public/pandora/pntt9.tfm' + +bad_license_emptydirs='./texmf/fonts/tfm/public/pandora' + +for file in ${badfiles} ${bad_fontfiles}; do + if [ -e ${file} ]; then + echo -n "Removing ${file}..." + rm -f ${file} + echo "done." + elif [ x"$1" = x-src ]; then + echo "${file} is already removed in upstream." + else + echo "${file} is already removed." + fi +done + +for dir in ${bad_license_emptydirs}; do + if [ -e ${dir} ]; then + echo -n "Removing empty directory ${dir}..." + if rmdir ${dir}; then + echo "done." + else + echo + echo " Directory $dir not empty, or operation not permitted" + fi + elif [ x"$1" = x-src ]; then + echo "${dir} is already removed in upstream." + else + echo "${dir} already removed." + fi +done + +# revealed to be non-free +# ./texmf/doc/help/Catalogue/entries/floatflt.html +# ./texmf/doc/latex/floatflt/floatexm.dvi +# ./texmf/doc/latex/floatflt/floatexm.tex +# ./texmf/doc/latex/floatflt/floatfge.dvi +# ./texmf/doc/latex/floatflt/floatflt.dvi +# ./texmf/tex/latex/misc/floatflt.sty +# ./texmf/doc/latex/g-brief/g-brief.dvi +# ./texmf/tex/latex/g-brief/g-brief.cls +# ./texmf/tex/latex/g-brief/g-brief.sty +# +# now free: listings, beton, picinpar, booktabs, euler +# +# ./texmf/doc/latex/styles/listings.dvi +# ./texmf/tex/latex/listings/listings.cfg +# ./texmf/tex/latex/listings/listings.sty +# ./texmf/tex/latex/listings/lstdoc.sty +# ./texmf/tex/latex/listings/lstlang1.sty +# ./texmf/tex/latex/listings/lstlang2.sty +# ./texmf/tex/latex/listings/lstlang3.sty +# ./texmf/tex/latex/listings/lstmisc.sty +# ./texmf/tex/latex/listings/lstpatch.sty +# +# ./texmf/tex/latex/misc/beton.sty +# ./texmf/doc/latex/styles/beton.dvi +# +# ./texmf/doc/latex/styles/picinpar.dvi +# ./texmf/tex/latex/misc/picinpar.sty' +# +# ./texmf/doc/latex/booktabs/booktabs.dvi +# ./texmf/doc/latex/booktabs/booktabs.readme (this was removed) +# ./texmf/tex/latex/misc/booktabs.sty +# +# ./texmf/doc/latex/styles/euler.dvi +# ./texmf/tex/latex/misc/euler.sty +# +# ./texmf/tex/latex/caption/caption.sty +# ./texmf/doc/latex/caption/caption.dvi +# +# removed in the upstream: corkpaper.dvi suet.dvi algorithms.dvi +# caption.dvi footbib.dvi suet14.tfm algorithm.sty algorithmic.sty +# footbib.sty g-brief.dvi g-brief.cls g-brief.sty --- tetex-base-3.0.orig/debian/tetex-extra.preinst.in +++ tetex-base-3.0/debian/tetex-extra.preinst.in @@ -0,0 +1,48 @@ +#include variables +#!/bin/sh -e +# +# preinst maintainer script for the Debian tetex-extra package. +# $Id: tetex-extra.preinst.in 387 2005-12-08 17:56:37Z frank $ +<:=@COPYRIGHT:>// + +## Define static variables we need +UNUSED_CONFFILES="<:=$UNUSED_CONFFILES_EXTRA:>" +FORMER_UCF="<:=$BLUESKY_UCF:>" +PREINST_MOVE_EXT=<:=$PREINST_MOVE_EXT:> +oldstuff_dir=<:=$OLDSTUFFDIR:> +UNUSED_CONFDIRS="<:=$UNUSED_CONFDIRS_EXTRA:>" + + + +<:open(FUNCTIONS,'common.functions');@FUNCTIONS=;close(FUNCTIONS):>// +<:=@FUNCTIONS:>// + +################################################################# +# Here starts the real action +################################################################# + +case "$1" in + install|upgrade) +# remove obsolete conffiles if they are unchanged, +# otherwise move them to the appropriate place + test -d $oldstuff_dir || mkdir $oldstuff_dir + for file in $UNUSED_CONFFILES; do + preinst_remove_or_move $file + done + for file in $FORMER_UCF; do + preinst_remove_or_move_ucf $file + done + for dir in $UNUSED_CONFDIRS $oldstuff_dir; do + test -d $dir && rmdir --ignore-fail-on-non-empty $dir || true + done + ;; +esac + + +#DEBHELPER# + + +# Local Variables: +# mode: shell-script +# skeleton-pair: t +# End: --- tetex-base-3.0.orig/debian/common.functions.in +++ tetex-base-3.0/debian/common.functions.in @@ -0,0 +1,469 @@ +#include common.variables +################################################################# +## Function definitions - included from file common.functions +################################################################# +# Copyright (C) 2004 by Frank Küster . +# $Id: common.functions.in 456 2006-01-13 11:49:05Z frank $ + +# internal variables for common.functions +: ${MKTMPDIR:=$TMPDIR} # mktemp will create its files there +: ${MKTMPDIR:=<:=$MKTMPDIR:>} +SYMLINK_MOVE_EXT=<:=$SYMLINK_MOVE_EXT:> +TEXMFSYSVAR=<:=$TEXMFSYSVAR:> + +debug(){ + true "$*" +} +# debug(){ +# echo -en "$*" +# } + +savemove(){ + source="$1" + dest="$2" + chown --reference=$dest $source + chmod --reference=$dest $source + mv $source $dest +} + +rename_catinfo(){ + oldfile=$1 + newfile=$oldfile.$MOVE_EXT + echo $INFO_TEXT > $newfile + cat $oldfile >> $newfile + chmod --reference=$oldfile $newfile + chown --reference=$oldfile $newfile + rm -f $oldfile +} + +create_tetex_formats(){ + options="$@" + tempfile=`mktemp -p $MKTMPDIR tetex.postinst.XXXXXXXX` + echo "Running fmtutil-sys. This may take some time. ..." + if fmtutil-sys $options > $tempfile; then + rm -f $tempfile + else + echo + echo "fmtutil failed. Output has been stored in" + echo "$tempfile" + echo "Please include this file if you report a bug." + exit 1 + fi +} + +create_fontmaps(){ + tempfile=`mktemp -p $MKTMPDIR tetex.updmap.XXXXXXXX` + echo -n "Running updmap-sys. This may take some time. ..." + if updmap-sys 2> $tempfile; then + rm -f $tempfile + echo " done." + else + echo + echo "updmap failed. Output has been stored in" + echo "$tempfile" + echo "Please include this file if you report a bug." + exit 1 + fi + echo +} + +handle_stateof_configfile(){ + # call this function with the correct action (see below) as first + # argument, the configuration file to handle as second, and the + # package it belongs to as third argument. + # + # If you want to understand the function, start reading the --remove + # action. The function cannot do all for you! What you have to do + # additionally in preinst is outlined in the preinst action. + + CONFIG_FILE="$2" + PACKAGE=$3 + + # static variables + CONFSTATEDIR=<:=$confstatedir:> + NO_CONFIG_PREFIX=<:=$no_config_prefix:> + PCONFSTATEDIR=$CONFSTATEDIR/$PACKAGE + SAVED_CONFIG_FILE=$PCONFSTATEDIR/`basename $CONFIG_FILE` + NO_CONFIG_FILE=$PCONFSTATEDIR/$NO_CONFIG_PREFIX.`basename $CONFIG_FILE` + TEMP_CONFIG_FILE="$PCONFSTATEDIR/`basename $CONFIG_FILE`.tmp" + + case $1 in + --preinst) + if [ ! -d "$PCONFSTATEDIR" ]; then + mkdir --mode=755 "$PCONFSTATEDIR" + fi + +# here comes what you need to do in _your_ preinst script + +# # if an old version is in state rc, we get "$old_version" as second arg +# # if an other version is installed, we will be called with upgrade. +# # Therefore we know that we install on a clean system if we've got +# # only one argument and first argument is "install" +# case $1 in +# install) +# if [ $# = 1 ] && [ ! -f $CONFIG_FILE ]; then +# cat > "$TEMP_CONFIG_FILE" <&2 < $NO_CONFIG_FILE + fi + ;; + --purge) + rm -f "$CONFIG_FILE" "$SAVED_CONFIG_FILE" "$NO_CONFIG_FILE" "$TEMP_CONFIG_FILE" + rmdir $PCONFSTATEDIR + ;; + esac +} + +preinst_move_symlink(){ + existing_symlink="$1" + if [ -e $existing_symlink ] && [ -L $existing_symlink ]; then + echo "Removing obsolete symlink $existing_symlink." + mv $existing_symlink $existing_symlink.$SYMLINK_MOVE_EXT + + fi +} + +preinst_move_dir(){ + existing_dir="$1" + if [ -d $existing_dir ] && [ ! -L $existing_dir ]; then + echo "Removing obsolete directory $existing_dir." + mv $existing_dir $existing_dir.$SYMLINK_MOVE_EXT + + fi +} + +# for abort-upgrade +preinst_restore_symlink(){ + stored_symlink="$1" + if [ -e $stored_symlink.$SYMLINK_MOVE_EXT ] && [ ! -e $stored_symlink ]; then + mv $stored_symlink.$SYMLINK_MOVE_EXT $stored_symlink + fi +} + +preinst_restore_dir(){ + stored_dir="$1" + if [ -e $stored_dir.$SYMLINK_MOVE_EXT ] && [ ! -e $stored_dir ]; then + mv $stored_dir.$SYMLINK_MOVE_EXT $stored_dir + fi +} + +postinst_remove_saveddir(){ + saveddir="$1" + if [ -e $saveddir.$SYMLINK_MOVE_EXT ] && \ + [ -L $saveddir ] && \ + [ -e $saveddir ]; # true if target exists + then + rm -r $saveddir.$SYMLINK_MOVE_EXT + fi +} + +postinst_remove_savedlink(){ + savedlink="$1" + if [ -e $savedlink.$SYMLINK_MOVE_EXT ] && \ + [ ! -L $savedlink ] && \ + [ -d $savedlink ]; + then + rm -r $savedlink.$SYMLINK_MOVE_EXT + fi +} + +select_lsrfile() { + case $1 in + main) LSR=$TEXMFSYSVAR/ls-R-TEXMFMAIN ;; + var) LSR=$TEXMFSYSVAR/ls-R ;; + cache) LSR=/var/cache/fonts/ls-R ;; + *) echo "select_lsr: don't know how to set this: $1" >&2 ;; + esac + echo $LSR +} + +clean_texenvironment(){ + envvars="AFMFONTS BIBINPUTS BSTINPUTS CMAPFONTS CWEBINPUTS ENCFONTS GFFONTS \ +GLYPHFONTS INDEXSTYLE LIGFONTS MAILCAPLIBDIR MFBASES MFINPUTS MFPOOL MFTINPUTS \ +MIMELIBDIR MISCFONTS MISSFONT_LOG MPINPUTS MPMEMS MPPOOL MPSUPPORT MPXCOMMAND \ +OCPINPUTS OFMFONTS OPENTYPEFONTS OPLFONTS OTPINPUTS OVFFONTS OVPFONTS PDFTEXCONFIG \ +PKFONTS PSHEADERS SFDFONTS SYSTEXMF T1FONTS T42FONTS T4HTINPUTS TEX4HTFONTSET \ +TEX4HTINPUTS TEXCONFIG TEXDOCEXT TEXDOCHTML TEXDOCS TEXDOCSCOMPRESS TEXDOCSSUFFIX \ +TEXFONTMAPS TEXFORMATS TEX_HUSH TEXINPUTS TEXMF TEXMFCNF TEXMFCONFIG TEXMFDBS \ +TEXMFDIST TEXMFHOME TEXMFLOCAL TEXMFMAIN TEXMFSCRIPTS TEXMFSYSCONFIG TEXMFSYSVAR \ +TEXMFVAR TEXPICTS TEXPOOL TEXPSHEADERS TEXSOURCES TFMFONTS TRFONTS TTFONTS \ +VARTEXFONTS VFFONTS WEB2C WEBINPUTS" + for var in $envvars; do + unset $var || true + done + +} + +get_newfilename(){ + file="$1" # without leading /etc/texmf + basedir=${file%%/*} + restname=$(echo ${file#*/}) + case $basedir in + $file) + case $file in + modes.mf) + echo metafont/misc/modes.mf + ;; + mktex.cnf) + echo web2c/mktex.cnf + esac + ;; + map) + echo fonts/$file + ;; + dvips) + echo $basedir/config/$restname + ;; + *) + echo tex/$basedir/config/$restname + ;; + esac +} + +dpkg_md5sum(){ + file=$1 + md5sum=`grep "$file[[:space:]]" /var/lib/dpkg/status | cut -f 3 -d ' '` + if [ -z "$md5sum" ]; then + get_sarge_md5sum_from_list $file + fi + echo $md5sum +} + +ucf_md5sum(){ + file=$1 + md5sum=`grep "$file$" /var/lib/ucf/hashfile | cut -f 1 -d ' '` + if [ -z "$md5sum" ]; then + get_sarge_md5sum_from_list $file + fi + echo $md5sum +} + + + +sarge_md5sum_list=" + /etc/texmf/mktex.cnf 6491db33ef75bbe4f38a6dcbdcab7db8 + /etc/texmf/modes.mf 17886f0a39f023a1830538073a743047 + /etc/texmf/context/cont-cz.ini 984f5ed1242258775b9c6e5e8b219a26 + /etc/texmf/context/cont-de.ini c2c75aaddf59e7cd1d14ef3661578eef + /etc/texmf/context/cont-en.ini 5d7064e3adc9acdaf94e37e9bc5c1a29 + /etc/texmf/context/cont-it.ini 96366065e347eab53a30e72d9a6e4ca0 + /etc/texmf/context/cont-nl.ini 25cbcc11164d749693de4eea197a9c65 + /etc/texmf/context/cont-ro.ini a94fd43e68156f57e6bf3ac4a901af14 + /etc/texmf/context/cont-uk.ini ee6f13cd52623786f7a13c151900ec50 + /etc/texmf/context/cont-usr.tex 15b671e578d517dc54df1db022c3f412 + /etc/texmf/context/texexec.ini 1497213cfcfded9d1ae2e5546cf55fc4 + /etc/texmf/cslatex/fonttext.cfg 1129c41c24cf37f4d2cad6deca949fb1 + /etc/texmf/cslatex/hyphen.cfg 987e934d95d372902b0e1a81d3dc3802 + /etc/texmf/cyrplain/cyramstx.ini 15d4ba30419b36376851a124619e20ba + /etc/texmf/cyrplain/cyrtex.cfg 843bd70324caf63d72269dd3afdd8eb1 + /etc/texmf/cyrplain/cyrtex.ini 40ae6def8399827a80f3736e5fb1cdf5 + /etc/texmf/cyrplain/cyrtxinf.ini 797f2dae2d06396a4b40b1454609f025 + /etc/texmf/dvipdfm/config 8713d15e9e574109c61474a3990b677f + /etc/texmf/dvipdfm/README.config 2731fe134e122f315d91cae400a6b13e + /etc/texmf/dvips/config.builtin35 5775e9a2ec5e89c44f03c49a84133c76 + /etc/texmf/dvips/config.dfaxhigh 1c7ef7c0bcc006af534241df17d1e085 + /etc/texmf/dvips/config.dfaxlo 25b7f9a41d13d188b75fb6ec63e8fa09 + /etc/texmf/dvips/config.download35 39bb1088ea568d10973f48293c205a8e + /etc/texmf/dvips/config.gsftopk e02bc7dd315e819e349c52191837975a + /etc/texmf/dvips/config.ps 7402075ae27071bff26ddeb1143ace07 + /etc/texmf/dvips/config.outline e671960560b7cb570aef7f19af14519a + /etc/texmf/dvips/config.pdf d05ab1e98fcf0d2a4eccd4bb7ad9b0e4 + /etc/texmf/dvips/config.pk 44348634a3771beda74b4133a8614fa5 + /etc/texmf/dvips/config.www ba6b447883942b5f0d653d878072321b + /etc/texmf/dvips/context.map 0c886351c178a140f3e2b6e39656ee44 + /etc/texmf/etex/etex.ini eb7eeca34d4f7c338480ae2f1e95dae6 + /etc/texmf/etex/language.def e28ea8119d0edaea53f2a55bd5a13bf5 + /etc/texmf/latex/color.cfg d77957eef96e7e9a4bdc3d1d24a49df3 + /etc/texmf/latex/graphics.cfg 3f384c52d267b7f0a50fb71fab57d60f + /etc/texmf/latex/latex.ini 09e4f410ade0befce1e0bacf8e272789 + /etc/texmf/latex/latex209.cfg c9af399f9747715e21b6e64daa4e5916 + /etc/texmf/latex/ltxdoc.cfg 50cf6ee9115a007246d2d79e350a8592 + /etc/texmf/latex/ltxguide.cfg cc8dbfee5a57b4ae20bb77cc6aeb0e1f + /etc/texmf/latex/texsys.cfg 055c0b3967730e2dd75dee66ccde2687 + /etc/texmf/latex/fontmath.cfg ee0a90dac1a81d3aee68f1abdbbd5839 + /etc/texmf/latex/fonttext.cfg 6be6de7b54df7d13a8831138e7f1297b + /etc/texmf/latex/preload.cfg a2df76edd8245ce697c998dd4cbf060f + /etc/texmf/map/dvips/context/il2-ams-cmr.map cc471142a76445139def6ad5b5202ad4 + /etc/texmf/map/dvips/context/pl0-ams-cmr.map 0bf5e38fde2a67bb4df7cdb11e499175 + /etc/texmf/pdftex/context/il2-ams-cmr.map cc471142a76445139def6ad5b5202ad4 + /etc/texmf/pdftex/context/original-adobe-euro.map ee2826182cf6f1b95890e8b7d0fc9633 + /etc/texmf/pdftex/context/original-ams-cmr.map 5912f95748bc1917f14632e48cc223ac + /etc/texmf/pdftex/context/original-ams-euler.map 878c01a7de86554eb41ff74a0b752f5f + /etc/texmf/pdftex/context/original-context-symbol.map 7090f11f5bee8f5e9b46841f286d1df9 + /etc/texmf/pdftex/context/original-vogel-symbol.map e4f07d28e80b93ad2513a3e812541f32 + /etc/texmf/pdftex/context/original-youngryu-px.map b17cc8cb081cb34cbff9e197c1e97512 + /etc/texmf/pdftex/context/original-youngryu-tx.map 229dbd1882f3378c4dd21e353489f03a + /etc/texmf/pdftex/context/pl0-ams-cmr.map 0bf5e38fde2a67bb4df7cdb11e499175 + /etc/texmf/pdftex/context/pl0-ams-cmr.map 0bf5e38fde2a67bb4df7cdb11e499175 + /etc/texmf/pdftex/cmttf.map 6b87723795683cdcfd846c2d8d60cb3e + /etc/texmf/pdftex/pdftex.cfg 8d08d2723661c86cd45e4a1408a5f923 + /etc/texmf/platex/hyphen.cfg 1199fd3dbe752e8eedaca7a5a6df9258 + /etc/texmf/platex/language.dat 8e3525fe40ae72bb08f673b30eca1236 + /etc/texmf/platex/platex.ini c865212575be3a09cbadb694a803ca55 + /etc/texmf/updmap.d/00updmap.cfg 82884281d955998e22141cf67b45209d + /etc/texdoctk/texdocrc 9957008bc9073607c1090f4ce55cc3c0 +" + +woody_md5sum_list=" + /etc/texmf/dvips/antp.cfg 5fdea5dec2977f321c1d39b90f161858 + /etc/texmf/dvips/antp.map 629cf954491b5092f56c79ba12761eb7 + /etc/texmf/dvips/antt.cfg eb9863fe55c45357f3e93cc0f796df7d + /etc/texmf/dvips/antt.map 015d3ea75dda8f11ac4d3d376fc3f4f9 + /etc/texmf/dvips/ar-ext-adobe-bi.map 7587ed88b27b0e85585bc2300d1c2a9a + /etc/texmf/dvips/ar-ext-adobe-kb.map b3e9ba6adac40cb9499d8f7c5bb7e6c3 + /etc/texmf/dvips/ar-ext-urw-kb.map 1e18d58b346a184b2c009e8a2611cf6c + /etc/texmf/dvips/ar-ext-urw-urw.map 4613ccfaa28c351167239a049149076f + /etc/texmf/dvips/ar-std-adobe-bi.map b8729c41827597f2a5d9dc293a6257a3 + /etc/texmf/dvips/ar-std-adobe-kb.map 4d5a5faacb6bb60ba44a040df0485c8f + /etc/texmf/dvips/ar-std-urw-kb.map 7c95efc06585ece0cad0c73f9bbe92bb + /etc/texmf/dvips/ar-std-urw-urw.map 512269272f1ec556035c8d4b38db4175 + /etc/texmf/dvips/bakoma-extra.map 2deed84112de63c43d532bbd1dd51afa + /etc/texmf/dvips/bsr-interpolated.map b1810467ac2e91f76745f0eaed3eddc6 + /etc/texmf/dvips/bsr.map dd57d8b9b4cc4fee6c4869ccb637f7d3 + /etc/texmf/dvips/charter.map bcbe669e6587e1c0b9fbf5d3ac69a716 + /etc/texmf/dvips/cmcyr.map 1fa90ba90a5ac959be73acbbf993aaa6 + /etc/texmf/dvips/config.ams 32c36b063268c5e45819fe8114ce3cf0 + /etc/texmf/dvips/config.amz b9c14f2d2e3923372e9067e2e1ee47b5 + /etc/texmf/dvips/config.antp 5fdea5dec2977f321c1d39b90f161858 + /etc/texmf/dvips/config.antt eb9863fe55c45357f3e93cc0f796df7d + /etc/texmf/dvips/config.cm 68d23ead2901dddbc1779c905806b783 + /etc/texmf/dvips/config.cmz 830f16e1e39c67b1c665a8b09824a7b4 + /etc/texmf/dvips/config.mirr 0e8b7634e3aeace8b57e240cb93408f6 + /etc/texmf/dvips/config.pl a516410ffe6bcea727b688cdbff15c45 + /etc/texmf/dvips/config.qf d8faeac49b163e20f2d5f7664fd4d312 + /etc/texmf/dvips/cs.map b9727dbb85c735942232d9e77c548892 + /etc/texmf/dvips/hoekwater.map bc6bdcc34147938cac35dd9cbfcf5461 + /etc/texmf/dvips/lucidabr.map 75651df30093b42f15a137f4e8abb2d0 + /etc/texmf/dvips/lw35extra-adobe-bi.map 11264229d954278095d041a7d406a1de + /etc/texmf/dvips/lw35extra-adobe-kb.map b599fd43351ddf92787bc4d45b210b33 + /etc/texmf/dvips/lw35extra-urw-kb.map 22fad0272384ba9040e095cb23f5b751 + /etc/texmf/dvips/lw35extra-urw-urw.map 947b2971882ac3defc4e1539e08d7755 + /etc/texmf/dvips/marvosym.map b62e3abdcb114dbc2a09cf34f7d8d1d3 + /etc/texmf/dvips/mathpi.map b583f43ff524840a455391c507a91630 + /etc/texmf/dvips/mathpple-ext.map 34ae5407fab3660f7121fcad21016a70 + /etc/texmf/dvips/mt-belleek.map 347a0440cf51e36f53fe76e205c71280 + /etc/texmf/dvips/mt-plus.map 1a905e8e34fab38aa54af13dc1479864 + /etc/texmf/dvips/mt-yy.map 6b31a726154f4542f030d1f73186683d + /etc/texmf/dvips/mtsupp-ext-adobe-bi.map 81bcdf8701d93786913a0139a7c37592 + /etc/texmf/dvips/mtsupp-ext-adobe-kb.map bd64720edf9c35db323305d801b11be5 + /etc/texmf/dvips/mtsupp-ext-urw-kb.map 74d836235b7c35e3af5fcef8404d6f86 + /etc/texmf/dvips/mtsupp-ext-urw-urw.map 88297fe4c49421bb283d4b70cc6edf83 + /etc/texmf/dvips/mtsupp-std-adobe-bi.map 8bb11a1c60587515f5d77170167f7f57 + /etc/texmf/dvips/mtsupp-std-adobe-kb.map 95fca79f2bb903589501b60623cf2a70 + /etc/texmf/dvips/mtsupp-std-urw-kb.map 464234ad0a8c06b5411e6bb69c69407f + /etc/texmf/dvips/mtsupp-std-urw-urw.map 500150762c74095610b6d57250f94b3b + /etc/texmf/dvips/omega.map 3d6c7dd276926b59b23ffdf03fb0572f + /etc/texmf/dvips/pazo.map d3595db441a758df87659e4818b38690 + /etc/texmf/dvips/pdftex.map 3d0e6e8f2d699c2f34d07d49e4de040d + /etc/texmf/dvips/pl.cfg a516410ffe6bcea727b688cdbff15c45 + /etc/texmf/dvips/pl.map b4c7ab7e7f366132ade80179181529b5 + /etc/texmf/dvips/ps2pk.map a5252a3d87db54b810b75296cceca7e6 + /etc/texmf/dvips/psfonts.map 30c95da0f4ba9c7fca1558212a245058 + /etc/texmf/dvips/psnfss.map f00b2d47c09074b3f7c138adac928731 + /etc/texmf/dvips/qpl.map f80cdfb21c7d47450d922bcdf2f0d741 + /etc/texmf/dvips/qtm.map 8597ab2c2c1f30a5eb338200c752bcc4 + /etc/texmf/dvips/raw-ar-ext-adobe-bi.map f625673c720a566fefc3adb2a330b0c6 + /etc/texmf/dvips/raw-ar-ext-adobe-kb.map 99fa23110abc0b6322b168cd942abb00 + /etc/texmf/dvips/raw-ar-ext-urw-kb.map a15eccb4c519784b0382e98b35462584 + /etc/texmf/dvips/raw-ar-ext-urw-urw.map 4e4c658e639ed63d6b089e970d5b8790 + /etc/texmf/dvips/raw-ar-std-adobe-bi.map 8f075586c668dd49d6659a47f80ca222 + /etc/texmf/dvips/raw-ar-std-adobe-kb.map 420803cd71d69a67d30e01414a4b0b7c + /etc/texmf/dvips/raw-ar-std-urw-kb.map d9761c9236ba5f72a6a1db0add78e4c0 + /etc/texmf/dvips/raw-ar-std-urw-urw.map a46a2fd9dc6c2b8d1520e9c5b8947293 + /etc/texmf/dvips/raw-lw35extra-adobe-bi.map b8f9a068495e84954575da333dbff52b + /etc/texmf/dvips/raw-lw35extra-adobe-kb.map 90090d802aa0591abd0897c836119e43 + /etc/texmf/dvips/raw-lw35extra-urw-kb.map e2ab5453857be7683779788218ea9e78 + /etc/texmf/dvips/raw-lw35extra-urw-urw.map de4b3fc35de1dc73202d1ea31a018bc7 + /etc/texmf/dvips/updmap ae1883f5a9a065d8b290943783ae5699 + /etc/texmf/dvips/utopia.map 1486b1d114c9b279cdfebaffa7a6d47f + /etc/texmf/dvips/xypic.map 76252f9400b09fd41094c59d3ec887ae + /etc/texmf/varfontdirs.debian 7a37da968bb865bde339fb44818ba44a +" + +get_sarge_md5sum_from_list(){ + file=$1 + set $sarge_md5sum_list $woody_md5sum_list + while [ $# -gt 0 ]; do + if [ $file = $1 ]; then + echo $2 + return 0 + else + shift 2 + fi + done + echo "$file: md5sum not known. Exiting" >&2 + return 1 +} + +preinst_remove_or_move(){ + file=/etc/texmf/$1 + newname=`get_newfilename $1` + debug $file + test -f "$file" || return 0 + debug "handled\n" + oldmd5sum=`dpkg_md5sum $file` + currmd5sum=`md5sum $file | cut -d ' ' -f 1` + if [ "$oldmd5sum" != "$currmd5sum" ]; then + mv $file $oldstuff_dir/`basename $file`.$PREINST_MOVE_EXT + else + rm $file + fi +} +preinst_remove_or_move_ucf(){ + file=/etc/texmf/$1 + newname=`get_newfilename $1` + debug $file + test -f "$file" || return 0 + debug "handled\n" + oldmd5sum=`ucf_md5sum $file` + currmd5sum=`md5sum $file | cut -d ' ' -f 1` + if [ "$oldmd5sum" != "$currmd5sum" ]; then + mv $file $oldstuff_dir/`basename $file`.$PREINST_MOVE_EXT + else + rm $file + if [ -x /usr/bin/ucf ]; then ucf --purge $file; fi + fi +} + + + +################################################################# +## End of function definitions from file common.functions +################################################################# + + --- tetex-base-3.0.orig/debian/Copyright.Files +++ tetex-base-3.0/debian/Copyright.Files @@ -0,0 +1,1277 @@ +# Copyright.Files $Id: Copyright.Files 113 2005-08-04 15:02:54Z frn $ +# +# additional copyright file for the tetex-base, tetex-extra and +# tetex-doc packages. For instructions, please refer to the main +# copyright file in /usr/share/doc/tetex-base/copyright. +# +# The lines starting with "%" denote the package name. If these lines +# end with "%src%", then the files from tetex-src that belong to this +# package have also been included in the list. Compressed files are +# listed without the extension that denotes the compression, +# e.g. without the trailing ".gz" +# +# The first file of a package's filelist is the file that contains the +# license statement. If the license statement has been found +# elsewhere, the source is stated in lines commented with #. + +% Individual Files, not belonging to any package +/usr/share/texmf/tex/generic/ruhyphen/ruhyphas.tex +/usr/share/texmf/tex/generic/ruhyphen/ruhyphzn.tex +/usr/share/texmf/tex/generic/hyphen/sehyph.tex +/usr/share/texmf/tex/generic/hyphen/cahyph.tex +/usr/share/texmf/tex/generic/hyphen/gahyph.tex +/usr/share/texmf/tex/generic/hyphen/icehyph.tex + +% acronym %3.0 %src% +/usr/share/texmf/tex/latex/acronym/acronym.sty +/usr/share/doc/texmf/latex/acronym/acronym.dvi.gz +/usr/share/doc/texmf/latex/acronym/readme +/usr/share/doc/texmf/latex/acronym/acrotest.tex +/usr/share/texmf/source/latex/acronym/readme +/usr/share/texmf/source/latex/acronym/acronym.dtx +/usr/share/texmf/source/latex/acronym/acronym.ins +/usr/share/texmf/source/latex/acronym/CHANGES +/usr/share/texmf/source/latex/acronym/acronym.pdf +/usr/share/texmf/source/latex/acronym/README + + +% adrconv %src% +/usr/share/texmf/source/latex/adrconv/adrconv.dtx +/usr/share/texmf/source/latex/adrconv/adrconv.ins +/usr/share/texmf/source/latex/adrconv/adrguide.tex +/usr/share/texmf/tex/latex/adrconv/adrconv.tex +/usr/share/texmf/tex/latex/adrconv/adrdir.cfg +/usr/share/texmf/tex/latex/adrconv/adrdir.tex +/usr/share/texmf/tex/latex/adrconv/adrfax.tex +/usr/share/texmf/tex/latex/adrconv/adrplaner.cfg +/usr/share/texmf/tex/latex/adrconv/adrsmall.cfg +/usr/share/texmf/tex/latex/adrconv/birthday.tex +/usr/share/texmf/tex/latex/adrconv/email.tex + +% ae %src% +# CTAN, e.g. ftp://cam.ctan.org/tex-archive/fonts/ae/COPYING +/usr/share/texmf/tex/latex/ae/aecompl.sty +/usr/share/texmf/tex/latex/ae/ae.sty +/usr/share/texmf/tex/latex/ae/omlaer.fd +/usr/share/texmf/tex/latex/ae/omsaer.fd +/usr/share/texmf/tex/latex/ae/ot1aer.fd +/usr/share/texmf/tex/latex/ae/ot1aess.fd +/usr/share/texmf/tex/latex/ae/ot1aett.fd +/usr/share/texmf/tex/latex/ae/ot1laess.fd +/usr/share/texmf/tex/latex/ae/ot1laett.fd +/usr/share/texmf/tex/latex/ae/t1aer.fd +/usr/share/texmf/tex/latex/ae/t1aess.fd +/usr/share/texmf/tex/latex/ae/t1aett.fd +/usr/share/texmf/tex/latex/ae/t1laess.fd +/usr/share/texmf/tex/latex/ae/t1laett.fd + +% antp %src% +# Catalogue +/usr/share/texmf/tex/latex/antp/antpolt.sty +/usr/share/texmf/tex/latex/antp/lqxantp.fd +/usr/share/texmf/tex/latex/antp/ot4antp.fd +/usr/share/texmf/tex/latex/antp/qxantp.fd + +% antt %src% +# Catalogue +/usr/share/texmf/tex/latex/antt/antyktor.sty +/usr/share/texmf/tex/latex/antt/ot1antt.fd +/usr/share/texmf/tex/latex/antt/ot4antt.fd +/usr/share/texmf/tex/latex/antt/qxantt.fd + +% base: See LaTeX + +% bbm: %src% +/usr/share/texmf/source/latex/bbm/bbm.dtx +/usr/share/texmf/source/latex/bbm/bbm.drv +/usr/share/texmf/source/latex/bbm/bbm.ins +/usr/share/texmf/source/latex/bbm/readme.bbm +/usr/share/texmf/source/latex/bbm/fonts/bbm10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm12.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm17.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm5.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm6.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm7.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm9.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmb10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbx10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbx12.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbx5.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbx6.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbx7.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbx8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbx9.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmbxsl10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmdunh10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmfib8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbminch.mf +/usr/share/texmf/source/latex/bbm/fonts/bbm.readme +/usr/share/texmf/source/latex/bbm/fonts/bbmsl10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmsl12.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmsl8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmsl9.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmsltt10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmss10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmss12.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmss17.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmss8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmss9.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssbx10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssdc10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssi10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssi12.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssi17.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssi8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssi9.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssq8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmssqi8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmtt10.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmtt12.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmtt8.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmtt9.mf +/usr/share/texmf/source/latex/bbm/fonts/bbmvtt10.mf +/usr/share/texmf/source/latex/bbm/fonts/blbbase.mf +/usr/share/texmf/source/latex/bbm/fonts/blbordl.mf +/usr/share/texmf/source/latex/bbm/fonts/blbord.mf +/usr/share/texmf/source/latex/bbm/fonts/blbordsp.mf +/usr/share/texmf/source/latex/bbm/fonts/blbordu.mf +/usr/share/texmf/source/latex/bbm/fonts/gfbatch.batch +/usr/share/texmf/source/latex/bbm/fonts/mfbatch.batch +/usr/share/texmf/source/latex/bbm/fonts/test.tex +/usr/share/texmf/tex/latex/bbm/bbm.sty +/usr/share/texmf/tex/latex/bbm/ubbm.fd +/usr/share/texmf/tex/latex/bbm/ubbmss.fd +/usr/share/texmf/tex/latex/bbm/ubbmtt.fd +/usr/share/doc/texmf/latex/styles/bbm.dvi +/usr/share/texmf/fonts/source/public/bbm/bbm10.mf +/usr/share/texmf/fonts/source/public/bbm/bbm12.mf +/usr/share/texmf/fonts/source/public/bbm/bbm17.mf +/usr/share/texmf/fonts/source/public/bbm/bbm5.mf +/usr/share/texmf/fonts/source/public/bbm/bbm6.mf +/usr/share/texmf/fonts/source/public/bbm/bbm7.mf +/usr/share/texmf/fonts/source/public/bbm/bbm8.mf +/usr/share/texmf/fonts/source/public/bbm/bbm9.mf +/usr/share/texmf/fonts/source/public/bbm/bbmb10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbx10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbx12.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbx5.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbx6.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbx7.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbx8.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbx9.mf +/usr/share/texmf/fonts/source/public/bbm/bbmbxsl10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmdunh10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmfib8.mf +/usr/share/texmf/fonts/source/public/bbm/bbminch.mf +/usr/share/texmf/fonts/source/public/bbm/bbmsl10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmsl12.mf +/usr/share/texmf/fonts/source/public/bbm/bbmsl8.mf +/usr/share/texmf/fonts/source/public/bbm/bbmsl9.mf +/usr/share/texmf/fonts/source/public/bbm/bbmsltt10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmss10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmss12.mf +/usr/share/texmf/fonts/source/public/bbm/bbmss17.mf +/usr/share/texmf/fonts/source/public/bbm/bbmss8.mf +/usr/share/texmf/fonts/source/public/bbm/bbmss9.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssbx10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssdc10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssi10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssi12.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssi17.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssi8.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssi9.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssq8.mf +/usr/share/texmf/fonts/source/public/bbm/bbmssqi8.mf +/usr/share/texmf/fonts/source/public/bbm/bbmtt10.mf +/usr/share/texmf/fonts/source/public/bbm/bbmtt12.mf +/usr/share/texmf/fonts/source/public/bbm/bbmtt8.mf +/usr/share/texmf/fonts/source/public/bbm/bbmtt9.mf +/usr/share/texmf/fonts/source/public/bbm/bbmvtt10.mf +/usr/share/texmf/fonts/source/public/bbm/blbbase.mf +/usr/share/texmf/fonts/source/public/bbm/blbordl.mf +/usr/share/texmf/fonts/source/public/bbm/blbord.mf +/usr/share/texmf/fonts/source/public/bbm/blbordsp.mf +/usr/share/texmf/fonts/source/public/bbm/blbordu.mf +/usr/share/texmf/fonts/tfm/public/bbm/bbm10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbm12.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbm17.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbm5.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbm6.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbm7.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbm8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbm9.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmb10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbx10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbx12.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbx5.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbx6.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbx7.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbx8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbx9.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmbxsl10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmdunh10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmfib8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmsl10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmsl12.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmsl8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmsl9.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmsltt10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmss10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmss12.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmss17.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmss8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmss9.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssbx10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssdc10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssi10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssi12.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssi17.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssi8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssi9.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssq8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmssqi8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmtt10.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmtt12.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmtt8.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmtt9.tfm +/usr/share/texmf/fonts/tfm/public/bbm/bbmvtt10.tfm + +% bbold +/usr/share/texmf/source/latex/bbold/bbold.dtx +/usr/share/texmf/doc/latex/styles/bbold.dvi +/usr/share/texmf/source/latex/bbold/bbbase.mf +/usr/share/texmf/source/latex/bbold/bbgreekl.mf +/usr/share/texmf/source/latex/bbold/bbgreeku.mf +/usr/share/texmf/source/latex/bbold/bbligs.mf +/usr/share/texmf/source/latex/bbold/bblower.mf +/usr/share/texmf/source/latex/bbold/bbnum.mf +/usr/share/texmf/source/latex/bbold/bbold10.600pk +/usr/share/texmf/source/latex/bbold/bbold10.mf +/usr/share/texmf/source/latex/bbold/bbold10.tfm +/usr/share/texmf/source/latex/bbold/bbold12.mf +/usr/share/texmf/source/latex/bbold/bbold17.600pk +/usr/share/texmf/source/latex/bbold/bbold17.mf +/usr/share/texmf/source/latex/bbold/bbold17.tfm +/usr/share/texmf/source/latex/bbold/bbold5.mf +/usr/share/texmf/source/latex/bbold/bbold6.mf +/usr/share/texmf/source/latex/bbold/bbold7.mf +/usr/share/texmf/source/latex/bbold/bbold8.mf +/usr/share/texmf/source/latex/bbold/bbold9.mf +/usr/share/texmf/source/latex/bbold/bbold.ins +/usr/share/texmf/source/latex/bbold/bbold.mf +/usr/share/texmf/source/latex/bbold/bbparams.mf +/usr/share/texmf/source/latex/bbold/bbpunc.mf +/usr/share/texmf/source/latex/bbold/bbupper.mf +/usr/share/texmf/source/latex/bbold/fonttabl.sty +/usr/share/texmf/source/latex/bbold/INSTALL +/usr/share/texmf/source/latex/bbold/README +/usr/share/texmf/tex/latex/bbold/bbold.sty +/usr/share/texmf/tex/latex/bbold/Ubbold.fd +/usr/share/texmf/fonts/source/public/bbold/bbbase.mf +/usr/share/texmf/fonts/source/public/bbold/bbgreekl.mf +/usr/share/texmf/fonts/source/public/bbold/bbgreeku.mf +/usr/share/texmf/fonts/source/public/bbold/bbligs.mf +/usr/share/texmf/fonts/source/public/bbold/bblower.mf +/usr/share/texmf/fonts/source/public/bbold/bbnum.mf +/usr/share/texmf/fonts/source/public/bbold/bbold10.mf +/usr/share/texmf/fonts/source/public/bbold/bbold12.mf +/usr/share/texmf/fonts/source/public/bbold/bbold17.mf +/usr/share/texmf/fonts/source/public/bbold/bbold5.mf +/usr/share/texmf/fonts/source/public/bbold/bbold6.mf +/usr/share/texmf/fonts/source/public/bbold/bbold7.mf +/usr/share/texmf/fonts/source/public/bbold/bbold8.mf +/usr/share/texmf/fonts/source/public/bbold/bbold9.mf +/usr/share/texmf/fonts/source/public/bbold/bbold.mf +/usr/share/texmf/fonts/source/public/bbold/bbparams.mf +/usr/share/texmf/fonts/source/public/bbold/bbpunc.mf +/usr/share/texmf/fonts/source/public/bbold/bbupper.mf +/usr/share/texmf/fonts/tfm/public/bbold/bbold10.tfm +/usr/share/texmf/fonts/tfm/public/bbold/bbold12.tfm +/usr/share/texmf/fonts/tfm/public/bbold/bbold17.tfm +/usr/share/texmf/fonts/tfm/public/bbold/bbold5.tfm +/usr/share/texmf/fonts/tfm/public/bbold/bbold6.tfm +/usr/share/texmf/fonts/tfm/public/bbold/bbold7.tfm +/usr/share/texmf/fonts/tfm/public/bbold/bbold8.tfm +/usr/share/texmf/fonts/tfm/public/bbold/bbold9.tfm + + +% caption +/usr/share/texmf/tex/latex/caption/caption.sty +/usr/share/texmf/tex/latex/caption/caption2.sty +/usr/share/texmf/doc/latex/caption/caption.pdf +/usr/share/texmf/doc/latex/caption/caption2.pdf +/usr/share/texmf/doc/latex/caption/anleitung.pdf + +% carlisle %src% +/usr/share/texmf/source/latex/carlisle/00readme.txt +/usr/share/texmf/source/latex/carlisle/00Contents +/usr/share/texmf/source/latex/carlisle/blkarray.sty +/usr/share/texmf/source/latex/carlisle/colortbl.dtx +/usr/share/texmf/source/latex/carlisle/colortbl.ins +/usr/share/texmf/source/latex/carlisle/comma.sty +/usr/share/texmf/source/latex/carlisle/dotlessj.sty +/usr/share/texmf/source/latex/carlisle/etex.sty +/usr/share/texmf/source/latex/carlisle/fix2col.dtx +/usr/share/texmf/source/latex/carlisle/fix2col.ins +/usr/share/texmf/source/latex/carlisle/ltxtable.tex +/usr/share/texmf/source/latex/carlisle/Makefile.tetex +/usr/share/texmf/source/latex/carlisle/mylatex.ltx +/usr/share/texmf/source/latex/carlisle/nopageno.sty +/usr/share/texmf/source/latex/carlisle/plain.sty +/usr/share/texmf/source/latex/carlisle/pspicture.dtx +/usr/share/texmf/source/latex/carlisle/pspicture.ins +/usr/share/texmf/source/latex/carlisle/pspicture.ps +/usr/share/texmf/source/latex/carlisle/remreset.sty +/usr/share/texmf/source/latex/carlisle/scalefnt.sty +/usr/share/texmf/source/latex/carlisle/slashed.sty +/usr/share/texmf/source/latex/carlisle/tetex.ins +/usr/share/texmf/source/latex/carlisle/textcase.dtx +/usr/share/texmf/source/latex/carlisle/textcase.ins +/usr/share/texmf/source/latex/carlisle/typehtml.dtx +/usr/share/texmf/source/latex/carlisle/typehtml.ins +/usr/share/texmf/tex/latex/carlisle/blkarray.sty +/usr/share/texmf/tex/latex/carlisle/colortbl.sty +/usr/share/texmf/tex/latex/carlisle/comma.sty +/usr/share/texmf/tex/latex/carlisle/dotlessj.sty +/usr/share/texmf/tex/latex/carlisle/fix2col.sty +/usr/share/texmf/tex/latex/carlisle/ltxtable.sty +/usr/share/texmf/tex/latex/carlisle/ltxtable.tex +/usr/share/texmf/tex/latex/carlisle/mylatex.ltx +/usr/share/texmf/tex/latex/carlisle/nopageno.sty +/usr/share/texmf/tex/latex/carlisle/plain.sty +/usr/share/texmf/tex/latex/carlisle/pspicture.sty +/usr/share/texmf/tex/latex/carlisle/remreset.sty +/usr/share/texmf/tex/latex/carlisle/scalefnt.sty +/usr/share/texmf/tex/latex/carlisle/textcase.sty +/usr/share/texmf/tex/latex/carlisle/typehtml.sty +/usr/share/texmf/doc/latex/carlisle/colortbl.ps +/usr/share/texmf/doc/latex/carlisle/fix2col.dvi +/usr/share/texmf/doc/latex/carlisle/ltxtable.dvi +/usr/share/texmf/doc/latex/carlisle/plain.txt +/usr/share/texmf/doc/latex/carlisle/pspicture.dvi +/usr/share/texmf/doc/latex/carlisle/typehtml.dvi + +% ccfonts %src% +/usr/share/texmf/source/latex/ccfonts/cc.fdd +/usr/share/texmf/source/latex/ccfonts/ccfonts.dtx +/usr/share/texmf/source/latex/ccfonts/ccfonts.ins +/usr/share/texmf/source/latex/ccfonts/oinst.ins +/usr/share/texmf/source/latex/ccfonts/readme +/usr/share/texmf/tex/latex/ccfonts/ccfonts.sty +/usr/share/texmf/tex/latex/ccfonts/omlxcm.fd +/usr/share/texmf/tex/latex/ccfonts/omsxcsy.fd +/usr/share/texmf/tex/latex/ccfonts/omxxcex.fd +/usr/share/texmf/tex/latex/ccfonts/t1ccr.fd +/usr/share/texmf/tex/latex/ccfonts/ts1ccr.fd +/usr/share/texmf/doc/latex/ccfonts/ccfonts.dvi +/usr/share/texmf/doc/latex/ccfonts/readme + +% cite %src% +# in each file +/usr/share/texmf/source/latex/cite/chapterbib.sty +/usr/share/texmf/source/latex/cite/cite.sty +/usr/share/texmf/source/latex/cite/drftcite.sty +/usr/share/texmf/source/latex/cite/overcite.sty +/usr/share/texmf/source/latex/cite/README +/usr/share/texmf/tex/latex/cite/chapterbib.sty +/usr/share/texmf/tex/latex/cite/cite.sty +/usr/share/texmf/tex/latex/cite/drftcite.sty +/usr/share/texmf/tex/latex/cite/overcite.sty + +% cmbright %src% +/usr/share/texmf/source/fonts/cmbright/latex/cmbright.dtx +/usr/share/texmf/source/fonts/cmbright/latex/cmbr.fdd +/usr/share/texmf/source/fonts/cmbright/latex/cmbright.ins +/usr/share/texmf/source/fonts/cmbright/latex/oinst.ins +/usr/share/texmf/tex/latex/cmbright/cmbright.sty +/usr/share/texmf/tex/latex/cmbright/omlcmbr.fd +/usr/share/texmf/tex/latex/cmbright/omlcmbrm.fd +/usr/share/texmf/tex/latex/cmbright/omscmbr.fd +/usr/share/texmf/tex/latex/cmbright/omscmbrs.fd +/usr/share/texmf/tex/latex/cmbright/ot1cmbr.fd +/usr/share/texmf/tex/latex/cmbright/ot1cmtl.fd +/usr/share/texmf/tex/latex/cmbright/t1cmbr.fd +/usr/share/texmf/tex/latex/cmbright/t1cmtl.fd +/usr/share/texmf/tex/latex/cmbright/ts1cmbr.fd +/usr/share/texmf/tex/latex/cmbright/ts1cmtl.fd +/usr/share/texmf/doc/fonts/cmbright/cmbright.dvi + +% cmbright fonts %src% +/usr/share/texmf/source/fonts/cmbright/mf/copyrite.txt +/usr/share/texmf/source/fonts/cmbright/mf/ams10pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/ams8pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/ams9pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/baccent.mf +/usr/share/texmf/source/fonts/cmbright/mf/bgreeku.mf +/usr/share/texmf/source/fonts/cmbright/mf/bitalms.mf +/usr/share/texmf/source/fonts/cmbright/mf/bpunct.mf +/usr/share/texmf/source/fonts/cmbright/mf/br10pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/br17pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/br8pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/br9pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/brmsa.mf +/usr/share/texmf/source/fonts/cmbright/mf/brmsb.mf +/usr/share/texmf/source/fonts/cmbright/mf/bromanl.mf +/usr/share/texmf/source/fonts/cmbright/mf/broman.mf +/usr/share/texmf/source/fonts/cmbright/mf/bromlig.mf +/usr/share/texmf/source/fonts/cmbright/mf/bromms.mf +/usr/share/texmf/source/fonts/cmbright/mf/brs10pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/brs17pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/brs8pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/brs9pt.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbr10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbr17.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbr8.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbr9.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbras10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbras8.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbras9.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrbs10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrbs8.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrbs9.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrbx10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrmb10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrmi10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrmi8.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrmi9.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrsl10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrsl17.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrsl8.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrsl9.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrsy10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrsy8.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmbrsy9.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmsltl10.mf +/usr/share/texmf/source/fonts/cmbright/mf/cmtl10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebaccess.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebbase.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebbraces.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebbx10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmo10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmo17.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmo8.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmo9.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmr10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmr17.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmr8.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebmr9.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebpseudo.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebpunct.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebrleast.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebrlig.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebrligtb.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebrllett.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebrlwest.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebroman.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebso10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebso17.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebso8.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebso9.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebsr10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebsr17.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebsr8.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebsr9.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebtl10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ebto10.mf +/usr/share/texmf/source/fonts/cmbright/mf/manifest.txt +/usr/share/texmf/source/fonts/cmbright/mf/mathsl.mf +/usr/share/texmf/source/fonts/cmbright/mf/msa.mf +/usr/share/texmf/source/fonts/cmbright/mf/msb.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbbx10.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmo10.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmo17.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmo8.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmo9.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmr10.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmr17.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmr8.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbmr9.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbpseudo.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbso10.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbso17.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbso8.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbso9.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbsr10.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbsr17.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbsr8.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbsr9.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbsymb.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbsymbol.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbtl10.mf +/usr/share/texmf/source/fonts/cmbright/mf/tbto10.mf +/usr/share/texmf/source/fonts/cmbright/mf/ttsymb.mf +/usr/share/texmf/source/fonts/cmbright/mf/ttsymbol.mf +/usr/share/texmf/fonts/source/public/cmbright/ams10pt.mf +/usr/share/texmf/fonts/source/public/cmbright/ams8pt.mf +/usr/share/texmf/fonts/source/public/cmbright/ams9pt.mf +/usr/share/texmf/fonts/source/public/cmbright/baccent.mf +/usr/share/texmf/fonts/source/public/cmbright/bgreeku.mf +/usr/share/texmf/fonts/source/public/cmbright/bitalms.mf +/usr/share/texmf/fonts/source/public/cmbright/bpunct.mf +/usr/share/texmf/fonts/source/public/cmbright/br10pt.mf +/usr/share/texmf/fonts/source/public/cmbright/br17pt.mf +/usr/share/texmf/fonts/source/public/cmbright/br8pt.mf +/usr/share/texmf/fonts/source/public/cmbright/br9pt.mf +/usr/share/texmf/fonts/source/public/cmbright/brmsa.mf +/usr/share/texmf/fonts/source/public/cmbright/brmsb.mf +/usr/share/texmf/fonts/source/public/cmbright/bromanl.mf +/usr/share/texmf/fonts/source/public/cmbright/broman.mf +/usr/share/texmf/fonts/source/public/cmbright/bromlig.mf +/usr/share/texmf/fonts/source/public/cmbright/bromms.mf +/usr/share/texmf/fonts/source/public/cmbright/brs10pt.mf +/usr/share/texmf/fonts/source/public/cmbright/brs17pt.mf +/usr/share/texmf/fonts/source/public/cmbright/brs8pt.mf +/usr/share/texmf/fonts/source/public/cmbright/brs9pt.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbr10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbr17.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbr8.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbr9.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbras10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbras8.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbras9.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrbs10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrbs8.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrbs9.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrbx10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrmb10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrmi10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrmi8.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrmi9.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrsl10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrsl17.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrsl8.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrsl9.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrsy10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrsy8.mf +/usr/share/texmf/fonts/source/public/cmbright/cmbrsy9.mf +/usr/share/texmf/fonts/source/public/cmbright/cmsltl10.mf +/usr/share/texmf/fonts/source/public/cmbright/cmtl10.mf +/usr/share/texmf/fonts/source/public/cmbright/ebaccess.mf +/usr/share/texmf/fonts/source/public/cmbright/ebbase.mf +/usr/share/texmf/fonts/source/public/cmbright/ebbraces.mf +/usr/share/texmf/fonts/source/public/cmbright/ebbx10.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmo10.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmo17.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmo8.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmo9.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmr10.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmr17.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmr8.mf +/usr/share/texmf/fonts/source/public/cmbright/ebmr9.mf +/usr/share/texmf/fonts/source/public/cmbright/ebpseudo.mf +/usr/share/texmf/fonts/source/public/cmbright/ebpunct.mf +/usr/share/texmf/fonts/source/public/cmbright/ebrleast.mf +/usr/share/texmf/fonts/source/public/cmbright/ebrlig.mf +/usr/share/texmf/fonts/source/public/cmbright/ebrligtb.mf +/usr/share/texmf/fonts/source/public/cmbright/ebrllett.mf +/usr/share/texmf/fonts/source/public/cmbright/ebrlwest.mf +/usr/share/texmf/fonts/source/public/cmbright/ebroman.mf +/usr/share/texmf/fonts/source/public/cmbright/ebso10.mf +/usr/share/texmf/fonts/source/public/cmbright/ebso17.mf +/usr/share/texmf/fonts/source/public/cmbright/ebso8.mf +/usr/share/texmf/fonts/source/public/cmbright/ebso9.mf +/usr/share/texmf/fonts/source/public/cmbright/ebsr10.mf +/usr/share/texmf/fonts/source/public/cmbright/ebsr17.mf +/usr/share/texmf/fonts/source/public/cmbright/ebsr8.mf +/usr/share/texmf/fonts/source/public/cmbright/ebsr9.mf +/usr/share/texmf/fonts/source/public/cmbright/ebtl10.mf +/usr/share/texmf/fonts/source/public/cmbright/ebto10.mf +/usr/share/texmf/fonts/source/public/cmbright/mathsl.mf +/usr/share/texmf/fonts/source/public/cmbright/msa.mf +/usr/share/texmf/fonts/source/public/cmbright/msb.mf +/usr/share/texmf/fonts/source/public/cmbright/tbbx10.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmo10.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmo17.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmo8.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmo9.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmr10.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmr17.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmr8.mf +/usr/share/texmf/fonts/source/public/cmbright/tbmr9.mf +/usr/share/texmf/fonts/source/public/cmbright/tbpseudo.mf +/usr/share/texmf/fonts/source/public/cmbright/tbso10.mf +/usr/share/texmf/fonts/source/public/cmbright/tbso17.mf +/usr/share/texmf/fonts/source/public/cmbright/tbso8.mf +/usr/share/texmf/fonts/source/public/cmbright/tbso9.mf +/usr/share/texmf/fonts/source/public/cmbright/tbsr10.mf +/usr/share/texmf/fonts/source/public/cmbright/tbsr17.mf +/usr/share/texmf/fonts/source/public/cmbright/tbsr8.mf +/usr/share/texmf/fonts/source/public/cmbright/tbsr9.mf +/usr/share/texmf/fonts/source/public/cmbright/tbsymb.mf +/usr/share/texmf/fonts/source/public/cmbright/tbsymbol.mf +/usr/share/texmf/fonts/source/public/cmbright/tbtl10.mf +/usr/share/texmf/fonts/source/public/cmbright/tbto10.mf +/usr/share/texmf/fonts/source/public/cmbright/ttsymb.mf +/usr/share/texmf/fonts/source/public/cmbright/ttsymbol.mf +/usr/share/texmf/doc/fonts/cmbright/copyrite.txt +/usr/share/texmf/doc/fonts/cmbright/manifest.txt +/usr/share/texmf/doc/fonts/cmbright/readme + +% concmath %src% +/usr/share/texmf/source/latex/concmath/README +/usr/share/texmf/source/latex/concmath/CATALOGUE +/usr/share/texmf/source/latex/concmath/concmath.dtx +/usr/share/texmf/source/latex/concmath/concmath.ins +/usr/share/texmf/source/latex/concmath/fonts +/usr/share/texmf/source/latex/concmath/Makefile +/usr/share/texmf/tex/latex/concmath/concmath.sty +/usr/share/texmf/tex/latex/concmath/omlccm.fd +/usr/share/texmf/tex/latex/concmath/omlccr.fd +/usr/share/texmf/tex/latex/concmath/omsccr.fd +/usr/share/texmf/tex/latex/concmath/omsccsy.fd +/usr/share/texmf/tex/latex/concmath/omxccex.fd +/usr/share/texmf/tex/latex/concmath/ot1ccr.fd +/usr/share/texmf/tex/latex/concmath/ucca.fd +/usr/share/texmf/tex/latex/concmath/uccb.fd +/usr/share/texmf/doc/latex/styles/concmath.dvi + +% curves %src% +../tetex-src/tetex-src-2.0.2/latex/curves/curves.dtx +../tetex-src/tetex-src-2.0.2/latex/curves/curves.ins +tetex-base-2.0.2a/texmf/tex/latex/curves/curvesls.sty +tetex-base-2.0.2a/texmf/tex/latex/curves/curves.sty +/usr/share/texmf/doc/latex/styles/curves.dvi + +% custom-bib: %src% +../tetex-src/tetex-src-2.0.2/latex/custom-bib/makebst.dtx +../tetex-src/tetex-src-2.0.2/latex/custom-bib/catalan.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/dansk.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/dutch.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/english.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/esperant.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/finnish.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/french.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/geojour.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/german.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/italian.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/makebst.drv +../tetex-src/tetex-src-2.0.2/latex/custom-bib/makebst.ins +../tetex-src/tetex-src-2.0.2/latex/custom-bib/merlin.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/norsk.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/photjour.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/physjour.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/polski.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/portuges.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/README.405 +../tetex-src/tetex-src-2.0.2/latex/custom-bib/shorthnd.ins +../tetex-src/tetex-src-2.0.2/latex/custom-bib/slovene.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/spanish.mbs +../tetex-src/tetex-src-2.0.2/latex/custom-bib/suppjour.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/catalan.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/dansk.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/dutch.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/english.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/esperant.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/finnish.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/french.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/geojour.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/german.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/italian.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/makebst.tex +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/merlin.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/norsk.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/photjour.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/physjour.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/polski.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/portuges.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/spanish.mbs +tetex-base-2.0.2a/texmf/tex/latex/custom-bib/suppjour.mbs +tetex-base-2.0.2a/texmf/doc/latex/custom-bib/geophys.tex +tetex-base-2.0.2a/texmf/doc/latex/custom-bib/makebst.dvi +tetex-base-2.0.2a/texmf/doc/latex/custom-bib/merlin.dvi +tetex-base-2.0.2a/texmf/doc/latex/custom-bib/README.404 +tetex-base-2.0.2a/texmf/doc/latex/custom-bib/README.405 +tetex-base-2.0.2a/texmf/doc/latex/custom-bib/shorthnd.tex + +% cyrillic %src% +../tetex-src/tetex-src-2.0.2/latex/cyrillic/00readme.txt +../tetex-src/tetex-src-2.0.2/latex/cyrillic/changes.txt +../tetex-src/tetex-src-2.0.2/latex/cyrillic/cyinpenc.dtx +../tetex-src/tetex-src-2.0.2/latex/cyrillic/cyoutenc.dtx +../tetex-src/tetex-src-2.0.2/latex/cyrillic/cyrlatex.ins +../tetex-src/tetex-src-2.0.2/latex/cyrillic/lcyccr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/lcycmbr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/lcycmlh.fdd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/lcycmtl.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/lcy.dtx +../tetex-src/tetex-src-2.0.2/latex/cyrillic/Makefile.tetex +../tetex-src/tetex-src-2.0.2/latex/cyrillic/manifest.txt +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2ccr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2cmams.fdd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2cmbr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2cmlh.fdd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2cmtl.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2.dtx +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2wlcyr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/ot2wlcyss.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2accr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2acmbr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2acmtl.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2bccr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2bcmbr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2bcmtl.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2cccr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2ccmbr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2ccmtl.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/t2lhfnt.fdd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/tetex.ins +../tetex-src/tetex-src-2.0.2/latex/cyrillic/x2ccr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/x2cmbr.fd +../tetex-src/tetex-src-2.0.2/latex/cyrillic/x2cmtl.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/cp1251.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/cp855.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/cp866av.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/cp866.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/cp866mav.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/cp866nav.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/cp866tat.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ctt.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/dbk.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/iso88595.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/isoir111.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/koi8-r.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/koi8-ru.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/koi8-u.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcycmdh.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcycmfib.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcycmfr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcycmr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcycmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcycmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcycmvtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcydefs.tex +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcyenc.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcylcmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcylcmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/lcy.sty +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/maccyr.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/macukr.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/mik.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/mls.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/mnk.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/mos.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ncc.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2cmdh.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2cmfib.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2cmfr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2cmr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2cmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2cmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2cmvtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2enc.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2lcmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2lcmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2wncyr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/ot2wncyss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/pt154.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/pt254.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2acmdh.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2acmfib.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2acmfr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2acmr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2acmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2acmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2acmvtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2aenc.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2alcmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2alcmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2bcmdh.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2bcmfib.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2bcmfr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2bcmr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2bcmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2bcmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2bcmvtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2benc.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2blcmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2blcmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2ccmdh.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2ccmfib.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2ccmfr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2ccmr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2ccmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2ccmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2ccmvtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2cenc.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2clcmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/t2clcmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2cmdh.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2cmfib.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2cmfr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2cmr.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2cmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2cmtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2cmvtt.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2enc.def +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2lcmss.fd +tetex-base-2.0.2a/texmf/tex/latex/cyrillic/x2lcmtt.fd +tetex-base-2.0.2a/texmf/doc/latex/cyrillic/00readme.txt +tetex-base-2.0.2a/texmf/doc/latex/cyrillic/changes.txt +tetex-base-2.0.2a/texmf/doc/latex/cyrillic/cyinpenc.dvi +tetex-base-2.0.2a/texmf/doc/latex/cyrillic/cyoutenc.dvi +tetex-base-2.0.2a/texmf/doc/latex/cyrillic/lcy.dvi +tetex-base-2.0.2a/texmf/doc/latex/cyrillic/manifest.txt +tetex-base-2.0.2a/texmf/doc/latex/cyrillic/ot2.dvi + +% dinbrief %src% +../tetex-src/tetex-src-2.0.2/latex/dinbrief/dinbrief.dtx +../tetex-src/tetex-src-2.0.2/latex/dinbrief/dinbrief.ins +../tetex-src/tetex-src-2.0.2/latex/dinbrief/liesmich +../tetex-src/tetex-src-2.0.2/latex/dinbrief/readme +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/brfbody.tex +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/brfkopf.tex +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/dbold.tex +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/dinbrief.cfg +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/dinbrief.dvi +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/dintab.dvi +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/example.tex +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/liesmich +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/readme +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/test10.tex +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/test11.tex +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/test12.tex +tetex-base-2.0.2a/texmf/doc/latex/dinbrief/testnorm.tex + +% dstroke fonts %src% +tetex-base-2.0.2a/texmf/doc/fonts/dstroke/readme +tetex-base-2.0.2a/texmf/doc/fonts/dstroke/dsdoc.dvi +tetex-base-2.0.2a/texmf/tex/latex/dstroke/dsfont.sty +tetex-base-2.0.2a/texmf/tex/latex/dstroke/Udsrom.fd +tetex-base-2.0.2a/texmf/tex/latex/dstroke/Udsss.fd +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsrom10.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsrom12.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsrom8.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsrom.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsromo.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsromu.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsss10.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsss12.mf +tetex-base-2.0.2a/texmf/fonts/source/public/dstroke/dsss8.mf + +% endfloat %src% +../tetex-src/tetex-src-2.0.2/latex/endfloat/readme.enf +../tetex-src/tetex-src-2.0.2/latex/endfloat/endfloat.asc +../tetex-src/tetex-src-2.0.2/latex/endfloat/endfloat.drv +../tetex-src/tetex-src-2.0.2/latex/endfloat/endfloat.dtx +../tetex-src/tetex-src-2.0.2/latex/endfloat/endfloat.ins +tetex-base-2.0.2a/texmf/tex/latex/endfloat/efxmpl.cfg +tetex-base-2.0.2a/texmf/tex/latex/endfloat/endfloat.sty +tetex-base-2.0.2a/texmf/doc/latex/styles/endfloat.dvi + +% euler %src% +/usr/share/texmf/source/latex/euler/legal.txt +/usr/share/texmf/source/latex/euler/euler.dtx +/usr/share/texmf/tex/latex/misc/euler.sty +/usr/share/texmf/doc/latex/styles/euler.dvi +/usr/share/texmf/source/latex/euler/euler.ins + +% extsizes %src% +# in every file +../tetex-src/tetex-src-2.0.2/latex/extsizes/autopagewidth.sty +../tetex-src/tetex-src-2.0.2/latex/extsizes/extarticle.cls +../tetex-src/tetex-src-2.0.2/latex/extsizes/extbook.cls +../tetex-src/tetex-src-2.0.2/latex/extsizes/extletter.cls +../tetex-src/tetex-src-2.0.2/latex/extsizes/extproc.cls +../tetex-src/tetex-src-2.0.2/latex/extsizes/extreport.cls +../tetex-src/tetex-src-2.0.2/latex/extsizes/extsizes.sty +../tetex-src/tetex-src-2.0.2/latex/extsizes/readme.extsizes +../tetex-src/tetex-src-2.0.2/latex/extsizes/size14.clo +../tetex-src/tetex-src-2.0.2/latex/extsizes/size17.clo +../tetex-src/tetex-src-2.0.2/latex/extsizes/size20.clo +../tetex-src/tetex-src-2.0.2/latex/extsizes/size8.clo +../tetex-src/tetex-src-2.0.2/latex/extsizes/size9.clo +tetex-base-2.0.2a/texmf/tex/latex/extsizes/autopagewidth.sty +tetex-base-2.0.2a/texmf/tex/latex/extsizes/extarticle.cls +tetex-base-2.0.2a/texmf/tex/latex/extsizes/extbook.cls +tetex-base-2.0.2a/texmf/tex/latex/extsizes/extletter.cls +tetex-base-2.0.2a/texmf/tex/latex/extsizes/extproc.cls +tetex-base-2.0.2a/texmf/tex/latex/extsizes/extreport.cls +tetex-base-2.0.2a/texmf/tex/latex/extsizes/extsizes.sty +tetex-base-2.0.2a/texmf/tex/latex/extsizes/size14.clo +tetex-base-2.0.2a/texmf/tex/latex/extsizes/size17.clo +tetex-base-2.0.2a/texmf/tex/latex/extsizes/size20.clo +tetex-base-2.0.2a/texmf/tex/latex/extsizes/size8.clo +tetex-base-2.0.2a/texmf/tex/latex/extsizes/size9.clo +tetex-base-2.0.2a/texmf/doc/latex/extsizes/readme.extsizes + +% fancyhdr: %src% +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/README +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/extramarks.sty +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/fancyhdr.out +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/fancyhdr.pdf +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/fancyhdr.sty +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/fancyhdr.tex +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/fancyheadings.new +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/fixmarks.sty +../tetex-src/tetex-src-2.0.2/latex/fancyhdr/Makefile.tetex +tetex-base-2.0.2a/texmf/tex/latex/fancyhdr/extramarks.sty +tetex-base-2.0.2a/texmf/tex/latex/fancyhdr/fancyhdr.sty +tetex-base-2.0.2a/texmf/tex/latex/fancyhdr/fixmarks.sty +tetex-base-2.0.2a/texmf/doc/latex/fancyhdr/fancyhdr.dvi +tetex-base-2.0.2a/texmf/doc/latex/fancyhdr/fancyheadings.new +tetex-base-2.0.2a/texmf/doc/latex/fancyhdr/README + +% fancyvrb: %src% +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/fancyvrb.dtx +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/artistic.txt +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/fancyvrb.cb +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/fancyvrb.ins +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/README + + +% fvrb-ex %src% +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/contrib/fvrb-ex.dtx +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/contrib/fvrb-ex.ins +../tetex-src/tetex-src-2.0.2/latex/fancyvrb/contrib/README +/usr/share/texmf/tex/latex/fancyvrb/fvrb-ex.sty +/usr/share/texmf/tex/latex/fancyvrb/hbaw.sty +/usr/share/texmf/tex/latex/fancyvrb/hcolor.sty +/usr/share/texmf/doc/latex/fancyvrb/fvrb-ex.pdf +/usr/share/texmf/doc/latex/fancyvrb/t-fvrbex.tex + +% g-brief +/usr/share/texmf/tex/latex/g-brief/g-brief2.cls +/usr/share/texmf/tex/latex/g-brief/g-brief2.sty +/usr/share/texmf/tex/latex/g-brief/g-brief.cls +/usr/share/texmf/tex/latex/g-brief/g-brief.sty +/usr/share/texmf/doc/latex/g-brief/g-brief.dvi +/usr/share/texmf/doc/latex/g-brief/beispiel.tex +/usr/share/texmf/doc/latex/g-brief/beispiel2.tex + +% LaTeX %src% +/usr/share/texmf/source/latex/base/legal.txt +/usr/share/texmf/source/latex/base/00readme.txt +/usr/share/texmf/source/latex/base/alltt.dtx +/usr/share/texmf/source/latex/base/alltt.ins +/usr/share/texmf/source/latex/base/amiweb2c.txt +/usr/share/texmf/source/latex/base/autoload.ins +/usr/share/texmf/source/latex/base/autoload.txt +/usr/share/texmf/source/latex/base/begleit.err +/usr/share/texmf/source/latex/base/bugs.txt +/usr/share/texmf/source/latex/base/cfgguide.tex +/usr/share/texmf/source/latex/base/changes.txt +/usr/share/texmf/source/latex/base/classes.dtx +/usr/share/texmf/source/latex/base/classes.ins +/usr/share/texmf/source/latex/base/clsguide.tex +/usr/share/texmf/source/latex/base/cmextra.ins +/usr/share/texmf/source/latex/base/cmfonts.fdd +/usr/share/texmf/source/latex/base/cmfonts.ins +/usr/share/texmf/source/latex/base/compan.err +/usr/share/texmf/source/latex/base/cstex.txt +/usr/share/texmf/source/latex/base/cyrguide.tex +/usr/share/texmf/source/latex/base/decustex.txt +/usr/share/texmf/source/latex/base/directex.txt +/usr/share/texmf/source/latex/base/doc.dtx +/usr/share/texmf/source/latex/base/docstrip.dtx +/usr/share/texmf/source/latex/base/docstrip.ins +/usr/share/texmf/source/latex/base/ec.ins +/usr/share/texmf/source/latex/base/emtextds.txt +/usr/share/texmf/source/latex/base/emtex.txt +/usr/share/texmf/source/latex/base/exscale.dtx +/usr/share/texmf/source/latex/base/exscale.ins +/usr/share/texmf/source/latex/base/fixltx2e.dtx +/usr/share/texmf/source/latex/base/fixltx2e.ins +/usr/share/texmf/source/latex/base/fntguide.tex +/usr/share/texmf/source/latex/base/fontdef.dtx +/usr/share/texmf/source/latex/base/format.ins +/usr/share/texmf/source/latex/base/graphpap.dtx +/usr/share/texmf/source/latex/base/graphpap.ins +/usr/share/texmf/source/latex/base/grphcomp.err +/usr/share/texmf/source/latex/base/handbuch.err +/usr/share/texmf/source/latex/base/idx.tex +/usr/share/texmf/source/latex/base/ifthen.dtx +/usr/share/texmf/source/latex/base/ifthen.ins +/usr/share/texmf/source/latex/base/inputenc.dtx +/usr/share/texmf/source/latex/base/inputenc.ins +/usr/share/texmf/source/latex/base/install.txt +/usr/share/texmf/source/latex/base/lablst.tex +/usr/share/texmf/source/latex/base/latex209.dtx +/usr/share/texmf/source/latex/base/latex209.ins +/usr/share/texmf/source/latex/base/latexbug.el +/usr/share/texmf/source/latex/base/latexbug.tex +/usr/share/texmf/source/latex/base/latexsym.dtx +/usr/share/texmf/source/latex/base/latexsym.ins +/usr/share/texmf/source/latex/base/letter.dtx +/usr/share/texmf/source/latex/base/letter.ins +/usr/share/texmf/source/latex/base/lindner.txt +/usr/share/texmf/source/latex/base/lppl-1-0.txt +/usr/share/texmf/source/latex/base/lppl-1-1.txt +/usr/share/texmf/source/latex/base/lppl.txt +/usr/share/texmf/source/latex/base/ltalloc.dtx +/usr/share/texmf/source/latex/base/ltbibl.dtx +/usr/share/texmf/source/latex/base/ltboxes.dtx +/usr/share/texmf/source/latex/base/ltclass.dtx +/usr/share/texmf/source/latex/base/ltcntrl.dtx +/usr/share/texmf/source/latex/base/ltcounts.dtx +/usr/share/texmf/source/latex/base/ltdefns.dtx +/usr/share/texmf/source/latex/base/ltdirchk.dtx +/usr/share/texmf/source/latex/base/lterror.dtx +/usr/share/texmf/source/latex/base/ltfiles.dtx +/usr/share/texmf/source/latex/base/ltfinal.dtx +/usr/share/texmf/source/latex/base/ltfloat.dtx +/usr/share/texmf/source/latex/base/ltfntcmd.dtx +/usr/share/texmf/source/latex/base/ltfssbas.dtx +/usr/share/texmf/source/latex/base/ltfsscmp.dtx +/usr/share/texmf/source/latex/base/ltfssdcl.dtx +/usr/share/texmf/source/latex/base/ltfssini.dtx +/usr/share/texmf/source/latex/base/ltfsstrc.dtx +/usr/share/texmf/source/latex/base/lthyphen.dtx +/usr/share/texmf/source/latex/base/ltidxglo.dtx +/usr/share/texmf/source/latex/base/ltlength.dtx +/usr/share/texmf/source/latex/base/ltlists.dtx +/usr/share/texmf/source/latex/base/ltlogos.dtx +/usr/share/texmf/source/latex/base/ltmath.dtx +/usr/share/texmf/source/latex/base/ltmiscen.dtx +/usr/share/texmf/source/latex/base/ltnews01.tex +/usr/share/texmf/source/latex/base/ltnews02.tex +/usr/share/texmf/source/latex/base/ltnews03.tex +/usr/share/texmf/source/latex/base/ltnews04.tex +/usr/share/texmf/source/latex/base/ltnews05.tex +/usr/share/texmf/source/latex/base/ltnews06.tex +/usr/share/texmf/source/latex/base/ltnews07.tex +/usr/share/texmf/source/latex/base/ltnews08.tex +/usr/share/texmf/source/latex/base/ltnews09.tex +/usr/share/texmf/source/latex/base/ltnews10.tex +/usr/share/texmf/source/latex/base/ltnews11.tex +/usr/share/texmf/source/latex/base/ltnews12.tex +/usr/share/texmf/source/latex/base/ltnews13.tex +/usr/share/texmf/source/latex/base/ltnews14.tex +/usr/share/texmf/source/latex/base/ltnews.cls +/usr/share/texmf/source/latex/base/ltoutenc.dtx +/usr/share/texmf/source/latex/base/ltoutenc.ins +/usr/share/texmf/source/latex/base/ltoutput.dtx +/usr/share/texmf/source/latex/base/ltpage.dtx +/usr/share/texmf/source/latex/base/ltpageno.dtx +/usr/share/texmf/source/latex/base/ltpar.dtx +/usr/share/texmf/source/latex/base/ltpatch.ltx +/usr/share/texmf/source/latex/base/ltpictur.dtx +/usr/share/texmf/source/latex/base/ltplain.dtx +/usr/share/texmf/source/latex/base/ltsect.dtx +/usr/share/texmf/source/latex/base/ltspace.dtx +/usr/share/texmf/source/latex/base/lttab.dtx +/usr/share/texmf/source/latex/base/ltthm.dtx +/usr/share/texmf/source/latex/base/ltvers.dtx +/usr/share/texmf/source/latex/base/ltx3info.tex +/usr/share/texmf/source/latex/base/ltxcheck.tex +/usr/share/texmf/source/latex/base/ltxdoc.dtx +/usr/share/texmf/source/latex/base/ltxguide.cls +/usr/share/texmf/source/latex/base/ltxref.dtx +/usr/share/texmf/source/latex/base/Makefile.tetex +/usr/share/texmf/source/latex/base/Makefile.unx +/usr/share/texmf/source/latex/base/makeindx.dtx +/usr/share/texmf/source/latex/base/makeindx.ins +/usr/share/texmf/source/latex/base/manifest.txt +/usr/share/texmf/source/latex/base/manual.err +/usr/share/texmf/source/latex/base/microtex.txt +/usr/share/texmf/source/latex/base/miktex.txt +/usr/share/texmf/source/latex/base/minimal.cls +/usr/share/texmf/source/latex/base/modguide.tex +/usr/share/texmf/source/latex/base/multitex.txt +/usr/share/texmf/source/latex/base/newdc.ins +/usr/share/texmf/source/latex/base/newlfont.dtx +/usr/share/texmf/source/latex/base/nfssfont.tex +/usr/share/texmf/source/latex/base/olddc.ins +/usr/share/texmf/source/latex/base/oldlfont.dtx +/usr/share/texmf/source/latex/base/oztex.txt +/usr/share/texmf/source/latex/base/pastex.txt +/usr/share/texmf/source/latex/base/patches.txt +/usr/share/texmf/source/latex/base/pctex.txt +/usr/share/texmf/source/latex/base/pict2e.dtx +/usr/share/texmf/source/latex/base/pict2e.ins +/usr/share/texmf/source/latex/base/preload.dtx +/usr/share/texmf/source/latex/base/proc.dtx +/usr/share/texmf/source/latex/base/proc.ins +/usr/share/texmf/source/latex/base/sample2e.tex +/usr/share/texmf/source/latex/base/slides.dtx +/usr/share/texmf/source/latex/base/slides.ins +/usr/share/texmf/source/latex/base/slifonts.fdd +/usr/share/texmf/source/latex/base/small2e.tex +/usr/share/texmf/source/latex/base/source2e.tex +/usr/share/texmf/source/latex/base/syntonly.dtx +/usr/share/texmf/source/latex/base/syntonly.ins +/usr/share/texmf/source/latex/base/template.txt +/usr/share/texmf/source/latex/base/testpage.tex +/usr/share/texmf/source/latex/base/tetex.ins +/usr/share/texmf/source/latex/base/tex2.txt +/usr/share/texmf/source/latex/base/texpert.txt +/usr/share/texmf/source/latex/base/textures.txt +/usr/share/texmf/source/latex/base/truetex.txt +/usr/share/texmf/source/latex/base/unpack.ins +/usr/share/texmf/source/latex/base/usrguide.tex +/usr/share/texmf/source/latex/base/vtexfree.txt +/usr/share/texmf/source/latex/base/vtex.txt +/usr/share/texmf/source/latex/base/web2ctex.txt +/usr/share/texmf/source/latex/base/webcomp.err +/usr/share/texmf/source/latex/base/webcompg.err +/usr/share/texmf/source/latex/base/yandytex.txt +/usr/share/texmf/tex/latex/base/alltt.sty +/usr/share/texmf/tex/latex/base/ansinew.def +/usr/share/texmf/tex/latex/base/applemac.def +/usr/share/texmf/tex/latex/base/article.cls +/usr/share/texmf/tex/latex/base/article.sty +/usr/share/texmf/tex/latex/base/ascii.def +/usr/share/texmf/tex/latex/base/bezier.sty +/usr/share/texmf/tex/latex/base/bk10.clo +/usr/share/texmf/tex/latex/base/bk11.clo +/usr/share/texmf/tex/latex/base/bk12.clo +/usr/share/texmf/tex/latex/base/book.cls +/usr/share/texmf/tex/latex/base/book.sty +/usr/share/texmf/tex/latex/base/cp1250.def +/usr/share/texmf/tex/latex/base/cp1252.def +/usr/share/texmf/tex/latex/base/cp437de.def +/usr/share/texmf/tex/latex/base/cp437.def +/usr/share/texmf/tex/latex/base/cp850.def +/usr/share/texmf/tex/latex/base/cp852.def +/usr/share/texmf/tex/latex/base/cp865.def +/usr/share/texmf/tex/latex/base/decmulti.def +/usr/share/texmf/tex/latex/base/docstrip.tex +/usr/share/texmf/tex/latex/base/doc.sty +/usr/share/texmf/tex/latex/base/exscale.sty +/usr/share/texmf/tex/latex/base/fixltx2e.sty +/usr/share/texmf/tex/latex/base/flafter.sty +/usr/share/texmf/tex/latex/base/fleqn.clo +/usr/share/texmf/tex/latex/base/fleqn.sty +/usr/share/texmf/tex/latex/base/fontenc.sty +/usr/share/texmf/tex/latex/base/fontmath.ltx +/usr/share/texmf/tex/latex/base/fonttext.ltx +/usr/share/texmf/tex/latex/base/graphpap.sty +/usr/share/texmf/tex/latex/base/hyphen.ltx +/usr/share/texmf/tex/latex/base/idx.tex +/usr/share/texmf/tex/latex/base/ifthen.sty +/usr/share/texmf/tex/latex/base/inputenc.sty +/usr/share/texmf/tex/latex/base/lablst.tex +/usr/share/texmf/tex/latex/base/latex209.def +/usr/share/texmf/tex/latex/base/latexbug.tex +/usr/share/texmf/tex/latex/base/latex.ltx +/usr/share/texmf/tex/latex/base/latexsym.sty +/usr/share/texmf/tex/latex/base/latin1.def +/usr/share/texmf/tex/latex/base/latin2.def +/usr/share/texmf/tex/latex/base/latin3.def +/usr/share/texmf/tex/latex/base/latin4.def +/usr/share/texmf/tex/latex/base/latin5.def +/usr/share/texmf/tex/latex/base/latin9.def +/usr/share/texmf/tex/latex/base/leqno.clo +/usr/share/texmf/tex/latex/base/leqno.sty +/usr/share/texmf/tex/latex/base/letter.cls +/usr/share/texmf/tex/latex/base/letter.sty +/usr/share/texmf/tex/latex/base/ltnews.cls +/usr/share/texmf/tex/latex/base/ltpatch.ltx +/usr/share/texmf/tex/latex/base/ltxcheck.tex +/usr/share/texmf/tex/latex/base/ltxdoc.cls +/usr/share/texmf/tex/latex/base/ltxguide.cls +/usr/share/texmf/tex/latex/base/makeidx.sty +/usr/share/texmf/tex/latex/base/minimal.cls +/usr/share/texmf/tex/latex/base/newlfont.sty +/usr/share/texmf/tex/latex/base/next.def +/usr/share/texmf/tex/latex/base/nfssfont.tex +/usr/share/texmf/tex/latex/base/oldlfont.sty +/usr/share/texmf/tex/latex/base/omlcmm.fd +/usr/share/texmf/tex/latex/base/omlcmr.fd +/usr/share/texmf/tex/latex/base/omlenc.def +/usr/share/texmf/tex/latex/base/omllcmm.fd +/usr/share/texmf/tex/latex/base/omscmr.fd +/usr/share/texmf/tex/latex/base/omscmsy.fd +/usr/share/texmf/tex/latex/base/omsenc.def +/usr/share/texmf/tex/latex/base/omslcmsy.fd +/usr/share/texmf/tex/latex/base/omxcmex.fd +/usr/share/texmf/tex/latex/base/omxlcmex.fd +/usr/share/texmf/tex/latex/base/openbib.sty +/usr/share/texmf/tex/latex/base/ot1cmdh.fd +/usr/share/texmf/tex/latex/base/ot1cmfib.fd +/usr/share/texmf/tex/latex/base/ot1cmfr.fd +/usr/share/texmf/tex/latex/base/ot1cmr.fd +/usr/share/texmf/tex/latex/base/ot1cmss.fd +/usr/share/texmf/tex/latex/base/ot1cmtt.fd +/usr/share/texmf/tex/latex/base/ot1cmvtt.fd +/usr/share/texmf/tex/latex/base/ot1enc.def +/usr/share/texmf/tex/latex/base/ot1lcmss.fd +/usr/share/texmf/tex/latex/base/ot1lcmtt.fd +/usr/share/texmf/tex/latex/base/ot4enc.def +/usr/share/texmf/tex/latex/base/pict2e.sty +/usr/share/texmf/tex/latex/base/preload.ltx +/usr/share/texmf/tex/latex/base/proc.cls +/usr/share/texmf/tex/latex/base/proc.sty +/usr/share/texmf/tex/latex/base/report.cls +/usr/share/texmf/tex/latex/base/report.sty +/usr/share/texmf/tex/latex/base/sample2e.tex +/usr/share/texmf/tex/latex/base/sfonts.def +/usr/share/texmf/tex/latex/base/shortvrb.sty +/usr/share/texmf/tex/latex/base/showidx.sty +/usr/share/texmf/tex/latex/base/size10.clo +/usr/share/texmf/tex/latex/base/size11.clo +/usr/share/texmf/tex/latex/base/size12.clo +/usr/share/texmf/tex/latex/base/slides.cls +/usr/share/texmf/tex/latex/base/slides.def +/usr/share/texmf/tex/latex/base/slides.sty +/usr/share/texmf/tex/latex/base/small2e.tex +/usr/share/texmf/tex/latex/base/syntonly.sty +/usr/share/texmf/tex/latex/base/t1cmdh.fd +/usr/share/texmf/tex/latex/base/t1cmfib.fd +/usr/share/texmf/tex/latex/base/t1cmfr.fd +/usr/share/texmf/tex/latex/base/t1cmr.fd +/usr/share/texmf/tex/latex/base/t1cmss.fd +/usr/share/texmf/tex/latex/base/t1cmtt.fd +/usr/share/texmf/tex/latex/base/t1cmvtt.fd +/usr/share/texmf/tex/latex/base/t1enc.def +/usr/share/texmf/tex/latex/base/t1enc.sty +/usr/share/texmf/tex/latex/base/t1lcmss.fd +/usr/share/texmf/tex/latex/base/t1lcmtt.fd +/usr/share/texmf/tex/latex/base/testpage.tex +/usr/share/texmf/tex/latex/base/textcomp.sty +/usr/share/texmf/tex/latex/base/tracefnt.sty +/usr/share/texmf/tex/latex/base/ts1cmr.fd +/usr/share/texmf/tex/latex/base/ts1cmss.fd +/usr/share/texmf/tex/latex/base/ts1cmtt.fd +/usr/share/texmf/tex/latex/base/ts1cmvtt.fd +/usr/share/texmf/tex/latex/base/ts1enc.def +/usr/share/texmf/tex/latex/base/ucmr.fd +/usr/share/texmf/tex/latex/base/ucmss.fd +/usr/share/texmf/tex/latex/base/ucmtt.fd +/usr/share/texmf/tex/latex/base/ulasy.fd +/usr/share/texmf/tex/latex/base/ullasy.fd + + +% listings %src% +/usr/share/texmf/source/latex/listings/listings.dtx +/usr/share/texmf/source/latex/listings/listings.ins +/usr/share/texmf/source/latex/listings/listings.sty +/usr/share/texmf/source/latex/listings/lstdrvrs.dtx +/usr/share/texmf/source/latex/listings/lstpatch.sty +/usr/share/texmf/source/latex/listings/Makefile.tetex +/usr/share/texmf/source/latex/listings/README +/usr/share/texmf/source/latex/listings/README.comment-on-license +/usr/share/texmf/tex/latex/listings/listings.cfg +/usr/share/texmf/tex/latex/listings/listings.sty +/usr/share/texmf/tex/latex/listings/lstdoc.sty +/usr/share/texmf/tex/latex/listings/lstlang1.sty +/usr/share/texmf/tex/latex/listings/lstlang2.sty +/usr/share/texmf/tex/latex/listings/lstlang3.sty +/usr/share/texmf/tex/latex/listings/lstmisc.sty +/usr/share/texmf/tex/latex/listings/lstpatch.sty +/usr/share/texmf/doc/latex/listings/listings.dvi +/usr/share/texmf/doc/latex/listings/README + +% pslatex %src% +/usr/share/texmf/tex/latex/misc/pslatex.sty +/usr/share/texmf/doc/latex/pslatex/00readme.txt +/usr/share/texmf/fonts/tfm/adobe/pslatex/pcrr7tn.tfm +/usr/share/texmf/fonts/tfm/adobe/pslatex/pcrr8rn.tfm +/usr/share/texmf/fonts/tfm/adobe/pslatex/pcrr8tn.tfm +/usr/share/texmf/fonts/vf/adobe/pslatex/pcrr7tn.vf +/usr/share/texmf/fonts/vf/adobe/pslatex/pcrr8tn.vf +/usr/bin/pslatex #tetex-bin + +% pst-osci %nosrc% +/usr/share/texmf/tex/generic/pstricks/pst-osci.tex +/usr/share/doc/texmf/generic/pstricks/pst-osci.pdf +/usr/share/doc/texmf/generic/pstricks/README.pst-osci + +% sueterlin %nosrc% +/usr/share/texmf/fonts/source/public/gothic/suet14.mf +/usr/share/texmf/fonts/source/public/gothic/schwell.mf +/usr/share/texmf/fonts/source/public/gothic/su-lig.mf +/usr/share/texmf/fonts/source/public/gothic/su-low.mf +/usr/share/texmf/fonts/source/public/gothic/su-upp.mf +/usr/share/texmf/fonts/source/public/gothic/su-spec.mf +suet.tex --- tetex-base-3.0.orig/debian/copyright +++ tetex-base-3.0/debian/copyright @@ -0,0 +1,226 @@ +Copyright file for tetex-base, tetex-extra and tetex-doc. + +Table of contents: + +1. Copyright and License of the debian-specific adaptations +2. License of the teTeX distribution as a compilation work +3. (incomplete) list of licenses of individual parts +4. Text of the licenses + + +1. Copyright and License of the debian-specific adaptations + +Debian adaptations for this Package are under Copyright by: + + Christoph Martin christoph.martin@uni-mainz.de (1998-2002) + Adrian Bunk (2000-2002) + C.M. Connelly (2002) + Atsuhito KOHDA (2002-) + Hilmar Preusse (2003-) + Stefan Ulrich (2003-) + Frank Küster (2003-) + Florent Rougon (2004) + +This list has been compiled in July 2004, therefore it is probably +incomplete (missing names and too short date ranges). Contributors of +translations and other small patches are mentioned in +changelog.Debian. + +The package was downloaded from CTAN:/systems/unix/teTeX + +-------------- + +2. License of the teTeX distribution as a compilation work + +The teTeX distribution, i.e. the tetex-base, tetex-extra and tetex-doc +packages, together with the tetex-bin and tetex-src packages, is +Copyright by Thomas Esser (199?-). + +The teTeX distribution is free software; you can redistribute it +and/or modify it under the terms of the GNU General Public License as +published by the Free Software Foundation; either version 2 of the +License, or (at your option) any later version. + +On Debian GNU/Linux systems, the complete text of the GNU General Public +License may be found in /usr/share/common-licenses/GPL. + +-------------- + +3. (incomplete) list of licenses of individual parts + +The GPL applies to the teTeX distribution as a compilation work. +Individual parts of this distribution have their own copyright and +license. + +We are attempting to provide comprehensive information on the licenses +of all files in the package, but this is ongoing work. Below you can +find a list of packages grouped by their license. (A "package" in this +sense is a bunch of files on the CTAN servers, usually one +subdirectory, with common copyright; the files in a package may be +installed in different locations in below /usr/share/texmf.) In the +accompanying file Copyright.Files you can find a list of files that +belong to each package. The actual text of the licenses (or a +reference to a separate file) is given at the end of this file +(copyright). The first file of a package's filelist is the file that +contains the license statement. If the license statement has been +found elsewhere (e.g. in a file that is not installed), the source of +information is stated in lines commented with #. + + +Therefore, if you want to know the license of a specific file, first +look up the package it belongs to in Copyright.Files, and then the +license of the package in this file, and it's text below. If you +cannot find the file in Copyright.Files, this means we did not yet +have time to look up it's license and include it in the list. In this +case, you have to look up the license: Often it is in the file itself, +sometimes you have to find out which package it belongs to, and look +into the file that describes it's license information (a file named +README, COPYING or similar). In some cases, the license information +may not be included any file installed with tetex-base, tetex-extra or +tetex-doc, but in the source in the tetex-src package. + +If you had to figure out the license of a file or package this way, +please submit your results as a bug report, so that we can include it +here - thanks in advance! + +-------------- +-------------- + +The format of the list is + +[Package|File]: License-abbreviation version[+] + +Files or packages marked with a + have a "or later" versioning +clause. Packages with non-common licenses have a number instead of a +license abbreviation after their name, and the text of the license is +given below in section 4, ordered by the number. However, we have +tried to classify those individual licenses. Therefore you will find +entries like "cite: PD (1)" meaning that the file is in the Public +Domain, and the license is given as number 1. + +A. Packages with unclear or problematic licenses + +- euler: LPPL according changelog, but no indication in file. + +- listings: LPPL, plus: + +,---- +| *Modification*advice* +| +| Permission is granted to modify the listings package as well as +| lstdrvrs.dtx. You are not allowed to distribute a modified version of +| the listings package or lstdrvrs.dtx unless you change the file names +| and provide the original files. In any case it is better to contact +| the address below; other users will welcome removed bugs, new +| features, and additional programming languages. + +This is more restrictive than LPPL 1.3 (6.a and 6.d.2). The title is advice... + +- ae: Just a formal problem, the GPL is included, but nowhere is it + explicitly stated that this license applies to the package. + + ***** + +B. Individual files, not belonging to any package: + + cahyph.tex: LPPL 1+ + gahyph.tex: GPL 2+ + icehyph.tex: LPPL 1.2+ + ruhyphas.tex: LPPL 1.2+ + ruhyphzn.tex: LPPL 1.2+ + sehyph.tex: LPPL 1.2+ + + ***** + +C. Packages + +- LaTeX/TeX/ConTeXt/... packages + + acronym: LPPL 1.3+ + adrconv: LPPL 1.2+ + ae: GPL + antp: PD + antt: PD + base: See LaTeX + bbm: LPPL 1+ + bbold: mBSD + caption: LPPL 1.3+ + carlisle: LPPL 1+ + ccfonts: LPPL 1.2+ + cite: PD (1) + cmbright: LPPL 1.2+ + concmath: LPPL 1+ + curves: LPPL 1.2+ + custom-bib: LPPL 1+ + cyrillic: LPPL 1+ + dinbrief: LPPL 1.1+ + dstroke: PD (2) + epic: PD (3) + endfloat: GPL 2+ + extsizes: LPPL (no version) + fancyhdr: LPPL 1+ + fancyvrb: Artistic 2 + fvrb-ex: Artistic 2 + g-brief: LPPL 1.1+ + LaTeX: LPPL 1.2+ + pslatex: LPPL+ + pst-osci: PD + +- Font packages + + cmbright: LPPL 1.2+ + sueterlin: PD + +-------------- +-------------- + +4. Text of the licenses + +A. GPL (Gnu General Public License) + +On Debian GNU/Linux systems, the complete text of the GNU General Public +License can be found in /usr/share/common-licenses/GPL. + +B. LPPL (LaTeX Project Public License) + +The full text of the LPPL is given in +/usr/share/doc/tetex-base/lppl.txt.gz + +C. Artistic license + +On Debian GNU/Linux systems, the complete text of the GNU General Public +License can be found in /usr/share/common-licenses/Artistic + +D. PD (Public domain): + +The file or package contains a statement equivalent to + +"This file is in the public domain. You may freely use, modify or +distribute it". + +E. mBSD (modified BSD) + +This abbreviation is used for BSD-type licenses if the only difference +to the original BSD license is that the text "the name of the +University nor the names of its contributors" has been changed to +something reflecting the authorship of the respective package. + +X. Non-standard licenses, by number: + +(1) These macros may be freely transmitted, reproduced, or modified + provided that this notice is left intact. + +(2) You may use and distribute these fonts as you like. + You may modify these fonts as long as you do not + rename the files to one of those names that + Donald E. Knuth chose for the Computer Modern fonts. + (And seriously, who would want to do that?) + +(3) eepic.sty, eepicemu.sty: + The macros are in public domain. + You may distribute or modify it in any ways you like. + epic.sty: + You may use this file in whatever way you wish. You are requested to + leave this notice intact, and report any bugs, enhancements, comments, + suggestions, etc. to: + ... --- tetex-base-3.0.orig/debian/license-info/LICENSE-mails.sueterlin +++ tetex-base-3.0/debian/license-info/LICENSE-mails.sueterlin @@ -0,0 +1,230 @@ +From nobody Thu Mar 17 16:44:32 2005 +X-From-Line: ludewig@hrz.uni-siegen.de Thu Mar 17 09:59:53 2005 +Return-path: +Envelope-to: frank@localhost +Delivery-date: Thu, 17 Mar 2005 09:59:53 +0100 +Received: from localhost ([127.0.0.1]) + by alhambra.kuesterei.ch with esmtp (Exim 4.44) + id 1DBqr9-0000cM-Ik + for frank@localhost; Thu, 17 Mar 2005 09:59:51 +0100 +Received: from pop.1und1.com [212.227.15.161] + by localhost with POP3 (fetchmail-6.2.5) + for frank@localhost (single-drop); Thu, 17 Mar 2005 09:59:51 +0100 (CET) +Received: from [141.99.1.40] (helo=MAILF0.uni-siegen.de) + by mxeu11.kundenserver.de with ESMTP (Nemesis), + id 0MKuA8-1DBqbP1YMU-00049o; Thu, 17 Mar 2005 09:43:35 +0100 +Received: from spamt2.hrz.Uni-Siegen.DE ([141.99.102.42]) by MAILF0.uni-siegen.de with Microsoft SMTPSVC(6.0.3790.211); + Thu, 17 Mar 2005 09:43:34 +0100 +Received: from micral76 (www-wlan.hrz.uni-siegen.de [141.99.13.250]) + by spamt2.hrz.Uni-Siegen.DE (Postfix) with SMTP id 898A01B24CB; + Thu, 17 Mar 2005 09:43:34 +0100 (CET) +X-Gnus-Mail-Source: file:/var/mail/frank +Message-ID: <001b01c52acd$6738b8c0$6f02a8c0@micral76> +From: "Berthold Ludewig" +To: =?iso-8859-1?Q?=22Frank_K=FCster=22?= +Cc: +References: <874qffwol4.fsf@alhambra.kuesterei.ch><002901c52976$11b39a30$6f02a8c0@micral76> <87psy0q4mm.fsf@alhambra.kuesterei.ch> +Subject: =?iso-8859-1?Q?Re:_Nochmal:_Lizenz_Ihrer_S=FCtterlin-Metafont-Schriften?= +Date: Thu, 17 Mar 2005 09:43:33 +0100 +MIME-Version: 1.0 +Content-Type: text/plain; + format=flowed; + charset="iso-8859-1"; + reply-type=original +X-Priority: 3 +X-MSMail-Priority: Normal +X-Mailer: Microsoft Outlook Express 6.00.2900.2180 +X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 +Content-Transfer-Encoding: quoted-printable +X-OriginalArrivalTime: 17 Mar 2005 08:43:34.0635 (UTC) FILETIME=[67B2A3B0:01C52ACD] +X-SpamScore: 0.000 +Xref: alhambra.kuesterei.ch mail.Debianstuff:19 +Lines: 90 + +Sehr geehrter Herr Kuesters, + +ja, genau so koennen wir es machen. + +Mit freundlichen Gruessen + +Berthold Ludewig + +-------------------------------------------------------------------------= +------------ + +Graham, please see below for the english part. + +Sehr geehrter Herr Ludewig, + +"Berthold Ludewig" schrieb: + +> Sehr geehrter Herr Kuester, +> +> ich habe vor ca. 15 Jahren der TeX-Gemeinde die beiden Handschriften +> "Vereinfachte Ausgangsschrift" (va14) und "Suetterlin" +> geschenkt. Geschenkt ist vielleicht nicht ganz richtig; ich wollte den +> vielen vielen aktiven Mitglieder der TeX-Welt etwas zurueckgeben, als +> Dankeschoen vielleicht. + +Ja, so verstehen viele ihre Arbeit, auch ich; ich habe z.B. eine kleine +Klasse zum F=FChren eines Laborjournals auf CTAN gestellt. + +> Ich habe also ueberhaupt nichts dagegen, wenn die Schriften auf CD=B4s +> vervielfaeltigt werden. + +Also auch auf kommerziellen, wie den von Lehmann's verkauften +CTAN-Abz=FCgen, ja? + +> Die Dateien su-lig.mf, su-low.mf, su-upp.mf und su-spec.mf +> beschreiben die Form der einzelnen Zeichen und Ligaturen und werden +> von den Dateien suet14.mf und schwell.mf inkludiert. Sie sind +> selbstverstaendlich auch von mir. + +,---- [ translation for Graham] +| The files su-lig.mf, su-low.mf, su-upp.mf und su-spec.mf describe the +| forms of the individual characters and ligatures and are included by +| suet14.mf and schwell.mf. Of course they are also made by me. +`---- + +> Muss ich jetzt noch irgendetwas in die Dateien einfuegen, oder kann +> das jemand machen, der sowieso Zugriff zu den Dateien hat? + +Nicht unbedingt; wir k=F6nnen auch diese E-Mail zugrunde legen, und ich +w=FCrde die CTAN-Maintainer bitten, einfach folgende Datei +README.suetterlin ins CTAN-Verzeichnis aufzunehmen. Wenn Sie zustimmen, +senden Sie einfach eine Kopie Ihrer Antwort-Mail an Graham Williams, der +schon im Cc dieser Mail steht. + +***************************************** +I, Berthold Ludewig, put the files + +suet14.mf +schwell.mf +su-lig.mf +su-low.mf +su-upp.mf +su-spec.mf + +In the public domain, as a gift to the Tex community. You may freely +use, modify and distribute it. +***************************************** + +I used english because it is the language usually used on CTAN. If you +agree, please send a copy of your answer to Graham Williams who's in the +Cc. + +Vielen Dank im Voraus, +Frank K=FCster +--=20 +Frank K=FCster +Inst. f. Biochemie der Univ. Z=FCrich +Debian Developer + + + +----- Original Message -----=20 +From: ""Frank K=FCster"" +To: "Berthold Ludewig" +Cc: "Graham Williams" +Sent: Tuesday, March 15, 2005 5:02 PM +Subject: Re: Nochmal: Lizenz Ihrer S=FCtterlin-Metafont-Schriften + + + +From nobody Thu Mar 17 16:44:35 2005 +X-From-Line: ludewig@hrz.uni-siegen.de Thu Mar 17 15:47:33 2005 +Return-path: +Envelope-to: frank@localhost +Delivery-date: Thu, 17 Mar 2005 15:47:33 +0100 +Received: from localhost ([127.0.0.1]) + by alhambra.kuesterei.ch with esmtp (Exim 4.44) + id 1DBwHd-0006Az-Or + for frank@localhost; Thu, 17 Mar 2005 15:47:33 +0100 +Received: from pop.1und1.com [212.227.15.161] + by localhost with POP3 (fetchmail-6.2.5) + for frank@localhost (single-drop); Thu, 17 Mar 2005 15:47:33 +0100 (CET) +Received: from [146.82.138.7] (helo=master.debian.org) + by mxeu2.kundenserver.de with ESMTP (Nemesis), + id 0MKpdM-1DBvs01Ial-0003RX; Thu, 17 Mar 2005 15:21:04 +0100 +Received: from mailf2.uni-siegen.de [141.99.1.42] + by master.debian.org with esmtp (Exim 3.35 1 (Debian)) + id 1DBvry-00056R-00; Thu, 17 Mar 2005 08:21:02 -0600 +Received: from spamt2.hrz.Uni-Siegen.DE ([141.99.102.42]) by mailf2.uni-siegen.de with Microsoft SMTPSVC(6.0.3790.211); + Thu, 17 Mar 2005 15:18:56 +0100 +Received: from micral76 (www-wlan.hrz.uni-siegen.de [141.99.13.250]) + by spamt2.hrz.Uni-Siegen.DE (Postfix) with SMTP id 7BF191B24CB + for ; Thu, 17 Mar 2005 15:21:01 +0100 (CET) +X-Gnus-Mail-Source: file:/var/mail/frank +Message-ID: <007901c52afc$8b511840$6f02a8c0@micral76> +From: "Berthold Ludewig" +To: =?iso-8859-1?Q?Frank_K=FCster?= +References: <874qffwol4.fsf@alhambra.kuesterei.ch><002901c52976$11b39a30$6f02a8c0@micral76><87psy0q4mm.fsf@alhambra.kuesterei.ch><001b01c52acd$6738b8c0$6f02a8c0@micral76> <87psxybcl8.fsf@alhambra.kuesterei.ch> +Subject: =?iso-8859-1?Q?Re:_Nochmal:_Lizenz_Ihrer_S=FCtterlin-Metafont-Schriften?= +Date: Thu, 17 Mar 2005 15:21:00 +0100 +MIME-Version: 1.0 +Content-Type: text/plain; + format=flowed; + charset="iso-8859-1"; + reply-type=original +X-Priority: 3 +X-MSMail-Priority: Normal +X-Mailer: Microsoft Outlook Express 6.00.2900.2180 +X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 +Content-Transfer-Encoding: quoted-printable +X-OriginalArrivalTime: 17 Mar 2005 14:18:56.0944 (UTC) FILETIME=[41875300:01C52AFC] +X-SpamScore: 0.000 +Xref: alhambra.kuesterei.ch mail.Debianstuff:24 +Lines: 53 + +Hallo Herr Kuesters, + +ja, auch diese beiden Dateien. mfall.bat erzeugt auf einem=20 +dos/windows-system die PK-Dateien, suet.tex ist ein einfacher=20 +Beispieltext.(soweit ich mich noch erinnern kann). Man braucht diese Date= +ien=20 +aber nicht unbedingt. + +Mit freundlichen Gruessen + +Berthold Ludewig + + + +----- Original Message -----=20 +From: "Frank K=FCster" +To: "Berthold Ludewig" +Sent: Thursday, March 17, 2005 2:56 PM +Subject: Re: Nochmal: Lizenz Ihrer S=FCtterlin-Metafont-Schriften + + +"Berthold Ludewig" schrieb: + +> Sehr geehrter Herr Kuesters, +> +> ja, genau so koennen wir es machen. + +ich hatte noch was vergessen: +> ***************************************** +> I, Berthold Ludewig, put the files +> +> suet14.mf +> schwell.mf +> su-lig.mf +> su-low.mf +> su-upp.mf +> su-spec.mf +> +> In the public domain, as a gift to the Tex community. You may freely +> use, modify and distribute it. +> ***************************************** + +mfall.bat und suet.tex geh=F6ren sicher auch dazu, oder? + +Mit freundlichen Gr=FC=DFen, +Frank K=FCster +--=20 +Frank K=FCster +Inst. f. Biochemie der Univ. Z=FCrich +Debian Developer + + --- tetex-base-3.0.orig/debian/tetex-doc.postinst +++ tetex-base-3.0/debian/tetex-doc.postinst @@ -0,0 +1,14 @@ +#!/bin/sh +set -e + +case "$1" in + configure|reconfigure) + test -x "`which mktexlsr`" && mktexlsr || true +# disable this for now + # index-tetexdoc + ;; + *) + ;; +esac + +#DEBHELPER# --- tetex-base-3.0.orig/debian/tetex-doc.apache2.sites-available +++ tetex-base-3.0/debian/tetex-doc.apache2.sites-available @@ -0,0 +1,12 @@ +# This is used for the web-based php version of texdoctk +# just try +# http://localhost/texmf/doc/texdoc.php or +# http://localhost/doc/texmf/texdoc.php +# +Alias /texmf /usr/share/texmf + + order deny,allow + deny from all + allow from 127.0.0.0/255.0.0.0 + Options Indexes FollowSymlinks MultiViews + --- tetex-base-3.0.orig/debian/tetex-doc.dirs +++ tetex-base-3.0/debian/tetex-doc.dirs @@ -0,0 +1,6 @@ +usr/share/doc +var/lib/texmf +usr/bin +usr/share/man/man1 +etc/apache2/sites-available +etc/apache2/sites-enabled --- tetex-base-3.0.orig/debian/tetex-extra.fontmap.list +++ tetex-base-3.0/debian/tetex-extra.fontmap.list @@ -0,0 +1 @@ +20tetex-extra --- tetex-base-3.0.orig/debian/20tetex-extra.updmap.cfg +++ tetex-base-3.0/debian/20tetex-extra.updmap.cfg @@ -0,0 +1,35 @@ +# 20tetex-extra.cfg: Font configuration file for the Debian tetex-extra package. +# +# Don't delete the following pseudo-comment unless you know what you are doing. +# -_- DebPkgProvidedMaps -_- +# This file will *not* be included in updmap.cfg if the tetex-extra package is +# removed. Please read update-updmap(8) for details. +# +# The entries in this file have been split off from the original +# updmap.cfg and configure the fonts included in tetex-extra. +# +# $Id: 20tetex-extra.updmap.cfg 113 2005-08-04 15:02:54Z frn $ + +################################################################ +# Map files. +################################################################ +# +# There are two possible entries: Map and MixedMap. Both have one additional +# argument: the filename of the map file. MixedMap ("mixed" means that +# the font is available as bitmap and as outline) lines will not be used +# in the default map of dvips if dvipsPreferOutline is false. Inactive +# Map files should be marked by "#! " (without the quotes), not just #. + +# for Omega +Map omega.map + +# XY-pic fonts; CTAN:macros/generic/diagrams/xypic +Map xypic.map + +# ps-type1 versions for cm+ams; CTAN:fonts/cm/ps-type1/bluesky +MixedMap bsr.map +MixedMap bsr-interpolated.map + +# Euro Symbol fonts by Henrik Theiling; CTAN:fonts/eurosym +MixedMap eurosym.map + --- tetex-base-3.0.orig/debian/10tetex-base.updmap.cfg +++ tetex-base-3.0/debian/10tetex-base.updmap.cfg @@ -0,0 +1,107 @@ +# Don't delete the following pseudo-comment unless you know what you are doing. +# -_- DebPkgProvidedMaps -_- + +# AntykwaPoltawskiego; CTAN:fonts/psfonts/polish/antp/ +Map antp.map + +# AntykwaTorunska; CTAN:fonts/antt/ +Map cork-antt.map +Map cs-antt.map +Map exp-antt.map +Map greek-antt.map +Map qx-antt.map +Map t2a-antt.map +Map t2b-antt.map +Map t2c-antt.map +Map t5-antt.map +Map texnansi-antt.map +Map wncy-antt.map + +# "quasi" fonts derived from URW and enhanced (from the Polish TeX users); +# CTAN:fonts/psfonts/polish/qfonts/ +Map qbk.map +Map qcr.map +Map qhv.map +Map qpl.map +Map qtm.map +Map qzc.map + +# Bitstream Charter text font +Map charter.map + +# Computer Modern fonts extended with Russian letters; +# CTAN:fonts/cyrillic/cmcyr/ +Map cmcyr.map + +# symbols for ConTeXt macro package +Map contnav.map + +# latin modern; CTAN:fonts/lm. Enable encoding specific map +# files or the "all-in-one" file lm.map, not both at the same time. +# Debian: These fonts are in a separate package, lmodern +## Map cork-lm.map +## Map qx-lm.map +## Map texnansi-lm.map +## Map ts1-lm.map +## Map lm.map + +# a symbol font; CTAN:fonts/psfonts/marvosym/ +Map marvosym.map + +# two font map entries for the mathpple package +Map mathpple.map + +# the pazo fonts; CTAN:fonts/mathpazo +Map pazo.map + +# pxfonts (palatino extension); CTAN:fonts/pxfonts +Map pxfonts.map + +# txfonts (times extension); CTAN:fonts/txfonts +Map txfonts.map + +# 7-8-9 sizes for cmex taken from TeXtrace2001 +MixedMap ttcmex.map + +# CSTeX; http://math.feld.cvut.cz/olsak/cstex/ +MixedMap cs.map + +# mf -> type1 converted fonts by Taco Hoekwater +MixedMap hoekwater.map + +# cm like, but enhanced for polish; CTAN:fonts/psfonts/polish/plpsfont +MixedMap pl.map +MixedMap ccpl.map + +# See comments in doc/fonts/belleek/README about using mt-belleek.map +# instead of mt-yy.map: +Map mt-belleek.map + +# vntex support, see http://vinux.sourceforge.net/vntex +MixedMap vnr.map + +# urw++ fonts with vietnamese accents added +# see http://vinux.sourceforge.net/urwvn +Map urwvn.map + +# Y&Y's Lucida Bright and Lucida New Math supporting "Berry"-style +# tfm names (commercial fonts): +#! Map lucidabr.map +#! Map lumath.map + +# Y&Y's Lucida Bright and Lucida New Math supporting "Y&Y"-style +# tfm names (commercial fonts): +#! Map lucidabr-o.map +#! Map lumath-o.map + +# Y&Y's Mathtime (commercial fonts). Disable mt-belleek.map if you want to +# use mt-yy.map! +#! Map mt-yy.map +#! Map mt-plus.map + +# Doublestroke, based on Knuth's Computer Modern Roman; CTAN:fonts/doublestroke +Map dstroke.map + +# FPL, free substitutes for the commercial Palatino SC/OsF fonts +# are available from CTAN:fonts/fpl; used by psnfss 9.2. +Map fpls.map --- tetex-base-3.0.orig/debian/changelog.Debian.experimental +++ tetex-base-3.0/debian/changelog.Debian.experimental @@ -0,0 +1,171 @@ +tetex-base (3.0-8) experimental; urgency=low + + * Drop the dependency on gsfonts, we have our own copies [frank]. + * No longer set the dependency on debconf manually, use ${misc:Depends} + instead. This will introduce debconf-2.0 as an alternative to + debconf [frank] (closes: #332113). + * Remove xcolor's documentation, it's in a separate package. Thanks to + Ralf Stubner (closes: #325891) [frank] + * Don't act on the obsolete pdftex.cfg file when it hasn't been changed + at all (closes: #324826) [frank] + * The ls-R files and respective symlinks now belong to + tex-common. [frank] + * Drop the dependency on texinfo, as already done in sid in 2.0.2c-9 + [frank] + * The transition code for changing symlinks to directories and vice + versa is now in tetex-extra, too, at least for preinst and postrm. + The postinst stuff can be in tetex-base only. [frank] + * Fixed code for handling obsolete conffiles [frank] + * Remove all code that still handles /var/cache/fonts somehow, + especially the postrm code that removed the directory. This is now + all done in tex-common. Thanks to Florent for spotting this. [frank] + + -- Frank Küster Thu, 13 Oct 2005 17:08:15 +0200 + +tetex-base (3.0-7) experimental; urgency=low + + * Check files that used to be conffiles and are now unused, remove them + if unchanged. Furthermore, Install config.antt into /etc/texmf/dvips + again (closes: #320074). Thanks to Ralf Stubner again. + * Fix extension when pdftex.cfg is saved away after taking over as much + settings as possible (closes: #320061) + * Depend on a tex-common version that provides update-language (closes: + #321361) and move the LSRS entry from our and tetex-bin's variables to + common.variables + * Reintroduce the code to create /usr/local/share/texmf in postinst, and + a symlink from ls-R to /var/lib/texmf/ls-R-LOCAL. + * Really install tetex-extra's fontmap list file + + -- Frank Küster Fri, 12 Aug 2005 17:18:41 +0200 + +tetex-base (3.0-6) experimental; urgency=low + + * Really install 10tetex-base.cfg in /etc/texmf/updmap.d - + thanks to Ralf Stubner (closes: + #320066). + * And make tetex-base's and tetex-extra's updmap configuration files + active by putting the list files into + /var/lib/tex-common/fontmap-cfg/. + * The same package was previously uploaded to my private repository as + version 3.0-5 and, with a small but important fix, 3.0-5.1, while + ftp-master was down. + + -- Frank Küster Wed, 27 Jul 2005 12:23:16 +0200 + +tetex-base (3.0-4) experimental; urgency=low + + * tetex-base now depends on tex-common, and has "lost" some configuration + files to that package. + * In particular, the updmap configuration files have been changed: + - 00updmap.cfg is now 10tetex-base.cfg (except the parts in + tex-common's 00updmap.cfg), and it is no longer a patched variant of + updmap.cfg from the upstream sources, but rather a static file in the + debian subdirectory. + - 05tetex-extra.cfg is now 05tetex-extra.cfg + Both files contain the magic comment, and the memory file is at the + proper place. An upgrade path for 10tetex-base.cfg is still needed. + * /usr/share/texmf/lambda/config is now only a symlink in tetex-extra. + In older 3.0 versions, it was also a directory in tetex-base. Thanks + to Miles Bader for spotting this. This fix (closes: + #300855), but this only applies to upgrades from 2.0.2 - there is no + good upgrade path between experimental versions. + * Make seminar.con a conffile again + * Rewrite the synchronization with tetex-common, using a patch by + Florent Rougon (closes: #309596) + * Add the documentation for the sueterlin fonts (see: #300596) + * tetex-doc now supports a web interface to the documentation at + http://localhost/texmf/doc/texdoc.php, using the data from texdoctk. + * Remove beamer documentation (already in package latex-beamer). + + -- Frank Küster Mon, 25 Jul 2005 15:40:45 +0200 + +tetex-base (3.0-3) experimental; urgency=low + + * Make sure all previous symlinks are properly converted to directories, + and vice versa, in the preinst/postinst scripts, thanks to Julian + Gilbey (closes: #299843) + + -- Frank Küster Thu, 17 Mar 2005 11:38:34 +0100 + +tetex-base (3.0-2) experimental; urgency=low + + * Remove files from tetex-extra that are already installed by + latex-beamer, latex-xcolor and pgf. + * Revert the change from the last version: Do not unset HOME. It's + better to create/update ls-R files in root's or a sudo-user's + $HOME/texmf, than in /texmf. There is currently no way to stop + mktexlsr from doing that, if the directories exist. + + -- Frank Küster Mon, 14 Mar 2005 13:27:34 +0100 + +tetex-base (3.0-1) experimental; urgency=low + + * New upstream release + * Unset HOME before running mktexlsr, thanks to Uwe Zeisberger + (see: #294197) [frank] + * Remove files from tetex-base or tetex-extra that are already in + separate Debian packages: lmodern, preview-latex + * Move format ini files back to TEXMFMAIN, they are not configuration + files. + * Provide an upgrade path for many conf(iguration )files that changed + their location. + * License stuff: + - Added README.pst-osci with a clarified license (public domain) + + -- Frank Küster Mon, 7 Mar 2005 18:57:26 +0100 + +tetex-base (2.99.9.20050111-beta-2) experimental; urgency=low + + * tetex-base now conflicts with older versions of tetex-bin, reflecting + the new directory structure, thanks to Martin Fluch + (closes: #291531). + + -- Frank Küster Sun, 23 Jan 2005 14:40:25 +0100 + +tetex-base (2.99.9.20050111-beta-1) experimental; urgency=low + + * New upstream release candidate + + -- Frank Küster Sun, 16 Jan 2005 13:35:43 +0100 + +tetex-base (2.99.7.20041225-beta-1) experimental; urgency=low + + * New upstream beta release. This is packaged in order to allow the bold + and brave to test, and to check whether the binary part builds on all + architectures. + * BE WARNED, THIS IS NOT FOR TYPESETTING YOUR THESIS + * The packaging has been revised and partly rewritten: + - We now work with a pristine upstream tarball as orig.tar.gz + - Most files needed for creation of the package, as well as the + maintainer scripts, are now generated using ePerl. The configuration + is done, as much as possible, through the files variables, + common.variables, and common.functions + - To synchronise this and the tetex-bin package, common.functions and + common.variables from the tetex-common CVS module are used + * We provide infrastructure to allow for easy backporting of teTeX 3.0 + to sarge. + * Lots of bugs are closed by this upload - all bugs listed below have + already been tagged fixed-upstream, and there should be an explanation + in the bug logs at http://bugs.debian.org/. In some cases + the explanation is only a link to the LaTeX Project bug database, or + it is in the comments of the mail sent to the control server, but it's + always there. + + - For tetex-base: (closes: #221262, #261529, #272560, #119531, + #267768, #195711, #181310, #206315, #230931, #258976, #145339, + #190873, #214415, #255137, #181310, #219573, #229598, #286722) + + - For tetex-extra: (closes: #273246, #218178, #195109, #215925, + #251143, #202472, #259696, #261736, #271463, #273247) + + - For tetex-doc: (closes: #160692, #223569, #153985) + * All information for users and developers, Debian-specific or not, has + been collected in the README files of the tetex-bin package. + * Files are now arranged according to the TeX Directory Structure v. 1.1 + (changes mainly involve font maps and encoding files, and the script + directory). + * tetex-base now does all the language.dat handling; it no longer ships + static copies of generated map files. + + -- Frank Küster Tue, 21 Dec 2004 13:37:25 +0100 + --- tetex-base-3.0.orig/debian/tetex-base.language.list +++ tetex-base-3.0/debian/tetex-base.language.list @@ -0,0 +1 @@ +00tetex --- tetex-base-3.0.orig/debian/README.Developers +++ tetex-base-3.0/debian/README.Developers @@ -0,0 +1,23 @@ +- Quilt: + + For those who have not worked with quilt (I haven't) a quick info how to + work: + +cd trunk +export QUILT_PATCHES=./debian/patches +You want to change a file `texk/web2c/man/Makefile.in' and it is either +already changed in debian/patches/patch-deb or you want to change it in +debian/patches/patch-deb + +quilt push patch-deb +# if it is a new file, i.e. not already changed in patch-deb, call +# quilt add texk/web2c/man/Makefile.in +edit texk/web2c/man/Makefile.in +quilt refresh +quilt pop -a + + svn status should show you that only debian/patches/patch-deb is changed + + ... + + -- Frank Küster , Mon Jan 09 17:10:27 2006 --- tetex-base-3.0.orig/debian/.cvsignore +++ tetex-base-3.0/debian/.cvsignore @@ -0,0 +1,10 @@ +config +preinst +postinst +postrm +tetex-extra.preinst +tetex-extra.postinst +tetex-extra.postrm +setup-ucf +setup-conflinks +common.functions --- tetex-base-3.0.orig/.pc/.version +++ tetex-base-3.0/.pc/.version @@ -0,0 +1 @@ +2 --- tetex-base-3.0.orig/texenv +++ tetex-base-3.0/texenv @@ -0,0 +1,73 @@ +AFMFONTS +BIBINPUTS +BSTINPUTS +CMAPFONTS +CWEBINPUTS +ENCFONTS +GFFONTS +GLYPHFONTS +INDEXSTYLE +LIGFONTS +MAILCAPLIBDIR +MFBASES +MFINPUTS +MFPOOL +MFTINPUTS +MIMELIBDIR +MISCFONTS +MISSFONT_LOG +MPINPUTS +MPMEMS +MPPOOL +MPSUPPORT +MPXCOMMAND +OCPINPUTS +OFMFONTS +OPENTYPEFONTS +OPLFONTS +OTPINPUTS +OVFFONTS +OVPFONTS +PDFTEXCONFIG +PKFONTS +PSHEADERS +SFDFONTS +SYSTEXMF +T1FONTS +T42FONTS +T4HTINPUTS +TEX4HTFONTSET +TEX4HTINPUTS +TEXCONFIG +TEXDOCEXT +TEXDOCHTML +TEXDOCS +TEXDOCSCOMPRESS +TEXDOCSSUFFIX +TEXFONTMAPS +TEXFORMATS +TEX_HUSH +TEXINPUTS +TEXMF +TEXMFCNF +TEXMFCONFIG +TEXMFDBS +TEXMFDIST +TEXMFHOME +TEXMFLOCAL +TEXMFMAIN +TEXMFSCRIPTS +TEXMFSYSCONFIG +TEXMFSYSVAR +TEXMFVAR +TEXPICTS +TEXPOOL +TEXPSHEADERS +TEXSOURCES +TFMFONTS +TRFONTS +TTFONTS +VARTEXFONTS +VFFONTS +WEB2C +WEBINPUTS