SSH configuration completion source for blink.cmp https://forge.barrettruth.com/barrettruth/blink-cmp-ssh
  • Lua 93.6%
  • Nix 4.8%
  • Just 1.6%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Barrett Ruth 81eee9f951
All checks were successful
quality / Format (push) Successful in 2s
quality / Lint (push) Successful in 2s
quality / Test (push) Successful in 2s
style: format the migration check
2026-09-26 15:55:24 -05:00
.forgejo ci: allow manual quality runs 2026-09-26 15:32:34 -05:00
doc docs: remove LuaRocks installation [skip ci] 2026-09-21 21:47:56 -05:00
lua style: format the migration check 2026-09-26 15:55:24 -05:00
spec refactor: derive enum values from man page (#4) 2026-02-22 23:39:25 -05:00
.busted feat: initial blink-cmp-ssh implementation 2026-02-22 21:04:15 -05:00
.editorconfig feat: initial blink-cmp-ssh implementation 2026-02-22 21:04:15 -05:00
.gitignore chore: ignore generated vimdoc tags (#28) 2026-05-05 17:51:59 +00:00
.luarc.json ci: migrate to nix 2026-02-23 18:11:19 -05:00
biome.json ci: replace prettier with biome (#7) 2026-04-25 16:16:33 -04:00
CONTRIBUTING.md refactor: use canonical Forgejo domain 2026-09-21 06:56:35 -05:00
flake.lock docs: add Forgejo help routing (#25) 2026-05-04 23:30:52 +00:00
flake.nix docs: add Forgejo help routing (#25) 2026-05-04 23:30:52 +00:00
justfile docs: add Forgejo help routing (#25) 2026-05-04 23:30:52 +00:00
LICENSE chore: switch LICENSE to GPLv3 (post-remigrate) 2026-05-01 12:02:17 +00:00
README.md docs: host previews on Forgejo [skip ci] 2026-09-21 22:13:20 -05:00
selene.toml ci: migrate to nix 2026-02-23 18:11:19 -05:00
stylua.toml feat: initial blink-cmp-ssh implementation 2026-02-22 21:04:15 -05:00
vim.yaml ci: migrate to nix 2026-02-23 18:11:19 -05:00

blink-cmp-ssh

SSH configuration completion source for blink.cmp.

blink-cmp-ssh preview

Features

  • Completes ssh_config keywords with man page documentation
  • Provides enum values for keywords with known option sets (ciphers, MACs, key exchange algorithms, etc.)
  • Keyword and enum data fetched asynchronously at runtime via man ssh_config and ssh -Q

Requirements

  • Neovim 0.10.0+
  • blink.cmp
  • ssh and man executables

Installation

With vim.pack (Neovim 0.12+):

vim.pack.add({
  'https://forge.barrettruth.com/barrettruth/blink-cmp-ssh',
})

Configure blink.cmp:

require('blink.cmp').setup({
  sources = {
    default = { 'ssh' },
    providers = {
      ssh = {
        name = 'SSH',
        module = 'blink-cmp-ssh',
      },
    },
  },
})