Was machst du, wenn du während der Arbeit mit Claude Code denkst: „Ich möchte mir diese Datei kurz ansehen oder sie bearbeiten“?

2026-04-14
32Min. Lesezeit
Aktualisiert: 2026-04-15
hf_20260415_032913_aa4e93c3-7aae-4434-bf2a-c38094cfbccb.webp

Inhaltsverzeichnis

Wenn man mit Claude Code arbeitet, kommt es oft vor, dass man kurz den Inhalt einer Datei überprüfen möchte. Man kann zwar schnell mit cat oder less nachsehen, aber manchmal möchte man den Code ordentlich mit Syntax-Highlighting lesen.

Natürlich könnte man einfach VS Code oder Cursor öffnen, aber wenn man IDEs in mehreren Projekten gleichzeitig laufen lässt, macht sich der Speicherverbrauch allmählich bemerkbar. Kennen Sie das Gefühl, dass es sich zu „schwerfällig“ anfühlt, eine komplette IDE zu starten, nur um kurz eine Datei anzusehen?

In diesem Artikel stelle ich zwei Lösungen vor, die komplett im Terminal funktionieren.

  • bat für reines Betrachten: Eine verbesserte Version von cat. Mit Syntax-Highlighting und einer Mausbedienung, die sich natürlich anfühlt.
  • Neovim, wenn auch Bearbeitung geplant ist: Ein leichtgewichtiger Editor, der Dateien mit Syntax-Highlighting öffnet und bei Bedarf schnelle Korrekturen ermöglicht.

Übrigens verwende ich als Terminal Ghostty. Es ist sehr nützlich, da es leichtgewichtig ist und man den Bildschirm einfach teilen kann. Es ist sehr komfortabel, in einem Pane Claude Code laufen zu lassen und im anderen mit bat oder Neovim Dateien zu prüfen.

Die einfachste Option: cat / less / tail

Bevor wir zu bat kommen, möchte ich kurz die Standardbefehle erwähnen. Wenn Sie kein Syntax-Highlighting benötigen und nur den Inhalt sehen wollen, reichen diese völlig aus.

# Die gesamte Datei anzeigen
cat src/index.ts

# Mit Scrollfunktion lesen
less src/index.ts

# Nur das Ende der Datei prüfen
tail -20 src/index.ts

In less scrollen Sie mit der Leertaste um eine Bildschirmseite weiter und beenden das Programm mit q. Eine Suche ist möglich, indem Sie / gefolgt von einem Schlüsselwort eingeben.

Allerdings bieten diese Befehle kein Syntax-Highlighting. Wenn man Code liest, kann das Fehlen von Farben auf Dauer anstrengend sein.

Die ultimative Lösung zum Betrachten: bat

bat ist ein Klon von cat, der von Haus aus Syntax-Highlighting und Paging (ähnlich wie less) bietet. Es ist ein Paradebeispiel für moderne, in Rust geschriebene CLI-Tools und wird weithin als Standardersatz für cat verwendet.

Die Installation erfolgt unter macOS einfach über Homebrew:

brew install bat

Die Benutzung ist fast identisch mit cat:

bat src/index.ts

Bei langen Dateien wird automatisch das Paging aktiviert; wie bei less scrollen Sie mit der Leertaste und beenden mit q. Bei kurzen Dateien wird der Inhalt direkt ausgegeben, ohne den Pager zu nutzen, sodass es als vollwertiger Ersatz für cat dienen kann.

Wie verhält sich die Mausbedienung?

bat (das intern less verwendet) fängt keine Mausereignisse ab. Daher verarbeitet das Terminal die Mausauswahl ganz normal. Drag-to-select → Command+C funktioniert direkt. Man muss sich keine speziellen Modifikatortasten merken, wie es bei Neovim (dazu später mehr) der Fall sein kann.

Auch das Scrollen mit dem Mausrad funktioniert in Ghostty direkt für die angezeigte Seite, sodass es ohne zusätzliche Konfiguration sehr komfortabel ist.

bat als dauerhaften Ersatz für cat nutzen

