texlive[56288] Master: semtex (7sep20)

commits+karl at tug.org commits+karl at tug.org
Mon Sep 7 23:23:17 CEST 2020


Revision: 56288
          http://tug.org/svn/texlive?view=revision&revision=56288
Author:   karl
Date:     2020-09-07 23:23:16 +0200 (Mon, 07 Sep 2020)
Log Message:
-----------
semtex (7sep20)

Modified Paths:
--------------
    trunk/Master/tlpkg/bin/tlpkg-ctan-check
    trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/semtex/
    trunk/Master/texmf-dist/doc/latex/semtex/README.md
    trunk/Master/texmf-dist/doc/latex/semtex/semtex.pdf
    trunk/Master/texmf-dist/doc/latex/semtex/semtex.tex
    trunk/Master/texmf-dist/tex/latex/semtex/
    trunk/Master/texmf-dist/tex/latex/semtex/semtex.sty
    trunk/Master/tlpkg/tlpsrc/semtex.tlpsrc

Added: trunk/Master/texmf-dist/doc/latex/semtex/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/semtex/README.md	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/semtex/README.md	2020-09-07 21:23:16 UTC (rev 56288)
@@ -0,0 +1,37 @@
+semtex -- For stripped SemanTeX documents
+--------------------------------------
+
+The package semtex is a small LaTeX package that adds a collection
+of simple macros for parentheses and bullets. It exists for
+one purpose only: To be loaded by documents which were
+originally typeset using the package SemanTeX, but which have
+been stripped of SemanTeX markup using the package stripsemantex.
+Therefore, unless your document is one of those,
+simply **don't use this package**.
+
+And even if your document *is* one of those, there is a good
+chance you will not have to load it after all. In most cases,
+you will be able to replace the macros it provides by macros
+from other packages.
+
+----------------------------------------------------------------
+semtex -- For stripped SemanTeX documents
+Maintained by Sebastian Ørsted
+E-mail: sorsted at gmail.com
+Released under the LaTeX Project Public License v1.3c or later
+See http://www.latex-project.org/lppl.txt
+----------------------------------------------------------------
+
+Copyright (C) 2020 by Sebastian Ørsted <sorsted at gmail.com>
+
+The package is loaded via \usepackage{semantex}
+
+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
+Sebastian Ørsted.
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/semtex/README.md
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/semtex/semtex.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/semtex/semtex.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/semtex/semtex.pdf	2020-09-07 21:22:25 UTC (rev 56287)
+++ trunk/Master/texmf-dist/doc/latex/semtex/semtex.pdf	2020-09-07 21:23:16 UTC (rev 56288)

