diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/philex/philexmanualb.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/philex/philexmanualb.tex | 422 |
1 files changed, 422 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/philex/philexmanualb.tex b/Master/texmf-dist/doc/latex/philex/philexmanualb.tex new file mode 100644 index 00000000000..d9171ad4b4c --- /dev/null +++ b/Master/texmf-dist/doc/latex/philex/philexmanualb.tex @@ -0,0 +1,422 @@ +\documentclass[10pt]{article} +\usepackage[utf8]{inputenc} + + +\usepackage{linguex,eqparbox} +\usepackage[oldpunct,hyper]{philex} +\usepackage[left=6cm,right=4cm,top=4cm,bottom=5cm]{geometry} +\usepackage[colorlinks,linkcolor=black,bookmarksnumbered]{hyperref} + +\newcommand{\qut}[1]{`#1'} +\usepackage[english]{babel} + +\usepackage{latexsym,amssymb,amsmath,amsthm,wasysym} +\usepackage{calc} + +\newcounter{hour} +\newcounter{minute} + + + +\newcommand{\emp}{\emph} +\newcommand{\note}{\footnote} +\setcounter{hour}{\time/60} +\setcounter{minute}{\time-60*\thehour} +\ifnum\thehour<10 \def\nowh{0\thehour} \else \def\nowh{\thehour}\fi +\ifnum\theminute<10\def\nowm{0\theminute} \else \def\nowm{\theminute}\fi +\def\now{\nowh:\nowm} +\def\aut{Peter Pagin\\ peter.pagin@philosophy.su.se} +\def\home{\begin{flushright} +\item Department of Philosophy +\item Stockholm University +\item peter.pagin@philosophy.su.se +\end{flushright}} + + +\begin{document} +\tracingassigns=3 +\title{The \tt philex \rm Package \\ version 1.0} +\author{\aut} +\date{\today, \now} +\maketitle +\reversemarginpar +\setlength{\marginparwidth}{3cm} +\subsection*{Changes since version 0.9 (internal version)} +-- \quad Adapted the package to version 4.1 of \verb+linguex+.\\ +-- \quad Added two commands for label separation. + +\subsection*{Changes since version 0.6} +-- \quad Added support for \verb+hyperref+ for named environments.\\ +\noindent -- \quad Added naming options for sub-environments (\verb+\lba+, \verb+\lbb+, \verb+\lbz+).\\ +\noindent -- \quad Added customizing of brackets and numbering-style for second-level sub-environments.\\ +\noindent -- \quad Corrected errors in vertical spacing for \verb+\lbu+ and \verb+\rff+.\\ +\noindent -- \quad Corrected an error in the centering option, and added an alternative for centering.\\ +\noindent -- \quad Replaced earlier (overly short) punctuation commands, and added a package option for using the old commands.\\ +\noindent -- Added customizing of vertical spacing and horizontal spacing as well as label length.\\ +\noindent -- \quad Made the \verb+\lbpx+ environments labels more customizable.\\ +\noindent -- \quad Rewrote and reorganized the manual. + +\subsection*{Changes since version 0.5} +Corrected vertical spacing between adjacent \verb+\lb+ and \verb+\lbp+ environments. + +\subsection*{Changes since version 0.3} +In version 0.3, forward cross-reference was effected by means of writing command definitions to a separate file, \emp{myfile}-px.tex, which was subsequently read-in at the beginning of the following run of typesetting. In version 0.5 the information is instead written to the .aux file and then read from the .aux file in the subsequent run. This method is more elegant and eliminates problems with the implementation of the old method. The improvement is due to Robin Fairbairns. + + + +\section*{Manual} +The \verb+philex+ package is intended for use in topics such as philosophy and linguistics, where there is a need both of many example sentences and of named principles, and of cross-references to them in the text. Sometimes one wants cross-reference to environment numbers (or prefix plus number), sometimes to a non-numbered named environment, and sometimes to the content of the environment, for repeating the content in running text or in another environment. The package is a small addition to Wolfgang Sternefeld's \verb+linguex+ package and requires \verb+linguex+. As of version 0.2 it also requires \verb+calc+. \verb+philex+ will load \verb+linguex+ if it is installed. The purpose of \verb+philex+ is to add functions for more flexible cross-referencing, for repeating and embedding named or numbered environments, \verb+hyperref+ support and a some further formatting options. + +As of version 0.5 \verb+philex+ writes cross-ref information to the .aux file and reads that information at the beginning of the subsequent run of typesetting. This allows forward cross-referencing to environments that are named or numbered+named, such as \rf{clauses} on p. \pageref{clauses}, +in analogy to the label-reference system of LaTeX itself. As of version 0.9 hyperlinks produced by \verb+hyperref+ are created also for named environments with the \verb+<hyper>+ package option. + +\section{Calling the package} +\verb+philex+ is \marginpar{\tt philex} called by adding \verb+\usepackage[<package options>]{philex}+ in the preamble. This will also automatically load the \verb+linguex+ package. If \verb+linguex+ is called separately, it should be called \emp{before} \verb+philex+, since \verb+philex+ (marginally) redefines some commands in \verb+linguex+. + +\section{Package options} +With \marginpar{\tt <hyper>} the \verb+<hyper>+ option hyperlinks will be created by cross-references to named environments (such as \verb+\lbp+). This requires that the \verb+hyperref+ package is called (should be called last). If \verb+hyperref+ is called without the \verb+<hyper>+ option, hyperlinks will anyway be created from the usual \verb+philex+ cross-references that make use of the basic label- and cross-reference function in LaTeX. + +With the \verb+<oldpunct>+ package option \marginpar{\tt <oldpunct>} the old punctuation commands (see below) will still work. This is for the purpose of using more recent versions of \verb+philex+ with older files, without needing search-and-replace. + +\section{Top-level environments} +The basic environment command of \verb+philex+ is \marginpar{\tt \(\backslash\)lb} \verb+\lb{}{}+. It takes two obligatory arguments. The first argument is the label of the environment, and the second is the content of the environment itself. \verb+lb+ uses the \verb+\ex.+ formatting of \verb+linguex+, and thereby the \verb+ExNo+ counter. Type + +\begin{verbatim} +\lb{nice}{This is a nice day. \\ Not too hot.} +\end{verbatim} +and the result will be + +\lb{nice}{This is a nice day.\\ Not too hot.} +in case it is the first \verb+\lb+-environment in your document. + +In \verb+linguex+ you leave a blank line after sentence to close the environment. The blank line gives a \verb+\par+-command to TeX. In \verb+philex+ the \verb+\par+-command is built into the top-level environments. So you leave a blank line after an \verb+\lb{}{}+-environment only if you want to start a new paragraph. The reason for this change is that only this way will the \verb+philex+ package work together with the \verb+extract+ package by Hendri Adriaens, which can be used for extracting material, e.g. for generating a handout, from documents making use of \verb+philex+. \verb+linguex+ comes together with Sternefeld's \verb+linguho+ package, which has the function of generating a handout from documents using \verb+linguex+. \verb+linguho+ does not work with \verb+philex+, since the \verb+linguex+ environments are not explicit in the document. The corresponding function, only more flexible, can be served with the \verb+extract+ package. + +In many cases you \marginpar{Update with \tt\(\backslash\)lbu}will want to produce a variant of the original sentence, which will have the same name or number as the original, but with an added suffix, like a letter or a prime symbol. This is achieved with the \verb+\lbu{}{}{}{}+-command. It takes four obligatory arguments. The first is the label of the new sentence, the second is the label of the environment you are giving a variant of, the third is the suffix you want to add, and the fourth is the new content itself. +\begin{verbatim} +\lbu{nicy}{nice}{\('\)}{But that yesterday was even nicer.} +\end{verbatim} +produces \lbu{nicy}{nice}{\('\)}{But yesterday was even nicer.} + +You may also want to \marginpar{Named environments with \tt\(\backslash\)lbp} have named principles, such as in \rf{life} below (exemplifying forward cross-reference) \bron +\lbp{life}{W}{Life is wonderful!} +These are produced with the \verb+\lbp{}{}{}+-command which makes use of the optional argument to \verb+\ex.[]+ in \verb+linguex+. If you later change the name of the principle, or the formulation, the changes are reflected in the cross-references and repetitions after the next typesetting, as long as you do not change the labels. + +And updates with \verb+\lbu+, like + +\lbu{newlife}{life}{\textsuperscript{+}}{\q Life is terrific!} +work as before. + +In case you \marginpar{Prefixed numbering with \tt\(\backslash\)lbpx} wish a list of independently numbered principles with a shared name stem, there are four independent series. Use one of the \verb+\lbpx+-commands, where \verb+x+ is one of \verb+a,b,c,d+. You can format the listing with \verb+\bpxformat{}{}{}+, where again \verb+x+ has the corresponding value. The first argument sets the numbering style (see below), the second the prefix and the third argument the suffix (this is a change since version 0.6, where there was no suffix argument, and general bracket commands were used). + Then the \verb+\lbpx+-command picks it up: \bpaformat{1}{(T}{)} + +\begin{verbatim} +\bpaformat{1}{(T}{)} +\lbpa{kno}{John is in the know.} +\lbpa{hu}{Elsa is, too.} +\lbpa{kne}{Alfred agrees.} +\end{verbatim} +produces +\lbpa{kno}{John is in the know.} +\lbpa{hu}{Elsa is, too.} +\lbpa{kne}{Alfred agrees.} +These enumerations are independent of \verb+ExNO+ and of each other, and the counters (\verb+bpx+) are reset with the relevant \verb+\bpxformat+. They still work with sub-clauses, cross-references and the rest of the apparatus. Note that these enumerations do not have to be contiguous: + +\lbpa{glufs}{But he shouldn't.} + +All the top-level \marginpar{Centering} environments take an optional argument \verb+[c]+ for centering the text. \verb+\lb[c]{compo}{\[\mu(\sigma(t_{1},\ldots, t_{n}))=+ \verb+r_{\sigma}(\mu(t_{1}), \ldots, \mu(t_{n}))\]}+ produces + +\lb[c]{compo}{\[\mu(\sigma(t_{1},\ldots, t_{n}))=r_{\sigma}(\mu(t_{1}), \ldots, \mu(t_{n}))\]} + In this example a displaymath environment (\verb+\[..\]+ or \verb+$$..$$+) has been used. This produces extra vertical space above and below, suitable for equations. With centering and in-line math environment (\verb+\(..\)+ or \verb+$..$+), no extra vertical space is produced. + + +The default for \verb+philex+ is centering in the entire column, i.e. along \verb+\columnwidth+. As an alternative, you can make \verb+philex+ center the text within the \verb+philex+ text area itself. This puts the text slightly more to the right. To achieve this, give the command \verb+\narrowcenter+ before the relevant environment. To later revert to the default option, give the command \verb+\widecenter+. + +Horizontal alignment \marginpar{Alignment} can be easily achieved by means of Scott Pakin's recent elegant \verb+eqparbox+ package. The code + +\begin{verbatim} +\lb{alignthis}{\eqmakebox[hit][l]{\(2+3\)} \quad = \quad \(5\) \\ +\eqmakebox[hit][l]{\(2+3+4\)} \quad = \quad \(9\)} +\end{verbatim} + automatically generates alignment after a second round of typesetting, without the need of an equation align environment: + +\lb{alignthis}{\eqmakebox[hit][l]{\(2+3\)} \quad = \quad \(5\) \\ +\eqmakebox[hit][l]{\(2+3+4\)} \quad = \quad \(9\)} + + +By means of \verb+philex+ commands, the brackets can be \marginpar{Top-level brackets} removed or replaced for all the top-level environments except \verb+\lb+ itself. However, as of version 4.0 of \verb+linguex+, the brackets for the \verb+\lb+ command can be customized. By means of + +\begin{verbatim} +\renewcommand{\ExLBr}{]} +\renewcommand{\ExRBr}{[} +\renewcommand{\FnExLBr}{\{} +\renewcommand{\FnExRBr}{\}} +\end{verbatim} + you can change the \verb+\lb+ brackets to square brackets in main text and to curly brackets in footnotes. + + +For the other cases, you might e.g. want an \verb+\lbp+ environment without label. To turn the brackets off, give the command \verb+\broff+ before the environment. To turn them back on later, give the command \verb+\bron+. + +The non-\verb+\lb+ top-level brackets can be reset by the two-argument command \verb+\philbrackets+. For instance \verb+\philbrackets{[}{]}+ will make the following environment labels have square brackets. + +There is sometimes a reason \marginpar{Punctuation} to embed the content of an environment in running text or in another environment, so that changes in the original environment are automatically reflected (see below on cross-references). You might then not want the original full stop of an environment sentence to come along. For this purpose there is a punctuation command \verb+\philpunct+ at the end of top-level environments. By default, \verb+\philpunct+ is set to be empty. You can redefine it to provide a full stop by means of \verb+\philfullstop+ before the environment. The command \verb+\philcomma+ redefines it to produce a comma, \verb+\philexclaim+ produces an exclamation mark, \verb+\philquestion+ a question mark, and \verb+\philempty+ turns it back to empty. By means of \verb+\renewcommand{\philpunct}{}+ you can set it as you like. + +In earlier versions of \verb+philex+ the corresponding commands were \verb+\p+, \verb+\s+ (for full stop), \verb+\km+ (for comma) and \verb+\q+ (empty). Mostly because I have learned that it is bad design to use one-letter commands, these are now replaced by the new commands. In case of typesetting a file with the old commands, choose the package option \verb+<oldpunct>+. + +\verb+linguex+ has \marginpar{Footnotes} sensitivity to footnote contexts, and provides a separate counter, \verb+FnExNo+, that is reset in each footnote. This is inherited by \verb+philex+.\note + {The result is illustrated by + \lb{ffnote}{A first footnote example:} + \lb{sfnote}{A second footnote example.} + which shows that numbering is lowercase roman.} + +\section{Sub-environments} +\verb+linguex+ and \marginpar{\tt \(\backslash\)lba, \(\backslash\)lbb, and \(\backslash\)lbz} hence also \verb+philex+ provides sub-environments (sublists) . To illustrate, the code + +\begin{verbatim} +\lbp{clauses}{PP}{Some main words, followed by +\lba{first}{Time flies +\lba{firstnew}{Like an arrow} +\lbz{lastnew}{And much too fast}} +\lbb{second}{But never stops} +\lbz{last}{Which is lucky} +and a concluding comment.} +\end{verbatim} +produces + +\lbp{clauses}{PP}{Some main words, followed by +\lba{first}{Time flies} +\lba{firstnew}{Like an arrow} +\lbz{lastnew}{And much too fast} +\lbb{second}{But never stops} +\lbz{last}{Which is lucky} +and a concluding comment.} + As shown in the source example, the sub-environments must be embedded in the last argument of the top-level command. A second-level sub-environment need not be embedded in the first-level sub-environment (and so on). + +As exemplified, sub-environments can be nested up to three levels. The first two levels have their own counters, \verb+SubExNo+ and \verb+SubSubExNo+, provided by \verb+linguex+. + +The \verb+\lba+ command restarts the counter of the relevant level. The \verb+\lbb+ command steps the counter, while the \verb+\lbz+ command steps the counter and closes the level, returning to the next higher level. It is not necessary to use \verb+\lbz+ for the last item at the first sub-level (i.e. at the end of a top-level environment). In case only a single sub-environment is used, the command \verb+\z.+ of \verb+linguex+ returns to the higher level. + +The labels of the first two sub-levels can be \marginpar{Label formatting} customized in two ways, with respect to numbering style and with respect to brackets. The command \verb+\subformat+ takes three arguments. + +The first argument determines the numbering style. The value \qut{R} displays the counter in upper-case roman numerals, \qut{r} in lower case roman, \qut{1} in arabic numerals, \qut{A} in upper-case alphabetic listing, and \qut{a} in lower-case alphabetic listing. Default for the first sub-level is lower-case alphabetic. + +The second argument sets the prefix (opening bracket) and the third argument sets the suffix (closing bracket). Default for the first sub-level is no left-hand bracket and a period for the suffix, as shown in the example. + +The corresponding command for the second sub-level is \verb+\subsubformat+, with the same arguments and values. Default for the second sub-level is lower-case roman numerals for displaying the counter, and ordinary left- and right-hand round brackets, as shown in the example (these defaults are set by \verb+linguex+). To exemplify, the source code + +\begin{verbatim} +\lbu{clausesup}{clauses}{$'$}{ +\subformat{A}{}{)} +\subsubformat{1}{[}{]} +Some introductory words, followed by +\lba{firstb}{Time flies} +\lba{firstnewb}{Like an arrow} +\lbz{lastnewb}{And much too fast} +\lbb{secondb}{But never stops} +\lbz{lastb}{Which is lucky} +and a concluding comment.} +\end{verbatim} + +produces + +\lbu{clausesup}{clauses}{$'$}{ +\subformat{A}{}{)} +\subsubformat{1}{[}{]} +Some introductory words, followed by +\lba{firstb}{Time flies} +\lba{firstnewb}{Like an arrow} +\lbz{lastnewb}{And much too fast} +\lbb{secondb}{But never stops} +\lbz{lastb}{Which is lucky} +and a concluding comment.} + +If the sub-formatting commands are given within the top-level environment, they control only the labels within that environment. If they are given outside, the commands are valid until superseded by later commands. + +The sub-level commands \marginpar{Names for \\ sub-environments} have an optional argument (inherited from \verb+linguex+) that can be used for naming sub-environments. For instance, the source + +\begin{verbatim} +\lb{crane}{The saying +\lba[S]{squeak}{The squeaky wheel gets the grease} +\z. +is often confirmed.} +\end{verbatim} + produces + + +\lb{crane}{The saying +\lba[S]{squeak}{The squeaky wheel gets the grease} +\z. +is often confirmed.} + Round brackets are put in by default. This can be reset by the \verb+\philbrackets+ command. + +Punctuation for sub-environments \marginpar{Punctuation for \\ sub-environments} is controlled by means of the commands \verb+\philsubpunct+, \verb+\philsubstop+, \verb+\philsubcomma+, \verb+\philsubexclaim+, \verb+\philsubquestion+, and \verb+\philsubempty+, analogous to the corresponding top-level commands. The corresponding older commands where \verb+\pt+, \verb+\stp+ (full stop), \verb+\kmt+ (comma), and \verb+\qt+ (empty). As before, they are made active by means of the \verb+<oldpunct>+ package option. + +\section{Cross-references} +The first argument of all environment commands are used by \verb+philex+ to give a \verb+\label+ command. If the environment is numbered by a counter, the label makes the environment accessible for cross-reference by the standard cross-reference mechanism of LaTeX. For instance, \verb+\ref{nice}+ produces the cross-reference `\ref{nice}' to the first \verb+\lb+ environment on page \pageref{nice}.\note + {The reason for the fuss about brackets is that in order to modify the material within the brackets, e.g. with {\tt lbu}, the brackets cannot be hard-coded into the cross-reference command, but must be put in afterwords.} + +However, \verb+philex+ provides \marginpar{\tt \(\backslash\)rf, \(\backslash\)rn} its own cross-reference command, \verb+\rf+, which has a wider function. It provides ordinary cross-references in accordance with the numbering style of the antecedent, and keeps track of the embedding. It also provides cross-references to \emp{named} environments, where there is no counter value to pick up. The difference between \verb+\rf+ and \verb+\rn+ is that the latter leaves out the brackets. So we will have the productions +\begin{trivlist} +\item \noindent \verb+\rf{nice}+ \(\longrightarrow\) \rf{nice} \hfill (target on page \pageref{nice}) +\item \noindent \verb+\rf{kne}+ \(\longrightarrow\) \rf{kne} \hfill (target on page \pageref{kne}) +\item \noindent \verb+\rn{kne}+ \(\longrightarrow\) \rn{kne} \hfill (target on page \pageref{kne}) +\item \verb+\rn{clauseup}+ \(\longrightarrow\) \rn{clausesup} \hfill (target on page \pageref{clausesup}) +\item \verb+\rf{lastnew}+ \(\longrightarrow\) \rf{lastnew}\hfill (target on page \pageref{lastnew}) +\item \verb+\rf{lastnewb}+ \(\longrightarrow\) \rf{lastnewb} \hfill (target on page \pageref{lastnewb}) +\end{trivlist} + Both \verb+\rf+ and \verb+\rn+ have an optional argument which produces an optional suffix. \verb+\rf[*]{nice}+ produces \rf[*]{nice}. + +Both \verb+linguex+ and \verb+philex+ \marginpar{Inner delimiters} provide customizing of inner delimiters in complex cross-references. \verb+linguex+ has changed in version 4.0 (see its manual). With \verb+philex+, use the \verb+\phildashes{}{}+ \marginpar{\tt \(\backslash\)phildashes} command. This works together with the \verb+\subformat+ and the \verb+\subsubformat+ commands. The first argument sets the delimiter between the top-level reference and the reference to the first sub-environment, while the second argument sets the delimiter between references to the first and the second sub-level environments. To illustrate. We use the input +\begin{verbatim} +\lb{cool}{We would like a colon +\phildashes{:}{} +\subformat{a}{}{)} +\lba{coola}{before reference to this.} +\lba{coolb}{but nothing more before reference to this}} +\end{verbatim} +to create and make a cross-reference with \verb+\rf{coolb}+ to \rf{coolb} below: +\lb{cool}{We would like a colon +\phildashes{:}{} +\subformat{a}{}{)} +\lba{coola}{before reference to this} +\lba{coolb}{but nothing more before reference to this.}} + +If the \verb+hyperref+ package \marginpar{\tt hyperref} is called (must be called last) in the preamble, all ordinary cross-references of the label+cross-reference mechanism of LaTeX are by default made into pdf hyperlinks. This includes all cross-references in \verb+philex+ that rely on counters. If the \verb+<hyper>+ package option is also called, cross-references to \emp{named} environments are made into hyperlinks as well. + +This is useful for reading pdf:s on the screen, and also for \verb+beamer+ slide-show presentations: click on a cross-reference to a named principle, and you are taken to the page where that principle is stated. In \verb+beamer+ you are taken to the first slide of the relevant frame. + +Sub-environments can \marginpar{Cross-reference to \\ sub-environments in footnotes} be used in footnotes as well. But here, to get the cross-references right, the \verb+subformat+ command must be used.\note + {This is illustrated by + \lb{ffnote}{A first footnote example: + \subformat{a}{}{)} + \lba{fnota}{Be careful in footnotes.}} + \lb{sfnote}{A second footnote example.} + This cross-reference to \rf{fnota} is correct.} + The example is produced by the input +\begin{verbatim} +\lb{ffnote}{A first footnote example: + \subformat{a}{}{)} + \lba{fnota}{Be careful in footnotes.}} + \lb{sfnote}{A second footnote example. + This cross-reference to \rf{fnota} is correct.} +\end{verbatim} + +\verb+philex+ also has cross-reference \marginpar{Repeating content} functions for repeating the \emp{contents} of environment. By means of \verb+\rp{nicy}+ you repeat the content of \rf{nicy}: \rp{nicy} If you want to embed the content in another sentence, you may want the initial capital letter to be made lowercase. Then use the \verb+\ml+ command, as in + +\lb{jsays}{John says that \ml{nice}} + produced by +\begin{verbatim} +\lb{jsays}{John says that \ml{nice}} +\end{verbatim} + +In case you want a full stop at the end of an earlier environment and want to embed the content without the stop, you can use the \verb+\philfullstop+ command to have it inserted for you: + + + + +\begin{verbatim} +\philfullstop +\lb{stop}{It is very cold} +\philexclaim +\lb{ifstop}{If \ml{stop}, you should put on a cap} +\end{verbatim} + produces + +\philfullstop +\lb{stop}{It is very cold} +\philexclaim + +\lb{ifstop}{If \ml{stop}, you should put on a cap} +\philempty + +Finally, one can repeat an entire environment with label by means of the \verb+\rff+ command. \verb+\rff{nice}+ produces \rff{nice} + +\section{Lengths and spaces} +\verb+linguex+ provides a number length and spacing commands that can be used to customize the appearance of \verb+philex+ environments. Below are given the length name, brief explanation, and the default value set by \verb+linguex+. \qut{hspace} is short for \qut{horizontal space} and \qut{vspace} analogously: + +\begin{trivlist} +\item \verb+\Exlabelsep+ (hspace after label) \hfill \verb+1.3em+ +\item \verb+\Extopsep+ (extra vspace above and below) \hfill \verb+.66\baselineskip+ +\item \verb+\SubExleftmargin+ (hspace after sub-level label) \hfill \verb+2em+ +\item \verb+\SubSubExleftmargin+ (hspace after sub-sub-level label) \hfill \verb+2.4em+ +\item \verb+\Exindent+ (indent of the environment) \hfill \verb+0pt+ +%\item \verb+\Exlabelwidth+ (width of top-level label) \hfill \verb+4em+ +\end{trivlist} + Beside these, \verb+philex+ modifies \verb+linguex+ by letting two re-definable commands replace hard-coded lengths: + +\begin{trivlist} +\item \verb+\phlabelwidth{}+ (width of label) \hfill \verb+3em+ +\item \verb+\phlabeldefault+ (returns to default value) +\item \verb+\phlabelsep{}+ (sets hspace after label to the argument, e.g. 1cm) +\item \verb+\phlabelsepdefault+ (sets default value of the label separation) +\item \verb+\Exredux+ (vspace reduction between environments) \hfill \verb+-\baselineskip+ +\end{trivlist} + +If one needs longer labels, e.g. as names of principles or for other purposes, one can use \verb+\phlabelwidth+ in combination with \verb+\Exlabelsep+. For example + +\begin{verbatim} +\setlength{\Exlabelsep}{2cm} +\phlabelwidth{4cm} +\broff +\lb{defe}{Compositionality:}{The meaning ... etc. } +\end{verbatim} + has the following effect: + + + +\setlength{\Exlabelsep}{2cm} +\phlabelwidth{4cm} +\broff + +\lbp{compo}{Compositionality:}{The meaning of a complex expression is a function of the meanings of its parts and its mode of composition.} + For two-column documents, the label separation should preferably be somewhat reduced. This has to be set manually by means of these commands, since there is no automatic adaptation to two-column options or environments. + +\setlength{\Exlabelsep}{1.3em} +\phlabeldefault + + +Vertical spacing is controlled with \verb+\Extopsep+ and \verb+\Exredux+. The second controls the reduction of inter-environment vertical space and needs to be adapted to the general control of vertical space. To illustrate, the input + +\begin{verbatim} +\setlength{\Extopsep}{2\baselineskip} +\setlength{\Exredux}{-3\baselineskip} +\end{verbatim} + has the following effect on vertical spacing: + +\setlength{\Extopsep}{2\baselineskip} +\setlength{\Exredux}{-3\baselineskip} + +\lb{vertia}{First vertical space example} +\lb{vertib}{Second vertical space example} +\lb{vertic}{Third vertical space example} + Next line comes here. + +\setlength{\Extopsep}{.66\baselineskip} +\setlength{\Exredux}{-1\baselineskip} + + +\section{Troubleshooting} +The most \marginpar{Infelicitous labels} common problem you can run into with \verb+philex+ derives from an infelicitous choice of label (first argument to the commands). \verb+philex+ creates new command names (control sequences) from the labels, and especially with short labels it sometimes happens that a generated label coincides with a control sequence defined by TeX, or LaTeX, or some document class or package. Typesetting will halt with an error message that does not give the appropriate information. The location of the error need not be right either. + +To remedy, try replacing your latest label(s) by new ones that are unlikely to clash with other control sequences. + +Another type or error \marginpar{\tt hyperref \normalfont and the\\ .aux file} can occur in case the \verb+hyperref+ package is used, and \verb+hyperref+ does not find the information it needs in the .aux file, perhaps because of an error in a previous round. + +The remedy is to enter non-stop typesetting mode by pressing \qut{r} in response to the error message. Typesetting will be completed, with incorrect results, but the next round of typesetting will then work as it should. If there is still a problem, abort typesetting, trash the auxiliary file and start over. + +A problem may arise \marginpar{math environment in \tt lbu} because LaTeX style math environment delimiters (\verb+\(..\)+) are used in the third argument (the update symbol) of the \verb+\lbu+ command. To avoid this problem, use TeX style delimiters (\verb+$..$+) instead. + +A further possible problem derives from \marginpar{Clash between \\ \texttt {hyperref} and \\ \texttt{linguex}} a clash between \verb+linguex+ and fairly recent versions of \verb+hyperref+. This (as has been explained to me by Heiko Oberdiek) depends on a conflict over the use of \verb+\b+. The result will be that sub-environments will lack labels and be incorrectly formatted. + +The remedy has been provided by Heiko Oberdiek, who has added a workaround in \verb+hyperref+. To make use of this, make sure that your version of \verb+hyperref+ is 6.78o (from 2009.02.02) or later. + +There is also \marginpar{Clash between \\ \texttt{setspace} and \\ \tt linguex} a conflict between the \verb+setspace+ package and \verb+linguex+. The problem seems to be that \verb+setspace+ redefines \verb+\@footnotetext+ in a way that interferes with the way \verb+linguex+ is meant to work in footnotes. + +To avoid this problem, load \verb+philex+ (and \verb+linguex+ too, if called) \emp{after} \verb+setspace+. Also, don't use the \verb+\setstretch+ command in the preamble for setting line spacing. Rather set a \verb+spacing+ environment in the main body, after \verb+\begin{document}+. This environment may span the entire main document. + +Finally, \marginpar{Comments} bug reports, comments or suggestions are welcome and should be directed to Peter Pagin at \hyperref{mailto:peter.pagin@philosophy.su.se}{}{}{peter.pagin@philosophy.su.se}. + + + + + +\end{document}
\ No newline at end of file |