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

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

  •  
  •   quqiu · 4 天前 · 3366 次点击

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

    mac 的预计使用场景如下

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

    补充

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

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

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

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

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

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