Property changes on: trunk/Master/texmf-dist/doc/latex/semtex/semtex.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/semtex/semtex.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/semtex/semtex.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/semtex/semtex.tex	2020-09-07 21:23:16 UTC (rev 56288)
@@ -0,0 +1,229 @@
+\documentclass[a4paper,article,oneside,english,10pt]{memoir}
+
+\makeatletter
+
+\usepackage[utf8]{inputenc}
+\usepackage[T1]{fontenc}
+\usepackage{babel}
+\usepackage[noDcommand,slantedGreeks]{kpfonts}
+
+\frenchspacing
+
+\usepackage{mathtools,etoolbox,	microtype,xspace,color}
+
+\usepackage[shortlabels]{enumitem}%control lists
+
+\usepackage[draft]{fixme}
+
+%Setup of memoir:
+\pagestyle{plain} %change to heading for running headings
+\nouppercaseheads %running heads should not be capitalized
+\captionnamefont{\small} %captions with small font
+\captiontitlefont{\small}
+\makeevenhead{headings}{\thepage}{}{\itshape\leftmark} %make headings italic instead of slanted (though we do not use headings right now)
+\makeoddhead{headings}{\itshape\rightmark}{}{\thepage}
+
+\setlrmarginsandblock{4cm}{*}{*}
+\setulmarginsandblock{4cm}{*}{*}
+\checkandfixthelayout 
+
+\raggedbottomsectiontrue%less harse than \raggedbottom
+%\allowdisplaybreaks %long equations may break
+
+\g at addto@macro\bfseries{\boldmath} %make math in bold text automatically bold
+
+\usepackage[english=american]{csquotes}
+
+\usepackage[hidelinks]{hyperref}
+	
+\usepackage[nameinlink]{cleveref}
+
+\title{\texttt{semtex}: For stripped Seman\!\TeX\ documents (v$0.1\beta$)}
+\date{\today}
+\author{Sebastian Ørsted (\href{mailto:sorsted at gmail.com}{sorsted at gmail.com})}
+
+\hypersetup{
+	pdfauthor={Sebastian Ørsted},
+	pdftitle={semtex: For stripped SemanTeX documents},
+	%pdfsubject={},
+	%pdfkeywords={},
+	%pdfproducer={Latex with hyperref, or other system},
+	%pdfcreator={pdflatex, or other tool},
+}
+
+\usepackage{showexpl}
+
+\lstset{%
+	language=[LaTeX]TeX,
+	basicstyle=\ttfamily\small,
+	commentstyle=\itshape\ttfamily\small,
+	alsoletter={\\},
+	escapechar=@,
+	breaklines=true,
+	breakindent={0pt},
+	captionpos=t,
+	pos=r,
+	tabsize=2,
+	%inputencoding=utf8,
+	explpreset={numbers=none,},
+	texcl=false,
+	wide=false,
+	width=.45\textwidth,
+}
+
+\newcommand\mylst{\lstinline[mathescape]}
+
+\def\<#1\>{\textrm{\textlangle\textit{#1}\textrangle}}
+
+\def\usercommand\<#1\>{\textrm{\textbackslash\textlangle\textit{#1}\textrangle}}
+
+\def\values\<#1\>{\textrm{\textlangle\textup{#1}\textrangle}}
+
+\def\num#1{\textsubscript{\textup{#1}}}
+
+\newcommand\default[1]{\smash{\underline{\smash{#1}}}}
+
+\newcommand\commandname[1]{\textbackslash\texttt{#1}}
+
+\let\pack=\texttt
+
+\newcommand\semantex{Seman\!\TeX\xspace}
+
+\newcommand\stripsemantex{\texttt{stripsemantex}\xspace}
+
+\usepackage{hologo}
+
+% Setting up SemanTeX:
+
+\usepackage{semtex}
+
+\makeatother
+
+\begin{document}
+
+\maketitle
+
+\noindent
+The package~\pack{semtex} is a small package
+that adds a collection of simple macros for parentheses
+and bullets.
+It exists for one purpose only:
+To be loaded by documents which were originally typeset
+using the package \semantex, but which have been stripped
+of \semantex markup using the package~\pack{stripsemantex}.
+Therefore, unless your document is one of those,
+simply \textbf{don't use this package}.
+
+
+And even if your document \emph{is} one of those, there is a good chance
+you will not have to load it after all. In most cases, you will be able to replace
+the macros it provides by macros from other packages.
+
+\chapter*{Bullet commands}
+
+The package provides the commands \mylst!\SemantexBullet! and \mylst!\SemantexDoubleBullet!.
+These commands print bullets which are smaller (and prettier, in my opinion)
+than the standard \lstinline!\bullet! command from~\LaTeX:
+\begin{LTXexample}
+$ H^{\SemantexBullet} $,
+$ H^{\SemantexDoubleBullet} $
+(compare to $H^{\bullet}$)
+\end{LTXexample}
+You can recreate them yourself as follows, rendering
+the package \pack{semtex} unnecessary for this purpose:
+\begin{lstlisting}
+\newcommand\SemantexBullet{%
+	\raisebox{-0.25ex}{\scalebox{1.2}{$\cdot$}}%
+}
+\newcommand\SemantexDoubleBullet{%
+	\SemantexBullet\SemantexBullet
+}
+\end{lstlisting}
+	
+\chapter*{Replacements for \texorpdfstring{\textbackslash\texttt{left} and~\textbackslash\texttt{right}}{\left and \right}}
+
+The package provides the commands \mylst!\SemantexLeft!
+and~\mylst!\SemantexRight!
+These work just like \lstinline!\left...\right!, but fix some spacing issues
+around these:
+\begin{LTXexample}
+\[
+	\SemantexLeft(
+		\frac{1}{2}
+	\SemantexRight]
+\]
+\end{LTXexample}
+They are completely equivalent to~\lstinline!\mleft! and~\lstinline!\mright!
+from the package~\pack{mleftright}, so it is safe to just load that package
+and replace the above commands by \lstinline!\mleft...\mright! instead.
+Alternatively, you can recreate them yourself by
+\begin{lstlisting}
+\newcommand\SemantexLeft{%
+	\mathopen{}\mathclose\bgroup\left
+}
+
+\newcommand\SemantexRight{%
+	\aftergroup\egroup\right
+}
+\end{lstlisting}
+
+\chapter*{Commands for scaled delimiters}
+
+First and foremost, the package provides the command
+\begin{lstlisting}
+\SemantexParentheses{@\values\<normal|auto|*|{\textit{other}}\>@}{@\<left parenthesis\>@}!\\
+		{@\<right parenthesis\>@}{@\<content\>@}
+\end{lstlisting}
+This one writes \<content\> enclosed in the pair of parentheses
+and with the size given by the first argument.
+Here,~\lstinline!normal! means normal size
+parentheses,
+and \lstinline!auto! and~\lstinline!*!
+mean auto-scaled parentheses using~\lstinline!\SemantexLeft...\SemantexRight!.
+If another value is received, that value
+is used for the parenthesis size,
+so the intended values are~\lstinline!\big!, \lstinline!\Big!,
+\lstinline!\bigg!,~\lstinline!\Bigg!:
+\begin{LTXexample}
+$\SemantexParentheses{normal}{(}{
+	)}{\frac{a}{b}}$,
+$\SemantexParentheses{auto}{[}{]}{
+	\frac{a}{b}}$,
+$\SemantexParentheses{\big}{
+	\langle}{\rangle}{\frac{a}{b}}$,
+$\SemantexParentheses{\Bigg}{\{}{
+	\}}{\frac{a}{b}}$,
+\end{LTXexample}
+The important property of this command
+is that inside the~\<content\>, you can access
+the delimiter size at any point using
+the command~\lstinline!\SemantexDelimiterSize!:
+\begin{LTXexample}
+$\SemantexParentheses{\Bigg}{\{}{\}}{
+	\frac{a}{b}
+	\SemantexDelimiterSize|
+	\frac{u}{v}
+}$
+\end{LTXexample}
+
+Secondly, the package provides the command
+\begin{lstlisting}
+\SemantexNoParentheses{@\<content\>@}
+\end{lstlisting}
+This command prints the content with no parentheses, but importantly, it also resets
+the command \lstinline!\SemantexDelimiterSize!
+to~\lstinline!{}!, i.e.~blank.
+This makes the following work:
+\begin{LTXexample}
+$\SemantexParentheses{\Bigg}{\{}{\}}{
+	\frac{a}{b}
+	\SemantexDelimiterSize|
+	\SemantexNoParentheses{
+		a
+		\SemantexDelimiterSize|
+		b
+	}
+}$
+\end{LTXexample}
+
+\end{document}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/semtex/semtex.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/semtex/semtex.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/semtex/semtex.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/semtex/semtex.sty	2020-09-07 21:23:16 UTC (rev 56288)
@@ -0,0 +1,83 @@
+\RequirePackage{xparse}
+\ProvidesExplPackage{semtex}{2020/09/07}{0.1beta}{}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%																%
+%		semtex -- for documents stripped of SemanTeX markup		%
+%		https://ctan.org/pkg/semantex							%
+%		(C) 2020 Sebastian Ørsted								%
+%       sorsted at gmail.com										%
+%																%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% Bullets:
+
+\box_new:N \g__semantex_bullet_box
+\hbox_set:Nn \g__semantex_bullet_box { $\cdot$ }
+\box_scale:Nnn \g__semantex_bullet_box {1.2} {1.2}
+\tl_set:Nn\g_semantex_bullet
+{
+	\box_move_up:nn{-0.25ex}{\box_use:N \g__semantex_bullet_box}
+}
+
+\tl_set:Nn\g_semantex_double_bullet{\g_semantex_bullet \g_semantex_bullet}
+
+\tl_set_eq:NN\SemantexBullet \g_semantex_bullet
+
+\tl_set_eq:NN \SemantexDoubleBullet \g_semantex_double_bullet
+
+
+% Parentheses:
+
+\cs_new:Npn\SemantexLeft { \mathopen{}\mathclose\bgroup\left }
+
+\cs_new:Npn\SemantexRight { \aftergroup\egroup\right }
+
+\tl_new:N\SemantexDelimiterSize
+
+\DeclareDocumentCommand\SemantexParentheses { mmmm }
+{
+	\str_case:nnF { #1 } % This is where \big,\Big, etc. go.
+	{
+		{ normal } {
+			\group_begin:
+			\tl_clear:N \SemantexDelimiterSize
+			\str_if_eq:nnF { #2 } { . } { \mathopen #2 }
+			#4
+			\str_if_eq:nnF { #3 } { . } { \mathclose #3 }
+			\group_end:
+		}
+		{ auto } {
+			\group_begin:
+			\tl_set_eq:NN \SemantexDelimiterSize \middle
+			\SemantexLeft #2
+			#4
+			\SemantexRight #3
+			\group_end:
+		}
+		{ * } {
+			\group_begin:
+			\tl_set_eq:NN \SemantexDelimiterSize \middle
+			\SemantexLeft #2
+			#4
+			\SemantexRight #3
+			\group_end:
+		}
+	}
+	{
+		\group_begin:
+		\tl_set_eq:NN\SemantexDelimiterSize #1
+		\mathopen #1 #2
+		#4
+		\mathclose #1 #3
+		\group_end:
+	}
+}
+
+\DeclareDocumentCommand\SemantexNoParentheses { m }
+{
+	\group_begin:
+	\tl_clear:N\SemantexDelimiterSize
+	#1
+	\group_end:
+}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/tex/latex/semtex/semtex.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/tlpkg/bin/tlpkg-ctan-check
===================================================================
--- trunk/Master/tlpkg/bin/tlpkg-ctan-check	2020-09-07 21:22:25 UTC (rev 56287)
+++ trunk/Master/tlpkg/bin/tlpkg-ctan-check	2020-09-07 21:23:16 UTC (rev 56288)
@@ -663,7 +663,7 @@
     sdaps sdrt sduthesis
     secdot secnum section sectionbox sectionbreak sectsty seealso
     selectp selinput selnolig semantex semantic semantic-markup semaphor
-    seminar semioneside semproc sepfootnotes sepnum seqsplit
+    seminar semioneside semproc semtex sepfootnotes sepnum seqsplit
     serbian-apostrophe serbian-date-lat serbian-def-cyr serbian-lig
     sesamanuel sesstime setdeck setspace seuthesis seuthesix sexam
     sf298 sffms sfg

Modified: trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc
===================================================================
--- trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc	2020-09-07 21:22:25 UTC (rev 56287)
+++ trunk/Master/tlpkg/tlpsrc/collection-latexextra.tlpsrc	2020-09-07 21:23:16 UTC (rev 56288)
@@ -1053,6 +1053,7 @@
 depend semantic-markup
 depend semioneside
 depend semproc
+depend semtex
 depend sepfootnotes
 depend seqsplit
 depend sesstime

Added: trunk/Master/tlpkg/tlpsrc/semtex.tlpsrc
===================================================================


More information about the tex-live-commits mailing list.