From 8463d2c46b9454839a13e28166e5d6a9641e4fef Mon Sep 17 00:00:00 2001 From: gottsi Date: Sat, 25 Feb 2023 22:53:59 +0100 Subject: [PATCH 1/4] Added .vscode folder: * Snippets for bibtex * Recommended extensions * Snippets for LaTeX extended markdown * General settings for cSpell, todoHighlights and pandocCiter * Tasks for building of thesis --- .vscode/bibtex.code-snippets | 64 ++++++++++++++++++++++++++++++++++ .vscode/extensions.json | 16 +++++++++ .vscode/markdown.code-snippets | 39 +++++++++++++++++++++ .vscode/settings.json | 12 +++++++ .vscode/tasks.json | 24 +++++++++++++ 5 files changed, 155 insertions(+) create mode 100644 .vscode/bibtex.code-snippets create mode 100644 .vscode/extensions.json create mode 100644 .vscode/markdown.code-snippets create mode 100644 .vscode/settings.json create mode 100644 .vscode/tasks.json diff --git a/.vscode/bibtex.code-snippets b/.vscode/bibtex.code-snippets new file mode 100644 index 0000000..607dc59 --- /dev/null +++ b/.vscode/bibtex.code-snippets @@ -0,0 +1,64 @@ +{ + "Online reference": { + "prefix": ["online"], + "body": [ + "@online{${1:citeKey},", + " author = {${2:author}},", + " title = {{${3:title}}},", + " url = {${4:url}},", + " year = {${5:updateYear}},", + " month = {${6:updateMonth}},", + " day = {${7:updateDay}},", + " urldate = {$CURRENT_YEAR-$CURRENT_MONTH-$CURRENT_DATE}", + "}", + ], + "description": "Template for online reference" + }, + "Article reference": { + "prefix": ["article"], + "body": [ + "@article{${1:citeKey},", + " author = {${2:author}},", + " title = {{${3:title}}},", + " journal = {{${4:journal}}},", + " year = {${5:year}},", + " volume = {${6}},", + " number = {${7}},", + " pages = {${8}},", + " month = {${9}},", + " note = {${10}},", + "}", + ], + "description": "Template for article reference" + }, + "Book reference": { + "prefix": ["book"], + "body": [ + "@book{${1:citeKey},", + " author = {${2:author}},", + " editor = {${3:editor}},", + " title = {{${4:title}}},", + " publisher = {{${5:publisher}}},", + " year = {${6:year}},", + " volume = {${7}},", + " number = {${8}},", + " pages = {${9}},", + " month = {${10}},", + " note = {${11}},", + "}", + ], + "description": "Template for book reference" + }, + "Reference": { + "prefix": ["ref"], + "body": [ + "@${1:kind}{${2:citeKey},", + " author = {${3:author}},", + " title = {{${4:title}}},", + " year = {${5:year}},", + "}", + ], + "description": "Template for a reference " + }, + //More templates are appreciated +} \ No newline at end of file diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..adeb3ee --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,16 @@ +{ + "recommendations": [ + "sygene.auto-correct", + "streetsidesoftware.code-spell-checker", + "streetsidesoftware.code-spell-checker-german", + "mhutchie.git-graph", + "waderyan.gitblame", + "shaharkazaz.git-merger", + "codezombiech.gitignore", + "yzhang.markdown-all-in-one", + "notzaki.pandocciter", + "tomoki1207.pdf", + "wayou.vscode-todo-highlight", + "spmeesseman.vscode-taskexplorer" + ] +} \ No newline at end of file diff --git a/.vscode/markdown.code-snippets b/.vscode/markdown.code-snippets new file mode 100644 index 0000000..d7243e1 --- /dev/null +++ b/.vscode/markdown.code-snippets @@ -0,0 +1,39 @@ +{ + // Place your snippets for markdown here. Each snippet is defined under a snippet name and has a prefix, body and + // description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are: + // $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the + // same ids are connected. + // Example: + // "Print to console": { + // "prefix": "log", + // "body": [ + // "console.log('$1');", + // "$2" + // ], + // "description": "Log output to console" + // } + + "Code Block": { + "prefix": ["codeBlock"], + "body": [ + "~~~~~~~~~~~~~~~~~~~~~~~~~~~{caption=\"${1:caption}\" .${2:fileExtension}}", + "$0", + "~~~~~~~~~~~~~~~~~~~~~~~~~~~" + ], + "description": "Create Code Block" + }, + "Todo": { + "prefix": ["todo"], + "body": [ + "\\todo{${0:Text}}" + ], + "description": "Create Todo" + }, + "Comment": { + "prefix": ["comment"], + "body": [ + "" + ], + "description": "Create comment" + }, +} \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..210a43f --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,12 @@ +{ + "cSpell.words": [ + "AHWIN", + "colour", + "colours" + ], + "cSpell.language": "en,de", + "todohighlight.keywords": [ + "\\todo" + ], + "PandocCiter.RootFile": "metadata.yaml", +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..7f15620 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,24 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "Build PDF", + "command": "wsl make pdf -C HTLLE-DA-Vorlage SOURCEDIR='$(pwd)'", + "type": "shell", + "problemMatcher": [], + "group": { + "kind": "build", + "isDefault": true + } + }, + { + "label": "Check Spelling", + "command": "wsl make spellcheck -C HTLLE-DA-Vorlage SOURCEDIR='$(pwd)'", + "type": "shell", + "problemMatcher": [], + "group": { + "kind": "test", + } + } + ] +} \ No newline at end of file From 9baf8c012c3b029385b8aa5909a72e4884fbafd4 Mon Sep 17 00:00:00 2001 From: gottsi Date: Sat, 25 Feb 2023 23:53:59 +0100 Subject: [PATCH 2/4] Edited the readme to reflect .vscode changes --- README.md | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3c9ba2c..c65c0c9 100644 --- a/README.md +++ b/README.md @@ -55,6 +55,8 @@ $ sudo apt-get update $ sudo apt-get install git build-essential make-guile texlive-full pandoc pandoc-citeproc tree rsync hunspell hunspell-de-at ``` +Bei einer englischen Diplomarbeit muss außerdem entweder das Paket `hunspell-en-gb` oder `hunspell-en-us` installiert werden. + # Grundlegende Schritte ## Automatisches erstellen einer Diplomarbeit @@ -166,6 +168,12 @@ $ tree ~/Diplomarbeit ├── literatur.bib <= Das ist das Literaturverzeichnis ├── metadata.yaml <= Grundlegende Informationen zur Diplomarbeit │ +├── .vscode <= Einstellungen und hilfreiche Dateien für VS Code +│ ├── bibtex.code-snippets +│ ├── extensions.json +│ ├── markdown.code-snippets +│ ├── settings.json +│ └── tasks.json ├── img <= Hier kommen alle Ihre Bilder rein │   ├── graph.png │   └── screenshot_eclipse.png @@ -195,6 +203,7 @@ Hier nochmals eine Erklärung der verschiedenen Dateien: * Achten Sie darauf dass sie dort nur `*.jpg` und `*.png` Dateien ablegen * Groß und Kleinschreibung müssen beachtet werden. So werden unter Linux die Datein `Hallo.jpg` und `hallo.jpg` als zwei unterschiedliche Dateien angesehen. Unter Windows hingegen nicht. * Das `/pdfs` Verzeichnis beinhaltet Dateien welche im Appendix (auszugsweise oder ganz) eingefügt werden. Damit dies geschieht müssen sie aber im `metadata.yaml` korrekt referenziert werden. Es ist keine Schande hier viele Dateien abzulegen - sofern diese einen Bezug zur Diplomarbeit haben. +* Das Verzeichnisse `.vscode` enthält Einstellungen, Snippets und eine Liste von empfohlenen Erweiterungen für VS Code. VS Code sollte selbständig eine Benachrichtigung rechts unten einblenden, ob die Empfohlenen Erweiterungen installiert werden sollen. Wenn das nicht passiert kann man auch in den Tab Erweiterungen gehen und nach `@recommended:workspace` suchen. Dort kann man dann alle empfohlenen Erweiterungen installieren. Die Erweiterungen beinhalten eine simple Rechtschreibüberprüfung in Deutsch und Englisch (Code Spell Checker), einige nützliche git-Tools (Git Graph, Blame & Merge), die Möglichkeit PDFs direkt in VS Code anzuzeigen (vscode-pdf) und ein Tool womit vereinfacht Literatur Referenzen eingefügt werden können (Pandoc Citer). ### Befüllen der speziellen Dateien @@ -290,7 +299,7 @@ Um das Zusammensuchen der Quellenangaben für Bücher zu vereinfachen kann man i ### Bauen der Diplomarbeit als PDF Datei -#### Lokal +#### **Lokal** Damit das PDF für die Diplomarbeit erstellt wird muss (aus Ihrem Basisverzeichnis heraus) folgender Befehl abgesetzt werden: ``` @@ -306,7 +315,11 @@ alias da="make pdf -C HTLLE-DA-Vorlage SOURCEDIR=$(pwd)" ``` Damit beschränkt sich Ihre eigentliche Arbeit darauf, die Markdown Files zu editieren (nicht veressen zu speichern) und anschließend den neuen Alias `da` aufzurufen. Danach haben Sie immer die neuste Diplomarbeit gebaut. -#### Remote +Mit den mitgelieferten Tasks kann in VS Code das Bauen entweder über das Ausführen der Tasks geschehen oder mittels Hotkeys. Standardmäßig ist `Strg + Shift + B` für den Standarttask vorgesehen. Dieser ist bei den angegebenen Tasks `Build PDF`, welcher, wie der Name sagt, die PDF für die Diplomarbeit baut. Dazu gibt es auch einen Task, um die Rechtschreibprüfung zu starten. + +Noch einfacher ist das Starten der Tasks mit der Erweiterung "Task Explorer". Dort können beide Tasks in einem separaten Fenster gefunden und gestartet werden. Die Tasks funktionieren jedoch nur wenn im Lokalen wsl alle benötigten Pakete installiert sind. + +#### **Remote** Sollten Sie die notwendigen Tools (pandoc, LaTeX, etc.) nicht lokal installieren wollen und Sie haben Ihre Diplomarbeit am GIT-Server der HTL versioniert, dann können Sie Ihre PDF auch am [Jenkins](https://itsp.htl-leoben.at/ci) bauen und sich per E-Mail zuschicken lassen. Es wird dabei immer das aktuellste Template verwendet. Öffnen Sie dazu den [Jenkins-Job](https://itsp.htl-leoben.at/ci/job/HTLLE-Diplomarbeit/build?delay=0sec) und melden Sie sich ggf. mit Ihren Benutzerdaten (z.B.: `1911wit00`) an. From 40aeb4a031457b1c8f46fbc6c70bc99f515699e3 Mon Sep 17 00:00:00 2001 From: gottsi Date: Sat, 25 Feb 2023 23:54:23 +0100 Subject: [PATCH 3/4] moved .vscode into example --- {.vscode => example/.vscode}/bibtex.code-snippets | 0 {.vscode => example/.vscode}/extensions.json | 0 {.vscode => example/.vscode}/markdown.code-snippets | 0 {.vscode => example/.vscode}/settings.json | 0 {.vscode => example/.vscode}/tasks.json | 0 5 files changed, 0 insertions(+), 0 deletions(-) rename {.vscode => example/.vscode}/bibtex.code-snippets (100%) rename {.vscode => example/.vscode}/extensions.json (100%) rename {.vscode => example/.vscode}/markdown.code-snippets (100%) rename {.vscode => example/.vscode}/settings.json (100%) rename {.vscode => example/.vscode}/tasks.json (100%) diff --git a/.vscode/bibtex.code-snippets b/example/.vscode/bibtex.code-snippets similarity index 100% rename from .vscode/bibtex.code-snippets rename to example/.vscode/bibtex.code-snippets diff --git a/.vscode/extensions.json b/example/.vscode/extensions.json similarity index 100% rename from .vscode/extensions.json rename to example/.vscode/extensions.json diff --git a/.vscode/markdown.code-snippets b/example/.vscode/markdown.code-snippets similarity index 100% rename from .vscode/markdown.code-snippets rename to example/.vscode/markdown.code-snippets diff --git a/.vscode/settings.json b/example/.vscode/settings.json similarity index 100% rename from .vscode/settings.json rename to example/.vscode/settings.json diff --git a/.vscode/tasks.json b/example/.vscode/tasks.json similarity index 100% rename from .vscode/tasks.json rename to example/.vscode/tasks.json From c57499ea1bc1a93654f0b057e55679ef02d5fb40 Mon Sep 17 00:00:00 2001 From: Sascha Gottsbacher <181wita07@o365.htl-leoben.at> Date: Sun, 26 Feb 2023 11:16:17 +0100 Subject: [PATCH 4/4] Added bibliography for Pandoc Citer --- example/metadata.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/example/metadata.yaml b/example/metadata.yaml index 4ae21ac..e947385 100644 --- a/example/metadata.yaml +++ b/example/metadata.yaml @@ -7,6 +7,8 @@ da-keywords: HTLLE, Keyword1, Keyword2, Keyword3 #lang: english +bibliography: [literatur.bib] + da-author: - vorname: Joltawan nachname: Barodscheff