在 Putty 中的 Screen 中将 alt-tab 传递给 Emacs
Passing alt-tab to Emacs inside Screen inside Putty
我 运行 在我办公室的 Debian 盒子上的 Screen 中使用终端模式 Emacs(使用 -nw 选项)。这样,我可以从任何地方使用 ssh 登录我的盒子,甚至在连接缓慢或断断续续的情况下也能工作。
当我使用 Putty 从 Windows 登录时,我错过了使用 Alt-Tab 组合键的可能性(Emacs 用语中的 M-TAB)。我使用两个键 Esc 和 Tab 进行补偿,但这是两次按键,速度较慢。
我刚刚发现使用 Autohotkeys 我可以使 Ctrl-Tab 与 Alt-Tab 的功能相同:
LControl & Tab::AltTab
并且我可以使用其他规则完全禁用 Alt-Tab:
!Tab::Return
但这不是我想要的。我需要在其他一些热键上复制 Alt-Tab 的功能(Ctrl-Tab 没问题,第一条规则就是这样做的)另外我想传递 Alt-Tab 键当我使用它时给 Putty(它会把它传递给 Screen,Screen 会把它传递给 Emacs)。也就是说,Alt-Tab不应该被禁用,但是它的特殊含义应该被删除。
Windows可以吗?
虽然我不完全理解您遇到的问题,但该框架应该为您提供一些基于 window.
的条件操作的帮助
!Tab::
{
WinGetTitle, Title, A
if (RegExMatch(Title, "PuTTY.*"))
{
; Do something if PuTTY is the active window.
}else{
; Do something else if PuTTY is NOT the active window.
}}
根据我从几个热心用户那里得到的答案,我得到了我已经使用了一段时间的最终解决方案。这是我放在桌面上的 Autohotkeys 脚本,每次我必须重新启动时我都会双击它 Windows:
文件“alt-tab 到 ctrl-tab.ahk”
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
LControl & Tab::AltTab
; !Tab::Return
; #IfWinActive, putty
!Tab::send {Esc}{Tab}
我 运行 在我办公室的 Debian 盒子上的 Screen 中使用终端模式 Emacs(使用 -nw 选项)。这样,我可以从任何地方使用 ssh 登录我的盒子,甚至在连接缓慢或断断续续的情况下也能工作。
当我使用 Putty 从 Windows 登录时,我错过了使用 Alt-Tab 组合键的可能性(Emacs 用语中的 M-TAB)。我使用两个键 Esc 和 Tab 进行补偿,但这是两次按键,速度较慢。
我刚刚发现使用 Autohotkeys 我可以使 Ctrl-Tab 与 Alt-Tab 的功能相同:
LControl & Tab::AltTab
并且我可以使用其他规则完全禁用 Alt-Tab:
!Tab::Return
但这不是我想要的。我需要在其他一些热键上复制 Alt-Tab 的功能(Ctrl-Tab 没问题,第一条规则就是这样做的)另外我想传递 Alt-Tab 键当我使用它时给 Putty(它会把它传递给 Screen,Screen 会把它传递给 Emacs)。也就是说,Alt-Tab不应该被禁用,但是它的特殊含义应该被删除。
Windows可以吗?
虽然我不完全理解您遇到的问题,但该框架应该为您提供一些基于 window.
的条件操作的帮助!Tab::
{
WinGetTitle, Title, A
if (RegExMatch(Title, "PuTTY.*"))
{
; Do something if PuTTY is the active window.
}else{
; Do something else if PuTTY is NOT the active window.
}}
根据我从几个热心用户那里得到的答案,我得到了我已经使用了一段时间的最终解决方案。这是我放在桌面上的 Autohotkeys 脚本,每次我必须重新启动时我都会双击它 Windows:
文件“alt-tab 到 ctrl-tab.ahk”
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
LControl & Tab::AltTab
; !Tab::Return
; #IfWinActive, putty
!Tab::send {Esc}{Tab}