V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
lxwlxc
V2EX  ›  分享创造

避免头晕眼花,一键实现前置、最小化、同程序间切换窗口

  •  
  •   lxwlxc · 2022-12-03 16:14:19 +08:00 · 2000 次点击
    这是一个创建于 507 天前的主题,其中的信息可能已经有所发展或是发生改变。

    出于任务栏程序太多的原因,经常找程序找的眼睛疼,还找错,自己用 C++写了一个切换程序的软件 FingerGo ,分享给大家,开源的哈,代码见最后。

    功能

    帮你将按键与程序绑定(暂不支持 UWP 程序),按下按键时快速切换到该程序。例如将 Wword 程序 绑定,按下快捷键ALT + W即可快速切换到word 程序。此外,同样的一个快捷键,在不同场景下,可以实现:启动程序、前置程序、最小化程序、相同程序的不同窗口间来回切换。

    使用场景

    下面依然以 word 程序为例:

    • 场景 1:word 没有打开——>快捷键将自动帮你打开 word ;

    • 场景 2:已经打开了一个 word ,但是 word 程序在后台——>快捷键将自动切换到 word ;

    • 场景 3:已经打开了一个 word ,前台也是 word——>快捷键将自动最小化 word ,将其隐藏;

    • 场景 4:已经打开了多个 word ,前台也是 word——>快捷键将自动在多个 word 间切换。

    特点

    优点(这也是我为什么自己开发造轮子的原因)

    • 一键支持 4 个功能场景;

    • 配置友好,非开发人员易上手;

    • 占用资源小:程序体积小于 1M ,后台内存小于 3M ;

    • 免费。

    缺点

    • 仅支持 win10 、win11 ;

    • 还不支持 UWP 程序;

    • GUI 使用的是 imgui ,所以打开配置界面时,为了支持中文,内存占用 60M ;

    • 只支持 ALT 修饰键,出于个人偏好;

    • 代码太烂,小弟第一次用 C++写代码,就为了实现这个程序,能写出来我就很开心了,你忍一下好不好😭。

    源码: https://github.com/Neway13/fingerGo

    15 条回复    2023-01-02 19:31:39 +08:00
    neochen13
        1
    neochen13  
       2022-12-03 19:50:02 +08:00 via Android
    谢谢老哥
    PRStarDust
        2
    PRStarDust  
       2022-12-03 21:55:08 +08:00   ❤️ 1
    我也是有这个烦恼,本来想用 ahk 实现的,但看着那语法比较头疼,最后用现成的 Quicker 动作实现了。不过相比楼主的程序,少了个 [相同程序不同窗口来回切换] 的功能。
    [动作:窗口绑定]( https://getquicker.net/Sharedaction?code=05be3b89-b917-4a01-5c83-08d717401a78)
    ![截图]( https://s3.uuu.ovh/imgs/2022/12/03/01fc7e821c7d438c.png)
    cmdOptionKana
        3
    cmdOptionKana  
       2022-12-03 22:32:43 +08:00
    我现在用 PowerKeys, 没有最小化,另外三个功能都支持。
    lxwlxc
        4
    lxwlxc  
    OP
       2022-12-04 09:50:43 +08:00
    @PRStarDust 我也是不想为了实现功能,还要去学个小众语言,就去学了 C++,以后其他地方还用得上
    lxwlxc
        5
    lxwlxc  
    OP
       2022-12-04 10:05:34 +08:00
    @cmdOptionKana 使用了下,功能很强大,学到了很棒的配置程序思路,比我用窗口识别实现起来简单不少。自我安慰下,我这个对电脑小白来说配置稍直观,快捷方式在哪儿都不用找了
    garywill
        6
    garywill  
       2022-12-04 13:08:17 +08:00
    我也有任务栏程序太多的问题~
    不过我有另一个想法是:字符串查找来切换窗口
    比如
    切换浏览器( Firefox/Chrome )就输入 fi 或 ch
    切换到终端 terminal
    感觉一般前两三个字母差不多可以找到唯一的窗口了
    lxwlxc
        7
    lxwlxc  
    OP
       2022-12-04 14:29:10 +08:00
    @garywill 也是一个思路,但是还是没快捷键来的快
    975779964
        8
    975779964  
       2022-12-04 15:11:59 +08:00
    我之前是 win + 数字键 切换 程序的,前提 要把常用 的程序固定下来 ,相同程序不同窗口来回切换 我改了注册表,多次 按 win+ 数字键就能切换了, 但是这样 程序 切换 过去了,光标还留在原来的程序上面 ,后来 我忍不了了,就 用 arch + i3wm 了
    lxwlxc
        9
    lxwlxc  
    OP
       2022-12-04 17:43:25 +08:00
    @975779964 我也这么干过,还觉得数字不好记,用 powertoy 做过快捷键映射,但是还是满足不了我的需求。 我也用过 linux 带桌面发行版,用 wmctrl 实现过类似的功能,但是还是滚回 win 了,你能坚持下来还是很厉害
    975779964
        10
    975779964  
       2022-12-04 18:37:39 +08:00
    @lxwlxc 你可以 搜索下 桌面 平铺 ,linux 下有好多 i3wm dwm ... , win 下有 rust 写的 komorebi 和 ahk 写的 bug.n , 但是体验 没有 i3 好 ,我后来 算是明白了,win 下 就得用鼠标,我就不 在 win 下干活了,但是现在这个公司 得用 企业 微信,我一点办法也没有…… 我搞了折中的办法就是 win 下用虚拟机 开 arch+ i3 干活

    后面我想了想我不应该 折腾 linux 的桌面了,太费劲了,我应该学习 命令行的东西才行,所以我打算 有空 捣鼓下 wsl 下 vim + tmux 干活 ,桌面还是用 win 的
    975779964
        11
    975779964  
       2022-12-04 18:39:42 +08:00
    因为这些东西你切换了新环境就整不会了…… 比如 在人家电脑上,或者 远程 机器,尤其是别人帮你忙的时候,按啥按不动,把帮忙的人弄的很恼火
    lxwlxc
        12
    lxwlxc  
    OP
       2022-12-04 18:54:19 +08:00
    @975779964 win 下确实得鼠标,自己并不会完全依赖我写的这个程序,悠闲的时候还是鼠标,在窗口多、需要频繁切换的情况下才会用它作为辅助。对于我,linux 桌面只适合把玩,真正完全转到 linux ,很多不适应,给自找不爽,和别人环境不一致也是个问题。 谢谢推荐的 komorebi 和 bug.n ,我玩一下
    phoenix
        13
    phoenix  
       2022-12-17 11:52:16 +08:00
    谢谢楼主分享。能增加便携版的功能吗?比如优先使用当前目录下的配置文件。
    lxwlxc
        14
    lxwlxc  
    OP
       2023-01-02 18:41:18 +08:00
    @phoenix 这个程序配置很简单,点点鼠标即可,多个电脑重复配置不会觉得太麻烦,而且配置完后几乎很少更改,应该不必像文档一样实时同步、随身携带。所以没必要这么复杂的。
    lxwlxc
        15
    lxwlxc  
    OP
       2023-01-02 19:31:39 +08:00
    @phoenix 如果确实有这个需求,windows 可以用软连接,将配置文件 C:\Users\用户名\.fingerGo\fingerGo.ini 链接到你指定的路径即可
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5834 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 06:22 · PVG 14:22 · LAX 23:22 · JFK 02:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.