summaryrefslogtreecommitdiff
path: root/macros/generic/abbr
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/generic/abbr
Initial commit
Diffstat (limited to 'macros/generic/abbr')
-rw-r--r--macros/generic/abbr/README24
-rw-r--r--macros/generic/abbr/abbr.tex238
2 files changed, 262 insertions, 0 deletions
diff --git a/macros/generic/abbr/README b/macros/generic/abbr/README
new file mode 100644
index 0000000000..4591aefc4d
--- /dev/null
+++ b/macros/generic/abbr/README
@@ -0,0 +1,24 @@
+abbr.tex is a file containing some simple macros to support
+abbreviations in plain or latex.
+
+Usage example:
+
+=====================================================================
+\input abbr
+
+\abbr{TEX}{\TeX}{TeX}
+\abbr{LATEX}{\LaTeX}{LaTeX}
+\abbr{TEX4HT}{\TeX4HT}{TeX4ht}
+% more user-defined abbreviations here if needed
+
+I love \<TEX> and \<LATEX>, espciallly when I don't have to pay attention
+whether to espace or not to espace a space after a \<TEX> control sequence.
+I also love \<TEX4HT>, and when using it I prefer to have `TeX' and `LaTeX'
+in the html output intead of `TEX' and 'LATEX'. Using abbr.tex also frees
+me from having to remember whether I defined a \ControlSequence or
+\controlsequence or \Controlsequence, and where. Anytime when I need to use
+some abbreviation, I just write \<FOO> and if it's not defined, I add a new
+definition to abbr.tex. It also saves a lot of typing, because in fact
+what I type is not '\<FOO>' but 'foo' and some shortcut to turn it to
+\<FOO>.
+=====================================================================
diff --git a/macros/generic/abbr/abbr.tex b/macros/generic/abbr/abbr.tex
new file mode 100644
index 0000000000..86402d12aa
--- /dev/null
+++ b/macros/generic/abbr/abbr.tex
@@ -0,0 +1,238 @@
+\ifx\abbrloaded\relax
+ \let\next=\endinput
+\else
+ \let\next=\relax
+\fi
+
+\next
+
+\let\abbrloaded=y
+
+\def\<#1>{%
+ \expandafter\ifx\csname<#1>\endcsname\relax
+ \errmessage{abbreviation <#1> undefined!}%
+ \else
+ \csname<#1>\endcsname
+ \fi
+}
+
+\def\abbrA#1#2#3{%
+ \expandafter\def\csname<#1>\endcsname{#2}%
+}
+
+\def\abbrB#1#2#3{%
+ \def\abbrdef{#3}%
+ \ifx\abbrdef\empty
+ \expandafter\def\csname<#1>\endcsname{#2}%
+ \else
+ \expandafter\def\csname<#1>\endcsname{#3}%
+ \fi
+}
+
+\ifx\HCode\undefined % tex4ht is not being used
+ \let\abbr=\abbrA
+\else
+ \let\abbr=\abbrB
+\fi
+
+\abbr{.}{.\,}{}
+\abbr{3B2}{3B2}{}
+\abbr{A2AC}{\texttt{a2ac}}{}
+\abbr{ADOBE}{Adobe}{}
+\abbr{AFM}{AFM}{}
+\abbr{AFM}{AFM}{}
+\abbr{AMIGA}{Amiga}{}
+\abbr{AND}{\char038\relax}{&}
+\abbr{APACHE}{Apache}{}
+\abbr{AR}{Acrobat Reader}{}
+\abbr{ASCII}{ASCII}{}
+\abbr{BASH}{Bash}{}
+\abbr{BLUESKY}{BlueSky}{}
+\abbr{BS}{\char92}{}
+\abbr{bull}{$\bullet$}{}
+\abbr{C}{C}{}
+\abbr{CMACTEX}{CMac\TeX}{CMacTeX}
+\abbr{CM}{Computer Modern}{}
+\abbr{CMR}{CMR}{}
+\abbr{CMSS}{CMSS}{}
+\abbr{CMSUPER}{CM-Super}{}
+\abbr{CPP}{C++}{}
+\abbr{CS}{CS}{}
+\abbr{DANTE}{DANTE}{}
+\abbr{DEBIAN}{Debian}{}
+\abbr{DHSP}{ÐHSP}{}
+\abbr{DJBDNS}{\textsf{djbdns}}{}
+\abbr{DJGPP}{DJGPP}{}
+\abbr{DNSCACHE}{\textsf{dnscache}}{}
+\abbr{DOS}{DOS}{}
+\abbr{DOTNET}{Visual~.NET}{}
+\abbr{...}{\dots}{}
+\abbr{DTP}{DTP}{}
+\abbr{DVI}{DVI}{}
+\abbr{DVIPDFM}{\textsf{dvipdfm}}{}
+\abbr{DVIPS}{\textsf{dvips}}{}
+\abbr{EC}{EC}{}
+\abbr{EK}{\textit{{\Large$\varepsilon$\kern-.1em}k}}{}
+\abbr{ELIB}{eLib}{}
+\abbr{EMACS}{Emacs}{}
+\abbr{EMAIL}{Email}{}
+\abbr{EOF}{EOF}{}
+\abbr{ET5}{ET5}{}
+% \abbr{ETEX}{$\varepsilon$-\TeX}{eTeX}
+\abbr{ETEX}{e\TeX}{eTeX}
+\abbr{EUROTEX}{Euro\TeX}{EuroTeX}
+\abbr{FLOITEX}{Floi\TeX}{}
+\abbr{FMP}{FMP}{}
+\abbr{FONTINST}{\texttt{fontinst}}{}
+\abbr{FONTLAB}{FontLab}{}
+\abbr{FPTEX}{fp\TeX}{}
+\abbr{FTP}{Ftp}{}
+\abbr{GCC}{GCC}{}
+\abbr{GOOGLE}{Google}{}
+\abbr{GS}{\textsf{ghostscript}}{}
+\abbr{GUST}{GUST}{}
+\abbr{GUT}{GUTenberg}{}
+\abbr{GVSBK}{GVSBK}{}
+\abbr{HCMUP}{HCMUP}{}
+\abbr{HJ}{H\kern.1em<AND>\kern.1emJ}{}
+\abbr{HREF}{hyperref}{}
+\abbr{HSQL}{HSQL}{}
+\abbr{HTML}{HTML}{}
+\abbr{HZ}{\textit{hz}}{}
+\abbr{ID}{InDesign}{}
+\abbr{IIS}{IIS}{}
+\abbr{INTERNET}{Internet}{}
+\abbr{JAVA}{Java}{}
+\abbr{JP}{\textit{jp}}{}
+\abbr{KF}{\textit{kf\kern-.05em}}{}
+\abbr{KR}{\textit{K$\varrho$}}{}
+\abbr{LATEX}{\LaTeX}{LaTeX}
+\abbr{LDAP}{LDAP}{}
+\abbr{LF}{\textrm{\it letter\!\_\kern.1emfit}}{}
+\abbr{LIBPNG}{LIBPNG}{}
+\abbr{LIBTIFF}{LIBTIFF}{}
+\abbr{LINUX}{Linux}{}
+\abbr{LISP}{LISP}{}
+\abbr{LM}{LM}{LM}
+\abbr{M2}{\,m$^2$}{}
+\abbr{MAC}{Macintosh}{}
+\abbr{MF}{\MF}{}
+\abbr{MG}{MetaFog}{}
+\abbr{MIKTEX}{Mik\TeX}{MikTeX}
+\abbr{MIRKA}{Miroslava Mis\'akov\'a}{}
+\abbr{MMINSTANCE}{MMInstance}{}
+\abbr{MM}{Multiple Master}{}
+\abbr{MMTOOLS}{MMTOOLS}{}
+\abbr{MP}{\MP}{}
+\abbr{MVISCII}{Mac VISCII}{}
+\abbr{MYSQL}{MySQL}{}
+\abbr{NL}{\hfil\break}{}
+\abbr{NTG}{NTG}{}
+\abbr{NTS}{NTS}{}
+\abbr{OMEGA}{$\Omega$}{}
+\abbr{OPENTYPE}{OpenType}{}
+\abbr{PASCAL}{Pascal}{}
+\abbr{PDFETEX}{pdf\<ETEX>}{pdfeTeX}
+\abbr{PDF}{PDF}{}
+\abbr{PDFTEX}{pdf\TeX}{pdfTeX}
+\abbr{PDFLATEX}{pdf\LaTeX}{pdfLaTeX}
+\abbr{PDFXTEX}{pdfx\kern-.1em\TeX}{pdfxTeX}
+\abbr{CONTEXT}{Con\TeX{}t}{ConTeXt}
+\abbr{PERCENT}{\unskip\,\%}{}
+\abbr{PERL}{Perl}{}
+\abbr{PFA}{PFA}{}
+\abbr{PFB}{PFB}{}
+\abbr{PHP}{PHP}{}
+\abbr{PK}{PK}{}
+\abbr{PLAIN}{plain \TeX}{plain TeX}
+\abbr{POSTGRESQL}{PostgreSQL}{}
+\abbr{PROSPER}{Prosper}{}
+\abbr{PS}{PS}{}
+\abbr{RA}{$\longrightarrow$}{-->}
+\abbr{RESIN}{Resin}{}
+\abbr{SGML}{SGML}{}
+\abbr{SP}{\hskip1cm}{}
+\abbr{STL}{STL}{}
+\abbr{T1}{Type\nobreak\,1}{}
+\abbr{T3}{Type\nobreak\,3}{}
+\abbr{T5}{T5}{}
+\abbr{TCVN}{TCVN1}{}
+\abbr{TCX}{TCX}{}
+\abbr{TETEX}{\textsf{te\TeX}}{teTeX}
+\abbr{TEX4HT}{\TeX{}4ht}{TeX4ht}
+\abbr{TEXINFO}{\texttt{texinfo}}{}
+\abbr{TEXLIVE}{\TeX{}Live}{TeXLive}
+\abbr{TEXME}{\TeX{}Me}{TeXMe}
+\abbr{TEXMF}{\textsf{texmf}}{}
+\abbr{TEXNICCENTER}{TeXnicCenter}{}
+\abbr{TEX}{\TeX}{TeX}
+\abbr{TEXTRACE}{\TeX{}trace}{TeXtrace}
+\abbr{TFM}{TFM}{}
+\abbr{TFTOPL}{TFtoPL}{}
+\abbr{THANH}{H\`an Th\^e\llap{\raise 0.5ex\hbox{\'{}}} Th\`anh}{Han The Thanh}
+\abbr{TINYDNS}{\textsf{tinydns}}{}
+\abbr{TOMCAT}{Tomcat}{}
+\abbr{TPHCM}{Tp.\,HCM}{}
+\abbr{TRUETYPE}{True\kern-.1em Type}{TrueType}
+\abbr{TUG}{TUG}{}
+\abbr{UNICODE}{Unicode}{}
+\abbr{UNIKEY}{Unikey}{}
+\abbr{UNIX}{UNIX}{}
+\abbr{UPORTAL}{uPortal}{}
+\abbr{URW}{URW}{}
+\abbr{URWVN}{URWVN}{}
+\abbr{UTF8}{UTF8}{}
+\abbr{VB}{Visual Basic}{}
+\abbr{VC6}{Visual~C++~6.0}{}
+\abbr{VIETLUG}{VietLUG}{}
+\abbr{VIM}{Vim}{}
+\abbr{VIM}{Vim}{}
+\abbr{VISCII}{VISCII}{}
+\abbr{VI}{Vi}{}
+\abbr{VNCMR}{\textsf{vncmr}}{}
+\abbr{VNI}{VNI}{}
+\abbr{VNR}{VNR}{}
+\abbr{VNTEX}{V\kern-.1em n\TeX}{VnTeX}
+\abbr{VPS}{VPS}{}
+\abbr{WC}{Windows Commander}{}
+\abbr{WEB}{Web}{}
+\abbr{WIN32}{Win32}{}
+\abbr{WINDOWS}{Windows}{}
+\abbr{WINEDT}{WinEdt}{}
+\abbr{WWW}{WWW}{}
+\abbr{XEMACS}{XEmacs}{}
+\abbr{XEMTEX}{Xem\TeX}{XemTeX}
+\abbr{XML}{XML}{}
+\abbr{XPDF}{XPDF}{}
+\abbr{YANDY}{Y<AND>Y}{}
+\abbr{ZLIB}{ZLIB}{}
+\abbr{EMAIL}{Email}{}
+\abbr{WEBSITE}{Website}{}
+\abbr{ASP}{ASP}{}
+\abbr{FRONTPAGE}{FrontPage}{}
+\abbr{DRW}{DreamWeaver}{}
+\abbr{ABC}{ABC}{}
+\abbr{VNI}{VNI}{}
+\abbr{CTAN}{CTAN}{}
+\abbr{PDFCPROT}{\textsf{pdfcprot}}{}
+\abbr{PDFEXPAND}{\textsf{pdfexpand}}{}
+\abbr{MICROTYPE}{\textsf{microtype}}{}
+\abbr{PDFFONTS}{\textsf{pdffonts}}{}
+\abbr{AFM2TFM}{\textsf{afm2tfm}}{}
+\abbr{VF}{VF}{}
+\abbr{TUGBOAT}{TUGboat}{}
+\abbr{PSTRICKS}{\textsf{PStricks}}{}
+\abbr{WEB2C}{\textsf{web2c}}{}
+\abbr{IE}{i.\,e.\,\ignorespaces}{}
+\abbr{ie}{i.\,e.\,\ignorespaces}{}
+\abbr{GNU}{GNU}{}
+\abbr{LIBAVL}{\textsf{libAVL}}{}
+\abbr{TTF2AFM}{\textsf{ttf2afm}}{}
+\abbr{PDFSYNC}{\textsf{pdfsync}}{}
+\abbr{CFF}{CFF}{}
+\abbr{GNOME}{GNOME}{}
+\abbr{SGLUG}{SaigonLUG}{}
+\abbr{SAIGON}{Sài Gòn}{}
+\abbr{SQL}{SQL}{}
+
+\endinput