Switch over to managing plugins with Ansible
The `tasks.yaml` has been updated to include the new variables file `plugins.yaml` which defines the `plugin_dir` and `plugins` variables. These are in turn used by config/local> to manage the plugin list outwith (neo)vim.
This commit is contained in:
parent
2694c76a67
commit
5972ec6aa8
110
plugins.yaml
Normal file
110
plugins.yaml
Normal file
@ -0,0 +1,110 @@
|
|||||||
|
---
|
||||||
|
plugin_dir: '{{vim_config_dir}}/pack/managed'
|
||||||
|
plugins:
|
||||||
|
# ======================== Completion & Diagnostics ==========================
|
||||||
|
|
||||||
|
# Conqueror of Completion
|
||||||
|
- repo: neoclide/coc.nvim
|
||||||
|
branch: release
|
||||||
|
# Snippet engine & snippets
|
||||||
|
- repo: SirVer/ultisnips
|
||||||
|
- repo: honza/vim-snippets
|
||||||
|
# Completion for vimscript
|
||||||
|
- repo: vim-scripts/vimomni
|
||||||
|
mode: opt
|
||||||
|
# Asynchronous Lint Engine
|
||||||
|
- repo: w0rp/ale
|
||||||
|
# Version control differences in the sign column
|
||||||
|
- repo: mhinz/vim-signify
|
||||||
|
# Conflict marker utilities
|
||||||
|
- repo: rhysd/conflict-marker.vim
|
||||||
|
# Doxygen documentation stubs
|
||||||
|
- repo: vim-scripts/DoxygenToolkit.vim
|
||||||
|
mode: opt
|
||||||
|
# Easy table manipulation
|
||||||
|
- repo: dhruvasagar/vim-table-mode
|
||||||
|
|
||||||
|
# ============================= User Interface ===============================
|
||||||
|
|
||||||
|
# Sanley numbered tabs in tabline
|
||||||
|
- repo: mkitt/tabline.vim
|
||||||
|
# Fuzzy finder
|
||||||
|
# TODO: Still necessary?
|
||||||
|
- repo: junegunn/fzf
|
||||||
|
- repo: junegunn/fzf.vim
|
||||||
|
# Replay macros with the enter key
|
||||||
|
- repo: wincent/replay
|
||||||
|
# Improved % matching
|
||||||
|
- repo: andymass/vim-matchup
|
||||||
|
# Forgot about this...
|
||||||
|
- repo: kbenzie/note.vim
|
||||||
|
# View term and hex colors
|
||||||
|
- repo: guns/xterm-color-table.vim
|
||||||
|
|
||||||
|
# ================================ Text Objects ==============================
|
||||||
|
|
||||||
|
# Library for creating text objects
|
||||||
|
- repo: kana/vim-textobj-user
|
||||||
|
# TODO: Doesn't work with nvim
|
||||||
|
- repo: kana/vim-textobj-entire
|
||||||
|
# Text object for function parameters
|
||||||
|
- repo: sgur/vim-textobj-parameter
|
||||||
|
# Text object for URI's
|
||||||
|
- repo: jceb/vim-textobj-uri
|
||||||
|
# Text object for comment blocks
|
||||||
|
- repo: glts/vim-textobj-comment
|
||||||
|
# Text object for sentences
|
||||||
|
- repo: reedes/vim-textobj-sentence
|
||||||
|
|
||||||
|
# ================================== Tim Pope ================================
|
||||||
|
|
||||||
|
# Toggle comments
|
||||||
|
- repo: tpope/vim-commentary
|
||||||
|
# Edit delimiters
|
||||||
|
- repo: tpope/vim-surround
|
||||||
|
# Better dot command
|
||||||
|
- repo: tpope/vim-repeat
|
||||||
|
# Git wrapper
|
||||||
|
- repo: tpope/vim-fugitive
|
||||||
|
# Unix command warppers
|
||||||
|
- repo: tpope/vim-eunuch
|
||||||
|
# Improved directory browser
|
||||||
|
- repo: tpope/vim-vinegar
|
||||||
|
# PascalCase to under_score to camelCase
|
||||||
|
# TODO: Copy the good bit remove this plugin
|
||||||
|
- repo: tpope/vim-abolish
|
||||||
|
# Mappings for pairs of tasks
|
||||||
|
- repo: tpope/vim-unimpaired
|
||||||
|
# Sane date manipulation
|
||||||
|
- repo: tpope/vim-speeddating
|
||||||
|
# Wisely add end{if,function} fork with cmake support
|
||||||
|
- repo: godbyk/vim-endwise
|
||||||
|
branch: patch-1
|
||||||
|
# Text object & formatting for json
|
||||||
|
- repo: tpope/vim-jdaddy
|
||||||
|
# Granular project configuration
|
||||||
|
- repo: tpope/vim-projectionist
|
||||||
|
|
||||||
|
# ================================== tmux ====================================
|
||||||
|
|
||||||
|
# Seemless vim/tmux pane navigation
|
||||||
|
- repo: 'christoomey/vim-tmux-navigator'
|
||||||
|
mode: opt
|
||||||
|
# Enable focus events when in tmux session
|
||||||
|
- repo: 'tmux-plugins/vim-tmux-focus-events'
|
||||||
|
mode: opt
|
||||||
|
|
||||||
|
# ================================= Syntax ===================================
|
||||||
|
|
||||||
|
# Python folding
|
||||||
|
- repo: kalekundert/vim-coiled-snake
|
||||||
|
- repo: kbenzie/vim-spirv
|
||||||
|
- repo: rperier/vim-cmake-syntax
|
||||||
|
- repo: tikhomirov/vim-glsl
|
||||||
|
- repo: beyondmarc/hlsl.vim
|
||||||
|
- repo: frasercrmck/opencl.vim
|
||||||
|
- repo: asciidoc/vim-asciidoc
|
||||||
|
- repo: mustache/vim-mustache-handlebars
|
||||||
|
- repo: joshglendenning/vim-caddyfile
|
||||||
|
- repo: kbenzie/vim-khr
|
||||||
|
- repo: jrozner/vim-antlr
|
52
tasks.yaml
52
tasks.yaml
@ -1,45 +1,13 @@
|
|||||||
---
|
---
|
||||||
- name: (neo)vim clone minpac
|
- include_vars: plugins.yaml
|
||||||
git:
|
|
||||||
repo: https://github.com/k-takata/minpac.git
|
|
||||||
dest: pack/minpac/opt/minpac
|
|
||||||
|
|
||||||
- name: (neo)vim install pip packages
|
- name: remove minpac directory
|
||||||
pip:
|
when: ansible_os_family != "Windows"
|
||||||
name:
|
file:
|
||||||
- cmake-language-server
|
path: '{{vim_config_dir}}/pack/minpac'
|
||||||
- cmakelint
|
state: absent
|
||||||
- compdb
|
- name: remove minpac directory
|
||||||
- vim-vint
|
|
||||||
- yamllint
|
|
||||||
state: latest
|
|
||||||
extra_args: --user
|
|
||||||
|
|
||||||
- name: (neo)vim install node.js Linux
|
|
||||||
when: ansible_system == "Linux"
|
|
||||||
include_tasks: nodejs-linux.yaml
|
|
||||||
- name: (neo)vim install node.js macOS
|
|
||||||
when: ansible_os_family == "Darwin"
|
|
||||||
homebrew: name=node state=latest
|
|
||||||
- name: (neo)vim install node.js Windows
|
|
||||||
when: ansible_os_family == "Windows"
|
when: ansible_os_family == "Windows"
|
||||||
win_chocolatey: name=nodejs state=latest
|
win_file:
|
||||||
|
path: '{{vim_config_dir}}/pack/minpac'
|
||||||
- name: (neo)vim install apt packages
|
state: absent
|
||||||
when: ansible_distribution == 'Ubuntu' and
|
|
||||||
ansible_distribution_release == '20.04'
|
|
||||||
become: true
|
|
||||||
apt:
|
|
||||||
name:
|
|
||||||
- clangd-12
|
|
||||||
state: latest
|
|
||||||
|
|
||||||
- name: (neo)vim install clangd alternative
|
|
||||||
when: ansible_distribution == 'Ubuntu' and
|
|
||||||
ansible_distribution_release == '20.04'
|
|
||||||
become: true
|
|
||||||
alternatives:
|
|
||||||
name: clangd
|
|
||||||
path: /usr/bin/clangd-12
|
|
||||||
link: /usr/local/bin/clangd
|
|
||||||
priority: 120
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user