aufgeräumt
This commit is contained in:
parent
22086eec9e
commit
1ae825a446
4
.gitattributes
vendored
Normal file
4
.gitattributes
vendored
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
*.adoc text eol=lf
|
||||||
|
*.yml text eol=lf
|
||||||
|
*.sh text eol=lf
|
||||||
|
Makefile text eol=lf
|
5
.gitignore
vendored
5
.gitignore
vendored
@ -2,9 +2,12 @@
|
|||||||
|
|
||||||
# Files
|
# Files
|
||||||
*.zip
|
*.zip
|
||||||
|
desktop.ini
|
||||||
|
|
||||||
# Folders
|
# Folders
|
||||||
# .vscode/**
|
|
||||||
build/**
|
build/**
|
||||||
!build/.gitkeep
|
!build/.gitkeep
|
||||||
|
|
||||||
|
# Lokale Branch-Kennzeichnung (nicht tracken)
|
||||||
|
# Git-Hook aus ./tools/dev-setup.sh
|
||||||
|
BRANCH-*
|
||||||
|
39
.vscode/cspell.json
vendored
Normal file
39
.vscode/cspell.json
vendored
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
{
|
||||||
|
"version": "0.2",
|
||||||
|
"language": "en,de",
|
||||||
|
"languageSettings": [
|
||||||
|
{
|
||||||
|
"languageId": "*",
|
||||||
|
"enabled": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"languageId": "plaintext",
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"languageId": "markdown",
|
||||||
|
"enabled": true
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"languageId": "asciidoc",
|
||||||
|
"enabled": true
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"ignorePaths": [
|
||||||
|
"node_modules",
|
||||||
|
"dist",
|
||||||
|
"build",
|
||||||
|
"output",
|
||||||
|
".git"
|
||||||
|
],
|
||||||
|
"words": [
|
||||||
|
"adoc",
|
||||||
|
"AsciiDoc",
|
||||||
|
"autochapter",
|
||||||
|
"kapitel",
|
||||||
|
"makefile",
|
||||||
|
"PDFTheme",
|
||||||
|
"realAscot",
|
||||||
|
"Skotarczak"
|
||||||
|
]
|
||||||
|
}
|
21
.vscode/settings.json
vendored
21
.vscode/settings.json
vendored
@ -1,3 +1,20 @@
|
|||||||
{
|
{
|
||||||
"makefile.configureOnOpen": false
|
"editor.codeActionsOnSave": {
|
||||||
}
|
"source.fixAll.cSpell": "explicit"
|
||||||
|
},
|
||||||
|
"asciidoc.preview.style": "styles/preview.css",
|
||||||
|
"files.associations": {
|
||||||
|
"*.adoc": "asciidoc"
|
||||||
|
},
|
||||||
|
"files.eol": "\n",
|
||||||
|
"[yaml]": {
|
||||||
|
"files.eol": "\n"
|
||||||
|
},
|
||||||
|
"[shellscript]": {
|
||||||
|
"files.eol": "\n"
|
||||||
|
},
|
||||||
|
"[asciidoc]": {
|
||||||
|
"files.eol": "\n"
|
||||||
|
},
|
||||||
|
"files.encoding": "utf8"
|
||||||
|
}
|
||||||
|
23
Makefile
23
Makefile
@ -1,14 +1,21 @@
|
|||||||
# Makefile für Markdown-eBook-Projekt mit Pandoc
|
# Makefile für Markdown-eBook-Projekt mit Pandoc
|
||||||
|
|
||||||
# === Allgemeine Konfiguration ===
|
# === Allgemeine Konfiguration ===
|
||||||
TITLE := JS-TS-Tutorial
|
TITLE := dateiname_aus_makefile
|
||||||
MANUSCRIPT := manuscript
|
MANUSCRIPT := manuscript
|
||||||
OUTPUT := build
|
OUTPUT := build
|
||||||
METADATA := metadata/ebook.yaml
|
METADATA := metadata/ebook.yaml
|
||||||
CSS := styles/ebook.css
|
CSS := styles/ebook.css
|
||||||
TEX_EBOOK := styles/ebook-template.tex
|
TEX_EBOOK := styles/ebook-template.tex
|
||||||
TEX_PRINT := styles/print-template.tex
|
TEX_PRINT := styles/print-template.tex
|
||||||
LOGO := media/logo/logo-v2.png
|
LOGO := media/logo/logo_256x256.png
|
||||||
|
|
||||||
|
# === Nur wsl oder Linux === #
|
||||||
|
ifeq ($(OS),Windows_NT)
|
||||||
|
set_codepage:
|
||||||
|
@if [ "$(OS)" = "Windows_NT" ]; then chcp 65001 >nul; fi
|
||||||
|
$(error [⚠] Windows wird nicht unterstützt. Bitte WSL oder Linux verwenden.)
|
||||||
|
endif
|
||||||
|
|
||||||
# === Quelldateien (geordnet nach Nummerierung) ===
|
# === Quelldateien (geordnet nach Nummerierung) ===
|
||||||
MD_FILES := $(wildcard $(MANUSCRIPT)/*.md)
|
MD_FILES := $(wildcard $(MANUSCRIPT)/*.md)
|
||||||
|
54
README.md
54
README.md
@ -1,14 +1,10 @@
|
|||||||
# eBook - Dokumentation Vorlage
|
# eBook Vorlage
|
||||||
|
|
||||||
**Gleichzeitig eBook-Template für Maniskripte in Markdown**
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Dieses Manuskript dient mir persönlich auch als Template für andere eBooks daher sind viele Stellen explizit sehr detailiert beschrieben.
|
|
||||||
|
|
||||||
## Inhalt
|
## Inhalt
|
||||||
|
|
||||||
- [eBook - Dokumentation Vorlage](#ebook---dokumentation-vorlage)
|
- [eBook Vorlage](#ebook-vorlage)
|
||||||
- [Inhalt](#inhalt)
|
- [Inhalt](#inhalt)
|
||||||
- [Infos](#infos)
|
- [Infos](#infos)
|
||||||
- [Struktur](#struktur)
|
- [Struktur](#struktur)
|
||||||
@ -51,48 +47,17 @@ book/
|
|||||||
│ ├── ebook.css
|
│ ├── ebook.css
|
||||||
│ └── print-template.tex
|
│ └── print-template.tex
|
||||||
│
|
│
|
||||||
├── build/
|
├── build/ # Ausgabeordner (wird vom Build-Prozess befüllt)
|
||||||
│
|
│
|
||||||
├── metadata/
|
├── metadata/ # Metadaten für eBook, Titelblatt, Autoreninfo
|
||||||
│ ├── title.txt
|
│ ├── title.txt
|
||||||
│ ├── author.txt
|
│ ├── author.txt
|
||||||
│ └── ebook.yaml
|
│ └── ebook.yaml
|
||||||
│
|
│
|
||||||
├── Makefile #
|
├── Makefile # Automatisierter Build-Prozess mit Pandoc etc.
|
||||||
├── README.md # Projektdokumentation
|
├── README.md # Projektdokumentation
|
||||||
└── LICENSE # Lizenz für das Buch (z. B. CC-BY)
|
└── LICENSE # Lizenz für das Buch (z. B. CC-BY)
|
||||||
|
|
||||||
📁 ./ #
|
|
||||||
├── 📁 build # Ausgabeordner (wird vom Build-Prozess befüllt)
|
|
||||||
│ └── 📄 .gitkeep # Platzhalter damit git leere Verzeichnisse trackt
|
|
||||||
├── 📁 manuscript #
|
|
||||||
│ ├── 📄 00_deckblatt.md #
|
|
||||||
│ ├── 📄 05_vorwort.md #
|
|
||||||
│ ├── 📄 10_kapitel1.md #
|
|
||||||
│ ├── 📄 20_kapitel2.md #
|
|
||||||
│ └── 📄 30_kapitel2.md #
|
|
||||||
├── 📁 media #
|
|
||||||
│ ├── 📁 logo #
|
|
||||||
│ │ ├── 📄 logo-v1.png #
|
|
||||||
│ │ ├── 📄 logo-v2-256x256.png #
|
|
||||||
│ │ └── 📄 logo-v2.png #
|
|
||||||
│ └── 📄 favicon.ico #
|
|
||||||
├── 📁 metadata # Metadaten für eBook, Titelblatt, Author etc
|
|
||||||
│ ├── 📄 author.txt #
|
|
||||||
│ └── 📄 ebook.yaml #
|
|
||||||
├── 📁 styles #
|
|
||||||
│ ├── 📄 ebook-template.tex #
|
|
||||||
│ ├── 📄 ebook.css #
|
|
||||||
│ ├── 📄 print-template.tex #
|
|
||||||
│ └── 📄 reference.docx #
|
|
||||||
├── 📄 .gitignore #
|
|
||||||
├── 📄 CHANGELOG.md #
|
|
||||||
├── 📄 desktop.ini #
|
|
||||||
├── 📄 LICENSE #
|
|
||||||
├── 📄 Makefile # Automatisierter Build-Prozess mit Pandoc etc.
|
|
||||||
├── 📄 README.md # Diese Datei - Erklärung zum Build des Buchs
|
|
||||||
└── 📄 VERSION # Paketversion (ohne Zeilenumbruch einzeilig 0.0.0)
|
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
@ -153,8 +118,17 @@ Falls der Build trotzdem scheitert oder du dir den Aufwand sparen möchtest, lad
|
|||||||
|
|
||||||
### Templates
|
### Templates
|
||||||
|
|
||||||
|
Informationen zu den Templates und ihre Konfiguration
|
||||||
|
|
||||||
#### PDF
|
#### PDF
|
||||||
|
|
||||||
|
- [x] Konfigurationsfile für die PDF-Aussgabe ist die [./styles/print-template.tex](./styles/print-template.tex)
|
||||||
|
- Dateiname für Einbandlogo erfolgt aus dieser Datei:
|
||||||
|
|
||||||
|
```tex
|
||||||
|
\includegraphics[width=0.3\textwidth]{media/logo/logo-einband.png} \\[2em]
|
||||||
|
````
|
||||||
|
|
||||||
#### eBook (epub)
|
#### eBook (epub)
|
||||||
|
|
||||||
#### DOCX (Office/ Word)
|
#### DOCX (Office/ Word)
|
||||||
|
160
gitcopy.bat
Normal file
160
gitcopy.bat
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
@echo off
|
||||||
|
setlocal enabledelayedexpansion
|
||||||
|
chcp 65001 >nul
|
||||||
|
|
||||||
|
REM Skript, um aus einem Projekt mit git-repo, ein portables .zip zu erstellen
|
||||||
|
REM
|
||||||
|
REM (C) 2025 MIT Adam Skotarczak
|
||||||
|
REM
|
||||||
|
REM Version: v1.1.2
|
||||||
|
REM Github: https://github.com/realAscot/gitcopy
|
||||||
|
REM -------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
rem --- Git-Verfügbarkeit prüfen ---
|
||||||
|
where git >nul 2>nul
|
||||||
|
if errorlevel 1 (
|
||||||
|
echo.
|
||||||
|
echo [⚠️] Git ist nicht installiert oder nicht im PATH.
|
||||||
|
echo [📦] Bitte installiere Git von https://git-scm.com/download/win
|
||||||
|
call :show_help
|
||||||
|
echo.
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
|
||||||
|
rem --- Git-Version anzeigen ---
|
||||||
|
for /f "tokens=*" %%i in ('git --version') do set "GIT_VERSION=%%i"
|
||||||
|
|
||||||
|
if defined GIT_VERSION (
|
||||||
|
echo.
|
||||||
|
echo [✅] Gefundene Git-Version: %GIT_VERSION%
|
||||||
|
) else (
|
||||||
|
echo([⚠️] Konnte Git-Version nicht ermitteln.
|
||||||
|
)
|
||||||
|
|
||||||
|
rem Prüfe auf optionalen Parameter "--debug"
|
||||||
|
set DEBUG=0
|
||||||
|
|
||||||
|
if NOT "%~1"=="" (
|
||||||
|
if "%~1"=="--debug" (
|
||||||
|
set DEBUG=1
|
||||||
|
echo [⚠️] Debug-Modus aktiv: Ignoriere offene Commits.
|
||||||
|
exit /b 0
|
||||||
|
) else if "%~1"=="-d" (
|
||||||
|
set DEBUG=1
|
||||||
|
echo [⚠️] Debug-Modus aktiv: Ignoriere offene Commits.
|
||||||
|
exit /b 0
|
||||||
|
) else if "%~1"=="-h" (
|
||||||
|
call :show_help
|
||||||
|
exit /b 0
|
||||||
|
) else if "%~1"=="--help" (
|
||||||
|
call :show_help
|
||||||
|
exit /b 0
|
||||||
|
) else (
|
||||||
|
rem Parameter vorhanden aber nicht erkannt.
|
||||||
|
call :kein_Parameter "%~1"
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
) else (
|
||||||
|
call :go "%~1"
|
||||||
|
)
|
||||||
|
|
||||||
|
exit /b 0
|
||||||
|
|
||||||
|
:go
|
||||||
|
|
||||||
|
call :generate_timestamp
|
||||||
|
set ZIP_NAME=projektarchiv-%TIMESTAMP%.zip
|
||||||
|
|
||||||
|
rem -------------------------------------------------------------------
|
||||||
|
|
||||||
|
pushd %~dp0
|
||||||
|
|
||||||
|
if %DEBUG%==0 (
|
||||||
|
echo [🔍] Prüfe auf uncommitted oder ungetrackte Änderungen...
|
||||||
|
set "hasChanges="
|
||||||
|
for /f "delims=" %%i in ('git status --porcelain') do (
|
||||||
|
set "hasChanges=1"
|
||||||
|
goto :has_changes
|
||||||
|
)
|
||||||
|
echo [✅] Arbeitsverzeichnis ist sauber.
|
||||||
|
) else (
|
||||||
|
echo [⚠️] Prüfschritt übersprungen.
|
||||||
|
)
|
||||||
|
|
||||||
|
goto :create_zip
|
||||||
|
|
||||||
|
:has_changes
|
||||||
|
echo.
|
||||||
|
echo [⚠️] Es sind uncommitted oder ungetrackte Änderungen vorhanden:
|
||||||
|
echo.
|
||||||
|
git status --short
|
||||||
|
echo.
|
||||||
|
echo [❌] Bitte committe oder stash diese Änderungen, bevor du ein ZIP erstellst.
|
||||||
|
echo [⚠️] versuche --debug um diese Prüfung zu umgehen aber dann wird das Archiv unvollständig.
|
||||||
|
echo.
|
||||||
|
endlocal
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
|
||||||
|
:create_zip
|
||||||
|
echo [💾] Erstelle ZIP-Archiv von HEAD...
|
||||||
|
git archive --format=zip --output="%ZIP_NAME%" HEAD
|
||||||
|
if errorlevel 1 (
|
||||||
|
echo [⚠️] Fehler beim Erstellen des Archivs.
|
||||||
|
pause
|
||||||
|
exit /b 1
|
||||||
|
)
|
||||||
|
echo [✅] Archiv erfolgreich erstellt: %CD%\%ZIP_NAME%
|
||||||
|
popd
|
||||||
|
endlocal
|
||||||
|
pause
|
||||||
|
exit /b 0
|
||||||
|
|
||||||
|
:generate_timestamp
|
||||||
|
rem Erzeugt einen Zeitstempel TTMMJJHHMM sicher und universell
|
||||||
|
for /f "tokens=1-4 delims=. " %%d in ('echo %DATE%') do (
|
||||||
|
set "TAG=0%%d"
|
||||||
|
set "MONAT=0%%e"
|
||||||
|
set "JAHR=%%f"
|
||||||
|
)
|
||||||
|
|
||||||
|
for /f "tokens=1-2 delims=: " %%g in ('echo %TIME%') do (
|
||||||
|
set "STUNDE=0%%g"
|
||||||
|
set "MINUTE=0%%h"
|
||||||
|
)
|
||||||
|
|
||||||
|
set "TAG=!TAG:~-2!"
|
||||||
|
set "MONAT=!MONAT:~-2!"
|
||||||
|
set "JAHR=!JAHR:~-2!"
|
||||||
|
set "STUNDE=!STUNDE:~-2!"
|
||||||
|
set "MINUTE=!MINUTE:~-2!"
|
||||||
|
|
||||||
|
set "TIMESTAMP=!TAG!!MONAT!!JAHR!!STUNDE!!MINUTE!"
|
||||||
|
goto :eof
|
||||||
|
|
||||||
|
:kein_Parameter
|
||||||
|
echo.
|
||||||
|
echo [⚠️] Unbekannter Parameter: "%~1" abbruch ...
|
||||||
|
echo.
|
||||||
|
call :show_help
|
||||||
|
exit /b 1
|
||||||
|
|
||||||
|
:show_help
|
||||||
|
echo.
|
||||||
|
echo ℹ️ GitCopy – Hilfe
|
||||||
|
echo =====================
|
||||||
|
echo Erstellt ein ZIP-Archiv vom aktuellen HEAD-Stand des Git-Repositories.
|
||||||
|
echo.
|
||||||
|
echo Verwendung:
|
||||||
|
echo gitcopy.bat [Option]
|
||||||
|
echo.
|
||||||
|
echo Optionen:
|
||||||
|
echo --debug / -d Überspringt die Prüfung auf uncommitted oder ungetrackte Änderungen.
|
||||||
|
echo -h / --help Zeigt diese Hilfe an.
|
||||||
|
echo.
|
||||||
|
endlocal
|
||||||
|
pause
|
||||||
|
goto :eof
|
||||||
|
|
||||||
|
endlocal
|
0
manuscript/02_testseiten.md
Normal file
0
manuscript/02_testseiten.md
Normal file
@ -1,3 +1,3 @@
|
|||||||
# Vorwort
|
# Vorwort
|
||||||
|
|
||||||
Gibt nix zu sagen ...
|
Vorwort ...
|
||||||
|
@ -1,45 +1,7 @@
|
|||||||
# Kapitel 1
|
# Kapitel 1
|
||||||
|
|
||||||
## kurzer Schwenk nach Javascript
|
Kapitel 1
|
||||||
|
|
||||||
### Variablen
|
## Unterkapitel
|
||||||
|
|
||||||
#### Deklaration
|
Unterkapitel
|
||||||
|
|
||||||
```javascript
|
|
||||||
var name = "Max"; // Alt, meiden!
|
|
||||||
let zahl = 42; // Modern, veränderbar
|
|
||||||
const pi = 3.1415; // Konstant, nicht veränderbar
|
|
||||||
```
|
|
||||||
|
|
||||||
| Schlüsselwort | Veränderbar | Gültigkeitsbereich | Empfehlung |
|
|
||||||
| ------------- | ----------- | ---------------------- | ----------------------- |
|
|
||||||
| `var` | ✔ | Funktion (funktional) | ✖ Nicht mehr verwenden |
|
|
||||||
| `let` | ✔ | Block (z. B. Schleife) | ✔ Standard |
|
|
||||||
| `const` | ✖ | Block | ✔ Für Konstanten |
|
|
||||||
|
|
||||||
#### Typen (vereinfacht)
|
|
||||||
|
|
||||||
JS ist dynamisch typisiert, aber man sollte Typen trotzdem kennen:
|
|
||||||
|
|
||||||
| Typ | Beispiel |
|
|
||||||
| ----------- | ------------------------ |
|
|
||||||
| `string` | `"Hallo"` |
|
|
||||||
| `number` | `42`, `3.14` |
|
|
||||||
| `boolean` | `true`, `false` |
|
|
||||||
| `object` | `{ name: "Max" }` |
|
|
||||||
| `array` | `[1, 2, 3]` |
|
|
||||||
| `undefined` | `let x;` (nicht gesetzt) |
|
|
||||||
| `null` | `let x = null;` |
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Funktionen
|
|
||||||
|
|
||||||
1. Klassische Deklaration
|
|
||||||
|
|
||||||
```javascript
|
|
||||||
function greet(name) {
|
|
||||||
return "Hallo " + name;
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
@ -1,3 +1,7 @@
|
|||||||
# Kapitel 2 - Typescript
|
# Kapitel 2
|
||||||
|
|
||||||
Im Kapitel 1 haben wir gesehen was Javascript in seiner Rohform leistet.
|
Kapitel 2
|
||||||
|
|
||||||
|
## Unterkapitel 2.1
|
||||||
|
|
||||||
|
Unterkapitel
|
||||||
|
@ -0,0 +1,3 @@
|
|||||||
|
# Kapitel 3
|
||||||
|
|
||||||
|
## Unterkapitel 3
|
BIN
media/logo/logo_256x256.png
Normal file
BIN
media/logo/logo_256x256.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 31 KiB |
BIN
media/logo/logo_left.png
Normal file
BIN
media/logo/logo_left.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.4 MiB |
@ -1,8 +1,8 @@
|
|||||||
title: "eBook Vorlage"
|
title: "Vorlage eBook: Titel aus ebook.yaml"
|
||||||
subtitle: "wir scheiben ein Buch"
|
subtitle: "Untertitel aus ebook.yaml - Logo aus .tex"
|
||||||
author: "Adam Skotarczak"
|
author: "Adam Skotarczak"
|
||||||
lang: de-DE
|
lang: de-DE
|
||||||
rights: "© 2025 Adam Skotarczak. CC BY-SA 4.0"
|
rights: "© 2000 Adam Skotarczak. CC BY-SA 4.0"
|
||||||
date: 2025-05-13
|
date: 2000-01-01
|
||||||
description: |
|
description: |
|
||||||
Eine Vorlage zum erstellen eines Buchs.
|
Dieses Buch ist eine Vorlage.
|
||||||
|
@ -35,7 +35,7 @@ $endif$
|
|||||||
|
|
||||||
% Titel
|
% Titel
|
||||||
\title{
|
\title{
|
||||||
\includegraphics[width=0.3\textwidth]{media/logo/logo.png} \\[2em]
|
\includegraphics[width=0.3\textwidth]{media/logo/logo_256x256.png} \\[2em]
|
||||||
{\Huge $title$} \\
|
{\Huge $title$} \\
|
||||||
\vspace{1em}
|
\vspace{1em}
|
||||||
\Large $subtitle$
|
\Large $subtitle$
|
||||||
|
177
tools/bmp-emojis.md
Normal file
177
tools/bmp-emojis.md
Normal file
@ -0,0 +1,177 @@
|
|||||||
|
# ➖ Emojis im Unicode Basic Multilingual Plane (BMP)
|
||||||
|
|
||||||
|
> Diese Liste enthält **alle wichtigen Emojis im BMP-Bereich (U+0000 bis U+FFFF)**. Sie ist besonders geeignet für Markdown-Dokumente, die mit Git versioniert oder als PDF exportiert werden sollen.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Inhaltsverzeichnis
|
||||||
|
|
||||||
|
- [➖ Emojis im Unicode Basic Multilingual Plane (BMP)](#-emojis-im-unicode-basic-multilingual-plane-bmp)
|
||||||
|
- [➖ Inhaltsverzeichnis](#-inhaltsverzeichnis)
|
||||||
|
- [➖ Verwendungshinweis](#-verwendungshinweis)
|
||||||
|
- [➖ HTML](#-html)
|
||||||
|
- [➖ Python](#-python)
|
||||||
|
- [➖ Markdown](#-markdown)
|
||||||
|
- [➖ Wetter \& Natur](#-wetter--natur)
|
||||||
|
- [➖ Zeichen \& Objekte](#-zeichen--objekte)
|
||||||
|
- [➖ Warnung \& Energie](#-warnung--energie)
|
||||||
|
- [➖ Transport](#-transport)
|
||||||
|
- [➖ Sport \& Freizeit](#-sport--freizeit)
|
||||||
|
- [➖ Religion \& Symbole](#-religion--symbole)
|
||||||
|
- [➖ Gender \& Sternzeichen](#-gender--sternzeichen)
|
||||||
|
- [➖ Spielkarten \& Schach](#-spielkarten--schach)
|
||||||
|
- [➖ Diverse Symbole \& Zeichen](#-diverse-symbole--zeichen)
|
||||||
|
- [➖ Emoticons (U+1F600–U+1F64F)](#-emoticons-u1f600u1f64f)
|
||||||
|
|
||||||
|
## ➖ Verwendungshinweis
|
||||||
|
|
||||||
|
Du kannst Unicode-Emojis auch **ohne Kopieren** verwenden – per Unicode-Codepunkt. Hier eine Übersicht, wie das in verschiedenen Umgebungen funktioniert:
|
||||||
|
|
||||||
|
| Emoji | Unicode | HTML Entity | Python | Bash | LaTeX (xelatex) |
|
||||||
|
|-------|---------|-------------|--------|------|-----------------|
|
||||||
|
| ☀️ | U+2600 | `☀` | `\u2600` | `\u2600` | `\char"2600` |
|
||||||
|
| ☕ | U+2615 | `☕` | `\u2615` | `\u2615` | `\char"2615` |
|
||||||
|
| ⚙️ | U+2699 | `⚙` | `\u2699` | `\u2699` | `\char"2699` |
|
||||||
|
| ✂️ | U+2702 | `✂` | `\u2702` | `\u2702` | `\char"2702` |
|
||||||
|
| ☎️ | U+260E | `☎` | `\u260E` | `\u260E` | `\char"260E` |
|
||||||
|
| ⚠️ | U+26A0 | `⚠` | `\u26A0` | `\u26A0` | `\char"26A0` |
|
||||||
|
| ⚽ | U+26BD | `⚽` | `\u26BD` | `\u26BD` | `\char"26BD` |
|
||||||
|
| ♻️ | U+267B | `♻` | `\u267B` | `\u267B` | `\char"267B` |
|
||||||
|
|
||||||
|
📌 Für Emojis **außerhalb des BMP** (z. B. 😀 = `U+1F600`) musst du in Python/Bash `\U` statt `\u` nutzen (8-stellig).
|
||||||
|
|
||||||
|
### ➖ HTML
|
||||||
|
|
||||||
|
```text
|
||||||
|
☀ <!-- ☀️ Sonne -->
|
||||||
|
😀 <!-- 😀 Grinsendes Gesicht -->
|
||||||
|
```
|
||||||
|
|
||||||
|
### ➖ Python
|
||||||
|
|
||||||
|
```text
|
||||||
|
print("\u2600") # ☀️ Sonne (BMP)
|
||||||
|
print("\U0001F600") # 😀 Grinsendes Gesicht (SMP)
|
||||||
|
```
|
||||||
|
|
||||||
|
### ➖ Markdown
|
||||||
|
|
||||||
|
Markdown unterstützt Emojis nicht direkt über Codepunkte – aber wenn dein Editor Unicode versteht, kannst du den Emoji direkt schreiben (☀️, ⚙️, ✂️) oder ihn per HTML-Entity einfügen (wie in HTML oben).
|
||||||
|
|
||||||
|
⚠️ Achtung: Nur manche Markdown-Renderer (z. B. GitHub) zeigen HTML-Entities korrekt an.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Wetter & Natur
|
||||||
|
|
||||||
|
- ☀️ U+2600 – Sonne
|
||||||
|
- ☁️ U+2601 – Wolke
|
||||||
|
- ☂️ U+2602 – Regenschirm
|
||||||
|
- ☃️ U+2603 – Schneemann
|
||||||
|
- ☄️ U+2604 – Komet
|
||||||
|
- ⛄ U+26C4 – Schneemann ohne Schnee
|
||||||
|
- ⛅ U+26C5 – Sonne hinter Wolke
|
||||||
|
- ⛈️ U+26C8 – Gewitterwolke
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Zeichen & Objekte
|
||||||
|
|
||||||
|
- ✂️ U+2702 – Schere
|
||||||
|
- ✉️ U+2709 – Briefumschlag
|
||||||
|
- ☎️ U+260E – Telefon
|
||||||
|
- ⚒️ U+2692 – Hammer und Picke
|
||||||
|
- ⚓ U+2693 – Anker
|
||||||
|
- ⚖️ U+2696 – Waage
|
||||||
|
- ⚗️ U+2697 – Retorte
|
||||||
|
- ⚙️ U+2699 – Zahnrad
|
||||||
|
- ⚰️ U+26B0 – Sarg
|
||||||
|
- ⚱️ U+26B1 – Urne
|
||||||
|
- ⚔️ U+2694 – Gekreuzte Schwerter
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Warnung & Energie
|
||||||
|
|
||||||
|
- ⚡ U+26A1 – Hochspannung
|
||||||
|
- ⚠️ U+26A0 – Warnung
|
||||||
|
- ⛔ U+26D4 – Kein Zutritt
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Transport
|
||||||
|
|
||||||
|
- ✈️ U+2708 – Flugzeug
|
||||||
|
- ⛟ U+26DF – Lieferwagen
|
||||||
|
- ⛴️ U+26F4 – Fähre
|
||||||
|
- ⛵ U+26F5 – Segelboot
|
||||||
|
- ⛷️ U+26F7 – Skifahrer
|
||||||
|
- ⛸️ U+26F8 – Schlittschuhe
|
||||||
|
- ⛹️ U+26F9 – Ballspielende Person
|
||||||
|
- ⛽ U+26FD – Zapfsäule
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Sport & Freizeit
|
||||||
|
|
||||||
|
- ⚽ U+26BD – Fußball
|
||||||
|
- ⚾ U+26BE – Baseball
|
||||||
|
- ⛳ U+26F3 – Golfplatz
|
||||||
|
- ⛲ U+26F2 – Springbrunnen
|
||||||
|
- ⛺ U+26FA – Zelt
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Religion & Symbole
|
||||||
|
|
||||||
|
- ☮️ U+262E – Friedenssymbol
|
||||||
|
- ☯️ U+262F – Yin-Yang
|
||||||
|
- ☪️ U+262A – Halbmond mit Stern
|
||||||
|
- ✝️ U+271D – Kreuz
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Gender & Sternzeichen
|
||||||
|
|
||||||
|
- ♀️ U+2640 – Weiblich
|
||||||
|
- ♂️ U+2642 – Männlich
|
||||||
|
- ⚧️ U+26A7 – Transgender-Symbol
|
||||||
|
- ♈ – ♓ U+2648–U+2653 – Tierkreiszeichen (Widder bis Fische)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Spielkarten & Schach
|
||||||
|
|
||||||
|
- ♠️ U+2660 – Pik
|
||||||
|
- ♣️ U+2663 – Kreuz
|
||||||
|
- ♥️ U+2665 – Herz
|
||||||
|
- ♦️ U+2666 – Karo
|
||||||
|
- ♟️ U+265F – Schwarzer Bauer
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Diverse Symbole & Zeichen
|
||||||
|
|
||||||
|
- ✨ U+2728 – Funkeln
|
||||||
|
- ❗ U+2757 – Ausrufezeichen
|
||||||
|
- ❓ U+2753 – Fragezeichen
|
||||||
|
- ❌ U+274C – Kreuzzeichen
|
||||||
|
- ✅ U+2705 – Haken
|
||||||
|
- ➕ U+2795 – Pluszeichen
|
||||||
|
- ➖ U+2796 – Minuszeichen
|
||||||
|
- ➗ U+2797 – Divisionszeichen
|
||||||
|
- ➡️ U+27A1 – Pfeil nach rechts
|
||||||
|
- ⬅️ U+2B05 – Pfeil nach links (**grenzwertig BMP**)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ➖ Emoticons (U+1F600–U+1F64F)
|
||||||
|
|
||||||
|
Hinweis: Diese befinden sich **nicht im BMP**, sondern im Supplementary Multilingual Plane (SMP).
|
||||||
|
|
||||||
|
Wenn du Emojis aus `U+1F600` und höher verwendest (Gesichter, Tiere, Gesten etc.), beachte, dass sie bei älteren Systemen oder PDF-Exporten ohne passende Schriftart ggf. nicht korrekt dargestellt werden.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Diese Liste ist **Markdown-, Git- und PDF-freundlich**. Du kannst sie frei verwenden, erweitern oder in dein Projekt einbauen.
|
||||||
|
(C) 2025 Adam Skotarczak
|
154
tools/cli-emojis.md
Normal file
154
tools/cli-emojis.md
Normal file
@ -0,0 +1,154 @@
|
|||||||
|
# 📁 CLI Emojis (CLI Programmer Emojis)
|
||||||
|
|
||||||
|
> Adam Skotarczak private Emojis for monochrome Display
|
||||||
|
Diese Liste ist Teil des "Become-Writer-Projekt"
|
||||||
|
|
||||||
|
## 📁 Inhalt
|
||||||
|
|
||||||
|
- [📁 CLI Emojis (CLI Programmer Emojis)](#-cli-emojis-cli-programmer-emojis)
|
||||||
|
- [📁 Inhalt](#-inhalt)
|
||||||
|
- [📝 Commonly Used Emoji for CLI/Terminal Applications](#-commonly-used-emoji-for-cliterminal-applications)
|
||||||
|
- [📝 1-2 Bye - Unicode Basic Symbols for CLI or Monochrome Safe Emojis](#-1-2-bye---unicode-basic-symbols-for-cli-or-monochrome-safe-emojis)
|
||||||
|
- [📁 Anleitung: Unicode in CLI-Programmen richtig behandeln](#-anleitung-unicode-in-cli-programmen-richtig-behandeln)
|
||||||
|
- [📝 Wichtig für CLI-Projekte:](#-wichtig-für-cli-projekte)
|
||||||
|
|
||||||
|
## 📝 Commonly Used Emoji for CLI/Terminal Applications
|
||||||
|
|
||||||
|
Eine Liste von Emojis, die in fast jeder CLI (Terminal/Konsole) problemlos funktionieren, weil sie UTF-8 kompatibel sind und keine Sonderbehandlungen wie Farbcodes brauchen:
|
||||||
|
|
||||||
|
| Emoji | Beschreibung | Unicode Codepoint | UTF-8 Escape |
|
||||||
|
|:------|:-----------------------|:------------------|:----------------|
|
||||||
|
| ✅ | Checkmark | U+2705 | \u2705 |
|
||||||
|
| ❌ | Crossmark | U+274C | \u274C |
|
||||||
|
| ⚠️ | Warnung | U+26A0 U+FE0F | \u26A0\uFE0F |
|
||||||
|
| ℹ️ | Information | U+2139 U+FE0F | \u2139\uFE0F |
|
||||||
|
| 🔥 | Feuer | U+1F525 | \u1F525 |
|
||||||
|
| 🚀 | Rakete | U+1F680 | \u1F680 |
|
||||||
|
| 🔧 | Schraubenschlüssel | U+1F527 | \u1F527 |
|
||||||
|
| 🛠️ | Hammer und Schraubenschlüssel | U+1F6E0 U+FE0F | \u1F6E0\uFE0F |
|
||||||
|
| 💾 | Diskette / Speichern | U+1F4BE | \u1F4BE |
|
||||||
|
| 📦 | Paket | U+1F4E6 | \u1F4E6 |
|
||||||
|
| 🔒 | Schloss (geschlossen) | U+1F512 | \u1F512 |
|
||||||
|
| 🔓 | Schloss (offen) | U+1F513 | \u1F513 |
|
||||||
|
| 🔍 | Lupe / Suche | U+1F50D | \u1F50D |
|
||||||
|
| 📁 | Ordner | U+1F4C1 | \u1F4C1 |
|
||||||
|
| 📂 | Geöffneter Ordner | U+1F4C2 | \u1F4C2 |
|
||||||
|
| 📝 | Notiz / Bearbeiten | U+1F4DD | \u1F4DD |
|
||||||
|
| ✏️ | Bleistift | U+270F U+FE0F | \u270F\uFE0F |
|
||||||
|
| 📊 | Balkendiagramm | U+1F4CA | \u1F4CA |
|
||||||
|
| 📈 | Kurve aufwärts | U+1F4C8 | \u1F4C8 |
|
||||||
|
| 📉 | Kurve abwärts | U+1F4C9 | \u1F4C9 |
|
||||||
|
| ⏳ | Sanduhr läuft | U+23F3 | \u23F3 |
|
||||||
|
| ⌛ | Sanduhr abgelaufen | U+231B | \u231B |
|
||||||
|
| 🕐 | Uhrzeit 1 Uhr | U+1F550 | \u1F550 |
|
||||||
|
| 🔄 | Wiederholen / Refresh | U+1F504 | \u1F504 |
|
||||||
|
| ♻️ | Recycling | U+267B U+FE0F | \u267B\uFE0F |
|
||||||
|
| 🎯 | Zielscheibe | U+1F3AF | \u1F3AF |
|
||||||
|
| 🚧 | Baustelle | U+1F6A7 | \u1F6A7 |
|
||||||
|
| 🏁 | Zielflagge | U+1F3C1 | \u1F3C1 |
|
||||||
|
| 💡 | Glühbirne / Idee | U+1F4A1 | \u1F4A1 |
|
||||||
|
| 🎉 | Party / Feier | U+1F389 | \u1F389 |
|
||||||
|
| 🤖 | Roboter | U+1F916 | \u1F916 |
|
||||||
|
|
||||||
|
- Anmerkungen:
|
||||||
|
- Alle oben genannten Emojis sind Unicode-Standard.
|
||||||
|
- Sie funktionieren in Linux, macOS und modernen Windows-Terminals (ab Windows 10/11, UTF-8 aktiviert).
|
||||||
|
- Alte Konsolen wie cmd.exe auf Windows 7 oder unkonfigurierte Linux-SSH-Sitzungen könnten manchmal Probleme machen. In modernen Umgebungen ist das aber kein Thema mehr.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📝 1-2 Bye - Unicode Basic Symbols for CLI or Monochrome Safe Emojis
|
||||||
|
|
||||||
|
**CLI-Safe Unicode Symbols oder Terminal-Safe Emojis.**
|
||||||
|
|
||||||
|
Eine minimalistische Emoji-Liste (nur mit extrem simplen Unicode-Symbolen, oft 1 oder 2 Byte) ist erforderlich oder empfehlenswert, wenn:
|
||||||
|
|
||||||
|
**Alte Umgebungen genutzt werden:**
|
||||||
|
|
||||||
|
- z.B. Windows 7 cmd.exe
|
||||||
|
- Minimalistische SSH-Clients (z.B. Putty ohne UTF-8-Einstellung)
|
||||||
|
- Barebone-Server ohne Unicode-Konfiguration
|
||||||
|
- Minimale Schriftarten verwendet werden:
|
||||||
|
- Schriftarten, die keine komplexen Emojis darstellen können (nur Basic Unicode)
|
||||||
|
- CLI-Tools auf Embedded-Devices laufen:
|
||||||
|
- z.B. Raspberry Pi Konsolen ohne vollständige Locale
|
||||||
|
|
||||||
|
**Performance/Übertragungsoptimierung wichtig ist:**
|
||||||
|
|
||||||
|
- z.B. extrem dünne Netzwerkverbindungen (Telnet, MUD-Server, BBS-Clients)
|
||||||
|
- Absolute Kompatibilität mit Piped-Ausgaben (|, >, tee, etc.) gewünscht ist, ohne Zeichensalat zu riskieren
|
||||||
|
|
||||||
|
| Emoji | Beschreibung | Unicode Codepoint | UTF-8 Escape |
|
||||||
|
|:------|:---------------------|:------------------|:----------------|
|
||||||
|
| ✔️ | Checkmark | U+2714 U+FE0F | \u2714\uFE0F |
|
||||||
|
| ✖️ | Crossmark | U+2716 U+FE0F | \u2716\uFE0F |
|
||||||
|
| ⚠️ | Warnung | U+26A0 U+FE0F | \u26A0\uFE0F |
|
||||||
|
| ℹ️ | Information | U+2139 U+FE0F | \u2139\uFE0F |
|
||||||
|
| 💾 | Floppy Disk / Save | U+1F4BE | \u1F4BE |
|
||||||
|
| 📦 | Paket | U+1F4E6 | \u1F4E6 |
|
||||||
|
| 🔒 | Schloss (geschlossen) | U+1F512 | \u1F512 |
|
||||||
|
| 🔍 | Lupe / Suche | U+1F50D | \u1F50D |
|
||||||
|
| 📝 | Notiz / Bearbeiten | U+1F4DD | \u1F4DD |
|
||||||
|
| ✏️ | Bleistift | U+270F U+FE0F | \u270F\uFE0F |
|
||||||
|
| 📁 | Ordner | U+1F4C1 | \u1F4C1 |
|
||||||
|
| ⏳ | Sanduhr läuft | U+23F3 | \u23F3 |
|
||||||
|
| ⌛ | Sanduhr abgelaufen | U+231B | \u231B |
|
||||||
|
| 🏁 | Zielflagge | U+1F3C1 | \u1F3C1 |
|
||||||
|
| 💡 | Idee / Glühbirne | U+1F4A1 | \u1F4A1 |
|
||||||
|
|
||||||
|
**Diese Symbole sind:**
|
||||||
|
|
||||||
|
- UTF-8 kompatibel
|
||||||
|
- terminal-sicher (auch in alten Konsolen)
|
||||||
|
- monochrom-darstellbar (keine Farbgrafiken erforderlich)
|
||||||
|
- für den Einsatz in CLI-Programmen optimiert (piped output, Logging, SSH)
|
||||||
|
|
||||||
|
**Bezeichnung (offiziell oder gebräuchlich):**
|
||||||
|
|
||||||
|
- Unicode Basic Symbols
|
||||||
|
- CLI-Safe Unicode Symbols
|
||||||
|
- Terminal-Safe Emojis
|
||||||
|
- Monochrome Unicode Icons
|
||||||
|
- Lightweight Unicode Icons
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📁 Anleitung: Unicode in CLI-Programmen richtig behandeln
|
||||||
|
|
||||||
|
### 📝 Wichtig für CLI-Projekte:
|
||||||
|
|
||||||
|
- **Python**:
|
||||||
|
Sicherstellen, dass `stdout` auf UTF-8 eingestellt ist (sonst Encoding-Fehler möglich):
|
||||||
|
|
||||||
|
```python
|
||||||
|
import sys
|
||||||
|
if hasattr(sys.stdout, "reconfigure"):
|
||||||
|
sys.stdout.reconfigure(encoding='utf-8')
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Node.js**:
|
||||||
|
Node unterstützt UTF-8 in Terminals nativ, aber sicherstellen, dass `process.stdout` nicht umgeleitet oder manipuliert wird.
|
||||||
|
|
||||||
|
- **C# (.NET Core)**:
|
||||||
|
Konsole explizit auf UTF-8 setzen:
|
||||||
|
|
||||||
|
```csharp
|
||||||
|
Console.OutputEncoding = System.Text.Encoding.UTF8;
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Shell / Bash**:
|
||||||
|
UTF-8 Locale erzwingen:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
export LANG=en_US.UTF-8
|
||||||
|
export LC_ALL=en_US.UTF-8
|
||||||
|
```
|
||||||
|
|
||||||
|
- **Windows** (cmd/powershell):
|
||||||
|
Powershell versteht UTF-8 gut. Bei `cmd.exe`:
|
||||||
|
|
||||||
|
```cmd
|
||||||
|
chcp 65001
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
33
tools/dev-setup.sh
Normal file
33
tools/dev-setup.sh
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# dev-setup.sh
|
||||||
|
# Erstellt Git-Hook, der beim Branchwechsel eine Datei mit dem Branch-Namen erstellt
|
||||||
|
|
||||||
|
HOOK_PATH=".git/hooks/post-checkout"
|
||||||
|
|
||||||
|
echo "⚙️ Richte Git-Hook ein für Branch-Datei (z. B. BRANCH-MAIN)..."
|
||||||
|
|
||||||
|
# Prüfe ob .git-Verzeichnis existiert
|
||||||
|
if [ ! -d .git ]; then
|
||||||
|
echo "❌ Dieses Skript muss im Root eines Git-Repositories ausgeführt werden."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Hook-Inhalt
|
||||||
|
read -r -d '' HOOK_SCRIPT <<'EOF'
|
||||||
|
#!/bin/sh
|
||||||
|
branch=$(git rev-parse --abbrev-ref HEAD)
|
||||||
|
|
||||||
|
# Entferne alte BRANCH-* Dateien
|
||||||
|
rm -f BRANCH-*
|
||||||
|
|
||||||
|
# Erzeuge neue Datei mit aktuellem Branchnamen
|
||||||
|
touch "BRANCH-${branch}"
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Hook schreiben
|
||||||
|
echo "$HOOK_SCRIPT" > "$HOOK_PATH"
|
||||||
|
chmod +x "$HOOK_PATH"
|
||||||
|
|
||||||
|
echo "✅ Git-Hook erstellt: $HOOK_PATH"
|
||||||
|
echo "📄 Beispiel: BRANCH-main wird erstellt beim Wechsel auf 'main'"
|
Loading…
x
Reference in New Issue
Block a user