Skip to content

Commit

Permalink
Adds support for glossaries
Browse files Browse the repository at this point in the history
  • Loading branch information
Stephan Bökelmann committed Nov 29, 2023
1 parent aaea4eb commit 163740f
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 11 deletions.
18 changes: 12 additions & 6 deletions .github/workflows/make_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,26 @@ jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v2

- uses: actions/checkout@v2
- name: Install LaTeX
run: sudo apt-get install texlive-full

- name: Compile LaTeX document
uses: xu-cheng/latex-action@v2
with:
root_file: OmniView.tex
run: |
xelatex -output-directory=latex.out OmniView.tex
cd latex.out
makeglossaries OmniView
cd ..
xelatex -output-directory=latex.out OmniView.tex
mv latex.out/OmniView.pdf ./
- name: Upload PDF as Artifact
uses: actions/upload-artifact@v2
with:
name: Compiled-PDF
path: OmniView.pdf


- name: Create Release
uses: softprops/action-gh-release@v1
if: startsWith(github.ref, 'refs/tags/')
Expand Down
4 changes: 2 additions & 2 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@
"command": "latexmk",
"args": [
"-xelatex",
"-outdir=../latex.out",
"-outdir=./latex.out/",
"OmniView.tex"
]
}
],
"latex-workshop.latex.outDir": "../latex.out/",
"latex-workshop.latex.outDir": "latex.out/",
"latex-workshop.latex.recipes": [
{
"name": "latexmk (xelatex)",
Expand Down
19 changes: 16 additions & 3 deletions OmniView.tex
Original file line number Diff line number Diff line change
@@ -1,7 +1,19 @@
\documentclass{scrreprt}
\usepackage{glossaries}
\usepackage{listings}
\usepackage[]{graphicx}

\newglossaryentry{latex}{
name=LaTeX,
description={Ein Textsatzsystem}
}
\newglossaryentry{consumer}{
name=Consumer,
description={A program using a UaDI conform DLL to get generated data from a producer or device}
}
\makeglossaries


\begin{document}

\chapter{The Idea of OmniView}
Expand All @@ -11,6 +23,7 @@ \chapter{The Idea of OmniView}
In order for OmniView to work this way, there shall be a structured architectural approach, to enable modular development.
This includes dataproducer devices as well as analysis-tools.


\begin{figure}
\includegraphics[width=.9\textwidth]{./assets/pictures/overview.pdf}
\caption[]{Brief overview of the proposed structure}
Expand All @@ -21,14 +34,14 @@ \chapter{The Idea of OmniView}
There shall be a unified way to interact with an abstract data-producer.
This includes devices such as:
\begin{enumerate}
\item a USB-oscilloscope
\item a USB-oscilloscope \gls{latex}
\item a TCP/IP client, sending a continuous stream
\item a USB-logic-analyzer
\item a random-number-generator
\item a filedescriptor
\end{enumerate}

Since it is not known at compile-time, which devices will be used at runtime, the code can't be linked statically into OmniView (or any other data-consumer for that matter).
Since it is not known at compile-time, which devices will be used at runtime, the code can't be linked statically into OmniView (or any other data-\gls{consumer} for that matter).
Therefor an interface shall be defined, that gets used by the consumer, but the implementation of the data-handling ought to be provided in a dynamically linked library.
From here on forward we will refer to this as \lstinline|DLL| even though \lstinline|.dll| and \lstinline|.so| are meant equally.
If a windows \lstinline|.dll| or a linux \lstinline|.so| is meant specifically, please use the terms \lstinline|.dll| or \lstinline|.so|, otherwise \lstinline|DLL|.
Expand Down Expand Up @@ -63,6 +76,6 @@ \section{Memory Management Ideology}

\input{furtherDevl.tex}


\printglossaries

\end{document}

0 comments on commit 163740f

Please sign in to comment.