在屏幕内部Putty中传递alt-tab到Emacs内部
问题描述:
我在我办公室的Debian框中的屏幕内运行终端模式Emacs(使用-nw选项)。通过这种方式,我可以在任何地方使用ssh登录我的盒子,即使连接缓慢或间歇也可以工作。在屏幕内部Putty中传递alt-tab到Emacs内部
当我用腻子从Windows系统中,我很想念使用Alt键的可能性 - 标签组合键(M-TAB在Emacs的说法)。我使用两个按键Esc和Tab进行补偿,但这是两次按键,速度较慢。
我才发现,原来使用Autohotkeys我可以让按Ctrl - 标签做一样使用Alt-Tab这个规则:
LControl & Tab::AltTab
,我可以用这个其他的规则完全禁止使用Alt-Tab :
!Tab::Return
但这不是我想要的。我需要复制Alt键的功能 - 对其他一些热键标签(按Ctrl - 标签是好的和第一条规则确实是),另外我想Alt键 - 标签关键当我使用它时(它会传递给Screen,它将它传递给Emacs)传递给Putty。换句话说,Alt - 选项卡不应禁用,但应删除其特殊含义。
这可能与Windows?
答
虽然我没有完全理解你遇到的问题,但这个框架应该给你一些东西来处理基于窗口的条件操作。
!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.
}}
我没有使用过这种设置,但是从描述猜测,你可能只需要发送Esc键和Tab时腻子窗口活动:'#ifwindowActive putty' \ n'标签:: {发送! Esc} {Tab}' – wOxxOm
谢谢你的想法,是的,它的工作原理:) 只有正确的关键字是IfWinActive,我还没有弄清楚如何使它识别腻子窗口,所以我绑定了Al-无条件选项卡。 – user2987821