summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/lambda/base/odev.sty
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2006-01-12 23:46:22 +0000
committerKarl Berry <karl@freefriends.org>2006-01-12 23:46:22 +0000
commit2a8c0210a3491a41c4ba672c46d215048947638c (patch)
treee918d71abd7c1b6c451ae80cce8b7c380bd3eed2 /Master/texmf-dist/tex/lambda/base/odev.sty
parent284b296e0d543a531f5e69ad826242a7a9e867ab (diff)
trunk/Master/texmf-dist/tex/lambda
git-svn-id: svn://tug.org/texlive/trunk@615 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/lambda/base/odev.sty')
-rw-r--r--Master/texmf-dist/tex/lambda/base/odev.sty102
1 files changed, 102 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/lambda/base/odev.sty b/Master/texmf-dist/tex/lambda/base/odev.sty
new file mode 100644
index 00000000000..882870d2b9c
--- /dev/null
+++ b/Master/texmf-dist/tex/lambda/base/odev.sty
@@ -0,0 +1,102 @@
+\def\externalfont{\fontfamily{\rmdefault}\selectfont}
+ \ocp\HindiA=velthuis2unicode
+ \ocp\HindiB=hindi-uni2cuni
+ \ocp\HindiBS=sanskrit-uni2cuni
+ \ocp\HindiC=hindi-uni2cuni2
+ \ocp\HindiD=hindi-cuni2font
+ \ocp\HindiDS=sanskrit-cuni2font
+ \ocp\HindiE=hindi-cuni2font2
+ \ocp\HindiF=hindi-cuni2font3
+
+ \ocplist\HindiCTP=
+ \addbeforeocplist 1 \HindiA
+ \addbeforeocplist 2 \HindiB
+ \addbeforeocplist 3 \HindiC
+ \addbeforeocplist 4 \HindiD
+ \addbeforeocplist 5 \HindiE
+ \addbeforeocplist 6 \HindiF
+ \nullocplist
+ \ocplist\SanskritCTP=
+ \addbeforeocplist 1 \HindiA
+ \addbeforeocplist 2 \HindiBS
+ \addbeforeocplist 3 \HindiC
+ \addbeforeocplist 4 \HindiDS
+ \addbeforeocplist 5 \HindiE
+ \addbeforeocplist 6 \HindiF
+ \nullocplist
+\newcount\dev@chnum
+%
+\newcommand*\do@dev@catcodes{%
+ \dev@chnum=0
+ \loop\catcode\dev@chnum=11
+ \ifnum\dev@chnum<12 \advance\dev@chnum by1
+ \repeat
+ \dev@chnum=14
+ \loop\catcode\dev@chnum=11
+ \ifnum\dev@chnum<31 \advance\dev@chnum by1
+ \repeat
+ \catcode127=11 }
+%
+% We execute the macro straight away, which means these catcodes are in
+% force throughout the whole document, not just in the Devanagari part
+% of the text. This can sometimes cause spurious "Omega" characters if,
+% in some special conditions, TeX reads a line feed outside the \dn environment,
+% and so forth.
+% The alternative, i.e., calling the catcodes locally within Devanagari text, leads
+% to even worse "illegal character" problems with \chapter and \section headings, etc.
+% This dilemma may be soluble in the longer run, but is not being addressed in
+% the current release (1999).
+%
+%
+% Here are the macros that set the particular characters in the font:
+%
+\newdimen\itdim
+%
+\DeclareRobustCommand*\subscr[1]{{\clearocplists\/\itdim=\lastkern
+ \unkern\kern-\itdim \lower\dp0 \hbox to\itdim{#1\hfil}}}
+%
+\DeclareRobustCommand*\5{\llap{\char125}}
+\DeclareRobustCommand*\qqq[1]{\setbox0=\hbox{#1}#1\subscr{\char126}}
+\DeclareRobustCommand*\qqqa[1]{\setbox0=\hbox{#1}#1\subscr{\char0}}
+\DeclareRobustCommand*\qqqb[1]{\setbox0=\hbox{#1}#1\subscr{\char1}}
+\DeclareRobustCommand*\qqqc[1]{\setbox0=\hbox{#1}#1\subscr{\char2}}
+\DeclareRobustCommand*\qa[2]{\setbox0=\hbox{#1}#1\subscr{\char253\kern1.5ex\lower1.25ex
+ \hbox{\char#2}\kern-1.5ex}}
+\DeclareRobustCommand*\qb[1]{\setbox0=\hbox{#1}#1\subscr{\char253}}
+% New \qc ligature command introduced by devnag version 2:
+\DeclareRobustCommand*\qc[2]{\setbox0=\hbox{#1}#1\subscr{\char126\kern1.5ex\lower1.25ex
+ \hbox{\char#2}\kern-1.5ex}}
+\DeclareRobustCommand*\qq[1]{\setbox0=\hbox{#1}#1\subscr{\char94}}
+\DeclareRobustCommand*\qx[1]{\setbox0=\hbox{#1}#1\subscr{\char14}}
+\DeclareRobustCommand*\qy[1]{\setbox0=\hbox{#1}#1\subscr{\char31}}
+\DeclareRobustCommand*\qz[1]{\setbox0=\hbox{#1}#1\subscr{\char124}}
+\DeclareRobustCommand*\qzz[1]{{\clearocplists#1A\llap{\char4}}}
+\DeclareRobustCommand*\qva{\kern0.5ex\2\kern-0.5ex}
+\DeclareRobustCommand*\qvb{\kern1ex\0\kern-1ex}
+\DeclareRobustCommand*\qvc{\kern1ex\rdt\kern-1ex}
+\DeclareRobustCommand*\rs{\rm\thinspace}
+\let\re=\thinspace
+\DeclareRobustCommand*\rdt{\llap{\char19}}
+\DeclareRobustCommand*\dnnum{\let\nstyle=d}
+\DeclareRobustCommand*\cmnum{\let\nstyle=r}
+\cmnum
+\DeclareRobustCommand*\rn[1]{\if\nstyle r{\rm #1}\else#1\fi}
+\def\qqqx{\llap{{\clearocplists\char32}}}
+\def\qqqy{\llap{{\clearocplists\char"5C}}}
+\def\qqqz{\llap{{\clearocplists\char"7B}}}
+\def\qqqs{\llap{{\clearocplists\char4}}}
+\def\qqqr{\llap{{\clearocplists\char3}}}
+%
+%
+%
+
+
+%{\pushocplist\HindiCTP katarama k kt ktr ktrm ktrm}
+
+
+\long\def\hindi{\do@dev@catcodes
+\fontencoding{U}\fontfamily{dn}\selectfont\catcode`\~=11
+\pushocplist\HindiCTP}
+\long\def\sanskrit{\do@dev@catcodes
+\fontencoding{U}\fontfamily{dn}\selectfont\catcode`\~=11
+\pushocplist\SanskritCTP} \ No newline at end of file