From e7d5374b0465db02909b5cad6d5205808eb7cae1 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 11 Sep 2015 22:47:24 +0000 Subject: nevelok (11sep15) git-svn-id: svn://tug.org/texlive/trunk@38353 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/tex/latex/nevelok/nevelok.sty | 126 ++++++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/nevelok/nevelok.sty (limited to 'Master/texmf-dist/tex/latex/nevelok') diff --git a/Master/texmf-dist/tex/latex/nevelok/nevelok.sty b/Master/texmf-dist/tex/latex/nevelok/nevelok.sty new file mode 100644 index 00000000000..e19f9f6acd2 --- /dev/null +++ b/Master/texmf-dist/tex/latex/nevelok/nevelok.sty @@ -0,0 +1,126 @@ +%% +%% This is file `nevelok.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% nevelok.dtx (with options: `package') +%% ---------------------------------------------------------------- +%% nevelok --- LaTeX package for automatic definite articles for Hungarian +%% Author: Zalan Bodo +%% E-mail: zbodo@cs.ubbcluj.ro +%% License: Released under the LaTeX Project Public License v1.3c or later +%% See: http://www.latex-project.org/lppl.txt +%% ---------------------------------------------------------------- +%% +\NeedsTeXFormat{LaTeX2e}[1999/12/01] +\ProvidesPackage{nevelok} + [2015/09/10 v1.00 LaTeX package for automatic definite articles for Hungarian] +\RequirePackage{xstring} +%% +\newcommand{\aaz}[1]{% + \z@aaz{#1}{a}{az}{(}{)}% +} +%% +%% +\newcommand{\Aaz}[1]{% + \z@aaz{#1}{A}{Az}{(}{)}% +} +%% +%% +\newcommand{\z@aaz}[5]{% + \def\param{#1}% the first (reference) parameter + \def\kezd{}\relax% the symbols to be put before the output + \def\veg{}\relax% the symbols to be put after the output + \IfBeginWith{\param}{#4}{% if starts with round parantheses, + % we remove it from both sides; + % the parameter changes + \StrPosition{\param}{#5}[\vegz]% + \newcount\ind% + \ind = \vegz% + \advance \ind by -1% + \StrMid{\param}{2}{\ind}[\param]% + \def\kezd{#4}% + \def\veg{#5}% + }{}\relax% + \IfBeginWith{\param}{1}{% if the reference starts with 1, + % special care is required + \StrLen{\param}[\hossz]% + \newcount\ind% + \newcount\vege% + \ind = \hossz% + \vege = 0% + \loop% loops while it does not find a digit at the end + % (in \ref-s, strangely, an \hbox {} appears at the end; + % this loop was actually written to remove these) + \StrChar{\param}{\ind}[\kar]% + \IfSubStr{1234567890}{\kar}{\vege=1}{}\relax% + \ifnum \vege = 0% + \advance \ind by -1% + \repeat% + \StrLeft{\param}{\ind}[\paramuj]% \paramuj will contain the + % ``cleaned'' parameter + \StrPosition[1]{\paramuj}{.}[\elsopontpozicioja]% + \StrLen{\paramuj}[\hossz]% + \newcount\eppme% position of the first dot minus 1 + \eppme = \elsopontpozicioja% + \advance \eppme by -1% + \ifnum \elsopontpozicioja = 0% + \StrLeft{\paramuj}{\hossz}[\prefix]% + \else% + \StrLeft{\paramuj}{\eppme}[\prefix]% + \fi% + \StrLen{\prefix}[\elsohossz]% + \ifnum \elsohossz = 1% 1 + #3% + \else\ifnum \elsohossz = 2% 10 + #2% + \else\ifnum \elsohossz = 3% 100 + #2% + \else\ifnum \elsohossz = 4% 1000 + #3% + \fi\fi\fi\fi% + }{% + \StrChar{\param}{1}[\kar]% + \newcount\az% + \az = 0% + \IfSubStr{2346789}{\kar}{% digits that require ``a''; + % this is redundant, but was kept for some reasons + \az = 0% + }{% + \IfSubStr{5AEIOUFLMNRSaeiouflmnrs}{\kar}{% digits and letters + % that require ``az'' + \az = 1% + }{% + \az = 0% + }\relax% + }\relax% + \ifnum \az = 1% + #3% + \else% + #2% + \fi% + }% + \ \kezd\param\veg% +} +%% +%% +%% Copyright (C) 2015 by Zalan Bodo +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License (LPPL), either +%% version 1.3c of this license or (at your option) any later +%% version. The latest version of this license is in the file: +%% +%% http://www.latex-project.org/lppl.txt +%% +%% This work is "maintained" (as per LPPL maintenance status) by +%% Zalan Bodo. +%% +%% This work consists of the file nevelok.dtx and a Makefile. +%% Running make generates the derived files README.txt, nevelok.pdf and nevelok.sty. +%% Running make inst installs the files in the user's TeX tree. +%% Running make install installs the files in the local TeX tree. +%% +%% +%% End of file `nevelok.sty'. -- cgit v1.2.3