分享一个 Hammerspoon 的 Alt + Tab switcher

Mac 的 Command + Tab 超级超级不好用, 所以这两个星期一直都在用 GitHub - numist/Switch: A window-based context switcher for the Mac 这个插件.

这个插件安装的时候就感觉切换有点慢, 但是不想折腾, 一直坚持用, 无奈今天直接把Emacs卡死, 自己还狂吃 CPU, 果断卸载.

HammerSpoon 自己的 switcher 默认配置真的不简洁, 今天花了10分钟折腾一下 HammperSpoon 配置了一个简洁的 Alt + Tab, 配置如下:

switcher = hs.window.switcher.new(
   hs.window.filter.new()
      :setAppFilter('Emacs', {allowRoles = '*', allowTitles = 1}), -- make emacs window show in switcher list
   {
      showTitles = false,		-- don't show window title
      thumbnailSize = 200,		-- window thumbnail size
      showSelectedThumbnail = false,	-- don't show bigger thumbnail
      backgroundColor = {0, 0, 0, 0.8}, -- background color
      highlightColor = {0.3, 0.3, 0.3, 0.8}, -- selected color
   }
)

hs.hotkey.bind("alt", "tab", function() switcher:next() end)
hs.hotkey.bind("alt-shift", "tab", function() switcher:previous() end)

UI还好折腾一点, 只是默认的 window.switcher 不能切换 Emacs 窗口, 看了一下 HammerSpoon 的源代码, 用

hs.window.filter.new()
      :setAppFilter('Emacs', {allowRoles = '*', allowTitles = 1})

强制把 Emacs 窗口加入窗口切换队列中.

整个世界又清净了, 简洁又高性能, 最后附一张截图:

6 个赞

这个问题难道不是karabiner-elements 改个键就好了😂

不是啊, 你看 Mac 那么挫的窗口切换, 太难用了

不是按键, 是要定制 Alt + Tab 的样式

你们都没有看我的标题和内容。 :sob:

我以为我们都只开终端 + Emacs + 浏览器,似乎这里出现了个叛徒

1 个赞

我没有你那么多屏。 :wink:

我不喜欢虚拟桌面切换, 晃眼睛。

我只会把一些服务器的终端放到其他虚拟桌面

1 个赞

Mac里面也可以全键盘操作GUI程序的, 所有程序都像 vimium 工作, 偶尔还是要用网易云音乐听歌, 迅雷下载的。

剩下的就生活在我的 EAF 里面。

可以试用一下我 Hammerspoon 配置里的 alt + ⇥ 自我感觉还行。

忘了链接:GitHub - ashfinal/awesome-hammerspoon: awesome configuration for Hammerspoon.

啥?所有app都可以用vimium?求方法,学会了我要开心一个月。
不过emacs/iterm2/chrome之外的时间确实很少,外加我打游戏发呆用windows
云音乐绑了全局的暂停/切歌,也还不错

1 个赞

有一个Mac应用叫 Shortcat

2 个赞

十几个窗口的情况下显示出列表需要1s左右,是不是缩略图太费资源了。。

你还买macbook 2018啦,哈哈哈哈哈

原来如此……我自己用的组装机+windows,mbp是公司发的

在用 SpaceLauncher,常用应用 Space-s(Safari)/e(Emacs),不常用的再加个a,Space-a-… 如果当前应用处于激活?状态,再按切换窗口(我很少用多于两个窗口) 比较喜欢这种模式,Hammerspoon 也可以这样。

试用了一下感觉挺好。你也可以试试 HyperSwitch,除了 all windows switch,还可以 current app’s windows 的switch。

c映射的single click怎么设置的?我怎么没有找到这个映射:sweat_smile:

说来我最近正好开发了一个应用解决这个问题。。。下载地址见:https://github.com/xtab-app/xtab/releases

哦,这个我之前是用 Keyboard Maestro 来实现单击的,在 SpaceLaunch 只是又映射了一次快捷键,不过我最近基本不用了这功能了

都不用hyperswitch?