Communitygithub.com

G1Joshi/Agent-Skills

Professionelle Vim-Unterstützung für modale Bearbeitung, .vimrc-Konfiguration, Register, Makros, Suchen/Ersetzen und Plugin-Verwaltung mit vim-plug. Verwenden Sie dies, wenn Sie Text effizient in Terminalumgebungen bearbeiten, Vimscript schreiben, Makros aufzeichnen oder grundlegende Vim-Einstellungen konfigurieren möchten.

Was ist Agent-Skills?

Diese Fähigkeit bietet eine umfassende und detaillierte Anleitung für Vim, den universellen Texteditor auf jedem UNIX-System. Sie konzentriert sich auf die Kernkonzepte des modalen Editierens, darunter die Operator-Bewegungs-Grammatik (z. B. `dap`, `ci"`, `gUiw`), die Makro-Aufzeichnung und -Wiedergabe sowie die Verwaltung von Puffern und Registern. Die Anleitung ist ideal für Entwickler und Systemadministratoren, die Vim für die ferngesteuerte Serverbearbeitung, schnelle Git-Commit- und Merge-Editierungen oder die Automatisierung sich wiederholender Texttransformationen nutzen. Sie schließt die Erstellung einer robusten `~/.vimrc`-Konfiguration, die Nutzung von Textobjekten zur effizienten Codebearbeitung und die Integration von Plugins über vim-plug ein. Eine Fehlerbehebungsseite und Best Practices für 2026 helfen dabei, häufige Fallstricke zu vermeiden und die Produktivität zu maximieren. Diese Fähigkeit unterstützt Plattformen wie Claude Code, Cursor und andere KI-Agenten, die Vim-Kenntnisse erfordern.

Funktioniert mit~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/G1Joshi/Agent-Skills/tree/HEAD/skills/tools/vim

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Vim

Vim ist der universelle Texteditor, der auf jedem UNIX-System installiert ist. Während Neovim innoviert, konzentriert sich Vim auf Abwärtskompatibilität und Stabilität.