Wenn Sie bat wie cat verwenden möchten, ist es üblich, einen Alias anzulegen:

alias cat='bat --plain --paging=never'

--plain entfernt Dekorationen (wie Zeilennummern und Gitterlinien), und --paging=never sorgt dafür, dass auch kurze Dateien direkt ausgegeben werden. So haben Sie das gewohnte cat-Gefühl, profitieren aber vom Syntax-Highlighting.

Ich persönlich habe jedoch keinen Alias gesetzt. Zum einen möchte ich, dass das Verhalten in Shell-Skripten konsistent bleibt, und zum anderen hilft es mir, mein Ziel klarer zu definieren, wenn ich bewusst bat tippe, wenn ich Syntax-Highlighting sehen möchte.

Wenn auch Bearbeitung im Spiel ist: Neovim

bat ist ein reines Werkzeug zum Betrachten. Wenn Sie nach dem Lesen eine kleine Korrektur vornehmen möchten, schlägt die Stunde des Editors. Im Folgenden erkläre ich, wie Sie Neovim einrichten. Keine Sorge, auch wenn Sie noch nie mit Vim-ähnlichen Editoren gearbeitet haben.

Warum Neovim statt Vim?

Wenn man an Editoren für das Terminal denkt, kommt einem oft Vim in den Sinn. In diesem Artikel verwenden wir jedoch Neovim. Neovim ist ein Fork von Vim, und die grundlegende Bedienung ist identisch. Der Hauptunterschied liegt darin, wie viel bereits ohne Konfiguration einsatzbereit ist.

Um mit dem Standard-Vim das Gleiche zu erreichen, müsste man erst Syntax-Highlighting aktivieren, autoread konfigurieren, Zeilennummern anzeigen lassen, das Verhalten der Backspace-Taste korrigieren usw. Es gibt eine Menge Einstellungen, ohne die man kaum arbeiten kann. In Neovim sind diese standardmäßig aktiviert, sodass man mit minimalem Aufwand ans Ziel kommt.

Erfahrene Vim-Nutzer können natürlich die gleichen Einstellungen in ihre .vimrc schreiben. Da ich selbst jedoch kein Vim-Experte bin, fand ich Neovim angenehmer, da es „out of the box“ praktisch nutzbar ist. Für Einsteiger ist Neovim meiner Meinung nach zugänglicher.

Installation und Start von Neovim

Unter macOS via Homebrew:

brew install neovim

Für Ubuntu-basierte Systeme:

sudo apt install neovim

Überprüfen Sie die Installation:

nvim --version

Eine Datei öffnen Sie mit nvim Dateiname:

nvim src/index.ts

Das wichtigste Konzept: Die „Modi“

Wenn Sie Neovim zum ersten Mal benutzen, sind Sie vielleicht verwirrt, dass Tasteneingaben keinen Text erzeugen. Das liegt daran, dass Neovim verschiedene „Modi“ hat. Direkt nach dem Start befinden Sie sich im Normalmodus, in dem alle Tasteneingaben als Befehle interpretiert werden.

Sie müssen sich nur drei Modi merken:

TasteModusZweck
(beim Start)NormalmodusCursorbewegung, Befehlsausführung
iEinfügemodusText eingeben und bearbeiten
v / VVisueller ModusBereich auswählen (v zeichenweise, V zeilenweise)

Von jedem Modus aus gelangen Sie mit Esc zurück in den Normalmodus. Wenn Sie sich unsicher sind, drücken Sie zweimal Esc – so finden Sie immer zurück. In der Statuszeile am unteren Bildschirmrand wird -- INSERT -- oder -- VISUAL -- angezeigt, sodass Sie immer wissen, in welchem Modus Sie sich befinden.

Speichern und Beenden

Drücken Sie im Normalmodus :, um die Befehlszeile zu öffnen. Merken Sie sich mindestens diese Befehle:

BefehlAktion
:wSpeichern
:qBeenden
:wqSpeichern und beenden
:q!Beenden ohne zu speichern

Dass man nicht weiß, wie man den Editor schließt, ist ein klassischer Vim-Witz, aber mit :q! kommen Sie immer sicher heraus.

