summaryrefslogtreecommitdiff
path: root/macros/xetex/latex/xesoul
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-03-30 03:00:56 +0000
committerNorbert Preining <norbert@preining.info>2021-03-30 03:00:56 +0000
commit93809c868bf15852ddc7b50542713131a5d8c05f (patch)
tree3c741be9d43fdee2f3ecdb17d463deb188d881a8 /macros/xetex/latex/xesoul
parent3c5dd0d2f091e5e866af1de0327171b253ec9178 (diff)
CTAN sync 202103300300
Diffstat (limited to 'macros/xetex/latex/xesoul')
-rw-r--r--macros/xetex/latex/xesoul/README5
-rw-r--r--macros/xetex/latex/xesoul/xesoul.dtx103
-rw-r--r--macros/xetex/latex/xesoul/xesoul.ins53
-rw-r--r--macros/xetex/latex/xesoul/xesoul.pdfbin0 -> 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
new file mode 100644
index 0000000000..af76885c17
--- /dev/null
+++ b/macros/xetex/latex/xesoul/xesoul.pdf
Binary files differ