KM 创建常用动作快捷键、创建新组的快捷键;KM 阶段使用小结 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
qian

KM 创建常用动作快捷键、创建新组的快捷键;KM 阶段使用小结

  •  
  •   qian
    lsfalimis 2014 年 6 月 2 日 6967 次点击
    这是一个创建于 4345 天前的主题,其中的信息可能已经有所发展或是发生改变。
    1 Keyboard Maestro action shortcuts
    https://github.com/lsfalimis/Qian-KM-Macros#keyboard-maestro-action-shortcuts

    创建新动作太卡,索性给常用动作加了快捷键

    2 Keyboard Maestro new group shortcut
    https://github.com/lsfalimis/Qian-KM-Macros#keyboard-maestro-new-group-shortcut

    组我都是每个 app 配一个,每个组神经质得都要加上那个 app 的图标。

    3 小结

    - 不好意思,上面那个应该叫 hot string。现在懒得改了,见谅。

    - hot string 常见理解是 text expander. TextExpander 除了有弹出输入框以外还支持 AppleScript 和 Shell Script。今天发现 TextExpander 和 KM 的 hot string 是可以凭空输入触发动作的,优点就是**减掉 Alfred 响应的时间**,和**不用花时间在折腾快捷键设置和记忆上。**

    - 作为什么都不懂的小白,目前对 Patrick Welker 的 KM macro 长度只能不明觉厉了 (比如 http://rocketink.net/2014/05/upload-to-gist.html )...其实 KM 说到底就是弥补 app 缺陷的,所以第一步就是找到好 app,就免去在 KM 的折腾。如果找不到合适的 app,在 KM 瞎折腾是自己的事了。KM 第二个本质是小白专用。如果会 CLI 各种指令的话,就不用 GUI 了;如果会各种 script,就直接码了,用鼠标的 macro action 看程序员不笑你;甚至网页的动作全靠自己码 js 就好了,我还是在 KM 里瞎折腾...

    - KM 除了简单的复制粘贴快捷键,点菜单,*还有*鼠标动作 (我只能靠点 record 记录坐标,上面的 new group macro 有点折腾,把 xScope 设置里的 display measurement 改成 window points,估计一下加瞎蒙,总算把坐标确定下来了),鼠标动作*还*有其他选项(比如双击、右键,所以你能用 KM 点到所有右键菜单里的东西,easy?),*还有*各种 KM 变量 (浏览器标题、网址、历史 clipboard 等),*还有* clipboard 动作 [替换 (replace),自定义 snippet (set;比如说合并;喂, alfred 自带的是固定格式合并),和今天发现并且今天想强调的 filter clipboard (截图见底),简直是 iOS 的各种 Editorial 和 Pythonista (没有各种,就这2个; drafts 和 LCP 很简单的) 啊 (稍带讽刺,真不好意思,本人是小白+懒的看文档,一直觉得神秘的且没有 blog 文介绍具体使用的东西很遥远,总之我用 KM 的习惯是需要什么才去找,跟用 google 一样)],然后,KM 最后的高度*应该*是 AppleScript 和 Shell Script,这时*应该*扔掉 KM。最高和之前中间的部分*应该*在 KM 文档,不重复理由,总之我现在不知道“中间的部分”。

    - 小白党可能还觉得 KM 的 repeat 好用,比如我想改 contacts 惬意些,用“repeat over 40 tab键”到需要的栏 (CLI 党一个指令就能搞定 Mac contacts 的信息修改了吧)

    - 小白党可能觉得不带快捷键也不带菜单项目的 GUI app 很恶心,比如 Evernote (Mac) 和 Tweetbot (Mac) 这些 popular 且别人 (其实是 AppleScript 党; 或者就是一般人吧,什么都不懂,看别人推荐就一起起哄) 说它 (Evernote) 好用,这些 expensive 但别人愿意买它 (Tweetbot) 的 apps;所以可能还觉得 KM 用快捷键通过菜单项目或者鼠标 (involving 右键, don't forget) 绑到各种 app 的功能好用

    - 小白党可能还觉得 Hazel + 自己会写的简单的 AppleScript 好用,对其他 AppleScript 不明觉厉并且选择无视; 还有 TextExpander 的弹出输入框功能 (fill-in field);并把它们叫做会令 CLI 党会发笑的 power apps... (这些 apps 有 chaining 属性,所以排除了另外一大批 apps)

    - 小白党没有未来...

    5 条回复    2014-06-02 13:59:53 +08:00
    qian
        1
    qian  
    OP
       2014 年 6 月 2 日
    Regarding 凭自己 and/or 用其他 app 可以实现的功能,popclip 可以扔了,可以形象地把 hot string 理解成念咒,所以花额外力气 access popup 的 menu 没有意义;regarding 凭自己 or 用其他 app 不可以实现的功能,继续用 popclip 来完成。
    qian
        2
    qian  
    OP
       2014 年 6 月 2 日
    提到 popclip 的原因在于 t/114245#reply2###任务自动化的思路(泛化[^2])的 Mac 物理动作穷举
    azuginnen
        3
    azuginnen  
       2014 年 6 月 2 日
    哈,楼主的意思我懂(楼主的表达实在太难看懂了),在windows下我用ahk试过。

    比如土豆下载器没有批量下载功能,只能一条一条手工粘帖url进去。我写脚本hack了一下,达到批量自动化的目的。

    专业术语叫做进程间通信,gui软件缺乏管道这个概念,但好歹也要把某些接口暴露出来,弄一些文本导入啊,导出啊的功能。

    你这个基于图片辨识的点击在分辨率改变的情况下怎么处理呢?
    qian
        4
    qian  
    OP
       2014 年 6 月 2 日 via iPhone
    @azuginnen 不处理... 常用的 apps 在设置 KM 和用 KM macros 时保持同样的窗口 size,做个记录的话,就记 moom 的几格乘以几格。
    qian
        5
    qian  
    OP
       2014 年 6 月 2 日 via iPhone
    好像回答错了。我的确有个分辨率与rmbp不一样的外显(废话= =, 抱歉我是英文逻辑),解决办法就是如果 app 窗口在外显就 control+` 到 rmbp,然后调整到 moom-specified size,然后再 control+` 回去。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     860 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 22:18 PVG 06:18 LAX 15:18 JFK 18:18
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86