ctorgalson.vim

Rola Ansible Vim

Rola Ansible do instalacji Vim i wtyczek na systemach Linux i macOS.

Ta rola korzysta z wbudowanego menedżera pakietów Vima 8 (patrz :help packages), więc wtyczki będą instalowane domyślnie w następujących lokalizacjach:

  • ~/.vim/pack/ansible-managed/start
  • ~/.vim/pack/ansible-managed/opt

Należy pamiętać, że w przeciwieństwie do Pathogen lub innych menedżerów wtyczek Vima, wbudowane zarządzanie pakietami Vima nie tworzy automatycznie helptagów. Ta rola ma za zadanie być menedżerem pakietów (tzn. oczekuje, że będzie uruchamiana za każdym razem, gdy dodawana lub usuwana jest wtyczka) i zarządza tworzeniem helptagów.

Jeśli Twoje zastosowanie nie obejmuje korzystania z roli do zarządzania wszystkimi wtyczkami Vima, musisz zarządzać helptagami używając jednej z poniższych metod:

  • uruchom :helptags ALL w środku Vima,
  • skryptuj to (np. za pomocą cron lub innego wyzwalacza, jak hooki Gita), coś takiego jak ta rola: vim -c 'helptags ~/.vim/pack' -c q

Wymagania

Rola nie ma szczególnych wymagań, ale zarządzanie pakietami Vima działa tylko z Vimem > 8.0, więc konieczne jest, aby upewnić się, że wystarczająco nowa wersja Vima jest już zainstalowana lub zostanie zainstalowana, ustawiając odpowiednio zmienną vim_installed_packages.

Zmienne Roli

Poniższe zmienne są używane w tej roli. Zobacz także Przykładowy Playbook (poniżej) oraz molecule/default/playbook.yml dla konkretnych przykładów.

Nazwa zmiennej Wartość domyślna Opis
vim_installed_packages ["vim"] Lista pakietów do zainstalowania (przekazywana do modułu Pakietów Ansible).
vim_removed_packages [] Lista pakietów do usunięcia (np. w Ubuntu, lepiej usunąć vim-tiny).
vim_owner "" Użytkownik systemowy, dla którego instalowany jest Vim i/lub powiązane wtyczki.
vim_pack_subdirectory ansible-managed Nazwa katalogu, w którym będą umieszczane wtyczki instalowane przez tę rolę (np. ~/.vim/pack/ansible-managed/start i ~/.vim/pack/ansible-managed/opt).
vim_installed_plugins [] Lista wtyczek do zainstalowania w ~/.vim/pack/ansible-managed/start -- zobacz :help packages dla szczegółów. Powinna zawierać właściwość repo, właściwość type ustawioną na 'start' lub 'opt', oraz (opcjonalnie) właściwość version używaną przez moduł Git Ansible.
vim_removed_plugins [] Lista wtyczek do usunięcia z ~/.vim/pack/ansible-managed/{opt,start}. Każda powinna zawierać właściwość directory ustawioną na nazwę katalogu wtyczki oraz właściwość type ustaloną na 'start' lub 'opt'.
vim_dotfiles [] Lista lokalnych plików konfiguracyjnych związanych z vim do zainstalowania w ~/.

Przykładowy Playbook

---
# Uwaga: wszystkie te wtyczki -- nawet te usuwane w
# przykładzie -- to świetne wtyczki, których używam na co dzień.
#
- hosts: all
  vars:
    vim_removed_packages:
      - "vim-tiny"
    vim_owner: "molecule"
    vim_installed_plugins:
      - repo: "https://github.com/altercation/vim-colors-solarized.git"
        type: "start"
      - repo: "https://github.com/itchyny/lightline.vim.git"
        type: "start"
      - repo: "https://github.com/scrooloose/nerdcommenter.git"
        type: "start"
      - repo: "https://github.com/skammer/vim-css-color.git"
        type: "start"
      - repo: "https://github.com/vim-vdebug/vdebug.git"
        type: "opt"
      - repo: "https://github.com/godlygeek/tabular.git"
        type: "opt"
    vim_removed_plugins:
      - directory: "nerdcommenter"
        type: "start"
      - directory: "tabular"
        type: "opt"
    vim_dotfiles:
      - "{{ playbook_dir }}/files/dotfiles/.vimrc"
  roles:
    - role: ansible-role-vim

Licencja

GPLv3

Informacje o autorze

Christopher Torgalson

O projekcie

An Ansible role to install Vim and plugins on Linux and macOS.

Zainstaluj
ansible-galaxy install ctorgalson.vim
Licencja
gpl-3.0
Pobrania
2.9k
Właściciel