template-ebook/tools/cli-emojis.md

155 lines
7.3 KiB
Markdown
Raw Normal View History

2025-05-21 22:28:40 +02:00
# 📁 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
```
---