summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/xelatex/bidi/bidituftetoc.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/xelatex/bidi/bidituftetoc.sty')
-rw-r--r--Master/texmf-dist/tex/xelatex/bidi/bidituftetoc.sty158
1 files changed, 158 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/xelatex/bidi/bidituftetoc.sty b/Master/texmf-dist/tex/xelatex/bidi/bidituftetoc.sty
new file mode 100644
index 00000000000..b9f3b588551
--- /dev/null
+++ b/Master/texmf-dist/tex/xelatex/bidi/bidituftetoc.sty
@@ -0,0 +1,158 @@
+%%
+%% This is file `bidituftetoc.sty'.
+%%
+%% ______________________________________
+%% Copyright © 2009–2013 Vafa Khalighi
+%%
+%% License information appended.
+%%
+%%
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{bidituftetoc}[2011/06/17 v0.1
+bidi implementation of tufte toc]
+\RequirePackage{titlesec,titletoc,xifthen,hopatch}
+\newcommand{\@bidituftetoc@pkgname}{bidituftetoc}
+\newcommand{\bidituftetocError}[2]{\PackageError{\@bidituftetoc@pkgname}{#1}{#2}}
+%%
+\setcounter{secnumdepth}{-1}
+\newboolean{@bidituftetoc@toc}
+\setboolean{@bidituftetoc@toc}{true}
+\DeclareOption{notoc}{\setboolean{@bidituftetoc@toc}{false}}
+\DeclareOption{toc}{\setboolean{@bidituftetoc@toc}{true}}
+\ProcessOptions
+%%
+\hopatch@AfterPackage{bidi}{%
+\titleformat{\chapter}%
+ [display]% shape
+ {\relax\ifthenelse{\NOT\boolean{@bidituftefloat@symmetric}}{\begin{fullwidth}}{}}% format applied to label+text
+ {\itshape\huge\thechapter}% label
+ {0pt}% horizontal separation between label and title body
+ {\huge\rmfamily\itshape}% before the title body
+ [\ifthenelse{\NOT\boolean{@bidituftefloat@symmetric}}{\end{fullwidth}}{}]% after the title body
+\titleformat{\section}%
+ [hang]% shape
+ {\normalfont\Large\itshape}% format applied to label+text
+ {\thesection}% label
+ {1em}% horizontal separation between label and title body
+ {}% before the title body
+ []% after the title body
+\titleformat{\subsection}%
+ [hang]% shape
+ {\normalfont\large\itshape}% format applied to label+text
+ {\thesubsection}% label
+ {1em}% horizontal separation between label and title body
+ {}% before the title body
+ []% after the title body
+\titleformat{\paragraph}%
+ [runin]% shape
+ {\normalfont\itshape}% format applied to label+text
+ {\theparagraph}% label
+ {1em}% horizontal separation between label and title body
+ {}% before the title body
+ []% after the title body
+\titlespacing*{\chapter}{0pt}{50pt}{40pt}
+\titlespacing*{\section}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
+\titlespacing*{\subsection}{0pt}{3.25ex plus 1ex minus .2ex}{1.5ex plus.2ex}
+}
+\renewcommand\subsubsection{%
+ \bidituftetocError{\noexpand\subsubsection is undefined by this class.%
+ \MessageBreak See Robert Bringhurst's _The Elements of
+ \MessageBreak Typographic Style_, section 4.2.2.
+ \MessageBreak \noexpand\subsubsection was used}
+ {From Bringhurst's _The Elements of Typographic Style_, section 4.2.2: Use as
+ \MessageBreak many levels of headings as you need, no more and no fewer. Also see the many
+ \MessageBreak related threads on Ask E.T. at http://www.edwardbidituftetoc.com/.}
+}
+\renewcommand\subparagraph{%
+ \bidituftetocError{\noexpand\subparagraph is undefined by this class.%
+ \MessageBreak See Robert Bringhurst's _The Elements of
+ \MessageBreak Typographic Style_, section 4.2.2.
+ \MessageBreak \noexpand\subparagraph was used}
+ {From Bringhurst's _The Elements of Typographic Style_, section 4.2.2: Use as
+ \MessageBreak many levels of headings as you need, no more and no fewer. Also see the many
+ \MessageBreak related threads on Ask E.T. at http://www.edwardbidituftetoc.com/.}
+}
+\ifthenelse{\boolean{@bidituftetoc@toc}}{%
+ \hopatch@AfterPackage{bidi}{%
+ \titlecontents{part}% FIXME
+ [0em] % distance from left margin
+ {\vspace{1.5\baselineskip}\begin{fullwidth}\LARGE\rmfamily\itshape} % above (global formatting of entry)
+ {\contentslabel{2em}} % before w/label (label = ``II'')
+ {} % before w/o label
+ {\rmfamily\upshape\qquad\thecontentspage} % filler + page (leaders and page num)
+ [\end{fullwidth}] % after
+ \titlecontents{chapter}%
+ [0em] % distance from left margin
+ {\vspace{1.5\baselineskip}\begin{fullwidth}\LARGE\rmfamily\itshape} % above (global formatting of entry)
+ {\hspace*{0em}\contentslabel{2em}} % before w/label (label = ``2'')
+ {\hspace*{0em}} % before w/o label
+ {\rmfamily\upshape\qquad\thecontentspage} % filler + page (leaders and page num)
+ [\end{fullwidth}] % after
+ \titlecontents{section}% FIXME
+ [0em] % distance from left margin
+ {\vspace{0\baselineskip}\begin{fullwidth}\Large\rmfamily\itshape} % above (global formatting of entry)
+ {\hspace*{2em}\contentslabel{2em}} % before w/label (label = ``2.6'')
+ {\hspace*{2em}} % before w/o label
+ {\rmfamily\upshape\qquad\thecontentspage} % filler + page (leaders and page num)
+ [\end{fullwidth}] % after
+ \titlecontents{subsection}% FIXME
+ [0em] % distance from left margin
+ {\vspace{0\baselineskip}\begin{fullwidth}\large\rmfamily\itshape} % above (global formatting of entry)
+ {\hspace*{4em}\contentslabel{4em}} % before w/label (label = ``2.6.1'')
+ {\hspace*{4em}} % before w/o label
+ {\rmfamily\upshape\qquad\thecontentspage} % filler + page (leaders and page num)
+ [\end{fullwidth}] % after
+ \titlecontents{paragraph}% FIXME
+ [0em] % distance from left margin
+ {\vspace{0\baselineskip}\begin{fullwidth}\normalsize\rmfamily\itshape} % above (global formatting of entry)
+ {\hspace*{6em}\contentslabel{2em}} % before w/label (label = ``2.6.0.0.1'')
+ {\hspace*{6em}} % before w/o label
+ {\rmfamily\upshape\qquad\thecontentspage} % filler + page (leaders and page num)
+ [\end{fullwidth}] % after
+}%
+}{}
+%%
+\renewcommand\listoffigures{%
+ \@ifundefined{chapter}%
+ {\section*{\listfigurename}}%
+ {\chapter*{\listfigurename}}%
+ \@starttoc{lof}%
+}
+\renewcommand\listoftables{%
+ \@ifundefined{chapter}%
+ {\section*{\listtablename}}%
+ {\chapter*{\listtablename}}%
+ \@starttoc{lot}%
+}
+\newcommand{\@bidituftetoc@lof@line}[2]{%
+ % #1 is the figure/table number and its caption text
+ % #2 is the page number on which the figure/table appears
+ \leftskip 0.0em
+ \rightskip 0em
+ \parfillskip 0em plus 1fil
+ \parindent 0.0em
+ \@afterindenttrue
+ \interlinepenalty\@M
+ \leavevmode
+ \@tempdima 2.0em
+ \if@RTL\advance\rightskip\@tempdima\else\advance\leftskip\@tempdima\fi
+ \null\nobreak\hskip -\if@RTL\rightskip\else\leftskip\fi
+ {#1}\nobreak\qquad\nobreak#2%
+ \par%
+}
+\renewcommand*\l@figure{\@bidituftetoc@lof@line}
+\let\l@table\l@figure
+%%
+%% Copyright © 2009–2013 Vafa Khalighi <vafakh@me.com>
+%%
+%% It may be distributed and/or modified under the LaTeX Project Public License,
+%% version 1.3c or higher (your choice). The latest version of
+%% this license is at: http://www.latex-project.org/lppl.txt
+%%
+%% This work is “maintained” (as per LPPL maintenance status)
+%% by Vafa Khalighi.
+%%
+%%
+%%
+%%
+%% End of file `bidituftetoc.sty'.