diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/eskdx/source/eskdfootnote.sty.in |
Initial commit
Diffstat (limited to 'macros/latex/contrib/eskdx/source/eskdfootnote.sty.in')
-rw-r--r-- | macros/latex/contrib/eskdx/source/eskdfootnote.sty.in | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/macros/latex/contrib/eskdx/source/eskdfootnote.sty.in b/macros/latex/contrib/eskdx/source/eskdfootnote.sty.in new file mode 100644 index 0000000000..2124949175 --- /dev/null +++ b/macros/latex/contrib/eskdx/source/eskdfootnote.sty.in @@ -0,0 +1,81 @@ +% Copyright 2006 Konstantin Korikov <lostclus@ua.fm> +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of LaTeX +% version 2003/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% This Current Maintainer of this work is Konstantin Korikov. +% +% This work consists of all files listed in manifest.txt. +% +m4_ESKDX_INIT +m4_FILE_INIT +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{eskdfootnote}[m4_dnl +m4_FILE_ID([[$Date:: 2010-01-14#$]]) Footnote Settings] + +% Нумероваться сноски должны в пределах одной страницы. +% Самое очевидное решение - переподчинить счетчик footnote счетчику page, +% но такой метод будет давать сбои, если сноска вставлена +% близко к концу страницы. +% Эту проблему решил Обердайк в своем пакете zref + +% пакет amsmath должен быть загружен ПЕРЕД zref +% возможно стоит загружать его в классе eskdtext +% а не здесь +\RequirePackage{amsmath} +\RequirePackage{zref-perpage} + +% привязываем сброс счетчика сносок к границам страниц +\zmakeperpage{footnote} + +\let\footnotesize\small + +% Нижеследующая строка была взята из eskddstu.sty. +% Согласно ГОСT 2.105-95 после метки сноски должна быть закрывающая скобка. +% Стандарт межгосударственный и данная строка будет более +% уместно смотреться здесь +\renewcommand{\thefootnote}{\arabic{footnote})} + +% Помимо арабских цифр с закрывающей скобкой +% стандарт допускает использование звездочек. +% Более четырех использовать <<не рекомендуется>>. +% Сложно сказать, что это значит. Наверное, +% на усмотрение нормоконтроля. +% Для удобства определим команду \fnasterisk +% по аналогии с \fnsymbol +\def\fnasterisk#1{\expandafter\@fnasterisk\csname c@#1\endcsname} +\def\@fnasterisk#1{% + \ifcase#1% + % empty for zero value + \or*% + \or**% + \or***% + \or****% + \else\PackageError{eskdfootnote}{Too many asterisks}% + {GOST 2.105-95 does not recommend to use\MessageBreak + more then 4 asterisks in footnotes.\MessageBreak + Use 'footnotearabic' option in documentclass instead}% + \fi% +} + +% Принимаемые опции +\DeclareOption{footnotearabic}{\renewcommand{\thefootnote}{\arabic{footnote})}} +\DeclareOption{footnoteasterisk}{\renewcommand{\thefootnote}{\fnasterisk{footnote}}} +\ProcessOptions\relax + +% Метка сноски должна находиться по срезу абзацного отступа. +% Для этого вставляем пустой бокс шириной в абзацный отступ, +% после него бокс с меткой сноски, а за ним, собственно, текст. +\renewcommand\@makefntext[1]{% + \parindent 15mm% + \noindent% + \hbox to \parindent{}\hbox{\hss\@makefnmark} #1} + +m4_dnl vim:ft=tex:sw=2:ai |