haelle.vimrc
Ansible vimrc
Rola Ansible do instalacji NeoVim z kilkoma wtyczkami.
Potrzebuje zadań społeczności Ansible:
ansible-galaxy collection install community.general
Zależności
- ⚠ Uwaga: ta instalacja pobiera NodeJS i npm z menedżera pakietów. ⚠
- Zainstaluj Fzf i Ag do wyszukiwania
Cele
Pełne/wszechstronne wsparcie dla następujących języków/syntax:
- Ruby/RoR
- HTML
- Javascript
- VueJS
- React
- Ansible
- JSON
- YAML
- Markdown
- C#
Celem jest posiadanie 0 błędów w działaniu
Motyw i czcionka
Aktualny motyw to slate (desert, industry również są dobre); zmień go za pomocą :colorscheme xxx
- widoczne dostępne za pomocą Tab
.
Aktualna czcionka to MesloLGS NF Regular (obsługuje emotikony) ustawiona dla Zsh
Wtyczki
Instaluj wtyczki: :PlugInstall
(już zainstalowane przez Ansible)
Nawigacja
Pomoc: użyj :help keycodes
, aby pokazać nazwy kodów klawiszy w vimie
Możliwość nawigacji za pomocą podziałów, kart i Tmux:
<C-w f>
: otwórz w podziale<C-w gf>
: otwórz w karcie<C-⬅,⬆,⬇,➡>
: nawigacja po panelach<C-w-⬅,⬆,⬇,➡>
: przenieś panelgt
: przełącz między kartami wim<C-b>
: wywołaj nawigację Tmux
Aktywne funkcjonalności
gd
: przejdź do definicjigi
: przejdź do implementacjigr
: nawiguj przez odniesieniagf
: przejdź do pliku (tylko dla Ruby/Rails)gg=G
: sformatuj kodF2
: zmień nazwę zmiennej / metody / klasy<C-k>
: pokaż definicję metodyqf
: uruchom naprawę lintera - nie działa dobrze...fr
: uruchom formatter na bieżącej linii (nie działa na Solargraph/Ruby)fa
: uruchom formatter na całym pliku<C-o>
: wróć<C-s>
: zapisz<C-space>
: uruchom silnik autouzupełniania<tab>
: przechodź przez propozycje uzupełnienia<C-c>
: komentuj / odkomentuj (wiersz lub zaznaczenie)bufdo!
: użyj!
, aby nie zapisywać plików (z tą konfiguracją jest to obowiązkowe...)
Związane z Ruby i Rails:
<C-q>
: przełącz między specyfikacją Ruby a plikiem<C-w>t/s/l/a
uruchom test/spec (plik, najbliższy, ostatni, wszystkie)
Inne:
- zawieś vima
Ctrl+z
i wróć z fg
Automatyczne / pasywne funkcjonalności
- sprawdzanie pisowni
- podświetlanie składni
- automatyczny linter w górnej części oraz w oknie pływającym
- używaj 2 spacji dla tabulacji wszędzie
- zapamiętaj pozycję kursora między sesjami
- usuń zbędne linie przy zapisie
- usuń białe znaki
- pokaż wszystkie niewidoczne znaki
- podświetl kluczowe słowa 'TODO/FIXME/XXX'
- lepsze dopasowanie rozmiaru vima
- dodaj wszystkie rodzaje par (), [] tag...
- dodaj pary Ruby (def/end, do/end)
- dodaj informacje gitowe w górnej części
- dodaj informacje lintera w górnej części lub podkreśleniem
- pokaż definicję metody, gdy jest dostępna (użyj
<C-a>
i<C-b>
do przewijania do przodu i do tyłu)
Wyszukiwanie
Aktywne:
<C-f>
: wyszukiwanie w bieżącym pliku (podstawowy vim)<Shift-f>
: wyszukiwanie we wszystkich plikach (używając fzf.vim / ag)- Uwaga : może być konieczne wyłączenie wyszukiwania w terminalu, aby to działało
<Esc>
: anuluj wyszukiwanie (anuluj podświetlanie)<C-p>
: wyszukaj plik po nazwie (używając fzf.vim)Enter
: otwórz<C-t>
: otwórz w nowej karcie<C-x>
: otwórz w poziomym podziale<C-v>
: otwórz w pionowym podziale
Pasywne:
- podświetl wyniki w DarkGreen
- podświetl aktualny wybór, gdy kursor miga
Pasek boczny (NerdTree)
Aktywne
<C-n>
: otwórz/zamknij NerdTreeEnter
: otwórz pliki
: otwórz w poziomym podziales
: otwórz w pionowym podziale- ... zobacz dokumentację NerdTree
Pasywne
- ikony dla plików
- symbole na podstawie statusu Gita
- ignoruj niektóre foldery (
node_modules
,.gitignore
)
Ruby - widzieć to wierzyć
F4/F5/F6/F7
oznacz/zainicjuj/oznacz i uruchom/usuń oznaczenia dla kodu
Podbój uzupełnienia
Wtyczki zostaną zainstalowane przy pierwszym uruchomieniu.
Dla Solargraph musisz go zainstalować dla każdej wersji Ruby, z którą pracujesz:
:InstallGems
Przydatne komendy:
:CocInfo
:CocList commands
:checkhealth
:CocList extensions
:call CocAction('format')
:CocList marketplace python
Pamiętaj o dostępnych rozszerzeniach:
- javascriptreact
- typescript
- typescriptreact
- typescript.tsx
- graphql
Zmienne roli
Brak obowiązkowych parametrów, wszystkie parametry są w defaults/main.yml
Przykład zestawu zadań
- hosts: localhost
roles:
- role: vimrc
vim_user: foo
Użycie podczas rozwoju
Aby uruchomić to lokalnie, utwórz dowiązanie symboliczne: cd /etc/ansible/roles & sudo ln -s /path/to/vimrc .
Licencja
BSD
ansible-galaxy install haelle.vimrc