Skip to content

robballou/sublimetext-sshconfig

Repository files navigation

SSH Config Language

Provides highlighting and snippets for ~/.ssh/config and /etc/ssh/sshd_config files.

Installation

This package is available via Package Control. You can install it by searching for SSH in the "Install Package" interface or by cloning this repository in your Sublime Text "Packages" directory.

SSH Config

  • host: create a new Host entry
  • match: create a new Match entry
  • Keyword completion for many *Nix and *BSD options
  • Symbol Index for hosts and aliases (Ctrl+R or Cmd+R)

Note that ~/.ssh/config is not linked to the SSH Config syntax highlighting out of the box. This is because the filename is shared by other formats (e.g. .git/config) and we don't want to set the wrong highlighting for those.

Here are three ways to change that:

  1. Use the "Open SSH Config" command to open your config, which proactively sets the right highlighting unless you disable it.
  2. Choose "Open all with current extension as..." from the syntax highlighting selection menu.
  3. Install and configure ApplySyntax to examine the whole path of the file and set the syntax highlighting after load. Sample configuration shown here

SSHD Config

  • Keyword completion for many *Nix and *BSD options
  • Symbol Index for active and commented-out config options (Ctrl+R or Cmd+R)

Commands

  • Open SSH Config File
  • Open SSHD Config File

If these commands open the wrong file for you, open the Command Palette (Ctrl+Shift+P or Cmd+Shift+P), search for "SSH Config: Settings", and put in content like this:

{
    "file_locations": {
        "ssh_config": "~/.ssh/config",
        "sshd_config": "/etc/ssh/sshd_config",
        "known_hosts": "~/.ssh/known_hosts",
        "authorized_keys": "~/.ssh/authorized_keys",
    },
}

Extras

  • authorized_keys and known_hosts also have
    • Syntax highlighting
    • Symbol index
    • (unmapped) "Open file" commands
  • Completion and highlighting for crypto stuff
    • Key types
    • KEX algorithms
    • Encryption ciphers
    • MACs

Testing

  • Install this repository under Sublime Text Packages and name it SSH Config
    • by cloning the repo or moving it or symlinking it
  • Open the project from under Packages/SSH Config
  • Open a syntax test file located in the Tests directory
  • Run Build With: Syntax Tests command
    • supplied by the PackageDev Sublime Package
    • available on the command palette when a test file is open

To-Do

  • Better highlighting for paths

About

SSH Config language and completions

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages