Lisp und Scheme

This commit is contained in:
2026-09-13 13:50:16 +02:00
parent 5a732b5490
commit 12515fe2eb
7 changed files with 263 additions and 61 deletions
+52 -1
View File
@@ -182,4 +182,55 @@ a ist nur Beispiel
### Mehrfaches Ausführen
100@a
100@a
# Aus alter Datei
## Bestimmte Phrasen in Kleinbuchstaben umwandeln
```
:%s/\(Zum Beispiel[^.!?]*[.!?]\)/\L\1/g
```
**Erläuterung:**
- `:%s/…/…/g` – Sucht und ersetzt global in der ganzen Datei.
- `\(…\)` – Gruppiert den Treffer, um ihn als `\1` später referenzieren zu können.
- `Zum Beispiel` – Die Zielphrase am Satzanfang.
- `[^.!?]*` – Beliebig viele Zeichen, bis zu einem Satzendezeichen.
- `[.!?]` – Der Satz endet mit Punkt, Ausrufezeichen oder Fragezeichen.
- `\L\1` – Wandelt den Inhalt von `\1` (dem gefundenen Satzteil) in Kleinbuchstaben um
## Jede leere Zeile löschen
```
:g/^$/d
```
- `:g` – Wendet den Befehl auf alle Zeilen an, die einem Muster entsprechen.
- `^$` – Das Muster für eine leere Zeile: Zeilenanfang (^) gefolgt von Zeilenende ($), also nichts dazwischen.
- `d` – Löscht die jeweilige Zeile.
oder aber **alternativ**:
- mit `v` —> nicht passende Zeilen behalten, so also `:v/\S/d`
- `\S` bedeutet nicht-Leerzeichen
oder
- mit `:g/^\s*$/d`
- `:g` → global: wende auf alle Zeilen an, die passen
- `^\s*$` → Zeilen, die nur aus Leerzeichen/Tabs (oder gar nichts) bestehen
- `d` → lösche diese Zeilen
## Zeile in ein Register kopieren
- `”ayy`
## Zeile aus einem Register einfügen
- `<ESC>”ap`