MacOS 快速插入当前时间
Posted | stdout
第一步:创建快捷指令
打开 Shortcuts。
点击右上角 + 新建快捷指令。
添加动作 1:日期
搜索:
日期
添加 「日期(Current Date)」 动作,它默认就是当前时间。也可以直接在后面的文本动作里使用内置的 Current Date 变量。([Apple Support][1])
添加动作 2:格式化日期
搜索:
格式化日期
添加 「格式化日期」。
设置:
- 日期:选择「当前日期」
- 日期格式:自定义
- 自定义格式填:
yyyy-MM-dd HH:mm:ss
注意:
yyyy年MM月(大写)dd日HH24小时mm分钟(小写)ss秒(小写)
这样输出就是:
2026-06-20 14:37:52
添加动作 3:Applescript
on run {input, parameters}
-- 稍微延长一点延迟,确保触发快捷键的手指已经离开键盘
delay 0.1
-- display dialog "Current date"
-- 将 Shortcuts 传入的 list 转换为字符串
set ts to item 1 of input as string
tell application "System Events"
-- 释放可能被系统残留挂起的修饰键状态
-- 键盘区数字的 Key Code 分布是乱序的
set keyCodeMap to {29, 18, 19, 20, 21, 23, 22, 26, 28, 25}
key up command
key up option
key up control
key up shift
repeat with i from 1 to length of ts
set c to character i of ts
set charID to id of c
if c is ":" then
-- 分号,加 shift 变成冒号
key code 41 using {shift down}
else if c is "-" then
-- 减号,不需要 shift
key code 27
else if c is space then
key code 49
else if charID ≥ 48 and charID ≤ 57 then
-- ASCII 码范围过滤 转换算出 1 到 10 的索引
set targetIndex to charID - 47
key code (item targetIndex of keyCodeMap)
end if
end repeat
end tell
end run
第二步:设为快速操作
点快捷指令右上角 ⓘ。
勾选:
Use as Quick Action(用作快速操作)
然后选择:
任何应用程序
这样它就会出现在系统的快速操作里。([iDownloadBlog.com][2])
第三步:绑定快捷键
打开:
系统设置
→ 键盘
→ 键盘快捷键
→ 服务(或“快速操作”)
找到你刚创建的快捷指令,例如:
Insert Timestamp
点右边添加快捷键,例如:
⌥⌘T
以后任何文本框:
⌥⌘T
就会输入:
2026-06-20 14:37:52
我习惯的方式是右手 Cmd+Opt+T 。
以前觉得 applescript 慢,但是现在反而发现需要 delay 0.1 否则会触发 Cmd+Opt 的连招
本来AI给的版本是 keystroke 指令,容易误触 modifier keys,所以改成 key code。
还以为 AI 写错了,没想到 mac 的 0-9 数字键code 居然不是连续的。
不过这JB玩意不稳定,一会儿授权失效了,需要去 设置 - 隐私 - 辅助功能 里删除 Shortcuts 再添加。。
Comments