Automatisches Neuladen bei Änderungen durch Claude Code

Vielleicht haben Sie eine Datei in Neovim geöffnet, während Claude Code im benachbarten Pane arbeitet. Es ist praktisch, wenn Neovim die Datei automatisch neu lädt, sobald Claude Code sie ändert.

Die Konfigurationsdatei ist ~/.config/nvim/init.vim. Falls das Verzeichnis noch nicht existiert, erstellen Sie es bitte.

mkdir -p ~/.config/nvim
nvim ~/.config/nvim/init.vim

Schreiben Sie den folgenden Inhalt hinein:

set autoread
set number
syntax on
au CursorHold,CursorHoldI * checktime
au FocusGained,BufEnter * checktime

autoread ist in Neovim zwar standardmäßig aktiv, aber wir schreiben es hier explizit hin. Allein reicht autoread jedoch oft nicht aus, da es nur in bestimmten Momenten (z. B. nach einem Shell-Befehl) prüft. Durch die beiden au-Zeilen (Autocmds) wird checktime (die Prüfung auf externe Änderungen) auch dann ausgeführt, wenn der Cursor kurz stillsteht oder das Fenster wieder fokussiert wird.

Mit dieser Einstellung können Sie zusehen, wie sich der Inhalt in Neovim aktualisiert, während Claude Code im anderen Fenster die Datei bearbeitet.

Die Logik von Kopieren und Einfügen

Wenn Sie in Neovim auch editieren möchten, müssen Sie das System von Kopieren und Einfügen verstehen. In der Vim-Welt gibt es dafür eigene Begriffe:

  • Kopieren wird als Yank bezeichnet.
  • Es gibt kein klassisches Ausschneiden; wenn Sie etwas löschen (delete), landet der Inhalt automatisch in einem Register.

Das heißt: „Löschen = Ausschneiden“. Dieses Umdenken ist oft die erste Hürde.

Grundlegende Bedienung (Normalmodus)

TasteAktion
yyAktuelle Zeile kopieren (yank)
ddAktuelle Zeile ausschneiden (löschen und ins Register)
xEin Zeichen löschen
pHinter dem Cursor einfügen
PVor dem Cursor einfügen

Im visuellen Modus (nachdem Sie mit v einen Bereich markiert haben) kopieren Sie mit y und schneiden mit d aus.

Mit der Mac-Zwischenablage synchronisieren

Standardmäßig wirken y und p nur auf die internen Register von Neovim. Wenn Sie Text mit anderen Mac-Apps austauschen möchten, fügen Sie diese Zeile in Ihre init.vim ein:

set clipboard=unnamedplus

Damit werden y / p / d direkt mit der System-Zwischenablage von macOS verknüpft. Sie können dann in Neovim geyankten Text mit Command+V in andere Apps einfügen oder in anderen Apps kopierten Text mit p in Neovim einfügen.

Falls Sie die Zwischenablage nicht permanent synchronisieren, sondern nur bei Bedarf nutzen möchten, können Sie "+y (in die System-Zwischenablage kopieren) oder "+p (aus der System-Zwischenablage einfügen) verwenden.

Wahl der Mausbedienung

In Neovim ist die Mausbedienung standardmäßig aktiviert (set mouse=nvi). Wenn Sie in diesem Zustand mit der Maus ziehen, wird dies als Auswahl im visuellen Modus von Neovim gewertet, nicht als Auswahl des Terminals.

Wenn Sie dann Command+C drücken, wird nichts kopiert, da das Terminal selbst keinen markierten Bereich sieht. Wenn Sie zudem versehentlich die Taste c drücken, interpretiert Neovim dies als „change“ (Auswahl löschen und in den Einfügemodus wechseln), was dazu führen kann, dass der markierte Text verschwindet.

Am Anfang ist es mir oft passiert, dass ich aus Gewohnheit „Markieren mit Maus → Command+C“ gemacht und dabei Text gelöscht habe. Aber keine Sorge, man gewöhnt sich schnell daran. Falls doch etwas schiefgeht: Mit Esc zurück in den Normalmodus und u drücken (Undo). (u ist Rückgängig, Ctrl+r ist Wiederholen – entspricht Command+Z / Command+Shift+Z).

