summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/skb/user-guide/repository/manual/headings-and-files.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/skb/user-guide/repository/manual/headings-and-files.tex')
-rw-r--r--Master/texmf-dist/doc/latex/skb/user-guide/repository/manual/headings-and-files.tex70
1 files changed, 70 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/latex/skb/user-guide/repository/manual/headings-and-files.tex b/Master/texmf-dist/doc/latex/skb/user-guide/repository/manual/headings-and-files.tex
new file mode 100644
index 00000000000..493786d965e
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/skb/user-guide/repository/manual/headings-and-files.tex
@@ -0,0 +1,70 @@
+\skbheading{Files and Headings}
+
+\DescribeMacro{\skbinput}
+\DescribeMacro{\skbheading}
+Just to remember: we have two different types of files in two
+different directory structures. The repository folder stores the
+content and the publish folder stores everything needed to produce
+complete documents. For the content in the repository, we mark headings
+with the macro \cmd{\skbheading}. This macro has no options and no arguments
+and is simply called with the text for the heading, as shown in
+\opt{text}{the following example.}\opt{note}{the first block on this slide.}
+
+\opt{text}{
+ \lstinputlisting[style=generic,language=TeX]{\skbfileroot{examples/skbheading}}
+}
+
+Leaving the argument empty will have the same effect as calling the original \LaTeX~
+macros directly with an empty argument.
+
+The association of a \LaTeX~document level with the heading is then defined
+for the published documents (in the publish folder) using the macro \cmd{\skbinput}.
+This macro provides a number of options and requires one argument.
+\opt{text}{The follwing examples}\opt{note}{The second block on this slide} shows
+a few use cases for \cmd{\skbinput}.
+\opt{text}{For all possible options, please see \autoref{tab:skbinput:options}}
+
+\opt{text}{
+ \lstinputlisting[style=genericLN,language=TeX]{\skbfileroot{examples/skbinput}}
+}
+
+\opt{text}{
+ \begin{table}[ht!]
+ \caption{Options for skbinput}
+ \label{tab:skbinput:options}
+ \begin{tabular*}{\textwidth}{ >{\small}p{.1\textwidth} >{\small}p{.40\textwidth} >{\small}p{.40\textwidth}}
+ \toprule
+ \textbf{Option} & \textbf{Description} & \textbf{Values} \\
+ \midrule
+ \skbinput[from=rep]{manual/skbinput-opt-table}
+ \bottomrule
+ \end{tabular*}
+ \end{table}
+}
+
+Let's start with the simpliest form, one argument only shown in line 1.
+The macro will look for a file called myfile.tex in the root directory of the \SKB.
+The file extension .tex is automatically added, and since we did not specify any
+special directory the root directory is used instead.
+If the file is not found, the macro will throw an error providing the full path and filename it
+did try to load.
+
+Line 2 shows how we can load the file \skbem[code]{myfile.tex} from the repository folder.
+As you can see, the option \skbem[code]{from} is supplied with the argument \skbem[code]{rep},
+which in fact directs the macro to look for \skbem[code]{myfile.tex} in the repository folder.
+Should the file be located in the folder for published documents, we simply change the
+\skbem[code]{from} option to \skbem[code]{pub} as shown in line 3.
+
+If \skbem[code]{from} is used and neither \skbem[code]{pub} nor \skbem[code]{rep} is given, the macro will trow an error.
+
+To associate a document level for the heading, we can use the option \skbem[code]{level} to define which
+level we want. This option understands all standard document levels from the memoir package: book, part,
+title, chapter, section, subsection and subsubsection. So, if we want to load myfile.tex as a chapter
+we simple invoke \cmd{\skbinput} as shown in line 4 of the example.
+
+Since myfile.tex is part of the repository,
+we combine the two options \skbem[code]{from} and \skbem[code]{level} (see line 5).
+This call to \cmd{\input} will load \skbem[code]{myfile.tex} from the repository and use \cmd{\chapter} for
+the heading found in that file. If \skbem[code]{myfile.tex} is in a sub folder, we simply add that sub folder to
+the filename. An example is shown in line 6 assuming the the file is located in the repository sub-folder
+examples.