diff options
Diffstat (limited to 'macros/xetex')
-rw-r--r-- | macros/xetex/latex/xesoul/README | 5 | ||||
-rw-r--r-- | macros/xetex/latex/xesoul/xesoul.dtx | 103 | ||||
-rw-r--r-- | macros/xetex/latex/xesoul/xesoul.ins | 53 | ||||
-rw-r--r-- | macros/xetex/latex/xesoul/xesoul.pdf | bin | 0 -> 23237 bytes |
4 files changed, 161 insertions, 0 deletions
diff --git a/macros/xetex/latex/xesoul/README b/macros/xetex/latex/xesoul/README new file mode 100644 index 0000000000..90f09481cf --- /dev/null +++ b/macros/xetex/latex/xesoul/README @@ -0,0 +1,5 @@ +The xesoul package is a little hack that allows users to use +the soul package with XeLaTeX with no problem. + +Apostolos Syropoulos +2021/03/29 diff --git a/macros/xetex/latex/xesoul/xesoul.dtx b/macros/xetex/latex/xesoul/xesoul.dtx new file mode 100644 index 0000000000..acf496065b --- /dev/null +++ b/macros/xetex/latex/xesoul/xesoul.dtx @@ -0,0 +1,103 @@ +%% \CharacterTable +%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +%% Digits \0\1\2\3\4\5\6\7\8\9 +%% Exclamation \! Double quote \" Hash (number) \# +%% Dollar \$ Percent \% Ampersand \& +%% Acute accent \' Left paren \( Right paren \) +%% Asterisk \* Plus \+ Comma \, +%% Minus \- Point \. Solidus \/ +%% Colon \: Semicolon \; Less than \< +%% Equals \= Greater than \> Question mark \? +%% Commercial at \@ Left bracket \[ Backslash \\ +%% Right bracket \] Circumflex \^ Underscore \_ +%% Grave accent \` Left brace \{ Vertical bar \| +%% Right brace \} Tilde \~} +%\iffalse +% +% (c) copyright 2021 A Syropoulos +% +% This program can be redistributed and/or modified under the +% terms of the LaTeX Project Public License Distributed from +% http://www.latex-project.org/lppl.txt; either +% version 1.3c of the License, or any later version. +% +% This work has the LPPL maintenance status `maintained'. +% +% Please report errors or suggestions for improvement to +% +% Apostolos Syropoulos (asyropoulos@yahoo.com) +% +%\fi +% \CheckSum{15} +% \iffalse This is a Metacomment +% +%<xesoul, >\ProvidesFile{xesoul.sty} +% +%<xesoul, > [2021/02/23 v1.0 Package `xesoul.sty'] +% +% \begin{macrocode} +%<*driver> +\documentclass{ltxdoc} +\GetFileInfo{xesoul.drv} +\usepackage{xltxtra} +\usepackage{hyperref} +\begin{document} +\setmainfont[Mapping=tex-text,Script=Greek, + SmallCapsFeatures={Contextuals=Alternate}]{Universal Modern} +\setmonofont{UM Typewriter} +\setsansfont[Mapping=tex-text]{GFS Neohellenic} + + \DocInput{xesoul.dtx} +\end{document} +%</driver> +% \end{macrocode} +% \fi +%\StopEventually{} +%\MakeShortVerb{\|} +%\title{\textsf{xesoul}: Using the \textsf{soul} package with \XeLaTeX} +%\author{Apostolos Syropoulos\\ +% Xanthi, Greece\\ +% \texttt{asyropoulos@yahoo.com}} +% \date{2021/02/23} +%\maketitle +% \begin{abstract} +% This is a small package that allows users to successfully use the \textsf{soul} package +% when preparing documents with \XeLaTeX. +%\end{abstract} +% +%\section{Introduction} +% +% While I was trying to underline Greek text using the |\ul| command of the \textsf{soul} package with \XeLaTeX, +% I discovered that this is not possible. I was getting several errors and the output was looking terrible. +% I did not know what was wrong. I did a Google search and I found that another user had the same problem. +% He posted his case to the \XeTeX\ mailing list and Ulrike Fischer helped him and gave a solution to the problem. +% However, since the solution is not part of the \textsf{soul} package, I thought it would be a good idea to create +% a new package that would solve the problem. +% +% \section{The Implementation} +% +% The code of the package is very simple. It loads the \textsf{soul} package and then it sets the |\SOUL@tt| +% font to be a Unicode encoded font. The most natural choice is to use a font that is included in every +% distribution of \TeX{live}. Thus the package uses the freemono font. If for some reason the font is not available +% in your installtion, then you can download it from the following URL: +% \begin{center} +% \href{https://fontmeme.com/fonts/freemono-font/}{https://fontmeme.com/fonts/freemono-font/} +% \end{center} +% Since the \textsf{soul} package uses the |\SOUL@ttwidth| variable, we need to reset it. Now one can use +% the \textsf{soul} package with no problem. +% \begin{macrocode} +%<*xesoul> +\RequirePackage{iftex} +\ifXeTeX +\RequirePackage{soul} +\font\SOUL@tt="[FreeMono.ttf]" +\setbox\z@\hbox{\SOUL@tt-} +\SOUL@ttwidth\wd\z@ +\else +\typeout{The `xesoul' package can be used only with XeLaTeX.} +\fi +%</xesoul> +% \end{macrocode} +% +% \Finale diff --git a/macros/xetex/latex/xesoul/xesoul.ins b/macros/xetex/latex/xesoul/xesoul.ins new file mode 100644 index 0000000000..d8bd52e18d --- /dev/null +++ b/macros/xetex/latex/xesoul/xesoul.ins @@ -0,0 +1,53 @@ +%% Copyright 2021 Apostolos Syropoulos +%% +%% This file is part of the `xesoul' package. +%% You are not allowed to modify its contents. +%% +\def\filedate{2021/02/23} +\def\batchfile{xesoul.ins} +\input docstrip.tex + +{\ifx\generate\undefined +\Msg{**********************************************} +\Msg{*} +\Msg{* This installation requires docstrip} +\Msg{* version 2.3c or later.} +\Msg{*} +\Msg{* An older version of docstrip has been input} +\Msg{*} +\Msg{**********************************************} +\errhelp{Move or rename old docstrip.tex.} +\errmessage{Old docstrip in input path} +\batchmode +\csname @@end\endcsname +\fi} + +\preamble + + (c) copyright 2021 Apostolos Syropoulos + This program can be redistributed and/or modified under the + terms of the LaTeX Project Public License Distributed from + http://www.latex-project.org/lppl.txt; either + version 1.3c of the License, or any later version. + + This work has the LPPL maintenance status `maintained'. + + Please report errors or suggestions for improvement to + + Apostolos Syropoulos (asyropoulos@yahoo.com) + +\endpreamble + + +\keepsilent + +\generate{\generateFile{xesoul.sty}{f}{\from{xesoul.dtx}{xesoul}}} +\postamble +\endpostamble +\Msg{**********************************************************} +\Msg{* To finish installation you have to copy} +\Msg{* the generated .sty file in the appropriate} +\Msg{* directory and then to rehash your TeX system} +\Msg{* Happy XeTeXing!} +\Msg{**********************************************************} +\endinput diff --git a/macros/xetex/latex/xesoul/xesoul.pdf b/macros/xetex/latex/xesoul/xesoul.pdf Binary files differnew file mode 100644 index 0000000000..af76885c17 --- /dev/null +++ b/macros/xetex/latex/xesoul/xesoul.pdf |