Es gibt drei Strategien für den Umgang mit der Maus:

Empfehlung: Standardeinstellungen beibehalten

Am einfachsten ist es, mouse=nvi beizubehalten und das Kopieren und Einfügen der Vim-Logik (y / d / p) zu überlassen. So mache ich es inzwischen auch.

  • Mit der Maus ziehen für visuelle Auswahl → einfach y drücken, und es landet in der Mac-Zwischenablage (dank clipboard=unnamedplus).
  • Man kann den Cursor per Mausklick positionieren, was sich beim Editieren wie in einem normalen Editor anfühlt.

Man ersetzt lediglich die Gewohnheit „Markieren → Command+C“ durch „Markieren → y“. Da man sich nur drei Tasten (y, d, p) merken muss, ist man damit nach kurzer Eingewöhnung sogar schneller.

Wenn Sie unbedingt Command+C nutzen wollen: Modifikatortaste + Ziehen

Wenn Sie nicht auf die Tastaturbefehle umsteigen und bei Command+C bleiben möchten, können Sie beim Ziehen mit der Maus eine Modifikatortaste gedrückt halten. Dann übernimmt das Terminal die Auswahl, und Command+C funktioniert wie gewohnt.

Die Taste variiert je nach Terminal-App:

TerminalMaus-Reporting umgehen
GhosttyShift + Ziehen
iTerm2Shift + Ziehen (Option + Ziehen für Blockauswahl)
Terminal.appfn + Ziehen oder Shift + Ziehen

Wenn Sie die Mausbedienung ganz abschalten wollen: set mouse=

set mouse=

Damit unterliegt die gesamte Mausbedienung dem Terminal. Markieren und Command+C funktionieren normal. Allerdings können Sie den Cursor dann nicht mehr per Mausklick positionieren, was das Editieren etwas unkomfortabler macht.

Zusammenfassung: Einfügen aus der Mac-Zwischenablage in Neovim

Je nach Situation gibt es verschiedene Wege:

SituationVorgehensweise
clipboard=unnamedplus konfiguriertp im Normalmodus
Ohne Konfiguration"+p im Normalmodus
Im EinfügemodusCommand+V (über die Einfügefunktion des Terminals)

Die finale init.vim

Zusammengefasst sieht die Konfiguration so aus:

set mouse=nvi
set clipboard=unnamedplus
set number
syntax on
set autoread
au CursorHold,CursorHoldI * checktime
au FocusGained,BufEnter * checktime

Es sind nur sieben Zeilen, aber sie bewirken Folgendes:

  • Cursor-Positionierung per Mausklick möglich.
  • Markieren mit der Maus → y kopiert in die Mac-Zwischenablage.
  • y / p / d sind direkt mit der Mac-Zwischenablage verknüpft.
  • Command+V im Einfügemodus funktioniert.
  • Externe Änderungen durch Claude Code werden automatisch neu geladen.

Fazit

Mein Fazit ist simpel: bat zum reinen Betrachten, Neovim, wenn auch Bearbeitung geplant ist. bat ist sofort nach der Installation einsatzbereit. Und für Neovim reichen die zwei Zeilen set clipboard=unnamedplus und set autoread, um eine leichtgewichtige Umgebung zu schaffen, in der man Code mit Syntax-Highlighting lesen und bei Bedarf direkt korrigieren kann.

Neovim mag am Anfang wegen der Modi und der Kopier-Logik einschüchternd wirken, aber sobald man sich daran gewöhnt hat, dass Yank (y) und Delete (d) direkt die Zwischenablage bedienen, ist es ein sehr befriedigendes Gefühl, Aufgaben direkt im Terminal zu erledigen.

Wenn eine IDE zu viel des Guten ist, aber cat wegen fehlender Farben zu unübersichtlich, wird die Arbeit mit Claude Code durch den gezielten Einsatz von bat und Neovim deutlich komfortabler. Probieren Sie es aus!

Diesen Artikel teilen