Wann verwenden

  • Universelle Server- & Systembearbeitung: Bearbeiten von Systemkonfigurationen, Skripten und Code auf jedem Unix/Linux-Server ohne Installation externer Software.
  • Modale Textmanipulation: Texttransformationen mit Operator-Bewegungs-Grammatik (dap, ci", gUiw).
  • Kopflose Makro-Automatisierung: Aufzeichnen und Abspielen sich wiederholender Bearbeitungsvorgänge über Hunderte von Zeilen (qa, @a).
  • Git-Commit & Merge-Bearbeitung: Schnelle interaktive Bearbeitung für Commit-Nachrichten, interaktive Rebases und Konfliktlösung bei Diffs.

Schnellstart

1. Minimale ~/.vimrc

syntax on
set number
set relativenumber
set tabstop=2
set shiftwidth=2
set expandtab
set hlsearch
set incsearch
set clipboard=unnamed

let mapleader = " "
nnoremap <leader>w :w<CR>
nnoremap <leader>q :q<CR>

2. Grundlegende Bearbeitungsbefehle

  • i / a: Einfügemodus (vor / nach dem Cursor)
  • ci": Ändere innerhalb von Anführungszeichen
  • da{: Lösche um geschweifte Klammern herum
  • :%s/foo/bar/g: Ersetze alle Vorkommen von foo durch bar in der Datei
  • . : Wiederhole die letzte Änderung

Kernkonzepte

Moderne Produktions-Vimrc (~/.vimrc)

Konfigurieren sinnvoller Standardeinstellungen, des Plugin-Managers und der Code-Navigation:

" ~/.vimrc
set nocompatible
filetype plugin indent on
syntax on

" Allgemeine Einstellungen
set number
set relativenumber
set expandtab
set shiftwidth = 2
set tabstop = 2
set autoindent
set smartindent
set hlsearch
set incsearch
set ignorecase
set smartcase
set hidden
set backspace=indent,eol,start
set updatetime=300
set clipboard=unnamed

" Leader-Tastenbelegung
let mapleader = " "

" Schnelle Split-Navigation
nnoremap <C-h> <C-w>h
nnoremap <C-j> <C-w>j
nnoremap <C-k> <C-w>k
nnoremap <C-l> <C-w>l

" Suchergebnis-Hervorhebung löschen
nnoremap <leader>h :nohlsearch<CR>

Wichtige Textobjekte & Grammatik

Kombinieren von Operatoren (d, c, y, v) mit Textobjekten und Bewegungen:

ci"      - Ändere innerhalb von doppelten Anführungszeichen ("foo" -> "")
di(      - Lösche innerhalb von Klammern
yap      - Kopiere (yank) um einen Absatz herum
gUiw     - Wandle inneres Wort in GROSSBUCHSTABEN um
dt,      - Lösche vom Cursor bis zum Komma
.        - Wiederhole die letzte Änderung sofort

Makro-Aufzeichnung & -Ausführung

Automatisieren sich wiederholender Transformationen tabellarischer Daten:

1. Drücke `qa`, um die Aufnahme in das Register 'a' zu starten
2. Führe die Textbearbeitungsschritte aus (z. B. `0iconst <Esc>A = true;<Esc>j`)
3. Drücke `q`, um die Aufnahme zu beenden
4. Spiele das Makro auf der aktuellen Zeile ab: `@a`
5. Spiele das Makro 50 Mal über Zeilen hinweg ab: `50@a`
6. Führe das Makro auf einer visuellen Auswahl aus: `:'<,'>normal @a`

Häufige Muster

Makro-Aufzeichnung und Massenausführung

Problem: Führe sich wiederholende mehrschrittige Bearbeitungen über mehrere Zeilen durch.
Lösung: Zeichne Tastenanschläge im Register q auf.

  1. Setze den Cursor an die Zielstartposition.
  2. Drücke qq, um die Aufnahme im Register q zu starten.
  3. Führe die Bearbeitungssequenz aus (z. B. I" <Esc> A",<Esc> j ^).
  4. Drücke q, um die Aufnahme zu beenden.
  5. Spiele mit @q ab, oder führe über 50 Zeilen aus: 50@q.

Plugin-Verwaltung mit vim-plug

Problem: Installiere und organisiere Vim-Plugins ohne manuelle Pfadmanipulation.
Lösung: Verwende vim-plug.

call plug#begin('~/.vim/plugged')
Plug 'tpope/vim-sensible'
Plug 'tpope/vim-fugitive'
Plug 'preservim/nerdtree'
call plug#end()

Führe :PlugInstall in Vim aus, um zu installieren.

Best Practices (2026)

  • Tu meistere die modale Navigation (h, j, k, l, w, b, e) und vermeide den Griff zu den Pfeiltasten.
  • Tu nutze Textobjekte (ciw, da(, yi{), um strukturierte Codeblöcke mit minimalen Tastenanschlägen zu bearbeiten.
  • Tu verwende den Punktbefehl (.), um kürzliche Texttransformationen auf ähnliche Zeilen zu wiederholen.
  • Tu aktiviere set hidden, damit Puffer im Hintergrund geöffnet bleiben können, ohne sofortiges Speichern zu erzwingen.
  • Tu nicht installiere Hunderte schwerer Legacy-VimScript-Plugins; wechsle zu Neovim Lua, wenn eine umfangreiche IDE-Umgebung erforderlich ist.
  • Tu nicht lasse Swap-Dateien (.swp) zurückbleiben; konfiguriere set noswapfile oder lege ein dediziertes Swap-Verzeichnis fest.
  • Tu nicht verwende synchrone externe Aufrufe in ~/.vimrc, die auf entfernten Rechnern eine merkliche Startverzögerung verursachen.

Fehlerbehebung

Fehler / SymptomUrsacheLösung
System-Zwischenablage-Kopie schlägt fehl ("+y tut nichts)Vim ohne +clipboard-Unterstützung kompiliertInstalliere vim-gtk3 (Ubuntu) oder macvim/neovim mit aktivierter Zwischenablage-Unterstützung.
Pfeiltasten fügen A, B, C, D-Zeichen einAusführung im strikten Vi-kompatiblen ModusFüge set nocompatible am Anfang der ~/.vimrc hinzu.
Hervorhebung von nachgestellten Leerzeichen bleibt nach Suche bestehenHervorhebung der Suche blieb aktivDrücke :nohlsearch oder binde <leader>h :nohlsearch<CR>.

Referenzen


Übersetzt ins Deutsche.

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

G1Joshi/Agent-Skills

Expert Dask distributed computing assistance covering Dask DataFrames, Arrays, Futures, and cluster scaling. Use when analyzing datasets too large for pandas on a single machine or multi-node cluster.

G1Joshi/Agent-Skills

Expert dbt (data build tool) assistance covering SQL modeling, Jinja macros, tests, documentation, and semantic layer. Use when building analytics engineering pipelines on BigQuery, Snowflake, or PostgreSQL.

G1Joshi/Agent-Skills

Expert JAX assistance covering Autograd, XLA compilation (`jit`), vectorization (`vmap`), and parallelization (`pmap`). Use when building high-performance numerical computing and cutting-edge deep learning research.

G1Joshi/Agent-Skills

Expert Ray distributed computing assistance covering Ray Core (actors, tasks), Ray Train, Ray Tune, and Ray Serve. Use when scaling Python compute and ML training across multi-node clusters.

G1Joshi/Agent-Skills

Expert Git version control assistance covering branching, interactive rebase, cherry-pick, submodules, worktrees, and conflict resolution. Use when managing source code history and collaboration workflows.

G1Joshi/Agent-Skills

Expert K9s CLI assistance covering terminal Kubernetes cluster navigation, real-time log streaming, port forwarding, and pod debugging. Use when managing and troubleshooting Kubernetes clusters with speed.

G1Joshi/Agent-Skills

Expert SWC assistance covering high-performance Rust-based JavaScript/TypeScript compilation, .swcrc configuration, Jest testing via @swc/jest, and minification. Use when replacing Babel with SWC for faster builds, accelerating test execution, or compiling modern ECMAScript features.

G1Joshi/Agent-Skills

Expert Tig assistance covering text-mode interface for Git, interactive staging, commit graph visualization, diff exploration, and blame navigation. Use when navigating Git commit history in the terminal, staging hunks interactively, browsing file changes, or reviewing revisions.

G1Joshi/Agent-Skills

Expert Zed editor assistance covering high-performance Rust-based text editing, multi-buffer editing, language server protocols (LSP), and AI assistant integrations. Use when configuring Zed settings.json, setting up language extensions, collaborating in real-time channels, or optimizing editor startup speed.

G1Joshi/Agent-Skills

Expert Zsh assistance covering shell customization, Oh My Zsh plugins, Zinit plugin manager, prompt engineering (Starship/Powerlevel10k), and shell scripting. Use when configuring .zshrc, writing Zsh automation scripts, optimizing shell startup time, or configuring tab-completion.

G1Joshi/Agent-Skills

Expert [skill-name] assistance covering [feature 1], [feature 2], and [feature 3]. Use when [working with X], [debugging Y], or [implementing Z].

Verwandte Skills