爱意满满的作品展示区。
stebest

wmux: Windows 上的 tmux,终端多路复用

  •  
  •   stebest ·
    newdee · 1 day ago · 953 views

    在 Windows 上干活,最烦的是终端窗口。编译一个、跑服务一个、看日志一个,任务栏排成一条。手一抖点个叉,全没了;远程桌面一断,也全没了;重启一次,从头再摆一遍。

    tmux 在 Linux 上把这事解决很多年了。Windows 这边一直别扭:要么先装 WSL ,要么 Cygwin 那一套。我想要的是打开 Windows Terminal 就能用的东西,所以自己写了一个,叫 wmux 。Rust 写的,直接跑在 Windows 自己的 ConPTY 上,一个 3 MB 的 exe ,下载就能用。

    快捷键基本就遵循 tmux 那套了,没啥学习成本。C-b % 左右分,C-b " 上下分,h j k l 在几块之间走,C-b z 把当前这块放大到整屏,C-b d 走人。PowerShell 、cmd 、WSL 可以同时待在一个窗口的不同格子里,PSReadLine 的组合键、Ctrl+Space 、中文输入法、WSL 里的 vim 和 htop ,该怎么样还怎么样——按键是按 Windows 原生格式转过去的,不是拿字符凑出来的。

    最要紧的一点:关掉终端,里面的东西照样活着。第二天换个窗口 wmux attach 接回来,编译还在跑,日志还在滚。电脑重启了也不要紧,wmux resume 把窗口、分屏布局、每块在跑什么命令、在哪个目录全带回来,连当时屏幕上那些输出一起——看着像从来没关过。

    这版还学会了一件事:任务跑完了会喊你。

    任务跑完了,状态栏上那个窗口就多一个 #

    我习惯把要跑十几分钟的东西丢到另一个窗口,然后去干别的。以前它跑完了没人知道,崩了更没人知道——那一格直接消失,连怎么死的都看不到。现在配置里打开两行:

    set -g monitor-activity on
    set -g remain-on-exit on
    

    你没看着的窗口一有动静,状态栏上那个窗口名后面就多一个 #,C-b M-n 一下跳过去。响铃是 !,太久没声音是 ~。崩掉的程序也不会带走那一格:pane 留在原地,反显一行 [cmd exited with 3],它打印过的东西一个字不少,想重来就 respawn-pane 原地复活。凌晨三点崩的,早上八点还在那儿等你。

    想把整个日志留下来也可以,一条命令的事:

    wmux pipe-pane -t build "$input | Add-Content build.log"
    

    还有两个我自己天天用的小东西:C-b > 弹出当前这块 pane 能干的事(分屏、交换、放大、关掉),挑一个字母就行,不用记快捷键; display-popup 在窗口正中开个小框跑命令,看完就收走,布局一点不动。

    命令名、配置语法都跟 tmux 一样,现成的 .tmux.conf 拿过来基本能用,不认识的选项会被忽略掉而不是报错。

    MIT ,欢迎试,欢迎骂。

    Supplement 1  ·  20h 2m ago
    主要还是给用惯了 tmux 的人用的,并非说完全没有能够实现类似的功能,但操作习惯可以继续保持。
    Supplement 2  ·  19h 56m ago
    如果平时不用 tmux+vim 的,可以忽略
    9 replies    2026-09-22 10:44:35 +08:00
    billccn
        1
    billccn  
       1 day ago   ❤️ 1
    > 远程桌面一断,也全没了
    你是不是对远程桌面有什么误解?
    runze
        2
    runze  
       1 day ago
    介绍产品也要用 AI 嘛
    yiwayhb
        3
    yiwayhb  
       21h 59m ago via Android
    又一个 psmux ?
    Sezxy
        4
    Sezxy  
       21h 7m ago
    windows terminal 不够用吗
    0x5c0f
        5
    0x5c0f  
       21h 0m ago
    没人用过 herdr 么?
    stebest
        6
    stebest  
    OP
       20h 6m ago
    @0x5c0f 用过,但是跟 tumx 用起来还是有差距,就主打一个 agent 提醒而已
    stebest
        7
    stebest  
    OP
       19h 58m ago
    @billccn 大概是 AI 有误解把
    stebest
        8
    stebest  
    OP
       19h 53m ago
    @yiwayhb 看了一下,挺相似的,应该是撞车了。唯一的区别就是多加了电脑重启后恢复窗口布局和内容,以及后台任务汇报吧
    stebest
        9
    stebest  
    OP
       19h 47m ago
    @yiwayhb 另外关于 psmux ,用的时候没找着,找到可能不会有这东西了。当然,用的有问题可能也会重写一个。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   973 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 22:32 · PVG 06:32 · LAX 15:32 · JFK 18:32
    ♥ Do have faith in what you're doing.