summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/termsim/termsim-doc-en.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-12-26 21:21:18 +0000
committerKarl Berry <karl@freefriends.org>2021-12-26 21:21:18 +0000
commitb21cfe3d39f2f88863c9cb3e0f4c64bb44dc13f1 (patch)
tree217eba2ec623f32d7e85c2988ab16c41a698111e /Master/texmf-dist/doc/latex/termsim/termsim-doc-en.tex
parentbf68f1da406f4d5aec0f69d490fa7231041b68b5 (diff)
termsim (26dec21)
git-svn-id: svn://tug.org/texlive/trunk@61414 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/termsim/termsim-doc-en.tex')
-rw-r--r--Master/texmf-dist/doc/latex/termsim/termsim-doc-en.tex563
1 files changed, 563 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/termsim/termsim-doc-en.tex b/Master/texmf-dist/doc/latex/termsim/termsim-doc-en.tex
new file mode 100644
index 00000000000..7616e696f4d
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/termsim/termsim-doc-en.tex
@@ -0,0 +1,563 @@
+\documentclass{ctxdoc}
+\usepackage{minted}
+\usepackage{listings}
+\usepackage{xcolor}
+\usepackage{xcolor-material}
+\usepackage{termsim}
+
+\NewDocumentCommand{\init}{+v}{\hspace{\fill}Init~=~\textcolor{blue}{\bfseries#1}}
+\DeclareDocumentCommand\opt{m}{\texttt{#1}}
+\DeclareDocumentCommand\kvopt{mm}
+ {\texttt{#1\breakablethinspace=\breakablethinspace#2}}
+\def\breakablethinspace{\hskip 0.16667em\relax}
+
+ \title{\bfseries\pkg{termsim}: terminal simulation pachage}
+ \author{nangeng\\ \url{nangeng@nwafu.edu.cn}}
+ \date{2021/12/26\qquad v1.1.1\thanks{\url{https://github.com/registor/termsim}}\thanks{\url{https://gitee.com/nwafu_nan/termsim}}}
+
+\begin{document}
+
+ \maketitle
+
+ \begin{abstract}
+
+ The \pkg{termsim} is a \pkg{tcolorbox}-based package developed with \LaTeX3,
+ which provides a \env{terminal} environment and a \tn{termfile} macro for simulationg
+ terminal in Win10, Mac or Ubuntu with dark, light or white color theme.
+ The \env{terminal} environment creates terminal with it's body and
+ the \tn{termfile} macro is used to read in the specified file and output it in the simulated terminal.
+ The starred \env{terminal*} environment and \tn{termfile*} macro are also provided
+ to simulate a terminal with comments at the bottom of terminal.
+ All style and color theme can be setted by \tn{termset} macro
+ or environment's and macro's key-value options.
+
+ \end{abstract}
+
+ \tableofcontents
+
+ \section{Introduction}
+
+ \pkg{termsim} is an \LaTeX package for simulating Win10, Mac or Ubuntu
+ terminal with dark, light or white color theme.
+
+ \section{Interface}
+
+ \subsection{\env{terminal} and \env{terminal*} environment}
+
+ \begin{function}[added=2021-12-17,updated=2021-12-17]{terminal,terminal*}
+ \begin{syntax}
+ \tn{begin}\{terminal\} \oarg{options} \Arg{terminal title}
+ .....
+ \tn{end}\{terminal\}
+
+ \tn{begin}\{terminal*\} \oarg{options} \oarg{comments} \Arg{terminal title}
+ .....
+ \tn{end}\{terminal*\}
+ \end{syntax}
+
+ Typesetting terminal with environment body.
+ You can set the title for the terminal by using \Arg{terminal title}.
+
+ The appearance of the terminal is set by key-value in \oarg{options}.
+
+ The starred environment \texttt{terminal*} is used to add comments at the bottom of terminal,
+ note that this needs to be done with \oarg{comments} after \oarg{options}.
+
+ Of course the key-value \oarg{options} can alse be set
+ via the comma-separated key-value list of the \tn{termset} macro.
+
+ \end{function}
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \termset{os=win10,theme=dark,shstretch=1.0}
+ \bgin{terminal}{terminal title}
+ Volume in drive C is SSD_files
+ Volume Serial Number is 0001-C78B
+
+ Directory of C:\Users\Administrator
+
+ 2018/07/21 15:39 <DIR> .
+ 2018/07/21 15:39 <DIR> ..
+ 2018/07/13 08:35 <DIR> 3D Objects
+ 2018/07/13 08:35 <DIR> Contacts
+ 2018/08/06 07:46 <DIR> Desktop
+ 2 File(s) 6,029,312 bytes
+ 18 Dir(s) 14,035,107,840 bytes free
+ \end{terminal}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=win10,theme=dark,shstretch=1.0}
+\begin{terminal}{terminal title}
+ Volume in drive C is SSD_files
+ Volume Serial Number is 0001-C78B
+ Directory of C:\Users\Administrator
+ 2018/07/21 15:39 <DIR> .
+ 2018/07/21 15:39 <DIR> ..
+ 2018/07/13 08:35 <DIR> 3D Objects
+ 2018/07/13 08:35 <DIR> Contacts
+ 2018/08/06 07:46 <DIR> Desktop
+ 2 File(s) 6,029,312 bytes
+ 18 Dir(s) 14,035,107,840 bytes free
+\end{terminal}
+\end{minipage}
+\end{center}
+
+ \subsection{\tn{termfile} and \tn{termfile*} macro}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{\termfile,\termfile*}
+ \begin{syntax}
+ \tn{termfile} \oarg{options} \Arg{terminal title} \Arg{contents file}
+ \tn{termfile*} \oarg{options} \oarg{comments} \Arg{terminal title} \Arg{contentes file}
+ \end{syntax}
+
+ Typesetting terminal from a file.
+ You can set the title for the terminal by using \Arg{terminal title}.
+
+ The appearance of the terminal is set by key-value in \oarg{options}.
+
+ The starred macro \texttt{termfile*} is used to add comments at the bottom of terminal,
+ note that this needs to be done with \oarg{comments} after \oarg{options}.
+
+ Of course the key-value \oarg{options} can alse be set
+ via the comma-separated key-value list of the \tn{termset} macro.
+ \end{function}
+
+ \newpage
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \termfile{terminal title}{test.bat}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termfile{terminal title}{test.bat}
+\end{minipage}
+\end{center}
+
+\subsection{\tn{termset} macro}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{\termset}
+ \begin{syntax}
+ \tn{termset} \marg{key-values}
+ \end{syntax}
+ The arguments to \tn{termset} are a set of options separated by commas
+ in the form \kvopt{\meta{key}}{\meta{value}}.
+ The \meta{value} of some options can be omitted.
+ For the same option, subsequent settings will override previous settings.
+
+ Most options was initialized with default values.
+
+ \tn{termset} uses \LaTeX3 style key settings,
+ supporting different types and multiple levels of option settings.
+ In the \kvopt{\meta{key}}{\meta{value}} list, the spaces around "|=|"
+ do not affect anything; However, it should be noted that \textbf{no blank lines}
+ are allowed in the list.
+ The "|= true|" in the parameter \kvopt{\meta{option}}{true} for the Boolean type can be omitted.
+
+ \end{function}
+
+ \section{Options}
+
+ The \pkg{termsim} package provides a number of options to set the style of the terminal.
+ The following options can be set with \tn{termset} macro.
+ Also, these options can be set with the \env{terminal}(\env{terminal*}) environment's
+ or the \tn{termfile}(\tn{termfile*}) command's \oarg{options}.
+
+ \subsection{shell code engine}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{minted}
+ \begin{syntax}
+ minted = <\TTF> \init{true}
+ \end{syntax}
+ \opt{minted} is used to set shell code engine, if it is \textbf{true} then
+ the \pkg{minted} package is used, if it is \textbf{false} then
+ the \pkg{listings} package is used. The default value is \textbf{true}.
+ \end{function}
+
+ \subsection{os type}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{os}
+ \begin{syntax}
+ os = <win10|mac|ubuntu> \init{win10}
+ \end{syntax}
+ \opt{os} is used to set Operating System type. The default value is \textbf{win10}.
+ \end{function}
+
+ \subsection{color theme}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{theme}
+ \begin{syntax}
+ theme = <dark|light|white> \init{dark}
+ \end{syntax}
+ \opt{theme} is used to set terminal color theme. The default value is \textbf{dark}.
+ \end{function}
+
+ \subsection{shell code style}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{shstyle}
+ \begin{syntax}
+ shstyle = \Arg{style} \init{bw}
+ \end{syntax}
+ \opt{shstyle} is used to set shell code style, valid only for the \pkg{minted} engine.
+ The default value is \textbf{bw}.
+ \end{function}
+
+ \subsection{shell code fontsize}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{shsize}
+ \begin{syntax}
+ shsize = \Arg{fontsize} \init{\small}
+ \end{syntax}
+ \opt{shsize} is used to set shell code fontsize, valid only for \pkg{minted} engine.
+ The default value is\textbf{\tn{small}}.
+ \end{function}
+
+ \subsection{comment format}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{commentf}
+ \begin{syntax}
+ commentf = \Arg{format group} \init{\small\sffamily}
+ \end{syntax}
+ \opt{commentf} is used to set comment format at terminal bottom.
+ The default value is \textbf{\tn{small}\tn{sffamily}}.
+ \end{function}
+
+ \subsection{shell code baseline stretch}
+
+ \begin{function}[added=2021-12-18,updated=2021-12-18]{shstretch}
+ \begin{syntax}
+ shstretch = \Arg{float number} \init{1.0}
+ \end{syntax}
+ \opt{shstretch} is used to set shell code baseline stretch, valid only for \pkg{minted} engine.
+ The default value is\textbf{1.0}.
+ \end{function}
+
+ \newpage
+
+ \section{Examples}
+
+ The \pkg{termsim} package can be used in situations
+ where the operating system terminal window needs to be typeset
+ to avoid the use of screenshots.
+ Terminal windows can be with or without underline comments
+ and can be dark, light or white color themes.
+
+ \subsection{Win10 terminal}
+
+ \subsubsection{\env{terminal} or \env{terminal*} environment}
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \termset{os=win10,theme=dark,shstretch=1.0}
+ \begin{terminal}{terminal title}
+ Volume in drive C is SSD_files
+ Volume Serial Number is 0001-C78B
+ Directory of C:\Users\Administrator
+ 2018/07/21 15:39 <DIR> .
+ 2018/07/21 15:39 <DIR> ..
+ 2018/07/13 08:35 <DIR> 3D Objects
+ 2018/07/13 08:35 <DIR> Contacts
+ 2018/08/06 07:46 <DIR> Desktop
+ 2 File(s) 6,029,312 bytes
+ 18 Dir(s) 14,035,107,840 bytes free
+ \end{terminal}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=win10,theme=dark,shstretch=1.0}
+\begin{terminal}{terminal title}
+ Volume in drive C is SSD_files
+ Volume Serial Number is 0001-C78B
+ Directory of C:\Users\Administrator
+2018/07/21 15:39 <DIR> .
+2018/07/21 15:39 <DIR> ..
+2018/07/13 08:35 <DIR> 3D Objects
+2018/07/13 08:35 <DIR> Contacts
+2018/08/06 07:46 <DIR> Desktop
+ 2 File(s) 6,029,312 bytes
+ 18 Dir(s) 14,035,107,840 bytes free
+\end{terminal}
+\end{minipage}
+\end{center}
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \begin{terminal*}[os=win10,theme=light][comment text]{terminal title}
+ Volume in drive C is SSD_files
+ Volume Serial Number is 0001-C78B
+ Directory of C:\Users\Administrator
+ 2018/07/21 15:39 <DIR> .
+ 2018/07/21 15:39 <DIR> ..
+ 2018/07/13 08:35 <DIR> 3D Objects
+ 2018/07/13 08:35 <DIR> Contacts
+ 2018/08/06 07:46 <DIR> Desktop
+ 2 File(s) 6,029,312 bytes
+ 18 Dir(s) 14,035,107,840 bytes free
+ \end{terminal*}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\begin{terminal*}[os=win10,theme=light][comment text]{terminal title}
+ Volume in drive C is SSD_files
+ Volume Serial Number is 0001-C78B
+ Directory of C:\Users\Administrator
+2018/07/21 15:39 <DIR> .
+2018/07/21 15:39 <DIR> ..
+2018/07/13 08:35 <DIR> 3D Objects
+2018/07/13 08:35 <DIR> Contacts
+2018/08/06 07:46 <DIR> Desktop
+ 2 File(s) 6,029,312 bytes
+ 18 Dir(s) 14,035,107,840 bytes free
+\end{terminal*}
+\end{minipage}
+\end{center}
+
+ \subsubsection{\tn{termfile} or \tn{termfile*} macro}
+
+ \begin{Verbatim}[frame=none,numbers=left]
+ \centering
+ \termset{os=win10,theme=dark}
+ \termfile{terminal title}{test.bat}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=win10,theme=dark}
+\termfile{terminal title}{test.bat}
+\end{minipage}
+\end{center}
+
+ \begin{Verbatim}[frame=none,numbers=left]
+ \centering
+ \termfile*[os=win10,theme=light][comment text]{terminal title}{test.bat}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termfile*[os=win10,theme=light][comment text]{terminal title}{test.bat}
+\end{minipage}
+\end{center}
+
+ \newpage
+ \subsection{Mac terminal}
+
+ \subsubsection{\env{terminal} or \env{terminal*} environment}
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \termset{os=mac,theme=dark}
+ \begin{terminal}{terminal title}
+ xxxxxx@xxxxxx-lap:~$ ls
+ Desktop Downloads p2 Public Templates Videos
+ Documents Music Pictures snap '#test#' workspace
+ xxxxxx@xxxxxx-lap:~$
+ \end{terminal}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=mac,theme=dark}
+\begin{terminal}{terminal title}
+ xxxxxx@xxxxxx-lap:~$ ls
+ Desktop Downloads p2 Public Templates Videos
+ Documents Music Pictures snap '#test#' workspace
+ xxxxxx@xxxxxx-lap:~$
+\end{terminal}
+\end{minipage}
+\end{center}
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \begin{terminal*}[os=mac,theme=light][comment text]{terminal title}
+ xxxxxx@xxxxxx-lap:~$ ls
+ Desktop Downloads p2 Public Templates Videos
+ Documents Music Pictures snap '#test#' workspace
+ xxxxxx@xxxxxx-lap:~$
+ \end{terminal*}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\begin{terminal*}[os=mac,theme=light][comment text]{terminal title}
+ xxxxxx@xxxxxx-lap:~$ ls
+ Desktop Downloads p2 Public Templates Videos
+ Documents Music Pictures snap '#test#' workspace
+ xxxxxx@xxxxxx-lap:~$
+\end{terminal*}
+\end{minipage}
+\end{center}
+
+ \subsubsection{\tn{termfile} or \tn{termfile*} macro}
+
+ \begin{Verbatim}[frame=none,numbers=left]
+ \centering
+ \termset{os=mac,theme=dark}
+ \termfile{terminal title}{testls}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=mac,theme=dark}
+\termfile{terminal title}{testls}
+\end{minipage}
+\end{center}
+ \newpage
+ \begin{Verbatim}[frame=none,numbers=left]
+ \centering
+ \termfile*[os=mac,theme=light][comment text]{terminal title}{testls}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termfile*[os=mac,theme=light][comment text]{terminal title}{testls}
+\end{minipage}
+\end{center}
+
+ \subsection{Ubuntu terminal}
+
+ \subsubsection{\env{terminal} or \env{terminal*} environment}
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \termset{os=ubuntu,theme=dark}
+ \begin{terminal}{terminal title}
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ git clone git@gitee.com:xxxxxx/xxxxxx
+ Cloning into 'xxxxxx'...
+ remote: Enumerating objects: 106, done.
+ remote: Counting objects: 100% (106/106), done.
+ remote: Compressing objects: 100% (105/105), done.
+ remote: Total 106 (delta 9), reused 0 (delta 0)
+ Receiving objects: 100% (106/106), 237.88 MiB | 730.00 KiB/s, done.
+ Resolving delta: 100% (9/9), done.
+ Unpacking: 100% (75/75), done.
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ \end{terminal}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=ubuntu,theme=dark}
+\begin{terminal}{terminal title}
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ git clone git@gitee.com:xxxxxx/xxxxxx
+ Cloning into 'xxxxxx'...
+ remote: Enumerating objects: 106, done.
+ remote: Counting objects: 100% (106/106), done.
+ remote: Compressing objects: 100% (105/105), done.
+ remote: Total 106 (delta 9), reused 0 (delta 0)
+ Receiving objects: 100% (106/106), 237.88 MiB | 730.00 KiB/s, done.
+ Resolving delta: 100% (9/9), done.
+ Unpacking: 100% (75/75), done.
+ xxxxxx@xxxxxx-lap:~/Desktop $
+\end{terminal}
+\end{minipage}
+\end{center}
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \begin{terminal*}[os=ubuntu,theme=light][comment text]{terminal title}
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ git clone git@gitee.com:xxxxxx/xxxxxx
+ Cloning into 'xxxxxx'...
+ remote: Enumerating objects: 106, done.
+ remote: Counting objects: 100% (106/106), done.
+ remote: Compressing objects: 100% (105/105), done.
+ remote: Total 106 (delta 9), reused 0 (delta 0)
+ Receiving objects: 100% (106/106), 237.88 MiB | 730.00 KiB/s, done.
+ Resolving delta: 100% (9/9), done.
+ Unpacking: 100% (75/75), done.
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ \end{terminal*}
+ \end{Verbatim}
+\newpage
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\begin{terminal*}[os=ubuntu,theme=light][comment text]{terminal title}
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ git clone git@gitee.com:xxxxxx/xxxxxx
+ Cloning into 'xxxxxx'...
+ remote: Enumerating objects: 106, done.
+ remote: Counting objects: 100% (106/106), done.
+ remote: Compressing objects: 100% (105/105), done.
+ remote: Total 106 (delta 9), reused 0 (delta 0)
+ Receiving objects: 100% (106/106), 237.88 MiB | 730.00 KiB/s, done.
+ Resolving delta: 100% (9/9), done.
+ Unpacking: 100% (75/75), done.
+ xxxxxx@xxxxxx-lap:~/Desktop $
+\end{terminal*}
+\end{minipage}
+\end{center}
+
+ \subsubsection{\tn{termfile} or \tn{termfile*} macro}
+
+ \begin{Verbatim}[frame=none,numbers=left]
+ \centering
+ \termset{os=ubuntu,theme=dark}
+ \termfile{terminal title}{testsh}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=ubuntu,theme=dark}
+\termfile{terminal title}{testsh}
+\end{minipage}
+\end{center}
+
+ \begin{Verbatim}[frame=none,numbers=left]
+ \centering
+ \termfile*[os=ubuntu,theme=light][comment text]{terminal title}{testsh}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termfile*[os=ubuntu,theme=light][comment text]{terminal title}{testsh}
+\end{minipage}
+\end{center}
+
+ You can also use the white color theme and
+ use black text on a white background for print on paper.
+
+ \begin{Verbatim}[frame=none,numbers=left,gobble=5]
+ \centering
+ \termset{os=ubuntu,theme=white}
+ \begin{terminal}{terminal title}
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ git clone git@gitee.com:xxxxxx/xxxxxx
+ Cloning into 'xxxxxx'...
+ remote: Enumerating objects: 106, done.
+ remote: Counting objects: 100% (106/106), done.
+ remote: Compressing objects: 100% (105/105), done.
+ remote: Total 106 (delta 9), reused 0 (delta 0)
+ Receiving objects: 100% (106/106), 237.88 MiB | 730.00 KiB/s, done.
+ Resolving delta: 100% (9/9), done.
+ Unpacking: 100% (75/75), done.
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ \end{terminal}
+ \end{Verbatim}
+
+\begin{center}
+\begin{minipage}{0.85\textwidth}
+\termset{os=ubuntu,theme=white}
+\begin{terminal}{terminal title}
+ xxxxxx@xxxxxx-lap:~/Desktop $
+ git clone git@gitee.com:xxxxxx/xxxxxx
+ Cloning into 'xxxxxx'...
+ remote: Enumerating objects: 106, done.
+ remote: Counting objects: 100% (106/106), done.
+ remote: Compressing objects: 100% (105/105), done.
+ remote: Total 106 (delta 9), reused 0 (delta 0)
+ Receiving objects: 100% (106/106), 237.88 MiB | 730.00 KiB/s, done.
+ Resolving delta: 100% (9/9), done.
+ Unpacking: 100% (75/75), done.
+ xxxxxx@xxxxxx-lap:~/Desktop $
+\end{terminal}
+\end{minipage}
+\end{center}
+
+\end{document}