From e3813f8109b2a1a704ec02898a96bb15aef566ab Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 22 Jun 2007 17:44:35 +0000 Subject: texshade update git-svn-id: svn://tug.org/texlive/trunk@4493 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/texshade/README | 6 +- Master/texmf-dist/doc/latex/texshade/texshade.pdf | Bin 617054 -> 628139 bytes Master/texmf-dist/doc/latex/texshade/tsfaq.pdf | Bin 72967 -> 77546 bytes Master/texmf-dist/doc/latex/texshade/tsfaq.tex | 8 +- .../texmf-dist/source/latex/texshade/texshade.dtx | 607 ++++++++++++++++++--- Master/texmf-dist/tex/latex/texshade/texshade.def | 10 + Master/texmf-dist/tex/latex/texshade/texshade.sty | 352 +++++++++++- 7 files changed, 876 insertions(+), 107 deletions(-) (limited to 'Master') diff --git a/Master/texmf-dist/doc/latex/texshade/README b/Master/texmf-dist/doc/latex/texshade/README index 10db0a70f20..7f5f24c0a1c 100644 --- a/Master/texmf-dist/doc/latex/texshade/README +++ b/Master/texmf-dist/doc/latex/texshade/README @@ -1,4 +1,4 @@ - TeXshade v1.16 + TeXshade v1.17 >> >> A LaTeX package for setting nucleotide and peptide alignments. >> @@ -88,7 +88,7 @@ good test for this. (If you encounter problems texing the doc, you should tex and read section A of the FAQ-list (see d below) or download an on-line version [PDF-, DVI-, or PostScript format] at - http://www.pharmazie.uni-kiel.de/chem/Prof_Beitz/biotex.html) + http://homepages.uni-tuebingen.de/beitz/) The resulting file "texshade.dvi" can be viewed and printed using a DVI-viewer which is able to display embedded PostScript. Another @@ -125,7 +125,7 @@ 3 - CONTACT E-Mail: ebeitz@pharmazie.uni-kiel.de - WWW: www.pharmazie.uni-kiel.de/chem/Prof_Beitz/biotech.html + WWW: http://www.pharmazie.uni-kiel.de/chem/ (On-line documentation and updates) Address: Eric Beitz, University of Kiel, Pharmaceutical Chemistry, Gutenbergstrasse 76, D-24118 Kiel (Germany) diff --git a/Master/texmf-dist/doc/latex/texshade/texshade.pdf b/Master/texmf-dist/doc/latex/texshade/texshade.pdf index 8962949f95a..377a84ff478 100644 Binary files a/Master/texmf-dist/doc/latex/texshade/texshade.pdf and b/Master/texmf-dist/doc/latex/texshade/texshade.pdf differ diff --git a/Master/texmf-dist/doc/latex/texshade/tsfaq.pdf b/Master/texmf-dist/doc/latex/texshade/tsfaq.pdf index b427f881113..53b9b895288 100644 Binary files a/Master/texmf-dist/doc/latex/texshade/tsfaq.pdf and b/Master/texmf-dist/doc/latex/texshade/tsfaq.pdf differ diff --git a/Master/texmf-dist/doc/latex/texshade/tsfaq.tex b/Master/texmf-dist/doc/latex/texshade/tsfaq.tex index 94d6b73193d..0ab7a0ec378 100644 --- a/Master/texmf-dist/doc/latex/texshade/tsfaq.tex +++ b/Master/texmf-dist/doc/latex/texshade/tsfaq.tex @@ -5,24 +5,24 @@ \noindent -Eric Beitz \hfill February 2007 +Eric Beitz \hfill March 2005 \section*{\TeX{}shade: frequently asked questions } \bigskip This is the sixth update of the FAQ list for \TeX{}shade. Feel free to contact me if you have problems, questions or suggestions about the -package. I will post them and provide hints in +package. I will post them and provide hopefully helpful hints in future issues of this list. \bigskip \noindent -\qquad email: \texttt{ebeitz@pharmazie.uni-kiel.de} +\qquad email: \texttt{eric.beitz@uni-tuebingen.de} \smallskip \noindent \TeX{}shade: -\verb|www.pharmazie.uni-kiel.de/chem/Prof_Beitz/biotex.html| +\texttt{http://homepages.uni-tuebingen.de/beitz/tse.html} \subsection*{A. Increasing \TeX{}'s memory settings} diff --git a/Master/texmf-dist/source/latex/texshade/texshade.dtx b/Master/texmf-dist/source/latex/texshade/texshade.dtx index 8bbff957b77..67f26d001a0 100644 --- a/Master/texmf-dist/source/latex/texshade/texshade.dtx +++ b/Master/texmf-dist/source/latex/texshade/texshade.dtx @@ -283,6 +283,28 @@ % `www.pharmazie.uni-kiel.de/chem/' - click on `Beitz' % } % +% \changes{1.17}{2007-06-19}{% +% Introduction: `allmatchspecial' now accepts an optional threshold +% percentage allowing one to set two levels off +% conservation; +% the same effect can be achieved by using a +% number as an optional parameter in +% `shadingmode', +% or by setting an additional parameter in +% `threshold'; +% names can be displayed left or right of feature +% lines using: +% `showfeaturename', `showfeaturestylename'; +% `hidefeaturename', `hidefeaturestylename'; +% `hidefeaturenames', `hidefeaturestylenames'; +% the color of such names can be changed with +% `featurenamescolor' +% `featurestylenamescolor' +% font styles can be set as usual, e.g. +% `setsize{featurenames}{large}' or +% `featurestylenamesrm' etc. +% } +% % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -321,7 +343,7 @@ % for further information, updates and on-line documentation % see my homepage at % \texttt{www.pharmazie.uni-kiel.de/chem/} -- click on `Beitz'}} -% \date{v1.16; 2007/02/18\\} +% \date{v1.17; 2007/06/19\\} % \maketitle % \begin{abstract} % Setting alignments of nucleotides and peptides for publication @@ -398,7 +420,29 @@ % % \subsection{Version History} % -% \textbf{v1.16 2007/02/18} +% \textbf{v1.17 2007/06/19} +% \medskip +% +% \emph{Introduction:}\footnote{Asked for by Marat Kazanov.} +% (a) A second threshold percentage was introduced in order to label +% two levels of conservation in `identical' and `similar' mode. This is +% achieved by setting an optional parameter in |\threshold| or in +% |\allmatchspecial|, or by using a number as an optional parameter in +% |\shadingmode|. (b) The feature lines can be additionally labeled with +% a name left or right of the feature. This is handled using +% |\showfeaturename|, |\showfeaturestylename|, +% |\hidefeaturename|, |\hidefeaturestylename|, +% |\hidefeaturenames|, |\hidefeaturestylenames|. +% The color of such names can be changed with +% |\featurenamecolor|, |\featurestylenamecolor|, +% |\featurenamescolor|, |\featurestylenamescolor|, +% Font styles in feature names can be set as usual, e.g. +% |\setsize{featurenames}{large}| or +% |\featurestylenamesrm|, etc. +% \bigskip +% +% +% \textbf{v1.17 2007/06/19} % \medskip % % \emph{Correction:} \TeXshade{} crashed when calculating conservation @@ -916,7 +960,7 @@ % This basic type of shading is provided by almost any alignment % program. All identical residues at a position are shaded if the % number of matching residues is higher than a given threshold -% percentage.\medskip +% (default is 50\%).\medskip % % \begin{texshade}{AQPpro.MSF} % \setends{1}{80..112} @@ -934,16 +978,17 @@ % \end{verbatim} % } % -% If you like, positions where all residues are identical can be -% shaded in a special color and the consensus can be shown with +% If you like, positions where conservation is very high (here $\ge$ 80\%) can +% be shaded in a special color and the consensus can be shown with % or without shading according to the degree of conservation: % \medskip\label{shadecons} % % \begin{texshade}{AQPpro.MSF} -% \allmatchspecial +% \threshold[80]{50} % \setends{1}{80..112} % \showconsensus[ColdHot]{bottom} % \defconsensus{.}{lower}{upper} +% \showlegend % \end{texshade} % % Code:\medskip @@ -951,10 +996,11 @@ % \vbox{% % \begin{verbatim} % \begin{texshade}{AQPpro.MSF} -% \allmatchspecial +% \threshold[80]{50} % \setends{1}{80..112} % \showconsensus[ColdHot]{bottom} % \defconsensus{.}{lower}{upper} +% \showlegend % \end{texshade} % \end{verbatim}} % @@ -983,7 +1029,8 @@ % \medskip % % \begin{texshade}{AQPpro.MSF} -% \shadingmode[allmatchspecial]{similar} +% \shadingmode{similar} +% \threshold[80]{50} % \setends{1}{80..112} % \hideconsensus % \feature{top}{1}{93..93}{fill:$\downarrow$}{first case (see text)} @@ -995,7 +1042,8 @@ % \vbox{% % \begin{verbatim} % \begin{texshade}{AQPpro.MSF} -% \shadingmode[allmatchspecial]{similar} +% \shadingmode{similar} +% \threshold[80]{50} % \setends{1}{80..112} % \hideconsensus % \feature{top}{1}{93..93}{fill:$\downarrow$}{first case (see text)} @@ -1189,8 +1237,7 @@ % \end{texshade} % \end{verbatim}} % -% With |\shadeallresidues| \label{Lshadeallresidues} the -% threshold is ignored and +% With |\shadeallresidues| the threshold is ignored and % all residues are shaded due to their group assignment. % This is \emph{not} identical to a threshold of 0\% % where only the majority group would be shaded. See the @@ -1328,11 +1375,18 @@ % \begin{texshade}{AQPpro.MSF} % \setends{1}{138..170} % \feature{ttop}{1}{138..170}{bar:conservation}{} +% \showfeaturestylename{ttop}{conserv.} % \ttopspace{-\baselineskip} % \feature{top}{1}{138..170}{color:charge}{} +% \showfeaturestylename{top}{charge} % \feature{bottom}{1}{138..170}{color:molweight[ColdHot]}{} +% \showfeaturestylename{bottom}{weight} % \bbottomspace{-\baselineskip} % \feature{bbottom}{1}{138..170}{bar:hydrophobicity[Red,Gray10]}{} +% \showfeaturestylename{bbottom}{hydrophob.} +% \featurestylenamescolor{Red} +% \featurestylenamesrm +% \featurestylenamesit % \hideconsensus % \end{texshade} % @@ -1343,11 +1397,18 @@ % \begin{texshade}{AQPpro.MSF} % \setends{1}{138..170} % \feature{ttop}{1}{138..170}{bar:conservation}{} +% \showfeaturestylename{ttop}{conserv.} % \ttopspace{-\baselineskip} % \feature{top}{1}{138..170}{color:charge}{} +% \showfeaturestylename{top}{charge} % \feature{bottom}{1}{138..170}{color:molweight[ColdHot]}{} +% \showfeaturestylename{bottom}{weight} % \bbottomspace{-\baselineskip} % \feature{bbottom}{1}{138..170}{bar:hydrophobicity[Red,Gray10]}{} +% \showfeaturestylename{bbottom}{hydrophob.} +% \featurestylenamescolor{Red} +% \featurestylenamesrm +% \featurestylenamesit % \hideconsensus % \end{texshade} % \end{verbatim}} @@ -1420,6 +1481,9 @@ % aquaporin isoforms are most conserved. % \medskip % +% A fingerprint of charge distribution on different aquaporins is shown. +% below. Sequence gaps can be left blank (example above) or drawn as lines +% between the sequence blocks. % % \begin{texshade}{AQPpro.MSF} % \shadingmode[charge]{functional} @@ -1556,7 +1620,7 @@ % from the remaining four aquaporins of this alignment (upside-down). % The output can be directly compared to the sequence logo above, % which displays the same section of the alignment. -% Note, that five sequence are far too few to obtain meaningful +% Note, that five sequences are far too few to obtain meaningful % results with this method. This is just to illustrate the % approach. % \medskip @@ -1968,13 +2032,16 @@ % % \begin{enumerate} % -% \item |\shadingmode[|\meta{allmatchspecial}|]{identical}| +% \item |\shadingmode[|\meta{allmatchspecial/number}|]{identical}| % % There is not much to explain here (see \ref{ident}). Use the % option |allmatchspecial| to shade positions with a special color -% where all residues are identical. +% where all residues are identical. Or use a percentage number +% (0--100) as an option to set an additional threshold for highly +% conserved residues, e.\,g.\ |\shadingmode[90]{identical}|. % \label{Lallmatchspecial}|\allmatchspecial| can also be -% used as a command. As both, option or command +% used as a command with or without an optional parameter for +% setting the high conservation threshold. As both, option or command % |allmatchspecial| is only active in the \emph{identical} and % \emph{similar} shading modes. % @@ -1985,7 +2052,7 @@ % (used in the example, \ref{ident}), `reds', `greens', % `grays' and `black'. Default is |\shadingcolors{blues}|. Further, the colors % for the non matching, the -% conserved and all matching residues can be set individually +% conserved and all matching (or highly conserved) residues can be set individually % plus the letter case (lower or upper) or any character % can be chosen: \label{Lnomatchresidues} % \label{Lconservedresidues} @@ -2041,7 +2108,7 @@ % \bigskip % % -% \item |\shadingmode[|\meta{allmatchspecial}|]{similar}| +% \item |\shadingmode[|\meta{allmatchspecial/number}|]{similar}| % % \label{Lsimilarresidues} % See \ref{similar} for an example output and an explanation @@ -2072,7 +2139,7 @@ % % What happens if there is no consensus residue? How does % \TeXshade{} decide if a group of similars is greater than -% the threshold? Therefore groups are pre-defined: +% the threshold? For this groups are pre-defined: % % \quad |\pepgroups{FYW,ILVM,RK,DE,GA,ST,NQ}| This command allows % one to set up to nine groups of similars, separated by commas. @@ -2152,11 +2219,12 @@ % curly braces around the dot-symbol!). % % \item |\shadingmode[|\meta{type}|]{functional}|\label{funcdef} -% There are six different functional shading modes available for +% There are seven different functional shading modes available for % peptide sequences; nucleotide sequences can not be shaded due -% to functional aspects. Four of \TeXshade's functional modes +% to functional aspects. Five of \TeXshade's functional modes % correspond to the four `alphabets' employed by \textsc{Karlin} -% and \textsc{Ghandour} for peptide alignments [2]. Additional +% and \textsc{Ghandour} for peptide alignments [2] or by the +% rasmol software. Additional % `alphabets' to the standard 20-letter array of amino acids % can highlight peptide similarities which were otherwise not visible. % For the `alphabet' definitions see below: @@ -2238,6 +2306,10 @@ % as described for example in |\nomatchresidues|. % \end{enumerate} % +% With |\shadeallresidues| \label{Lshadeallresidues} the +% threshold is ignored and +% all residues are shaded due to their group assignment. +% % \subsection{Creating new functional shading modes} % % The grouping of amino acids due to other properties can make sense as @@ -2308,6 +2380,10 @@ % mode. Any percentage between 0 and 100 is allowed and can be % set with % |\threshold{|\meta{percentage}|}|, e.\,g.\ |\threshold{50}|. +% +% Additionally, an optional parameter can be set, e.\,g.\, +% |\threshold[90]{50}|, to label residues that are highly conserved +% in a special color (see example on page \pageref{ident}). % % \label{Lconstosingleseq} % Another possibility is to set one sequence of the alignment @@ -2386,8 +2462,9 @@ % \item |{}| (empty braces) for blank space % \end{itemize} % -% \item \meta{symbol3} = all match symbol (if all residues match and -% \hfill |\allmatchspecial| is active) +% \item \meta{symbol3} = highly conserved symbol (if +% +% \hfill|\allmatchspecial| is active) % % \begin{itemize} % \item see \meta{symbol2} @@ -2398,7 +2475,7 @@ % Example: |\defconsensus{{}}{*}{upper}| does not show non matching % residues in the consensus line, marks conserved residues % with `|*|', and displays the uppercase letter of the consensus -% residue at positions where all residues match. +% residue at positions with high conservation. % % % \label{Lconsensuscolors} @@ -2426,10 +2503,11 @@ % % \meta{shad.col.2} = conserved background color % -% \item \meta{res.col.3} = all match residue color (if all residues match and -% \hfill |\allmatchspecial| is active) +% \item \meta{res.col.3} = highly conserved residue color (if +% +% \hfill|\allmatchspecial| is active) % -% \meta{shad.col.3} = all match background color +% \meta{shad.col.3} = highly conserved background color % % \end{enumerate} % @@ -2441,8 +2519,8 @@ % \medskip % % Non matching symbol colors are not changed, -% conserved residues are displayed blue on white and where all residues -% match red symbols on green ground are displayed in the +% conserved residues are displayed blue on white and highly conserved residues +% appear as red symbols on a green background in the % consensus line. % % \subsection{Display of logos} @@ -3502,6 +3580,56 @@ % (|featurestyles|) or the in descriptive text line (|features|) % see section \ref{Lsetsize}, page \pageref{Lsetsize}. % +% Another set of commands can be used to set a name for a feature +% line, which is printed together with the sequence names at the +% left or right side of the alignment, i.\,e.\ +% \medskip +% +% \label{Lshowfeaturename} \label{Lshowfeaturestylename} +% \label{Lhidefeaturename} \label{Lhidefeaturestylename} +% \label{Lhidefeaturenames} \label{Lhidefeaturestylenames} +% \quad |\showfeaturename{|\meta{ttop/top/bottom/bbottom}|}{|\meta{name}|}|, +% \medskip +% +% \quad |\showfeaturestylename{|\meta{ttop/top/bottom/bbottom}|}{|\meta{name}|}| +% \medskip +% +% \quad |\hidefeaturename{|\meta{ttop/top/bottom/bbottom}|}| +% \medskip +% +% \quad |\hidefeaturestylename{|\meta{ttop/top/bottom/bbottom}|}| +% \medskip +% +% \quad |\hidefeaturenames|, and |\hidefeaturestylenames|. +% \medskip +% +% Using |\showfeaturename| will print the name in the same line as +% the descriptive text of the feature whereas | \showfeaturestylename| +% will put the name in the same line as the feature symbols. +% +% The color of such names can be generally changed with \label{Lfeaturenamescolor} +% \medskip +% +% \quad |\featurenamescolor{|\meta{color}|}| and \label{Lfeaturestylenamescolor} +% \medskip +% +% \quad |\featurestylenamescolor{|\meta{color}|}| +% \medskip +% +% or individually with \label{Lfeaturenamecolor} +% \medskip +% +% \quad |\featurenamecolor{|\meta{ttop/top/bottom/bbottom}|}{|\meta{color}|}| and \label{Lfeaturestylenamecolor} +% \medskip +% +% \quad |\featurestylenamecolor{|\meta{ttop/top/bottom/bbottom}|}{|\meta{color}|}| +% \medskip +% +% See section \ref{colors} for how to select colors in \TeX{}shade. +% +% Font styles can be set as usual, e.\,g.\ |\setsize{featurenames}{large}| or +% |\featurestylenamesrm| etc. (see section \ref{Lsetfamily}). +% % % Examples for the appearance of features are given in the % overview section (\ref{over}), see: @@ -3788,8 +3916,8 @@ % % \item |conserved| = the color used for conserved residues % -% \item |allmatch| = the color used for the case that all residues -% match (if |\allmatchspecial| is active) +% \item |allmatch| = the color used for highly conserved residues +% (if |\allmatchspecial| is active) % % \end{itemize} % @@ -3941,7 +4069,10 @@ % Corresponding sets are provided for the % numbering (|\numberingrm| etc.), % featurestyles (|featurestylesrm| etc.), names (|\namesrm| etc.), -% residues (|\residuesrm| etc.), hideblock labels (|hideblockrm| etc.), and +% featurenames (|\featurenamesrm| etc.), +% featurestylenames (|\featurestylenames| etc.), +% residues (|\residuesrm| etc.), +% hideblock labels (|hideblockrm| etc.), and % legend texts (|legendrm| etc.). % % @@ -4397,8 +4528,8 @@ % \begin{center} % \begin{tabular}{lll} % \meta{mode} & \meta{option} &\\ \hline -% |identical| & |allmatchspecial| &\\ -% |similar| & |allmatchspecial| &\\ +% |identical| & |allmatchspecial/number| &\\ +% |similar| & |allmatchspecial/number| &\\ % |diverse| & \meta{seqref} &\\ % |functional|& \meta{type} & |charge| \\ % & & |hydropathy| \\ @@ -4411,6 +4542,9 @@ % \end{center} % \medskip % +% \quad|\allmatchspecial[|\meta{percentage}|]| +% \hfill[\pageref{Lallmatchspecial}] +% % \quad|\shadeallresidues| % \hfill[\pageref{Lshadeallresidues}] % @@ -4469,7 +4603,7 @@ % \textbf{Appearance of the consensus line} % \medskip % -% \quad|\threshold{|\meta{percentage}|}| +% \quad|\threshold[|\meta{percentage}|]{|\meta{percentage}|}| % \hfill[\pageref{Lthreshold}] % % \quad|\constosingleseq{|\meta{seqref}|}| @@ -4861,6 +4995,36 @@ % \> = |{vertical}| % \end{tabbing} % +% \quad |\showfeaturename{|\meta{ttop/top/bottom/bbottom}|}{|\meta{name}|}| +% \hfill[\pageref{Lshowfeaturename}] +% +% \quad |\showfeaturestylename{|\meta{ttop/\ldots/bbottom}|}{|\meta{name}|}| +% \hfill[\pageref{Lshowfeaturestylename}] +% +% \quad |\hidefeaturename{|\meta{ttop/top/bottom/bbottom}|}| +% \hfill[\pageref{Lhidefeaturename}] +% +% \quad |\hidefeaturestylename{|\meta{ttop/top/bottom/bbottom}|}| +% \hfill[\pageref{Lhidefeaturestylename}] +% +% \quad |\hidefeaturenames| +% \hfill[\pageref{Lhidefeaturenames}] +% +% \quad|\hidefeaturestylenames| +% \hfill[\pageref{Lhidefeaturestylenames}] +% +% \quad |\featurenamescolor{|\meta{color}|}| +% \hfill[\pageref{Lfeaturenamescolor}] +% +% \quad |\featurestylenamescolor{|\meta{color}|}| +% \hfill[\pageref{Lfeaturestylenamescolor}] +% +% \quad |\featurenamecolor{|\meta{ttop/top/bottom/bbottom}|}{|\meta{color}|}| +% \hfill[\pageref{Lfeaturenamecolor}] +% +% \quad |\featurestylenamecolor{|\meta{ttop/\ldots/bbottom}|}{|\meta{color}|}| +% \hfill[\pageref{Lfeaturestylenamecolor}] +% % \vspace{1.5\baselineskip} % % @@ -4938,7 +5102,6 @@ % % \vspace{1.5\baselineskip} % -% \newpage % % \textbf{Displaying and building legends} % \medskip @@ -5019,7 +5182,10 @@ % Corresponding sets are provided for the % numbering (|\numberingrm| etc.), % featurestyles (|featurestylesrm| etc.), names (|\namesrm| etc.), -% residues (|\residuesrm| etc.) and +% featurenames (|\featurenamesrm| etc.), +% featurestylenames (|\featurestylenames| etc.), +% residues (|\residuesrm| etc.), +% hideblock labels (|hideblockrm| etc.), and % legend texts (|legendrm| etc.). % \bigskip % @@ -5105,11 +5271,11 @@ % \begin{macrocode} %<*driver> \documentclass[12pt,a4paper]{ltxdoc} -\usepackage{texshade} +\usepackage[dvips]{texshade} \openin\structurefile = hyperref.sty \ifeof\structurefile \else - \usepackage[colorlinks]{hyperref} + \usepackage[dvips,colorlinks]{hyperref} \fi \closein\structurefile \DisableCrossrefs @@ -5126,8 +5292,8 @@ % \begin{macrocode} %<*texshade> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{texshade}[2007/02/18 LaTeX TeXshade (v1.16)] -\message{Package `texshade', Version 1.16 of 2007/02/18.} +\ProvidesPackage{texshade}[2007/06/19 LaTeX TeXshade (v1.17)] +\message{Package `texshade', Version 1.17 of 2007/06/19.} \PassOptionsToPackage{dvips}{color} \PassOptionsToPackage{dvips}{graphicx} @@ -9144,6 +9310,12 @@ \fi\fi\fi \fi } +\def\showfeaturename#1#2{\expandafter\xdef\csname featuretextn@me#1\endcsname{#2}} +\def\showfeaturestylename#1#2{\expandafter\xdef\csname featurestylesn@me#1\endcsname{#2}} +\def\hidefeaturename#1{\expandafter\xdef\csname featuretextn@me#1\endcsname{}} +\def\hidefeaturenames{\xdef\featuretextn@mettop{}\xdef\featuretextn@metop{}\xdef\featuretextn@mebottom{}\xdef\featuretextn@mebbottom{}} +\def\hidefeaturestylename#1{\expandafter\xdef\csname featurestylesn@me#1\endcsname{}} +\def\hidefeaturestylenames{\xdef\featurestylesn@mettop{}\xdef\featurestylesn@metop{}\xdef\featurestylesn@mebottom{}\xdef\featurestylesn@mebbottom{}} \def\seqtype#1{\xdef\seq@type{#1} \if\seq@type P \xdef\prefix@{pep} \else \if\seq@type p \xdef\seq@type{P} \xdef\prefix@{pep} @@ -9153,7 +9325,21 @@ \xdef\first@{#1} \ifletter \get@name@number \fi \expandafter\xdef\csname newseqname\first@\endcsname{#2} } -\def\threshold#1{\xdef\thresh@ld{#1}} +\newcommand\threshold[2][n]{% + \xdef\first@{#1} + \ifx\first@\n@ + \xdef\thresh@ld{#2} + \else + \all@shadetrue + \ifnum\first@>#2 + \xdef\thresh@ld{#2} + \xdef\all@thresh@ld{#1} + \else + \xdef\thresh@ld{#1} + \xdef\all@thresh@ld{#2} + \fi + \fi +} \def\constosingleseq#1{% \xdef\first@{#1 @} \expandafter\check@letter\first@ \xdef\first@{#1} \ifletter \get@name@number \fi @@ -9213,20 +9399,45 @@ \xdef\seq@gap@num{\the\loopcount} \fi \fi} -\newcommand{\shadingmode}[2][1]{% +\newcommand{\shadingmode}[2][-1]{% \xdef\last@{#2} \xdef\first@{identical} - \all@shadefalse \ifx\first@\last@ \simmodefalse \funcmodefalse - \xdef\last@{#1} \xdef\second@{allmatchspecial} - \ifx\second@\last@ \all@shadetrue \fi + \xdef\second@{#1 @} \expandafter\check@letter\second@ + \ifnumber \all@shadetrue + \ifnum#1<0 \all@shadefalse + \else + \ifnum#1>100 \xdef\all@thresh@ld{100} + \else + \xdef\all@thresh@ld{#1} + \fi\fi + \else + \xdef\last@{#1} + \xdef\first@{allmatchspecial} + \ifx\last@\first@ + \xdef\all@thresh@ld{100} \all@shadetrue + \fi + \fi \else \xdef\first@{similar} \ifx\first@\last@ \simmodetrue \funcmodefalse - \xdef\last@{#1} \xdef\second@{allmatchspecial} - \ifx\second@\last@ \all@shadetrue \fi + \xdef\second@{#1 @} \expandafter\check@letter\second@ + \ifnumber \all@shadetrue + \ifnum#1<0 \all@shadefalse + \else + \ifnum#1>100 \xdef\all@thresh@ld{100} + \else + \xdef\all@thresh@ld{#1} + \fi\fi + \else + \xdef\last@{#1} + \xdef\first@{allmatchspecial} + \ifx\last@\first@ + \xdef\all@thresh@ld{100} \all@shadetrue + \fi + \fi \else \xdef\first@{functional} \ifx\first@\last@ @@ -9253,7 +9464,16 @@ \message{} \simmodetrue \funcmodefalse \fi\fi\fi\fi} -\def\allmatchspecial{\all@shadetrue} +\newcommand\allmatchspecial[1][100]{% + \ifnum#1<0 + \xdef\all@thresh@ld{0} + \else + \ifnum#1>100 + \xdef\all@thresh@ld{100} + \else + \xdef\all@thresh@ld{#1} + \fi\fi + \all@shadetrue} \def\allmatchspecialoff{\all@shadefalse} \def\gapchar#1{% \xdef\first@{rule}\xdef\second@{#1} @@ -9706,6 +9926,12 @@ \else \xdef\third@{\second@} \fi\fi\fi + \xdef\temp@{featurenames} + \ifx\first@\temp@ \xdef\ftext@family{\third@} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ \xdef\fstyles@family{\third@} + \else \xdef\temp@{features} \ifx\first@\temp@ \xdef\featuretext@family{\third@} \else @@ -9735,6 +9961,8 @@ \else \xdef\temp@{all} \ifx\first@\temp@ + \xdef\ftext@family{\third@} + \xdef\fstyles@family{\third@} \xdef\featuretext@family{\third@} \xdef\featurestyles@family{\third@} \xdef\numbertext@family{\third@} @@ -9744,7 +9972,7 @@ \xdef\label@family{\third@} \xdef\hideblock@family{\third@} \xdef\ruler@family{\second@} - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi } \def\setseries#1#2{% @@ -9763,6 +9991,12 @@ \else \xdef\third@{\second@} \fi\fi + \xdef\temp@{featurenames} + \ifx\first@\temp@ \xdef\ftext@series{\third@} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ \xdef\fstyles@series{\third@} + \else \xdef\temp@{features} \ifx\first@\temp@ \xdef\featuretext@series{\third@} \else @@ -9789,6 +10023,8 @@ \else \xdef\temp@{all} \ifx\first@\temp@ + \xdef\ftext@series{\third@} + \xdef\fstyles@series{\third@} \xdef\featuretext@series{\third@} \xdef\featurestyles@series{\third@} \xdef\numbertext@series{\third@} @@ -9797,7 +10033,7 @@ \xdef\legend@series{\third@} \xdef\hideblock@series{\third@} \xdef\label@series{\third@} - \fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi } \def\setshape#1#2{% @@ -9824,6 +10060,12 @@ \else \xdef\third@{\second@} \fi\fi\fi\fi + \xdef\temp@{featurenames} + \ifx\first@\temp@ \xdef\ftext@shape{\third@} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ \xdef\fstyles@shape{\third@} + \else \xdef\temp@{features} \ifx\first@\temp@ \xdef\featuretext@shape{\third@} \else @@ -9850,6 +10092,8 @@ \else \xdef\temp@{all} \ifx\first@\temp@ + \xdef\ftext@shape{\third@} + \xdef\fstyles@shape{\third@} \xdef\featuretext@shape{\third@} \xdef\featurestyles@shape{\third@} \xdef\numbertext@shape{\third@} @@ -9858,7 +10102,7 @@ \xdef\legend@shape{\third@} \xdef\hideblock@shape{\third@} \xdef\label@shape{\third@} - \fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi } \def\setsize#1#2{% @@ -9874,6 +10118,14 @@ \ifx\first@\temp@ \def\featurestyles@size{\csname #2\endcsname} \else + \xdef\temp@{featurenames} + \ifx\first@\temp@ + \def\ftext@size{\csname #2\endcsname} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ + \def\fstyles@size{\csname #2\endcsname} + \else \xdef\temp@{numbering} \ifx\first@\temp@ \def\numbertext@size{\csname #2\endcsname} @@ -9913,6 +10165,8 @@ \ifx\first@\temp@ \def\featuretext@size{\csname #2\endcsname} \def\featurestyles@size{\csname #2\endcsname} + \def\ftext@size{\csname #2\endcsname} + \def\fstyles@size{\csname #2\endcsname} \def\numbertext@size{\csname #2\endcsname} \def\namestext@size{\csname #2\endcsname} \def\legend@size{\csname #2\endcsname} @@ -9920,7 +10174,7 @@ \def\label@size{\csname #2\endcsname} \def\residues@size{\csname #2\endcsname} \xdef\res@size{#2} - \fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \xdef\temp@{Huge} \ifx\temp@\res@size \def\bottomruler@size{\csname Large\endcsname} @@ -9952,6 +10206,44 @@ \def\setfont#1#2#3#4#5{% \setfamily{#1}{#2}\setseries{#1}{#3} \setshape{#1}{#4}\setsize{#1}{#5}} +\def\featurenamesrm{\setfamily{featurenames}{rm}} +\def\featurenamessf{\setfamily{featurenames}{sf}} +\def\featurenamestt{\setfamily{featurenames}{tt}} +\def\featurenamesmd{\setseries{featurenames}{md}} +\def\featurenamesbf{\setseries{featurenames}{bf}} +\def\featurenamesup{\setshape {featurenames}{up}} +\def\featurenamesit{\setshape {featurenames}{it}} +\def\featurenamessl{\setshape {featurenames}{sl}} +\def\featurenamessc{\setshape {featurenames}{sc}} +\def\featurenamestiny {\setsize{featurenames}{tiny}} +\def\featurenamesscriptsize {\setsize{featurenames}{scriptsize}} +\def\featurenamesfootnotesize{\setsize{featurenames}{footnotesize}} +\def\featurenamessmall {\setsize{featurenames}{small}} +\def\featurenamesnormalsize {\setsize{featurenames}{normalsize}} +\def\featurenameslarge {\setsize{featurenames}{large}} +\def\featurenamesLarge {\setsize{featurenames}{Large}} +\def\featurenamesLARGE {\setsize{featurenames}{LARGE}} +\def\featurenameshuge {\setsize{featurenames}{huge}} +\def\featurenamesHuge {\setsize{featurenames}{Huge}} +\def\featurestylenamesrm{\setfamily{featurestylenames}{rm}} +\def\featurestylenamessf{\setfamily{featurestylenames}{sf}} +\def\featurestylenamestt{\setfamily{featurestylenames}{tt}} +\def\featurestylenamesmd{\setseries{featurestylenames}{md}} +\def\featurestylenamesbf{\setseries{featurestylenames}{bf}} +\def\featurestylenamesup{\setshape {featurestylenames}{up}} +\def\featurestylenamesit{\setshape {featurestylenames}{it}} +\def\featurestylenamessl{\setshape {featurestylenames}{sl}} +\def\featurestylenamessc{\setshape {featurestylenames}{sc}} +\def\featurestylenamestiny {\setsize{featurestylenames}{tiny}} +\def\featurestylenamesscriptsize {\setsize{featurestylenames}{scriptsize}} +\def\featurestylenamesfootnotesize{\setsize{featurestylenames}{footnotesize}} +\def\featurestylenamessmall {\setsize{featurestylenames}{small}} +\def\featurestylenamesnormalsize {\setsize{featurestylenames}{normalsize}} +\def\featurestylenameslarge {\setsize{featurestylenames}{large}} +\def\featurestylenamesLarge {\setsize{featurestylenames}{Large}} +\def\featurestylenamesLARGE {\setsize{featurestylenames}{LARGE}} +\def\featurestylenameshuge {\setsize{featurestylenames}{huge}} +\def\featurestylenamesHuge {\setsize{featurestylenames}{Huge}} \def\featuresrm{\setfamily{features}{rm}} \def\featuressf{\setfamily{features}{sf}} \def\featurestt{\setfamily{features}{tt}} @@ -10198,14 +10490,36 @@ \else \ifx\third@\first@\white@box\else\textcolor{\third@}{\box@rule}\fi \fi\fi\fi\fi} +\def\featurenamescolor#1{% + \expandafter\xdef\csname ftext@fg@ttop\endcsname{#1} + \expandafter\xdef\csname ftext@fg@top\endcsname{#1} + \expandafter\xdef\csname ftext@fg@bottom\endcsname{#1} + \expandafter\xdef\csname ftext@fg@bbottom\endcsname{#1} +} +\def\featurestylenamescolor#1{% + \expandafter\xdef\csname fstyles@fg@ttop\endcsname{#1} + \expandafter\xdef\csname fstyles@fg@top\endcsname{#1} + \expandafter\xdef\csname fstyles@fg@bottom\endcsname{#1} + \expandafter\xdef\csname fstyles@fg@bbottom\endcsname{#1} +} +\def\featurenamecolor#1#2{\expandafter\xdef\csname ftext@fg@#1\endcsname{#2}} +\def\featurestylenamecolor#1#2{\expandafter\xdef\csname fstyles@fg@#1\endcsname{#2}} \def\namescolor#1{\xdef\names@fg{#1}} \def\namecolor#1#2{% \xdef\first@{consensus} \xdef\second@{#1} \ifx\first@\second@ \expandafter\xdef\csname name@col0\endcsname{#2} + \else + \xdef\first@{featurenames} \xdef\second@{#1} + \ifx\first@\second@ + \xdef\ftext@fg{#2} + \else + \xdef\first@{featurestylenames} \xdef\second@{#1} + \ifx\first@\second@ + \xdef\fstyles@fg{#2} \else \xdef\first@{#1,&,@} \xdef\third@{#2} \namecolor@ - \fi + \fi\fi\fi } \def\numberingcolor#1{\xdef\numbering@fg{#1}} \def\numbercolor#1#2{% @@ -10703,7 +11017,11 @@ \else \expandafter\ifnum\csname pos\the\loopcount\endcsname>\m@x \xdef\m@x{\csname pos\the\loopcount\endcsname} - \xdef\cons@seq{\the\loopcount} \xdef\match@case{1} + \expandafter\ifnum\csname pos\the\loopcount\endcsname<\all@thresh@ld + \xdef\cons@seq{\the\loopcount} \xdef\match@case{1} + \else + \xdef\cons@seq{\the\loopcount} \xdef\match@case{2} + \fi \else \expandafter\ifnum\csname pos\the\loopcount\endcsname=\m@x \xdef\match@case{0} @@ -11134,13 +11452,14 @@ \xdef\constopo{\constopo 2}} \def\allm@tch{% - \ifall@shade \xdef\third@{0} \else \xdef\third@{1} \fi + \xdef\tmp@{\csname res\cons@seq\endcsname} \loopcount=0 \loop \advance\loopcount by 1 \xdef\first@{noshade} \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\first@ \xdef\first@{\csname res\the\loopcount\endcsname} + \ifx\first@\d@t\def\first@{\gap@char}\fi \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n} \xdef\first@{=\first@}\fi @@ -11151,11 +11470,60 @@ \csname seq\the\loopcount\endcsname% 3\first@} \else + \xdef\second@{\csname res\the\loopcount\endcsname} + \ifx\tmp@\second@ + \ifall@shade \xdef\third@{0} \else \xdef\third@{1} \fi + \else + \xdef\third@{3} + \ifsimmode + \xdef\last@{\csname \prefix@ sim\tmp@\endcsname &@} + \expandafter\get@count\last@ + \innerloopcount=0 \getsim@char + \fi + \fi \xdef\first@{\csname res\the\loopcount\endcsname} + \ifcase\third@ \ifnum\divref@=\loopcount\else \xdef\low@up{lower} \ifx\res@llm@tch\low@up \make@lower \else \xdef\low@up{upper} \ifx\res@llm@tch\low@up \else \xdef\first@{\res@llm@tch} \fi\fi\fi + \or + \ifnum\divref@=\loopcount\else + \xdef\low@up{lower} \ifx\res@llm@tch\low@up \make@lower \else + \xdef\low@up{upper} \ifx\res@llm@tch\low@up + \else \xdef\first@{\res@llm@tch} \fi\fi\fi + \or + \ifnum\divref@=\loopcount\else + \xdef\low@up{lower} \ifx\ressimm@tch\low@up \make@lower \else + \xdef\low@up{upper} \ifx\ressimm@tch\low@up + \else \xdef\first@{\ressimm@tch} \fi\fi\fi + \else + \ifnum\divref@=\loopcount\else + \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else + \xdef\low@up{upper} \ifx\resn@m@tch\low@up + \else \xdef\first@{\resn@m@tch} \fi\fi\fi + \fi + \ifx\first@\d@t + \expandafter\ifnum\csname res@count\the\loopcount\endcsname% + <\csname seq@start\the\loopcount\endcsname + \ifsh@wg@ps + \def\first@{\gap@char}\def\third@{7} + \else + \def\first@{{}} \def\third@{8} + \fi + \else + \expandafter\ifnum\csname res@count\the\loopcount\endcsname% + <\csname seq@len\the\loopcount\endcsname + \def\third@{7}\def\first@{\gap@char} + \else + \ifsh@wg@ps + \def\first@{\gap@char}\def\third@{7} + \else + \def\first@{{}} \def\third@{8} + \fi + \fi + \fi + \fi \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n} \xdef\first@{=\first@}\fi @@ -11163,7 +11531,7 @@ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n} \xdef\first@{,\first@}\fi \expandafter\xdef\csname seq\the\loopcount\endcsname{% - \csname seq\the\loopcount\endcsname\third@\first@} + \csname seq\the\loopcount\endcsname\third@\first@} \fi \ifnum\loopcount<\seq@count \repeat \xdef\first@{\csname res\cons@seq\endcsname} @@ -13238,7 +13606,7 @@ \def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\third@}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \kern2ex\textcolor{\legend@fg}{% \legend@size{\csname fgroup@name\the\loopcount\endcsname}} \newline\hbox{}% @@ -13254,7 +13622,7 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\resn@m@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextNomatch}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \textcolor{\legend@fg}{% \ifgerm@n\kern2ex\legend@size{nicht konserviert}% \else\ifsp@nish\kern2ex\legend@size{no conservado}% @@ -13269,7 +13637,7 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\ressimm@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextSimilar}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \textcolor{\legend@fg}{% \ifgerm@n\kern2ex\legend@size{\"ahnlich}% \else\ifsp@nish\kern2ex\legend@size{similar}% @@ -13284,11 +13652,11 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\resm@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextIdentical}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \textcolor{\legend@fg}{% - \ifgerm@n\kern2ex\legend@size{konserviert}% - \else\ifsp@nish\kern2ex\legend@size{conservado}% - \else\kern2ex\legend@size{conserved}\fi\fi} + \ifgerm@n\kern2ex\legend@size{$\ge$\,\thresh@ld\% konserviert}% + \else\ifsp@nish\kern2ex\legend@size{$\ge$\,\thresh@ld\% conservado}% + \else\kern2ex\legend@size{$\ge$\,\thresh@ld\% conserved}\fi\fi} \newline\hbox{}\noindent% \ifall@shade% \ifnames@\ifnames@right\else\hbox to \name@width{\hss}\fi\fi @@ -13299,11 +13667,18 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\res@llm@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextAllmatch}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% + \ifnum\all@thresh@ld=100 \textcolor{\legend@fg}{% \ifgerm@n\kern2ex\legend@size{alle identisch}% \else\ifsp@nish\kern2ex\legend@size{todos id\'enticos}% \else\kern2ex\legend@size{all match}\fi\fi} + \else + \textcolor{\legend@fg}{% + \ifgerm@n\kern2ex\legend@size{$\ge$\,\all@thresh@ld\% konserviert}% + \else\ifsp@nish\kern2ex\legend@size{$\ge$\,\all@thresh@ld\% conservado}% + \else\kern2ex\legend@size{$\ge$\,\all@thresh@ld\% conserved}\fi\fi} + \fi \newline\hbox{}\noindent \fi \fi @@ -14096,7 +14471,6 @@ } \def\next@featuretext#2;#3@{% \xdef\first@{#3@}% -% \xdef\last@{#2::&}\expandafter\test@fill\last@% \xdef\last@{fill:#2:&}\expandafter\test@fill\last@% \ifx\f@color\comm@\xdef\f@color{Black}\fi% \fontfamily{\featuretext@family}% @@ -14166,6 +14540,7 @@ \textcolor{\f@color}{% \hbox to #1\box@width{\hss\featuretext@size{\strut\fourth@}\hss}}% \fi% + \advance\loopcount by -#1% } \def\put@featuretext{% \if\first@ @% @@ -14181,6 +14556,7 @@ \hbox to \second@\box@width% {\hss\expandafter\putfeature@style{\first@}\hss}\fi% \xdef\first@{#3@}% + \advance\loopcount by -\second@% } \def\put@featurestyle{% \if\first@ @% @@ -14192,35 +14568,104 @@ \def\put@feature{% \vspace{-\baselineskip}% \newline\hbox{}% - \ifnames@right\else\ifnames@\hbox to \name@width{\hss}\fi\fi% - \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\temp@{ttop}% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname textfeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featuretext% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% \else% \xdef\temp@{top}% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname textfeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featuretext% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% \else + \ifnames@right\else\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname stylefeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featurestyle% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% \fi\fi% \newline\hbox{}% - \ifnames@right\else\ifnames@\hbox to \name@width{\hss}\fi\fi% - \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname stylefeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featurestyle% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% \else% \xdef\temp@{ttop}% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname stylefeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featurestyle% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% \else + \ifnames@right\else\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname textfeature\bottop@\endcsname @}% + \xdef\first@{\csname textfeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featuretext% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% \fi\fi% \newline\hbox{}% } @@ -15836,6 +16281,8 @@ \xdef\hide@true{n} \xdef\hide@now{n} \xdef\hide@label{circ} \xdef\divref@{0} +\xdef\all@thresh@ld{100} \all@shadefalse +\hidefeaturenames \hidefeaturestylenames %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%% %%%%% @@ -15871,6 +16318,8 @@ \numberingcolor{Black} % Numbering color is `Black' \shownumbering{right} % Show sequence numbering on the left \namescolor{Black} % Names' color is `Black' +\featurenamescolor{Black} % Feature names' color is `Black' +\featurestylenamescolor{Black} % Feature names' color is `Black' \shownames{left} % Show sequence names on the right \consensuscolors{Black}{White} % All consensus symbols/letters {Black}{White} % appear `Black on White' @@ -15911,6 +16360,14 @@ \setseries{names}{md} % Use normal series for names \setshape {names}{up} % Use upright shape for names \setsize {names}{normalsize} % Use normal size for names +\setfamily{featurenames}{tt} % Use typewriter family for feature names +\setseries{featurenames}{md} % Use normal series for feature names +\setshape {featurenames}{up} % Use upright shape for feature names +\setsize {featurenames}{normalsize}% Use normal size for feature names +\setfamily{featurestylenames}{tt} % Use typewriter family for feature style names +\setseries{featurestylenames}{md} % Use normal series for feature style names +\setshape {featurestylenames}{up} % Use upright shape for feature style names +\setsize {featurestylenames}{normalsize}% Use normal size for feature style names \setfamily{features}{rm} % Use roman family for feature texts \setseries{features}{md} % Use normal series for feature texts \setshape {features}{it} % Use italics shape for feature texts @@ -16062,6 +16519,8 @@ \numberingcolor{Black} % Numbering color is `Black' \shownumbering{right} % Show sequence numbering on the left \namescolor{Black} % Names' color is `Black' +\featurenamescolor{Black} % Feature names' color is `Black' +\featurestylenamescolor{Black} % Feature names' color is `Black' \shownames{left} % Show sequence names on the right \consensuscolors{Black}{White} % All consensus symbols/letters {Black}{White} % appear `Black on White' @@ -16102,6 +16561,14 @@ \setseries{names}{md} % Use normal series for names \setshape {names}{up} % Use upright shape for names \setsize {names}{normalsize} % Use normal size for names +\setfamily{featurenames}{tt} % Use typewriter family for feature names +\setseries{featurenames}{md} % Use normal series for feature names +\setshape {featurenames}{up} % Use upright shape for feature names +\setsize {featurenames}{normalsize}% Use normal size for feature names +\setfamily{featurestylenames}{tt} % Use typewriter family for feature style names +\setseries{featurestylenames}{md} % Use normal series for feature style names +\setshape {featurestylenames}{up} % Use upright shape for feature style names +\setsize {featurestylenames}{normalsize}% Use normal size for feature style names \setfamily{features}{rm} % Use roman family for feature texts \setseries{features}{md} % Use normal series for feature texts \setshape {features}{it} % Use italics shape for feature texts diff --git a/Master/texmf-dist/tex/latex/texshade/texshade.def b/Master/texmf-dist/tex/latex/texshade/texshade.def index b9c55582a77..2de06346a09 100644 --- a/Master/texmf-dist/tex/latex/texshade/texshade.def +++ b/Master/texmf-dist/tex/latex/texshade/texshade.def @@ -35,6 +35,8 @@ \numberingcolor{Black} % Numbering color is `Black' \shownumbering{right} % Show sequence numbering on the left \namescolor{Black} % Names' color is `Black' +\featurenamescolor{Black} % Feature names' color is `Black' +\featurestylenamescolor{Black} % Feature names' color is `Black' \shownames{left} % Show sequence names on the right \consensuscolors{Black}{White} % All consensus symbols/letters {Black}{White} % appear `Black on White' @@ -75,6 +77,14 @@ \setseries{names}{md} % Use normal series for names \setshape {names}{up} % Use upright shape for names \setsize {names}{normalsize} % Use normal size for names +\setfamily{featurenames}{tt} % Use typewriter family for feature names +\setseries{featurenames}{md} % Use normal series for feature names +\setshape {featurenames}{up} % Use upright shape for feature names +\setsize {featurenames}{normalsize}% Use normal size for feature names +\setfamily{featurestylenames}{tt} % Use typewriter family for feature style names +\setseries{featurestylenames}{md} % Use normal series for feature style names +\setshape {featurestylenames}{up} % Use upright shape for feature style names +\setsize {featurestylenames}{normalsize}% Use normal size for feature style names \setfamily{features}{rm} % Use roman family for feature texts \setseries{features}{md} % Use normal series for feature texts \setshape {features}{it} % Use italics shape for feature texts diff --git a/Master/texmf-dist/tex/latex/texshade/texshade.sty b/Master/texmf-dist/tex/latex/texshade/texshade.sty index 792807ef473..77a390d1fc3 100644 --- a/Master/texmf-dist/tex/latex/texshade/texshade.sty +++ b/Master/texmf-dist/tex/latex/texshade/texshade.sty @@ -13,8 +13,8 @@ %% \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{texshade}[2007/02/18 LaTeX TeXshade (v1.16)] -\message{Package `texshade', Version 1.16 of 2007/02/18.} +\ProvidesPackage{texshade}[2007/06/19 LaTeX TeXshade (v1.17)] +\message{Package `texshade', Version 1.17 of 2007/06/19.} \PassOptionsToPackage{dvips}{color} \PassOptionsToPackage{dvips}{graphicx} @@ -4027,6 +4027,12 @@ \fi\fi\fi \fi } +\def\showfeaturename#1#2{\expandafter\xdef\csname featuretextn@me#1\endcsname{#2}} +\def\showfeaturestylename#1#2{\expandafter\xdef\csname featurestylesn@me#1\endcsname{#2}} +\def\hidefeaturename#1{\expandafter\xdef\csname featuretextn@me#1\endcsname{}} +\def\hidefeaturenames{\xdef\featuretextn@mettop{}\xdef\featuretextn@metop{}\xdef\featuretextn@mebottom{}\xdef\featuretextn@mebbottom{}} +\def\hidefeaturestylename#1{\expandafter\xdef\csname featurestylesn@me#1\endcsname{}} +\def\hidefeaturestylenames{\xdef\featurestylesn@mettop{}\xdef\featurestylesn@metop{}\xdef\featurestylesn@mebottom{}\xdef\featurestylesn@mebbottom{}} \def\seqtype#1{\xdef\seq@type{#1} \if\seq@type P \xdef\prefix@{pep} \else \if\seq@type p \xdef\seq@type{P} \xdef\prefix@{pep} @@ -4036,7 +4042,21 @@ \xdef\first@{#1} \ifletter \get@name@number \fi \expandafter\xdef\csname newseqname\first@\endcsname{#2} } -\def\threshold#1{\xdef\thresh@ld{#1}} +\newcommand\threshold[2][n]{% + \xdef\first@{#1} + \ifx\first@\n@ + \xdef\thresh@ld{#2} + \else + \all@shadetrue + \ifnum\first@>#2 + \xdef\thresh@ld{#2} + \xdef\all@thresh@ld{#1} + \else + \xdef\thresh@ld{#1} + \xdef\all@thresh@ld{#2} + \fi + \fi +} \def\constosingleseq#1{% \xdef\first@{#1 @} \expandafter\check@letter\first@ \xdef\first@{#1} \ifletter \get@name@number \fi @@ -4096,20 +4116,45 @@ \xdef\seq@gap@num{\the\loopcount} \fi \fi} -\newcommand{\shadingmode}[2][1]{% +\newcommand{\shadingmode}[2][-1]{% \xdef\last@{#2} \xdef\first@{identical} - \all@shadefalse \ifx\first@\last@ \simmodefalse \funcmodefalse - \xdef\last@{#1} \xdef\second@{allmatchspecial} - \ifx\second@\last@ \all@shadetrue \fi + \xdef\second@{#1 @} \expandafter\check@letter\second@ + \ifnumber \all@shadetrue + \ifnum#1<0 \all@shadefalse + \else + \ifnum#1>100 \xdef\all@thresh@ld{100} + \else + \xdef\all@thresh@ld{#1} + \fi\fi + \else + \xdef\last@{#1} + \xdef\first@{allmatchspecial} + \ifx\last@\first@ + \xdef\all@thresh@ld{100} \all@shadetrue + \fi + \fi \else \xdef\first@{similar} \ifx\first@\last@ \simmodetrue \funcmodefalse - \xdef\last@{#1} \xdef\second@{allmatchspecial} - \ifx\second@\last@ \all@shadetrue \fi + \xdef\second@{#1 @} \expandafter\check@letter\second@ + \ifnumber \all@shadetrue + \ifnum#1<0 \all@shadefalse + \else + \ifnum#1>100 \xdef\all@thresh@ld{100} + \else + \xdef\all@thresh@ld{#1} + \fi\fi + \else + \xdef\last@{#1} + \xdef\first@{allmatchspecial} + \ifx\last@\first@ + \xdef\all@thresh@ld{100} \all@shadetrue + \fi + \fi \else \xdef\first@{functional} \ifx\first@\last@ @@ -4136,7 +4181,16 @@ \message{} \simmodetrue \funcmodefalse \fi\fi\fi\fi} -\def\allmatchspecial{\all@shadetrue} +\newcommand\allmatchspecial[1][100]{% + \ifnum#1<0 + \xdef\all@thresh@ld{0} + \else + \ifnum#1>100 + \xdef\all@thresh@ld{100} + \else + \xdef\all@thresh@ld{#1} + \fi\fi + \all@shadetrue} \def\allmatchspecialoff{\all@shadefalse} \def\gapchar#1{% \xdef\first@{rule}\xdef\second@{#1} @@ -4589,6 +4643,12 @@ \else \xdef\third@{\second@} \fi\fi\fi + \xdef\temp@{featurenames} + \ifx\first@\temp@ \xdef\ftext@family{\third@} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ \xdef\fstyles@family{\third@} + \else \xdef\temp@{features} \ifx\first@\temp@ \xdef\featuretext@family{\third@} \else @@ -4618,6 +4678,8 @@ \else \xdef\temp@{all} \ifx\first@\temp@ + \xdef\ftext@family{\third@} + \xdef\fstyles@family{\third@} \xdef\featuretext@family{\third@} \xdef\featurestyles@family{\third@} \xdef\numbertext@family{\third@} @@ -4627,7 +4689,7 @@ \xdef\label@family{\third@} \xdef\hideblock@family{\third@} \xdef\ruler@family{\second@} - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi } \def\setseries#1#2{% @@ -4646,6 +4708,12 @@ \else \xdef\third@{\second@} \fi\fi + \xdef\temp@{featurenames} + \ifx\first@\temp@ \xdef\ftext@series{\third@} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ \xdef\fstyles@series{\third@} + \else \xdef\temp@{features} \ifx\first@\temp@ \xdef\featuretext@series{\third@} \else @@ -4672,6 +4740,8 @@ \else \xdef\temp@{all} \ifx\first@\temp@ + \xdef\ftext@series{\third@} + \xdef\fstyles@series{\third@} \xdef\featuretext@series{\third@} \xdef\featurestyles@series{\third@} \xdef\numbertext@series{\third@} @@ -4680,7 +4750,7 @@ \xdef\legend@series{\third@} \xdef\hideblock@series{\third@} \xdef\label@series{\third@} - \fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi } \def\setshape#1#2{% @@ -4707,6 +4777,12 @@ \else \xdef\third@{\second@} \fi\fi\fi\fi + \xdef\temp@{featurenames} + \ifx\first@\temp@ \xdef\ftext@shape{\third@} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ \xdef\fstyles@shape{\third@} + \else \xdef\temp@{features} \ifx\first@\temp@ \xdef\featuretext@shape{\third@} \else @@ -4733,6 +4809,8 @@ \else \xdef\temp@{all} \ifx\first@\temp@ + \xdef\ftext@shape{\third@} + \xdef\fstyles@shape{\third@} \xdef\featuretext@shape{\third@} \xdef\featurestyles@shape{\third@} \xdef\numbertext@shape{\third@} @@ -4741,7 +4819,7 @@ \xdef\legend@shape{\third@} \xdef\hideblock@shape{\third@} \xdef\label@shape{\third@} - \fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi } \def\setsize#1#2{% @@ -4757,6 +4835,14 @@ \ifx\first@\temp@ \def\featurestyles@size{\csname #2\endcsname} \else + \xdef\temp@{featurenames} + \ifx\first@\temp@ + \def\ftext@size{\csname #2\endcsname} + \else + \xdef\temp@{featurestylenames} + \ifx\first@\temp@ + \def\fstyles@size{\csname #2\endcsname} + \else \xdef\temp@{numbering} \ifx\first@\temp@ \def\numbertext@size{\csname #2\endcsname} @@ -4796,6 +4882,8 @@ \ifx\first@\temp@ \def\featuretext@size{\csname #2\endcsname} \def\featurestyles@size{\csname #2\endcsname} + \def\ftext@size{\csname #2\endcsname} + \def\fstyles@size{\csname #2\endcsname} \def\numbertext@size{\csname #2\endcsname} \def\namestext@size{\csname #2\endcsname} \def\legend@size{\csname #2\endcsname} @@ -4803,7 +4891,7 @@ \def\label@size{\csname #2\endcsname} \def\residues@size{\csname #2\endcsname} \xdef\res@size{#2} - \fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \xdef\temp@{Huge} \ifx\temp@\res@size \def\bottomruler@size{\csname Large\endcsname} @@ -4835,6 +4923,44 @@ \def\setfont#1#2#3#4#5{% \setfamily{#1}{#2}\setseries{#1}{#3} \setshape{#1}{#4}\setsize{#1}{#5}} +\def\featurenamesrm{\setfamily{featurenames}{rm}} +\def\featurenamessf{\setfamily{featurenames}{sf}} +\def\featurenamestt{\setfamily{featurenames}{tt}} +\def\featurenamesmd{\setseries{featurenames}{md}} +\def\featurenamesbf{\setseries{featurenames}{bf}} +\def\featurenamesup{\setshape {featurenames}{up}} +\def\featurenamesit{\setshape {featurenames}{it}} +\def\featurenamessl{\setshape {featurenames}{sl}} +\def\featurenamessc{\setshape {featurenames}{sc}} +\def\featurenamestiny {\setsize{featurenames}{tiny}} +\def\featurenamesscriptsize {\setsize{featurenames}{scriptsize}} +\def\featurenamesfootnotesize{\setsize{featurenames}{footnotesize}} +\def\featurenamessmall {\setsize{featurenames}{small}} +\def\featurenamesnormalsize {\setsize{featurenames}{normalsize}} +\def\featurenameslarge {\setsize{featurenames}{large}} +\def\featurenamesLarge {\setsize{featurenames}{Large}} +\def\featurenamesLARGE {\setsize{featurenames}{LARGE}} +\def\featurenameshuge {\setsize{featurenames}{huge}} +\def\featurenamesHuge {\setsize{featurenames}{Huge}} +\def\featurestylenamesrm{\setfamily{featurestylenames}{rm}} +\def\featurestylenamessf{\setfamily{featurestylenames}{sf}} +\def\featurestylenamestt{\setfamily{featurestylenames}{tt}} +\def\featurestylenamesmd{\setseries{featurestylenames}{md}} +\def\featurestylenamesbf{\setseries{featurestylenames}{bf}} +\def\featurestylenamesup{\setshape {featurestylenames}{up}} +\def\featurestylenamesit{\setshape {featurestylenames}{it}} +\def\featurestylenamessl{\setshape {featurestylenames}{sl}} +\def\featurestylenamessc{\setshape {featurestylenames}{sc}} +\def\featurestylenamestiny {\setsize{featurestylenames}{tiny}} +\def\featurestylenamesscriptsize {\setsize{featurestylenames}{scriptsize}} +\def\featurestylenamesfootnotesize{\setsize{featurestylenames}{footnotesize}} +\def\featurestylenamessmall {\setsize{featurestylenames}{small}} +\def\featurestylenamesnormalsize {\setsize{featurestylenames}{normalsize}} +\def\featurestylenameslarge {\setsize{featurestylenames}{large}} +\def\featurestylenamesLarge {\setsize{featurestylenames}{Large}} +\def\featurestylenamesLARGE {\setsize{featurestylenames}{LARGE}} +\def\featurestylenameshuge {\setsize{featurestylenames}{huge}} +\def\featurestylenamesHuge {\setsize{featurestylenames}{Huge}} \def\featuresrm{\setfamily{features}{rm}} \def\featuressf{\setfamily{features}{sf}} \def\featurestt{\setfamily{features}{tt}} @@ -5081,14 +5207,36 @@ \else \ifx\third@\first@\white@box\else\textcolor{\third@}{\box@rule}\fi \fi\fi\fi\fi} +\def\featurenamescolor#1{% + \expandafter\xdef\csname ftext@fg@ttop\endcsname{#1} + \expandafter\xdef\csname ftext@fg@top\endcsname{#1} + \expandafter\xdef\csname ftext@fg@bottom\endcsname{#1} + \expandafter\xdef\csname ftext@fg@bbottom\endcsname{#1} +} +\def\featurestylenamescolor#1{% + \expandafter\xdef\csname fstyles@fg@ttop\endcsname{#1} + \expandafter\xdef\csname fstyles@fg@top\endcsname{#1} + \expandafter\xdef\csname fstyles@fg@bottom\endcsname{#1} + \expandafter\xdef\csname fstyles@fg@bbottom\endcsname{#1} +} +\def\featurenamecolor#1#2{\expandafter\xdef\csname ftext@fg@#1\endcsname{#2}} +\def\featurestylenamecolor#1#2{\expandafter\xdef\csname fstyles@fg@#1\endcsname{#2}} \def\namescolor#1{\xdef\names@fg{#1}} \def\namecolor#1#2{% \xdef\first@{consensus} \xdef\second@{#1} \ifx\first@\second@ \expandafter\xdef\csname name@col0\endcsname{#2} + \else + \xdef\first@{featurenames} \xdef\second@{#1} + \ifx\first@\second@ + \xdef\ftext@fg{#2} + \else + \xdef\first@{featurestylenames} \xdef\second@{#1} + \ifx\first@\second@ + \xdef\fstyles@fg{#2} \else \xdef\first@{#1,&,@} \xdef\third@{#2} \namecolor@ - \fi + \fi\fi\fi } \def\numberingcolor#1{\xdef\numbering@fg{#1}} \def\numbercolor#1#2{% @@ -5586,7 +5734,11 @@ \else \expandafter\ifnum\csname pos\the\loopcount\endcsname>\m@x \xdef\m@x{\csname pos\the\loopcount\endcsname} - \xdef\cons@seq{\the\loopcount} \xdef\match@case{1} + \expandafter\ifnum\csname pos\the\loopcount\endcsname<\all@thresh@ld + \xdef\cons@seq{\the\loopcount} \xdef\match@case{1} + \else + \xdef\cons@seq{\the\loopcount} \xdef\match@case{2} + \fi \else \expandafter\ifnum\csname pos\the\loopcount\endcsname=\m@x \xdef\match@case{0} @@ -6017,13 +6169,14 @@ \xdef\constopo{\constopo 2}} \def\allm@tch{% - \ifall@shade \xdef\third@{0} \else \xdef\third@{1} \fi + \xdef\tmp@{\csname res\cons@seq\endcsname} \loopcount=0 \loop \advance\loopcount by 1 \xdef\first@{noshade} \expandafter\ifx\csname hide@seq\the\loopcount\endcsname\first@ \xdef\first@{\csname res\the\loopcount\endcsname} + \ifx\first@\d@t\def\first@{\gap@char}\fi \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n} \xdef\first@{=\first@}\fi @@ -6034,11 +6187,60 @@ \csname seq\the\loopcount\endcsname% 3\first@} \else + \xdef\second@{\csname res\the\loopcount\endcsname} + \ifx\tmp@\second@ + \ifall@shade \xdef\third@{0} \else \xdef\third@{1} \fi + \else + \xdef\third@{3} + \ifsimmode + \xdef\last@{\csname \prefix@ sim\tmp@\endcsname &@} + \expandafter\get@count\last@ + \innerloopcount=0 \getsim@char + \fi + \fi \xdef\first@{\csname res\the\loopcount\endcsname} + \ifcase\third@ + \ifnum\divref@=\loopcount\else + \xdef\low@up{lower} \ifx\res@llm@tch\low@up \make@lower \else + \xdef\low@up{upper} \ifx\res@llm@tch\low@up + \else \xdef\first@{\res@llm@tch} \fi\fi\fi + \or \ifnum\divref@=\loopcount\else \xdef\low@up{lower} \ifx\res@llm@tch\low@up \make@lower \else \xdef\low@up{upper} \ifx\res@llm@tch\low@up \else \xdef\first@{\res@llm@tch} \fi\fi\fi + \or + \ifnum\divref@=\loopcount\else + \xdef\low@up{lower} \ifx\ressimm@tch\low@up \make@lower \else + \xdef\low@up{upper} \ifx\ressimm@tch\low@up + \else \xdef\first@{\ressimm@tch} \fi\fi\fi + \else + \ifnum\divref@=\loopcount\else + \xdef\low@up{lower} \ifx\resn@m@tch\low@up \make@lower \else + \xdef\low@up{upper} \ifx\resn@m@tch\low@up + \else \xdef\first@{\resn@m@tch} \fi\fi\fi + \fi + \ifx\first@\d@t + \expandafter\ifnum\csname res@count\the\loopcount\endcsname% + <\csname seq@start\the\loopcount\endcsname + \ifsh@wg@ps + \def\first@{\gap@char}\def\third@{7} + \else + \def\first@{{}} \def\third@{8} + \fi + \else + \expandafter\ifnum\csname res@count\the\loopcount\endcsname% + <\csname seq@len\the\loopcount\endcsname + \def\third@{7}\def\first@{\gap@char} + \else + \ifsh@wg@ps + \def\first@{\gap@char}\def\third@{7} + \else + \def\first@{{}} \def\third@{8} + \fi + \fi + \fi + \fi \expandafter\ifx\csname tint@seq\the\loopcount\endcsname\y@ \expandafter\xdef\csname tint@seq\the\loopcount\endcsname{n} \xdef\first@{=\first@}\fi @@ -6046,7 +6248,7 @@ \expandafter\xdef\csname emph@seq\the\loopcount\endcsname{n} \xdef\first@{,\first@}\fi \expandafter\xdef\csname seq\the\loopcount\endcsname{% - \csname seq\the\loopcount\endcsname\third@\first@} + \csname seq\the\loopcount\endcsname\third@\first@} \fi \ifnum\loopcount<\seq@count \repeat \xdef\first@{\csname res\cons@seq\endcsname} @@ -8115,7 +8317,7 @@ \def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\third@}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \kern2ex\textcolor{\legend@fg}{% \legend@size{\csname fgroup@name\the\loopcount\endcsname}} \newline\hbox{}% @@ -8131,7 +8333,7 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\resn@m@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextNomatch}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \textcolor{\legend@fg}{% \ifgerm@n\kern2ex\legend@size{nicht konserviert}% \else\ifsp@nish\kern2ex\legend@size{no conservado}% @@ -8146,7 +8348,7 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\ressimm@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextSimilar}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \textcolor{\legend@fg}{% \ifgerm@n\kern2ex\legend@size{\"ahnlich}% \else\ifsp@nish\kern2ex\legend@size{similar}% @@ -8161,11 +8363,11 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\resm@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextIdentical}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% \textcolor{\legend@fg}{% - \ifgerm@n\kern2ex\legend@size{konserviert}% - \else\ifsp@nish\kern2ex\legend@size{conservado}% - \else\kern2ex\legend@size{conserved}\fi\fi} + \ifgerm@n\kern2ex\legend@size{$\ge$\,\thresh@ld\% konserviert}% + \else\ifsp@nish\kern2ex\legend@size{$\ge$\,\thresh@ld\% conservado}% + \else\kern2ex\legend@size{$\ge$\,\thresh@ld\% conserved}\fi\fi} \newline\hbox{}\noindent% \ifall@shade% \ifnames@\ifnames@right\else\hbox to \name@width{\hss}\fi\fi @@ -8176,11 +8378,18 @@ \def\temp@{X}\xdef\low@up{lower}\ifx\res@llm@tch\low@up\def\temp@{x}\fi% \ifhidechar\xdef\temp@{}\fi% \kern-\box@width\textcolor{\TextAllmatch}{\hbox to \box@width{% - \res@@style{\hss\temp@\hss}}}% + \legend@size{\res@@style{\hss\temp@\hss}}}}% + \ifnum\all@thresh@ld=100 \textcolor{\legend@fg}{% \ifgerm@n\kern2ex\legend@size{alle identisch}% \else\ifsp@nish\kern2ex\legend@size{todos id\'enticos}% \else\kern2ex\legend@size{all match}\fi\fi} + \else + \textcolor{\legend@fg}{% + \ifgerm@n\kern2ex\legend@size{$\ge$\,\all@thresh@ld\% konserviert}% + \else\ifsp@nish\kern2ex\legend@size{$\ge$\,\all@thresh@ld\% conservado}% + \else\kern2ex\legend@size{$\ge$\,\all@thresh@ld\% conserved}\fi\fi} + \fi \newline\hbox{}\noindent \fi \fi @@ -9042,6 +9251,7 @@ \textcolor{\f@color}{% \hbox to #1\box@width{\hss\featuretext@size{\strut\fourth@}\hss}}% \fi% + \advance\loopcount by -#1% } \def\put@featuretext{% \if\first@ @% @@ -9057,6 +9267,7 @@ \hbox to \second@\box@width% {\hss\expandafter\putfeature@style{\first@}\hss}\fi% \xdef\first@{#3@}% + \advance\loopcount by -\second@% } \def\put@featurestyle{% \if\first@ @% @@ -9068,35 +9279,104 @@ \def\put@feature{% \vspace{-\baselineskip}% \newline\hbox{}% - \ifnames@right\else\ifnames@\hbox to \name@width{\hss}\fi\fi% - \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\temp@{ttop}% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname textfeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featuretext% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% \else% \xdef\temp@{top}% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname textfeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featuretext% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% \else + \ifnames@right\else\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname stylefeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featurestyle% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% \fi\fi% \newline\hbox{}% - \ifnames@right\else\ifnames@\hbox to \name@width{\hss}\fi\fi% - \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname stylefeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featurestyle% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% \else% \xdef\temp@{ttop}% \ifx\temp@\bottop@% + \ifnames@right\else\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% \xdef\first@{\csname stylefeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featurestyle% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\fstyles@family}\fontseries{\fstyles@series}\fontshape{\fstyles@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname fstyles@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featurestylesn@me\bottop@\endcsname\hss}}\fi\fi% \else + \ifnames@right\else\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% + \ifnumbers@left\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \xdef\first@{\csname textfeature\bottop@\endcsname @}% \xdef\first@{\csname textfeature\bottop@\endcsname @}% + \loopcount=\res@perline% \put@featuretext% + \ifnumbers@right\ifnumbers@\hbox to \number@width{\hss}\fi\fi% + \ifnames@right\ifnames@% + \fontfamily{\ftext@family}\fontseries{\ftext@series}\fontshape{\ftext@shape}% + \selectfont% + \kern1em\hbox to \loopcount\box@width{\hss}% + \textcolor{\csname ftext@fg@\bottop@\endcsname}{\hbox to \name@width{\csname featuretextn@me\bottop@\endcsname\hss}}\fi\fi% \fi\fi% \newline\hbox{}% } @@ -10711,6 +10991,8 @@ \xdef\hide@true{n} \xdef\hide@now{n} \xdef\hide@label{circ} \xdef\divref@{0} +\xdef\all@thresh@ld{100} \all@shadefalse +\hidefeaturenames \hidefeaturestylenames %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%% %%%%% @@ -10746,6 +11028,8 @@ \numberingcolor{Black} % Numbering color is `Black' \shownumbering{right} % Show sequence numbering on the left \namescolor{Black} % Names' color is `Black' +\featurenamescolor{Black} % Feature names' color is `Black' +\featurestylenamescolor{Black} % Feature names' color is `Black' \shownames{left} % Show sequence names on the right \consensuscolors{Black}{White} % All consensus symbols/letters {Black}{White} % appear `Black on White' @@ -10786,6 +11070,14 @@ \setseries{names}{md} % Use normal series for names \setshape {names}{up} % Use upright shape for names \setsize {names}{normalsize} % Use normal size for names +\setfamily{featurenames}{tt} % Use typewriter family for feature names +\setseries{featurenames}{md} % Use normal series for feature names +\setshape {featurenames}{up} % Use upright shape for feature names +\setsize {featurenames}{normalsize}% Use normal size for feature names +\setfamily{featurestylenames}{tt} % Use typewriter family for feature style names +\setseries{featurestylenames}{md} % Use normal series for feature style names +\setshape {featurestylenames}{up} % Use upright shape for feature style names +\setsize {featurestylenames}{normalsize}% Use normal size for feature style names \setfamily{features}{rm} % Use roman family for feature texts \setseries{features}{md} % Use normal series for feature texts \setshape {features}{it} % Use italics shape for feature texts -- cgit v1.2.3