[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#54885: 29.0.50; Tramp completion support for top-level sshconfig inc
From: |
Michael Albinus |
Subject: |
bug#54885: 29.0.50; Tramp completion support for top-level sshconfig include |
Date: |
Wed, 13 Apr 2022 16:44:20 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) |
Michael Albinus <michael.albinus@gmx.de> writes:
Hi Bartosz,
> Tramp doesn't handle sshconfig includes. However, you can emulate it
> yourself with the following snippet in your .emacs (untested):
Hmm, there was an error in the snipptet. I've reworked it, and added to
the Tramp manual (pushed to master):
--8<---------------cut here---------------start------------->8---
4.18.1 Using ssh config include for host name completion
--------------------------------------------------------
OpenSSH configuration files can use an ‘Include’ option for further
configuration files. Default TRAMP host name completion ignores this
option. However, you can configure this yourself.
Given, your ‘~/.ssh/config’ file contains the following option:
Include ~/.ssh/conf.d/*
The following code snippet in your ‘.emacs’ uses all files in that
directory for host name completion:
(tramp-set-completion-function
"ssh" (append (tramp-get-completion-function "ssh")
(mapcar (lambda (file) `(tramp-parse-sconfig ,file))
(directory-files
"~/.ssh/conf.d/"
'full directory-files-no-dot-files-regexp))))
This code snippet does it for the ‘ssh’ method. If you replace
"ssh" by "scp", it does it also for that method (or any other method
you like).
--8<---------------cut here---------------end--------------->8---
Best regards, Michael.