Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mfussenegger/nvim-ansible

Small neovim plugin to make working with Ansible playbooks or roles more convenient
https://github.com/mfussenegger/nvim-ansible

ansible neovim neovim-plugin

Last synced: 7 days ago
JSON representation

Small neovim plugin to make working with Ansible playbooks or roles more convenient

Awesome Lists containing this project

README

        

# nvim-ansible

## Installation

```bash
git clone \
https://github.com/mfussenegger/nvim-ansible.git \
~/.config/nvim/pack/plugins/start/nvim-ansible
```

## Usage

Small plugin to make working with Ansible playbooks or roles more convenient:

- Adds `ftdetect` pattern to recognize playbooks/roles and set `filetype` to `yaml.ansible`.
- Sets `keywordprg` to `ansible-doc` if available
- Sets `path` to be able to jump to files using `gf` which are `files/` next to a `tasks/` role file.
- Provides a `run()` function to execute playbooks or roles using `ansible-playbook` or `ansible localhost -m import_role`. See `:help ansible`

You may want to setup keymaps for the `run()` function, for example in `ftplugin/ansible.lua` add:

```lua
vim.keymap.set('v', 'te', function() require('ansible').run() end, { buffer = true, silent = true })
vim.keymap.set('n', 'te', ":w :lua require('ansible').run()", { buffer = true, silent = true })
```

Best used together with [ansible-language-server](https://github.com/ansible/ansible-language-server)