撸了个简易mac版网易云番茄脚本

Posted by     "DD" on Thursday, November 10, 2022 | 阅读 |,阅读约 2 分钟

手边常用的番茄工具有:滴答清单和专注清单。都不能支持自定义背景乐,而我又是网易云音乐的重度用户。一时不爽,索性用applescript+shell自己撸了个脚本。

下面直接上代码

#!/bin/bash

killall NeteaseMusic
# 倒计时5s
echo kill 5
for i in {5..1} ; do
        echo $i
        sleep 1
    done

#打开
open /Applications/NeteaseMusic.app
# 倒计时10s
echo open 10
for i in {10..1} ; do
        echo $i
        sleep 1
    done



start=25
playtime=$(($start*60))
#计算工作时长
echo $playtime
stop=5
pausetime=$(($stop*60))
#计算休息时长
echo $pausetime

#默认4次循环
for((i=1;i<=4;i++)); do
  echo  $i loop
#播放或暂停,用applescript模拟键盘发送
    osascript -e 'tell application "System Events"' -e 'key code {58, 55, 35}' -e 'end tell'
    echo play ${start}min
    for j in $(seq $playtime 1) ; do
        echo $j
        sleep 1
    done
    wait

    osascript -e 'tell application "System Events"' -e 'key code {58, 55, 35}' -e 'end tell'
    echo pause ${stop}min
    for k in $(seq $pausetime 1) ; do
      echo $k
      sleep 1
    done
    wait
  done


需要特别注意的地方

  • 网易云音乐要选中"启用全局快捷键",位于"设置"–>“快捷键”
  • 上图中"播放/暂停"的"全局快捷键"默认设置因为产生冲突,被我改成了图中的配置。相应的,脚本中的模拟按键代码也要随之变更,对应的代码对照表,放在下面。

可以扩展的其他玩法

  • 可以用mac自带的"自动操作"生成一个应用程序;
  • 可以把脚本中的番茄时间改成参数,调用sh脚本时,传递进去;
  • 可以打开mac自带播放器,甚至指定播放列表
  • 可以用两个不同的播放器切换
  • 等等

总结

基本思路是利用applecript的模拟按键功能,控制app。 目前满足于自用,仅适用于mac环境。 记录一下。


本作品由 IvyWooo 采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可,转载请注明出处。 本文链接

「真诚赞赏,手留余香」

猫猫和狗狗的小窝

真诚赞赏,手留余香

使用微信扫描二维码完成支付


本文总阅读量