From be23aebfd9c2e349ef73f4516520d0745e44e11e Mon Sep 17 00:00:00 2001 From: Jim Porter Date: Thu, 28 Oct 2021 22:14:07 -0700 Subject: [PATCH] Expand the documentation for connection local variables * doc/emacs/custom.texi (Per-Connection Local Variables): Expand the example to include setting 'system-uses-terminfo'. --- doc/emacs/custom.texi | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi index eb30a6acc5..bc70ae61c9 100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi @@ -1474,9 +1474,10 @@ Connection Variables Most of the variables reflect the situation on the local machine. Often, they must use a different value when you operate in buffers -with a remote default directory. Think about the shell to be applied -when calling @code{shell} -- it might be @file{/bin/bash} on your -local machine, and @file{/bin/ksh} on a remote machine. +with a remote default directory. Think about the behavior when +calling @code{shell} -- on your local machine, you might use +@file{/bin/bash} and rely on termcap, but on a remote machine, it may +be @file{/bin/ksh} and terminfo. This can be accomplished with @dfn{connection-local variables}. Directory and file local variables override connection-local @@ -1492,6 +1493,10 @@ Connection Variables criteria, identifying a remote machine: @example +(connection-local-set-profile-variables 'remote-terminfo + '((system-uses-terminfo . t) + (comint-terminfo-terminal . "dumb-emacs-ansi"))) + (connection-local-set-profile-variables 'remote-ksh '((shell-file-name . "/bin/ksh") (shell-command-switch . "-c"))) @@ -1501,13 +1506,15 @@ Connection Variables (shell-command-switch . "-c"))) (connection-local-set-profiles - '(:application tramp :machine "remotemachine") 'remote-ksh) + '(:application tramp :machine "remotemachine") + 'remote-terminfo 'remote-ksh) @end example - This code declares two different profiles, @code{remote-ksh} and -@code{remote-bash}. The profile @code{remote-ksh} is applied to all + This code declares three different profiles, @code{remote-terminfo}, +@code{remote-ksh}, and @code{remote-bash}. The profiles +@code{remote-terminfo} and @code{remote-ksh} are applied to all buffers which have a remote default directory matching the regexp -@code{"remotemachine} as host name. Such a criteria can also +@code{"remotemachine"} as host name. Such a criteria can also discriminate for the properties @code{:protocol} (this is the Tramp method) or @code{:user} (a remote user name). The @code{nil} criteria matches all buffers with a remote default directory. -- 2.25.1