V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
quqiu
V2EX  ›  macOS

谁分享一点 mac 窗口管理方面的操作技巧

  •  
  •   quqiu · 23 天前 · 3722 次点击

    一直用 Windows 做开发,wsl 卡出天际,正好要入职新公司,打算申请个 mac 用用。 谁介绍点窗口管理的小技巧。

    mac 的预计使用场景如下

    1. 有可能会开好几个 vscode 窗口
    2. 主要做后端,偶尔做前端,所以对于一边开浏览器,一边看变更没有强需求
    3. mac 应该会关盖子外接单显示器
    4. 想尝试放弃鼠标
    第 1 条附言  ·  23 天前

    补充

    • 放弃鼠标,指的不是纯键盘操作,而是使用外接的妙控板
    40 条回复    2025-04-04 13:04:51 +08:00
    ferock
        1
    ferock  
       23 天前 via Android
    妙控板手势视频仔细看一下,所有功能都打勾

    另,多用多桌面,四指切换很丝滑
    jheroy
        2
    jheroy  
       23 天前 via iPhone
    使用平铺式窗口管理器,比如 yabai 或 amethyst
    Goalonez
        3
    Goalonez  
       23 天前
    我自己目前是这样的,可以参考一下
    1.常用软件切换可以用 raycast 或者 manico 设置个快捷键。option + ( 123qweasdzxc )之类的。常用工具类的在 dock 栏右键分配给所有桌面,这样快捷键切换不会切换虚拟桌面。
    2.通过虚拟桌面拆分浏览器和 IDE 。左右滑触摸板就行。
    3.同一个软件多个窗口的通过调度中心切换。上滑触摸板。
    sjhhjx0122
        4
    sjhhjx0122  
       23 天前
    用 aerospace ,脱离鼠标,全用快捷键切换聚焦和软件,体验丝滑
    Syriana
        5
    Syriana  
       23 天前
    我用的 MAC 自带顶部 16 个桌面切,一个项目占用一个桌面,平常就记住项目在哪个桌面就快速切了
    peteretep
        6
    peteretep  
       23 天前
    1 、mac 用户最大的幻觉是 触控板 比 鼠标 效率强。除了只听汇报的老板。
    2 、mac 用户第二大幻觉是 和 windows 天差地别。 实际上使用习惯几乎相同。
    3 、针对窗口管理,下载个 https://contexts.co/ 这种切换工具或者类似的,满足 99% 需求
    spritecn
        7
    spritecn  
       23 天前
    @Syriana 对对的,触控板三指滑来滑去,简单实在
    chenzfp
        8
    chenzfp  
       23 天前
    b 站找两个视频看一下就会了,四指切换,三指选中,三指拖拽,已经完全习惯了触控板,新入了一个 mac mini 也给配了妙控板
    justwkj07
        9
    justwkj07  
       23 天前
    @peteretep 我就买的 contexts 还可以
    clf
        10
    clf  
       23 天前
    装一个 DockDoor ,开源免费,和 win 一样的 alt+tab 以及 dock 栏看程序的所有窗口。
    ooxxcc
        11
    ooxxcc  
       23 天前
    习惯不了平铺式窗口管理器的话,可以试试 hammerspoon ,自己写快捷键快速修改窗口布局
    jheroy
        12
    jheroy  
       23 天前
    想放弃鼠标的话可以试试浏览器安装 Surfingkeys 插件, 系统安装 Homerow 软件, 配置 karabiner-elements + GokuRakuJoudo 的快捷键增强, 然后使用平铺式窗口管理器, 可以基本实现全键盘操作。 如果还要追求极致可以上 Keyboard Maestro
    XiLemon
        13
    XiLemon  
       23 天前 via iPhone
    alt-tab + loop 这俩软件
    z1645444
        14
    z1645444  
       23 天前
    听起来很适合入坑 tiling window manager ,看到 4. 猜测你需要的功能可能包括:

    - 窗口大小控制
    - 桌面间移动窗口移动
    - 按方向聚焦窗口
    - 按方向 / 桌面序号移动窗口到桌面
    - 按方向桌面内移动窗口
    - 按方向 / 桌面序号聚焦桌面
    - 切换布局

    在 Linux 主流是 i3wm ,来到 macOS 主流是 yabai 和 amethyst ,还有一个 hammerspoon ,我个人用 aerospace ,建议去 ytb 看看 i3wm 的使用演示,感觉对了就从 yabai 和 aerospace 中挑一个试试。

    除了 amethyst ,其他都用过,大概列举一下缺点,优点 reddit 和 ytb 上都有吹,不说了。

    我是更新策略比较激进的用户,yabai 每次系统更新需要重新关闭 SIP ,并且跨大版本会遇到它的注入脚本失效的问题,有时候小版本也会,我记得 14.x 的时候就遇到过某次更新直接爆了,所有 keymap 只剩 focus 还活着,蛋疼的回到用触控板 / 鼠标进行 window manage 的年代...如果不喜欢关闭 SIP 并注入脚本,那你将会失去一部分功能,其中包括 [按方向 / 桌面序号聚焦桌面] ,其实一直好奇是不是 macOS 自己就不提供这个 API...

    hammerspoon 提供的 API 非常丰富,但是 focus 另一个桌面,会有概率无法正确 focus 到另一个桌面上的顶层窗口,例如,桌面 B 同时放着 [spotify, intellij, wezterm],最顶层的是 spotify 向右以此类推,现在执行 focus 指令,期望按照原始的层级关系展示,但实际上可能会变成 [intellij, spotify, wezterm]😂

    aerospace 会在某一个应用接近或进入 [无法响应] 状态的时候,失去作用,点名 Chrome ,很多时候 debug 时,某个页面爆了,你很可能将失去所有的能力。长时间开启,focus 桌面或者应用都会卡,reload 有时候可以解决有时候不能😵
    ndxxx
        15
    ndxxx  
       23 天前
    放弃鼠标?那不就是平铺式。不过我在 mac 上已经不玩了...
    Linux 下玩过两年 i3 ,半年 hyprland+kde 。macOS 下玩过 yabai ,各种定制 menubar 还有比较新的 aerospace ,都可以靠键盘管理窗口。再加上个浏览器的 vim-like 插件装起,差不多了。

    不过 AI IDE 时代了,全键盘流未必效率会有多高。而且 macOS 的 app 窗口逻辑和 Windows 差别挺大,macOS 的平铺窗口基本都是 hack 系统接口,和 Linux 没的比。建议别上来就在 macOS 下玩平铺式,我配置了 N 年的 yabai 和半年多的 aerospace 都我都弃坑了,还是适合自己的工作流的灵活布局更符我的习惯。

    必装的一个就是 alt-tab ,再一个就是学会灵活使用类似 Hammerspoon 脚本或者 Raycast 或者 moom 或者 KM 这种快速打开应用,resize 窗口和移动窗口的快捷键管理功能。
    z1645444
        16
    z1645444  
       23 天前
    @z1645444 #14 补充 aerospace 非常 wtf 的一点...

    两台显示器的情况下:显示器 A 两个桌面,桌面 1 是 Chrome ,桌面 2 是通讯工具;显示器 B 两个桌面,桌面 9 是 WebStorm ,桌面 10 也是 Chrome 。

    应用启动顺序,先在桌面 1 启动 Chrome ,再启动一个 move to 到桌面 10 。

    焦点在除桌面 10 外的任何桌面,聚焦桌面 10 ,你将会聚焦到桌面 1 ,这个 issue 躺在 issues 区的时间比我去年用的毛巾时间都久。

    对应的场景是,1Chrome 用于 debug 页面,10Chrome 用于查看需求或者在线对接文档 etc.,你在通讯工具接收到 UX 更新信息,想去 Chrome 看看更什么了,focus 过去,得,focus 到 debug 页面了,再怎么 focus ,只要目标页面顶层应用是 Chrome ,你就一定会 focus 桌面 1 ,因为那里的 Chrome 先启动 :(
    Wooork
        17
    Wooork  
       23 天前
    ldyisbest
        18
    ldyisbest  
       23 天前
    command+~( tab 上面那个符号) 可以在多个同一个应用的窗口之间切换

    比如打开多个 vscode ,command+~就可以在多个 vscode 之间切换,我觉得很好用
    4332weizi
        19
    4332weizi  
       23 天前
    鼠标配合开源软件 Mac Mouse Fix: https://github.com/noah-nuebling/mac-mouse-fix
    我目前设置了
    - 点按滚轮进入调度中心,切换桌面或窗口
    - 点住滚轮左右移动鼠标,直接切换桌面
    4332weizi
        20
    4332weizi  
       23 天前
    我觉得鼠标比妙控板好用的多
    BreadKiller
        21
    BreadKiller  
       23 天前
    我也是 windows 切到 mac 的,目前用的 alttab+Rectangle
    alttab 的操作逻辑类似 win 的切换程序逻辑,而且还支持自定义,我现在是有两套快捷键,alt+tab 在所有窗口直接切换,alt+` 在同一程序的不同窗口切换,后面这个快捷键用的比较多,打开多个 vscode 的情况下,当你在其中一个窗口的时候按这个快捷键只会出现所有 vscode 的窗口,然后在这些窗口中切换。
    Rectangle 就是屏幕窗口分配软件,有快捷键可以直接把窗口放到屏幕的任意位置任意比例,熟悉快捷键后用起来也方便,多屏幕下也很好用
    fulln
        22
    fulln  
       23 天前
    1. 试下 moon
    zbw0414
        23
    zbw0414  
       23 天前
    另外请教一下如何加快唤起调度中心(即触控板三指或四指向上扫)的动画速度?经常切应用,感觉动画速度太慢很别扭。
    xloger
        24
    xloger  
       23 天前
    技巧就是放弃 Mac 的快捷键,用 Hammerspoon 管理窗口
    我是双屏,而 Mac 的新窗口默认打开位置很混乱。如果不用鼠标的话,触摸板拖拽切窗口很烦的。
    所以 Hammerspoon 搞个快捷键快速把窗口在两个屏幕切上刚需。

    而 Mac 自带的,就是代码、笔记等软件你可以最大化,然后靠触摸板切换,这个还是挺好用的。

    但是你的需求不是冲突的么?你既打算关盖子,又打算放弃鼠标,那你打算怎么控制电脑?纯键盘?这不是闲得蛋疼么......
    BreadKiller
        25
    BreadKiller  
       23 天前
    @zbw0414 #23 试试把辅助功能-显示-减弱动态效果打开
    sampeng
        26
    sampeng  
       23 天前 via iPhone
    技巧?大力出奇迹啊…我直接买 3 块显示器。是我桌面不太大,不然我想放 4-6 块显示器…
    icyalala
        27
    icyalala  
       23 天前
    设置一下,多桌面四指左右切换,四指下滑显示当前 App 全部窗口,四指上滑显示当前桌面全部窗口,拖动屏幕边缘分屏/调大小
    icyalala
        28
    icyalala  
       23 天前
    还有,加个屏幕右上角触发调度中心、屏幕右下角触发显示桌面,屏幕左下角触发显示 App 窗口。
    需要拖动的时候注意鼠标有加速度,移动速度快就能滑动很长距离,移速慢可以接近停止,这样手指不离触摸板就能进行任意距离拖动。
    zbw0414
        29
    zbw0414  
       23 天前
    @BreadKiller 哇~ 赞👍 正是我想要的
    git00ll
        30
    git00ll  
       23 天前
    alt-tab 软件推荐
    orionnnnn
        31
    orionnnnn  
       23 天前
    vscode 一个窗口打开多个项目配置。
    "window.nativeTabs": true, // this is great, macOS only
    orionnnnn
        32
    orionnnnn  
       23 天前
    lancelock
        33
    lancelock  
       23 天前
    窗口管理我用的 rectangle ,其他操作没什么特别的,跟 windows 差不多
    hotmiaowmiaow
        34
    hotmiaowmiaow  
       23 天前
    https://github.com/MrKai77/Loop

    推荐,快速管理窗口,免费开源
    sunny7
        35
    sunny7  
       23 天前
    我妙控触摸板感觉用的不是很多 切换窗口我都是快捷键。像 command+tab 和 command+~是用的最多的,前者是用于不同软件窗口。后者是用于同软件不同窗口。很好用
    gauzung
        36
    gauzung  
       23 天前
    MacOS: 妙控板多指切换桌面, 装 AltTab 软件然后用 Cmd+tab 切换窗口
    Windows: 妙控板多指切换桌面, 用 Alt+Tab 或者妙控板三指滑动切换窗口
    zhufpy
        37
    zhufpy  
       23 天前
    多桌面够用了
    the1812
        38
    the1812  
       22 天前
    AltTab 切换窗口, Rectangle 排列窗口, uBar 替代 Dock, Karabiner Elements 映射键位到 Windows
    is101
        39
    is101  
       22 天前
    swish 了解一下
    sinotw
        40
    sinotw  
       22 天前
    @icyalala #28 用 mac 9 年了,你没说之前我还真没意识到加速这个 feature
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2574 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 15:15 · PVG 23:15 · LAX 08:15 · JFK 11:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.