gikeymarcia.neovim
Neovim
Installieren Sie die neueste neovim und tree-sitter von GitHub für x86_64 Debian-basierte Systeme.
Optional:
- Installieren Sie die nächtliche Neovim-Appimage als
nnvim
- Synchronisieren Sie die lokale nvim-Konfiguration mit entfernten Maschinen
- Installieren Sie unterstützende Apt-Pakete
- Installieren Sie unterstützende Pip-Pakete (verwendet pipx)
- Installieren Sie unterstützende npm-Pakete
Voraussetzungen
Keine.
Rollenvariablen
Standardkonfiguration
Diese Rolle installiert standardmäßig Neovim und Tree-sitter von GitHub. Sie können das Verhalten ändern und/oder die Version jeder Anwendung, die installiert wird, mit Variablen anpassen.
neovim: true
neovim_version: "0.10.1"
treesitter: true
treesitter_version: "0.22.6"
Nächtliche Neovim-Version
Wenn Sie die neueste nächtliche Neovim-Appimage-Version von GitHub möchten, können Sie 'neovim_nightly: true' setzen (Standard: false)
neovim_nightly: true
Neovim PDE (Persönliche Entwicklungsumgebung)
Wie die meisten Vim-Nutzer sagen werden, wird es im Laufe der Zeit ein Werkzeug, das Ihren Bedürfnissen entspricht. Das Problem bei diesem Werkzeug ist, alle beweglichen Teile zwischen mehreren Maschinen synchron zu halten. Der Schalter 'neovim_pde' soll Ihnen helfen, Ihre Entwicklungsumgebungs-Konfiguration an einem Ort festzuhalten und nahtlos auf mehrere Maschinen zu übertragen.
Hier sind die Standardwerte der Rolle.
neovim_pde: false
# Pakete
neovim_apt_packages: []
neovim_pip_packages: []
neovim_npm_packages: []
# Konfiguration
neovim_external_config: []
neovim_config_dirs: []
neovim_config_syncs: []
neovim_pde
ist der Schalter, der diesen erweiterten Synchronisierungsmodus aktiviert/deaktiviert. Wenn dieser Wert false ist (Standard), werden keine der anderen PDE-Funktionen ausgeführt. Keine Pakete, keine Synchronisierungen.
Pakete
Es gibt derzeit 3 unterstützte Paketverwaltungssysteme:
neovim_apt_packages
neovim_pip_packages
neovim_npm_packages
Jede Paketvariable sollte eine Liste von zu installierenden Paketen enthalten. Wenn Sie Pakete aus einer bestimmten Quelle auswählen, wird auch der Paketmanager installiert. Ihre Variablen-Datei könnte so aussehen:
neovim_pde: true
neovim_npm_packages:
- neovim
neovim_pip_packages:
- pynvim
- flake8
In diesem Fall werden die Paketmanager 'npm' und 'pip' ebenfalls in ihrem neuesten Zustand installiert. Es gibt detailliertere Kontrollen in den Standardvariablen unter "tiefer graben".
Konfiguration
Bei der Synchronisierung der Konfiguration müssen Sie einen primary_user
definieren, der die Konfiguration erhält. Unten verwende ich die Liste 'neovim_config_syncs', um aufzulisten, welche Dateien und Ordner in meinem lokalen ~/.config/nvim/
mit der entfernten Maschine synchronisiert werden sollen.
Tipp: Ordner, die Sie synchronisieren möchten, sollten ein abschließendes /
haben.
neovim_pde: true
primary_user: prime
neovim_config_syncs:
- init.vim
- coc-settings.json
- autoload/
- ftplugin/
- lua/
- plug-config/
- snips/
- spell/
- syntax/
neovim_config_dirs:
- "/home/{{ primary_user }}/.config/nvim"
Wenn Sie möchten, dass ein Ordner im entfernten $HOME
existiert, sollte er in der Liste neovim_config_dirs
mit /home/{{ primary_user }}
als Wurzel des Pfades definiert werden. Zum Beispiel, ich stelle sicher, dass der nvim-Konfigurationsordner unter /home/{{ primary_user }}/.config/nvim
existiert.
Wenn Sie Konfigurationsdateien kopieren müssen, die sich außerhalb Ihres
~/.config/nvim befinden, können Sie die Variable neovim_external_config
verwenden. Diese Variable sollte eine Liste von Schlüssel-Wert-Paaren, 'src:' und 'dest:', enthalten.
src
ist der Pfad zur lokalen Dateidest
ist der Pfad auf der entfernten Maschine, der die 'src'-Datei erhält. Im Allgemeinen beginnen diese mit/home/{{ primary_user }}
.
neovim_external_config:
- src: ~/.config/flake8
dest: "/home/{{ primary_user }}/.config/flake8"
- src: ~/.config/shellcheckrc
dest: "/home/{{ primary_user }}/.config/shellcheckrc"
Hier kopiere ich die lokalen flake8- und shellcheck-Konfigurationsdateien auf entfernte Hosts.
Abhängigkeiten
Keine.
Beispiel-Playbook
Hier kombiniere ich all die oben genannte Konfiguration in einem einzigen Playbook.
---
- hosts: all
become: true
roles:
- gikeymarcia.neovim
vars:
neovim_nightly: true
primary_user: mikey
neovim_pde: true
neovim_npm_packages:
- neovim
neovim_pip_packages:
- pynvim
- flake8
neovim_config_syncs:
- init.vim
- coc-settings.json
- autoload/
- ftplugin/
- lua/
- plug-config/
- snips/
- spell/
- syntax/
neovim_config_dirs:
- "/home/{{ primary_user }}/.config/nvim"
neovim_external_config:
- src: ~/.config/flake8
dest: "/home/{{ primary_user }}/.config/flake8"
- src: ~/.config/shellcheckrc
dest: "/home/{{ primary_user }}/.config/shellcheckrc"
...
Lizenz
GPLv3
Autor Informationen
Sie finden mich auf GitHub @ https://github.com/gikeymarcia
Deploy the latest Neovim and sync your configs.
ansible-galaxy install gikeymarcia.neovim