# 此文件定义 mpv 的快捷键绑定和 uosc 右键菜单项目

##⇘⇘uosc 一级菜单：打开
o                script-message-to uosc open-file                                                                       #menu: 打开 > 打开内置浏览器
#                script-message-to uosc playlist                                                                        #menu: 打开 > 播放菜单
#                script-message-to uosc chapters                                                                        #menu: 打开 > 章节菜单
#                script-message-to uosc editions                                                                        #menu: 打开 > 版本菜单
#                script-message-to uosc audio                                                                           #menu: 打开 > 其他音轨
#                script-message-to uosc subtitles                                                                       #menu: 打开 > 其他字幕
#                ignore                                                                                                 #menu: 打开 > ---
`                script-message-to simplehistory open-list;show-text ''                                                 #menu: 打开 > 历史 > 打开历史菜单
ALT+l            script-message-to simplehistory history-incognito-mode                                                 #menu: 打开 > 历史 > 开/关 隐身历史
CTRL+L           script-message-to simplehistory history-load-last                                                      #menu: 打开 > 历史 > 加载最后播放文件
CTRL+l           script-message-to simplehistory history-resume                                                         #menu: 打开 > 历史 > 加载最后播放文件及进度
#                ignore                                                                                                 #menu: 打开 > ---
CTRL+c           set clipboard/text ${path};show-text "已复制文件路径"                                                  #menu: 打开 > 复制 > 复制文件路径
CTRL+ALT+c       set clipboard/text ${filename};show-text "已复制文件名"                                                #menu: 打开 > 复制 > 复制文件名
#                ignore                                                                                                 #menu: 打开 > ---
CTRL+F           script-message-to quality_menu video_formats_toggle                                                    #menu: 打开 > Youtube-dl > 开/关 ytdl 视频选择菜单
ALT+F            script-message-to quality_menu audio_formats_toggle                                                    #menu: 打开 > Youtube-dl > 开/关 ytdl 音频选择菜单
#                script-message-to quality_menu reload                                                                  #menu: 打开 > Youtube-dl > ytdl 重新加载

##⇘⇘uosc 一级菜单：文件
SHIFT+F11        stop                                                                                                   #menu: 文件 > 停止
ALT+t            cycle ontop;show-text "置顶:${ontop}"                                                                  #menu: 文件 > 开/关 置顶状态      #@state=(ontop and 'checked')
ALT+b            cycle window-maximized                                                                                 #menu: 文件 > 开/关 最大化        #@state=(window_maximized and 'checked')
f                cycle fullscreen                                                                                       #menu: 文件 > 开/关 全屏          #@state=(fullscreen and 'checked')
i                script-binding stats/display-stats                                                                     #menu: 文件 > 临时显示统计信息
I                script-binding stats/display-stats-toggle                                                              #menu: 文件 > 常驻显示统计信息
l                ab-loop                                                                                                #menu: 文件 > 设定/清除 片段循环
L                cycle-values loop-file inf no;show-text "循环播放:${loop-file}"                                        #menu: 文件 > 开/关 循环播放      #@state=(loop_file and 'checked')
n                script-message playlistmanager shuffle                                                                 #menu: 文件 > 随机播放
[                no-osd add      speed -0.1; script-message-to uosc flash-speed                                         #menu: 文件 > 速度 > 速度 -0.1
]                no-osd add      speed  0.1; script-message-to uosc flash-speed                                         #menu: 文件 > 速度 > 速度 +0.1
{                no-osd multiply speed  0.5; script-message-to uosc flash-speed                                         #menu: 文件 > 速度 > 半速
}                no-osd multiply speed  2.0; script-message-to uosc flash-speed                                         #menu: 文件 > 速度 > 倍速
BS               no-osd set      speed  1.0; script-message-to uosc flash-speed                                         #menu: 文件 > 速度 > 重置速度
ALT+o            script-message-to uosc show-in-directory                                                               #menu: 文件 > 定位当前文件
DEL              script-message-to delete_current_file delete-file 1  "请按 1 确认删除"                                 #menu: 文件 > 删除当前文件

##⇘⇘uosc 一级菜单：导航
#                show-text ${track-list} 5000                                                                           #menu: 导航 > 打开  OSD 轨道信息
O                no-osd cycle-values osd-level 3 1                                                                      #menu: 导航 > 开/关 显示 OSD 时间轴
F4               script-binding select/menu;show-text ''                                                                #menu: 导航 > OSD 交互菜单 > 综合菜单
F5               script-message-to playlistmanager showplaylist;show-text ''                                            #menu: 导航 > OSD 交互菜单 > 播放列表
F6               script-binding select/select-audio-device;show-text ''                                                 #menu: 导航 > OSD 交互菜单 > 音频设备列表
#                script-binding select/select-edition;show-text ''                                                      #menu: 导航 > OSD 交互菜单 > 版本列表
F7               script-binding select/select-chapter;show-text ''                                                      #menu: 导航 > OSD 交互菜单 > 章节列表
F8               script-binding select/select-track;show-text ''                                                        #menu: 导航 > OSD 交互菜单 > 轨道列表
F9               script-binding select/select-vid;show-text ''                                                          #menu: 导航 > OSD 交互菜单 > 视频轨列表
F10              script-binding select/select-aid;show-text ''                                                          #menu: 导航 > OSD 交互菜单 > 音频轨列表
F11              script-binding select/select-sid;show-text ''                                                          #menu: 导航 > OSD 交互菜单 > 字幕轨列表
ALT+c            script-message-to chapter_make_read create_chapter                                                     #menu: 导航 > 章节制作 > 标记章节时间
ALT+e            script-message-to chapter_make_read edit_chapter                                                       #menu: 导航 > 章节制作 > 编辑章节标题
ALT+r            script-message-to chapter_make_read remove_chapter                                                     #menu: 导航 > 章节制作 > 删除当前章节
ALT+w            script-message-to chapter_make_read write_chapter chp                                                  #menu: 导航 > 章节制作 > 创建 chp 章节文件
ALT+g            script-message-to chapter_make_read write_chapter ogm                                                  #menu: 导航 > 章节制作 > 创建 ogm 章节文件
<                playlist-prev;show-text "播放列表:${playlist-pos-1}/${playlist-count}"                                 #menu: 导航 > 上个文件
>                playlist-next;show-text "播放列表:${playlist-pos-1}/${playlist-count}"                                 #menu: 导航 > 下个文件
PGDWN            add chapter -1                                                                                         #menu: 导航 > 上一章节
PGUP             add chapter  1                                                                                         #menu: 导航 > 下一章节
F3               script-message-to chapterskip skip-to-silence;show-text "跳到下一个静音位置"                           #menu: 导航 > 跳到下一个静音位置
ALT+q            script-message-to chapterskip chapter-skip                                                             #menu: 导航 > 切换 章节跳过模式
ALT+n            script-message-to chapterskip toggle-markskip                                                          #menu: 导航 > 标记片头片尾
,                frame-back-step;show-text "当前帧：${estimated-frame-number}"                                          #menu: 导航 > 前进后退 > 上一帧
.                frame-step     ;show-text "当前帧：${estimated-frame-number}"                                          #menu: 导航 > 前进后退 > 下一帧
RIGHT            seek  5                                                                                                #menu: 导航 > 前进后退 > 前进 5 秒
LEFT             seek -5                                                                                                #menu: 导航 > 前进后退 > 后退 5 秒
UP               no-osd add volume  5; script-message-to uosc flash-volume                                              #menu: 音频 > 音量 > 音量 +5
DOWN             no-osd add volume -5; script-message-to uosc flash-volume                                              #menu: 音频 > 音量 > 音量 -5
SHIFT+RIGHT      seek  1 exact                                                                                          #menu: 导航 > 前进后退 > 精准前进 1 秒
SHIFT+LEFT       seek -1 exact                                                                                          #menu: 导航 > 前进后退 > 精准后退 1 秒
SHIFT+UP         seek  80 exact                                                                                         #menu: 导航 > 前进后退 > 精准前进 80 秒
SHIFT+DOWN       seek -80 exact                                                                                         #menu: 导航 > 前进后退 > 精准后退 80 秒
CTRL+z           script-message-to undoredo undo                                                                        #menu: 导航 > 跳转 > 撤消跳转
CTRL+x           script-message-to undoredo redo                                                                        #menu: 导航 > 跳转 > 重做跳转
CTRL+ALT+z       script-message-to undoredo undoLoop                                                                    #menu: 导航 > 跳转 > 循环跳转

##⇘⇘uosc 一级菜单：画面
#                set video-aspect-override "-1";show-text "宽高比:${video-aspect-override}"                             #menu: 画面 > 切换 宽高比 > 默认值
#                set video-aspect-override "16:9";show-text "宽高比:${video-aspect-override}"                           #menu: 画面 > 切换 宽高比 > 16:9
#                set video-aspect-override "4:3";show-text "宽高比:${video-aspect-override}"                            #menu: 画面 > 切换 宽高比 > 4:3
#                set video-aspect-override "2.35:1";show-text "宽高比:${video-aspect-override}"                         #menu: 画面 > 切换 宽高比 > 2.35:1
A                cycle-values video-aspect-override 16:9 4:3 2.35:1 -1;show-text "宽高比:${video-aspect-override}"      #menu: 画面 > 切换 宽高比 > 循环切换
CTRL+LEFT        cycle-values video-rotate 0 270 180 90;show-text "视频旋转:${video-rotate}"                            #menu: 画面 > 左旋转
CTRL+RIGHT       cycle-values video-rotate 0 90 180 270;show-text "视频旋转:${video-rotate}"                            #menu: 画面 > 右旋转
CTRL+-           add window-scale -0.1;show-text "窗口缩小:${window-scale}"                                             #menu: 画面 > 画面缩放 > 缩小窗口
CTRL+=           add window-scale  0.1;show-text "窗口放大:${window-scale}"                                             #menu: 画面 > 画面缩放 > 放大窗口
ALT+-            add video-zoom   -0.1;show-text "画面缩小:${video-zoom}"                                               #menu: 画面 > 画面缩放 > 画面缩小
ALT+=            add video-zoom    0.1;show-text "画面放大:${video-zoom}"                                               #menu: 画面 > 画面缩放 > 画面放大
ALT+LEFT         add video-pan-x  -0.1;show-text "画面左移动:${video-pan-x}"                                            #menu: 画面 > 画面缩放 > 画面左移动
ALT+RIGHT        add video-pan-x   0.1;show-text "画面右移动:${video-pan-x}"                                            #menu: 画面 > 画面缩放 > 画面右移动
ALT+UP           add video-pan-y  -0.1;show-text "画面上移动:${video-pan-y}"                                            #menu: 画面 > 画面缩放 > 画面上移动
ALT+DOWN         add video-pan-y   0.1;show-text "画面下移动:${video-pan-y}"                                            #menu: 画面 > 画面缩放 > 画面下移动
ALT+p            cycle-values panscan 0.0 1.0;show-text "视频画面缩放:${panscan}"                                       #menu: 画面 > 开/关 裁切填充        #@state=(panscan and 'checked')
#                ignore                                                                                                 #menu: 画面 > ---
ALT+BS           set video-zoom 0;set panscan 0;set video-rotate 0;set video-pan-x 0;set video-pan-y 0;set video-aspect-override -1;show-text "重置画面操作"        #menu: 画面 > 重置以上画面操作
#                ignore                                                                                                 #menu: 画面 > ---
CTRL+I           cycle icc-profile-auto   ;show-text "ICC 自动校色:${icc-profile-auto}"                                 #menu: 画面 > 开/关 自动 ICC 校色   #@state=(icc_profile_auto and 'checked')
#                cycle sigmoid-upscaling;show-text "非线性色彩转换:${sigmoid-upscaling}"                                #menu: 画面 > 开/关 非线性色彩转换  #@state=(sigmoid_upscaling and 'checked')
1                add contrast -1;show-text "对比度:${contrast}"                                                         #menu: 画面 > 调色 > 对比度 -1
2                add contrast  1;show-text "对比度:${contrast}"                                                         #menu: 画面 > 调色 > 对比度 +1
3                add brightness -1;show-text "明度:${brightness}"                                                       #menu: 画面 > 调色 > 明度 -1
4                add brightness  1;show-text "明度:${brightness}"                                                       #menu: 画面 > 调色 > 明度 +1
5                add gamma -1;show-text "伽马:${gamma}"                                                                 #menu: 画面 > 调色 > 伽马 -1
6                add gamma  1;show-text "伽马:${gamma}"                                                                 #menu: 画面 > 调色 > 伽马 +1
7                add saturation -1;show-text "饱和度:${saturation}"                                                     #menu: 画面 > 调色 > 饱和度 -1
8                add saturation  1;show-text "饱和度:${saturation}"                                                     #menu: 画面 > 调色 > 饱和度 +1
-                add hue -1;show-text "色相:${hue}"                                                                     #menu: 画面 > 调色 > 色相 -1
=                add hue  1;show-text "色相:${hue}"                                                                     #menu: 画面 > 调色 > 色相 +1
CTRL+BS          set contrast 0;set brightness 0;set gamma 0;set saturation 0;set hue 0;show-text "重置调色"            #menu: 画面 > 调色 > 重置
D                cycle deband;show-text "去色带:${deband}"                                                              #menu: 画面 > 去色带 > deband 开关   #@state=(deband and 'checked')
ALT+z            add   deband-iterations +1;show-text "增加去色带强度:${deband-iterations}"                             #menu: 画面 > 去色带 > deband 强度 +1
ALT+x            add   deband-iterations -1;show-text "降低去色带强度:${deband-iterations}"                             #menu: 画面 > 去色带 > deband 强度 -1
h                cycle-values tone-mapping auto spline bt.2390 hable bt.2446a st2094-40 st2094-10;show-text "HDR 映射曲线:${tone-mapping}"   #menu: 画面 > HDR 相关 > 切换 HDR 映射曲线
ALT+h            cycle-values hdr-compute-peak yes no;show-text "HDR 动态映射:${hdr-compute-peak}"                      #menu: 画面 > HDR 相关 > 切换 HDR 动态映射  #@state=(hdr_compute_peak and 'checked')
CTRL+h           cycle target-colorspace-hint;show-text "HDR 直通模式:${target-colorspace-hint}"                        #menu: 画面 > HDR 相关 > 切换 HDR 直通模式  #@state=(target_colorspace_hint and 'checked')
CTRL+t           cycle-values target-trc auto pq gamma2.2;show-text "显示器传输特性:${target-trc}"                      #menu: 画面 > HDR 相关 > 切换 显示器传输特性
CTRL+T           cycle-values target-peak 100 203;show-text "映射目标峰值:${target-peak}"                               #menu: 画面 > HDR 相关 > 切换 映射目标峰值
CTRL+g           cycle gamut-mapping-mode ;show-text "色域映射模式:${gamut-mapping-mode}"                               #menu: 画面 > HDR 相关 > 切换 色域映射模式
#                cycle tone-mapping-visualize;show-text "色调映射可视化模式:${tone-mapping-visualize}"                  #menu: 画面 > HDR 相关 > 切换 色调映射可视化模式
#                ignore                                                                                                 #menu: ---

##⇘⇘menu 一级菜单：轨道
#                ignore                                                                                                 #menu: 菜单 > 轨道     #@tracks
#                ignore                                                                                                 #menu: 菜单 > 次字幕   #@tracks/sub-secondary
#                ignore                                                                                                 #menu: 菜单 > 章节列表 #@chapters
#                ignore                                                                                                 #menu: 菜单 > 版本列表 #@editions
#                ignore                                                                                                 #menu: ---

##⇘⇘uosc 一级菜单：视频
#                cycle video                                                                                            #menu: 视频 > 切换  视频轨
#                set hwdec "no"                                                                                         #menu: 视频 > 切换  解码方式 > 软解
#                set hwdec "auto-safe"                                                                                  #menu: 视频 > 切换  解码方式 > 自动选择硬解加速模式
#                set hwdec "auto-copy-safe"                                                                             #menu: 视频 > 切换  解码方式 > 自动选择 copy 硬解模式
#                set hwdec "nvdec"                                                                                      #menu: 视频 > 切换  解码方式 > nvdec 硬解
#                set hwdec "nvdec-copy"                                                                                 #menu: 视频 > 切换  解码方式 > nvdec-copy 硬解
#                set video-sync audio;show-text "帧同步模式:${video-sync}"                                              #menu: 视频 > 切换  帧同步模式 > audio
#                set video-sync display-resample;show-text "帧同步模式:${video-sync}"                                   #menu: 视频 > 切换  帧同步模式 > display-resample
#                set video-sync display-tempo;show-text "帧同步模式:${video-sync}"                                      #menu: 视频 > 切换  帧同步模式 > display-tempo
#                set video-sync display-vdrop;show-text "帧同步模式:${video-sync}"                                      #menu: 视频 > 切换  帧同步模式 > display-vdrop
#                set video-sync display-resample-vdrop;show-text "帧同步模式:${video-sync}"                             #menu: 视频 > 切换  帧同步模式 > display-resample-vdrop
#                cycle-values  video-sync display-resample display-tempo audio display-vdrop display-resample-vdrop;show-text "帧同步模式:${video-sync}"  #menu: 视频 > 切换  帧同步模式 > 循环切换
ALT+i            cycle interpolation    ;show-text "抖动补偿:${interpolation}"                                          #menu: 视频 > 开/关 抖动补偿              #@state=(interpolation and 'checked')
d                cycle deinterlace;show-text "去交错:${deinterlace}"                                                    #menu: 视频 > 开/关 反交错                #@state=(deinterlace and 'checked')
#                cycle vd-lavc-assume-old-x264;show-text "兼容 x264 旧编码模式:${vd-lavc-assume-old-x264}"              #menu: 视频 > 开/关 兼容 x264 旧编码模式  #@state=(vd_lavc_assume_old_x264 and 'checked')
#                ignore                                                                                                 #menu: 视频 > ---
s                screenshot subtitles                                                                                   #menu: 视频 > 截屏 > 同源尺寸 - 有字幕 - 无 OSD-单帧
S                screenshot video                                                                                       #menu: 视频 > 截屏 > 同源尺寸 - 无字幕 - 无 OSD-单帧
CTRL+s           show-text "截屏" 400;script-message delay-command 0.5 screenshot window                                #menu: 视频 > 截屏 > 实际尺寸 - 有字幕 - 有 OSD-单帧
ALT+s            screenshot subtitles+each-frame                                                                        #menu: 视频 > 截屏 > 同源尺寸 - 有字幕 - 无 OSD-逐帧
ALT+S            screenshot video+each-frame                                                                            #menu: 视频 > 截屏 > 同源尺寸 - 无字幕 - 无 OSD-逐帧
CTRL+S           show-text "逐帧截屏" 400;script-message delay-command 0.5 screenshot window+each-frame                 #menu: 视频 > 截屏 > 实际尺寸 - 有字幕 - 有 OSD-逐帧

##⇘⇘uosc 一级菜单：音频
#                script-message-to uosc audio-device                                                                    #menu: 音频 > 音频设备列表       #@audio-devices
#                ignore                                                                                                 #menu: 音频 > ---
y                cycle audio;show-text "音轨切换为:${audio}"                                                            #menu: 音频 > 切换 音频轨
m                cycle mute;show-text "静音:${mute}"                                                                    #menu: 音频 > 切换 静音          #@state=(mute and 'checked')
#                ignore                                                                                                 #menu: 音频 > ---
CTRL+,           add audio-delay -0.1;show-text "音频延迟:${audio-delay}"                                               #menu: 音频 > 延迟 -0.1
CTRL+.           add audio-delay  0.1;show-text "音频预载:${audio-delay}"                                               #menu: 音频 > 延迟 +0.1
;                set audio-delay  0  ;show-text "重置音频延迟:${audio-delay}"                                           #menu: 音频 > 延迟 重置
#                ignore                                                                                                 #menu: 音频 > ---
#                cycle audio-normalize-downmix;show-text "音频规格化:${audio-normalize-downmix}"                        #menu: 音频 > 切换 音频规格化    #@state=(audio_normalize_downmix and 'checked')
CTRL+y           cycle audio-exclusive  ;show-text "音频独占模式:${audio-exclusive}"                                    #menu: 音频 > 切换 音频独占模式  #@state=(audio_exclusive and 'checked')
CTRL+Y           cycle hr-seek-framedrop;show-text "音频同步模式:${hr-seek-framedrop}"                                  #menu: 音频 > 切换 音频同步模式  #@state=(hr_seek_framedrop and 'checked')
#                set   audio-channels "7.1";show-text "音频通道输出方式:${audio-channels}"                              #menu: 音频 > 音频通道输出方式 > 7.1 声道输出
#                set   audio-channels "5.1";show-text "音频通道输出方式:${audio-channels}"                              #menu: 音频 > 音频通道输出方式 > 5.1 声道输出
#                set   audio-channels "stereo";show-text "音频通道输出方式:${audio-channels}"                           #menu: 音频 > 音频通道输出方式 > 双通道输出
#                set   audio-channels "7.1,5.1,stereo";show-text "音频通道输出方式:${audio-channels}"                   #menu: 音频 > 音频通道输出方式 > 自动选择以上输出方式
ALT+y            cycle-values audio-channels "7.1,5.1,stereo" "7.1" "5.1" "stereo" "auto-safe" "auto";show-text "音频通道输出方式:${audio-channels}"    #menu: 音频 > 音频通道输出方式 > 循环切换
F2               cycle-values  af "@dynaudnorm:lavfi=[dynaudnorm=f=500:g=31:p=0.5:m=5:r=0.9]" "@loudnorm:lavfi=[loudnorm=I=-16:TP=-1.5:LRA=11]" ""              #menu: 音频 >  切换 下混滤镜
ALT+`            af clr ""                                                                                              #menu: 音频 > 清空 af 滤镜

##⇘⇘uosc 一级菜单：字幕
j                cycle sub;show-text "字幕切换为:${sub}"                                                                #menu: 字幕 > 切换 字幕轨
k                cycle secondary-sid;show-text "切换次字幕:${secondary-sid}"                                            #menu: 字幕 > 切换 次字幕
v                cycle sub-visibility;show-text "字幕可见性:${sub-visibility}"                                          #menu: 字幕 > 切换 字幕可见性   #@state=(sub_visibility and 'checked')
ALT+V            cycle secondary-sub-visibility;show-text "次字幕可见性:${secondary-sub-visibility}"                    #menu: 字幕 > 切换 次字幕可见性 #@state=(secondary_sub_visibility and 'checked')
u                cycle sub-ass-override;show-text "字幕渲染样式:${sub-ass-override}"                                    #menu: 字幕 > 切换 渲染样式
F                cycle-values sub-font "Noto Sans CJK SC" "Noto Sans CJK KR" "Noto Serif CJK SC" "Noto Serif CJK KR";show-text "字幕字体:${sub-font}"  #menu: 字幕 > 切换 默认字体
CTRL+r           sub-reload;show-text "重载当前字幕"                                                                    #menu: 字幕 > 重载当前字幕
#                ignore                                                                                                 #menu: 字幕 > ---
ALT+R            cycle secondary-sub-ass-override;show-text "次字幕样式覆盖:${secondary-sub-ass-override}"              #menu: 字幕 > 兼容性 > 切换 次字幕样式覆盖      #@state=(secondary_sub_ass_override and 'checked')
ALT+T            cycle blend-subtitles;show-text "字幕混合视频帧:${blend-subtitles}"                                    #menu: 字幕 > 兼容性 > 切换 字幕混合视频帧      #@state=(blend_subtitles and 'checked')
K                cycle sub-fix-timing                 ;show-text "字幕时序修复:${sub-fix-timing}"                       #menu: 字幕 > 兼容性 > 切换 字幕时序修复        #@state=(sub_fix_timing and 'checked')
J                cycle sub-ass-vsfilter-color-compat  ;show-text "字幕颜色转换方式:${sub-ass-vsfilter-color-compat}"    #menu: 字幕 > 兼容性 > 切换 字幕颜色转换方式
V                cycle sub-ass-use-video-data ;show-text "使用视频信息:${sub-ass-use-video-data}"                       #menu: 字幕 > 兼容性 > 切换 使用视频信息
ALT+B            cycle sub-vsfilter-bidi-compat       ;show-text "bidi 双向检测兼容性:${sub-vsfilter-bidi-compat}"      #menu: 字幕 > 兼容性 > 切换 bidi 双向检测兼容性 #@state=(sub_vsfilter_bidi_compat and 'checked')
ALT+X            cycle-values sub-ass-style-overrides "ScaledBorderAndShadow=no" "ScaledBorderAndShadow=yes";show-text "强制替换 ass 样式:${sub-ass-style-overrides}"   #menu: 字幕 > 兼容性 > 切换 ass 字幕阴影边框缩放
H                cycle sub-ass-force-margins          ;show-text "ass 字幕输出黑边:${sub-ass-force-margins}"            #menu: 字幕 > 兼容性 > 切换 ass 字幕输出到黑边  #@state=(sub_ass_force_margins and 'checked')
ALT+Z            cycle sub-use-margins                ;show-text "srt 字幕输出黑边:${sub-use-margins}"                  #menu: 字幕 > 兼容性 > 切换 srt 字幕输出到黑边  #@state=(sub_use_margins and 'checked')
P                cycle stretch-image-subs-to-screen   ;show-text "pgs 字幕输出黑边:${stretch-image-subs-to-screen}"     #menu: 字幕 > 兼容性 > 切换 pgs 字幕输出到黑边  #@state=(stretch_image_subs_to_screen and 'checked')
p                cycle sub-gray;show-text "pgs 字幕灰度转换:${sub-gray}"                                                #menu: 字幕 > 兼容性 > 切换 pgs 字幕灰度转换    #@state=(sub_gray and 'checked')
#                ignore                                                                                                 #menu: 字幕 > ---
Y                script-message sub-select toggle                                                                       #menu: 字幕 > 切换 字幕选择脚本
CTRL+f           script-message-to sub_assrt sub-assrt                                                                  #menu: 字幕 > 打开 字幕下载菜单
CTRL+m           script-message-to autosubsync autosubsync-menu                                                         #menu: 字幕 > 打开 字幕同步菜单
CTRL+M           script-binding select/select-subtitle-line                                                             #menu: 字幕 > 打开 字幕内容菜单
ALT+m            script-message-to sub_export export-selected-subtitles                                                 #menu: 字幕 > 导出当前内封字幕
#                ignore                                                                                                 #menu: 字幕 > ---
r                add sub-pos -1;show-text "字幕上移:${sub-pos}"                                                         #menu: 字幕 > 其他操作 > 字幕上移
t                add sub-pos +1;show-text "字幕下移:${sub-pos}"                                                         #menu: 字幕 > 其他操作 > 字幕下移
R                add secondary-sub-pos -1;show-text "次字幕上移:${secondary-sub-pos}"                                   #menu: 字幕 > 其他操作 > 次字幕上移
T                add secondary-sub-pos +1;show-text "次字幕下移:${secondary-sub-pos}"                                   #menu: 字幕 > 其他操作 > 次字幕下移
z                add sub-delay -0.1;show-text "字幕延迟:${sub-delay}"                                                   #menu: 字幕 > 其他操作 > 字幕延迟 -0.1
x                add sub-delay  0.1;show-text "字幕预载:${sub-delay}"                                                   #menu: 字幕 > 其他操作 > 字幕延迟 +0.1
Z                add secondary-sub-delay -0.1;show-text "次字幕延迟:${secondary-sub-delay}"                             #menu: 字幕 > 其他操作 > 次字幕延迟 -0.1
X                add secondary-sub-delay  0.1;show-text "次字幕预载:${secondary-sub-delay}"                             #menu: 字幕 > 其他操作 > 次字幕延迟 +0.1
ALT+j            add sub-scale -0.1;show-text "字幕缩小:${sub-scale}"                                                   #menu: 字幕 > 其他操作 > 字号 -0.1
ALT+k            add sub-scale  0.1;show-text "字幕放大:${sub-scale}"                                                   #menu: 字幕 > 其他操作 > 字号 +0.1
CTRL+j           sub-seek -1                                                                                            #menu: 字幕 > 其他操作 > 跳转上一条字幕
CTRL+k           sub-seek  1                                                                                            #menu: 字幕 > 其他操作 > 跳转下一条字幕
SHIFT+BS         set sub-pos 100;set sub-scale 1.0;set sub-delay 0;show-text "重置字幕状态"                             #menu: 字幕 > 其他操作 > 恢复初始

##⇘⇘uosc 一级菜单：视频滤镜
CTRL+`           vf clr ""                                                                                              #menu: 视频滤镜 > 清空
ALT+v            vf toggle deblock=filter=weak:block=4                                                                  #menu: 视频滤镜 > 开/关 去色块滤镜
!                vf toggle format=colorlevels=limited                                                                   #menu: 视频滤镜 > 开/关 动态范围限制
@                vf toggle vflip                                                                                        #menu: 视频滤镜 > 开/关 垂直翻转
SHARP            vf toggle hflip                                                                                        #menu: 视频滤镜 > 开/关 水平翻转
$                vf toggle rotate=angle=180*PI/180                                                                      #menu: 视频滤镜 > 开/关 旋转 180
%                vf toggle format:gamma=gamma2.2                                                                        #menu: 视频滤镜 > 开/关 伽马修正 2.2
^                vf toggle fps=fps=60/1.001                                                                             #menu: 视频滤镜 > 开/关 强制帧数 59.94
*                vf toggle pad=aspect=16/9:x=-1:y=-1                                                                    #menu: 视频滤镜 > 开/关 填充 16:9 的黑边并居中
&                vf toggle colortemperature=temperature=6500                                                            #menu: 视频滤镜 > 开/关 色温修正 6500

##⇘⇘uosc 一级菜单：着色器
CTRL+0           change-list glsl-shaders clr ""                                                                        #menu: 着色器 > 清空
CTRL+1           change-list glsl-shaders toggle "~~/shaders/igv/KrigBilateral.glsl"                                    #menu: 着色器 > IGV > 开/关 KrigBilateral
CTRL+2           change-list glsl-shaders toggle "~~/shaders/igv/SSimSuperRes.glsl"                                     #menu: 着色器 > IGV > 开/关 SSimSuperRes
CTRL+3           change-list glsl-shaders toggle "~~/shaders/igv/SSimDownscaler.glsl"                                   #menu: 着色器 > IGV > 开/关 SSimDownscaler
CTRL+4           change-list glsl-shaders toggle "~~/shaders/igv/adaptive-sharpen.glsl"                                 #menu: 着色器 > IGV > 开/关 自适应锐化
#                change-list glsl-shaders toggle "~~/shaders/igv/adaptive-sharpen_luma.glsl"                            #menu: 着色器 > IGV > 开/关 自适应锐化-luma
CTRL+5           change-list glsl-shaders toggle "~~/shaders/igv/FSRCNNX_x2_8-0-4-1.glsl"                               #menu: 着色器 > FSRCNNX > 开/关 FSRCNNX
#                change-list glsl-shaders toggle "~~/shaders/igv/FSRCNNX_x2_16-0-4-1.glsl"                              #menu: 着色器 > FSRCNNX > 开/关 FSRCNNX-16x
CTRL+6           change-list glsl-shaders toggle "~~/shaders/igv/FSRCNNX_x1_16-0-4-1_distort.glsl"                      #menu: 着色器 > FSRCNNX > 开/关 FSRCNNX-distort
CTRL+7           change-list glsl-shaders toggle "~~/shaders/nnedi3/nnedi3-nns32-win8x4.glsl"                           #menu: 着色器 > NNEDI3 > 开/关 nns32-4
#                change-list glsl-shaders toggle "~~/shaders/nnedi3/nnedi3-nns32-win8x6.glsl"                           #menu: 着色器 > NNEDI3 > 开/关 nns32-6
#                change-list glsl-shaders toggle "~~/shaders/nnedi3/nnedi3-nns64-win8x4.glsl"                           #menu: 着色器 > NNEDI3 > 开/关 nns64-4
#                change-list glsl-shaders toggle "~~/shaders/nnedi3/nnedi3-nns64-win8x6.glsl"                           #menu: 着色器 > NNEDI3 > 开/关 nns64-6
#                change-list glsl-shaders toggle "~~/shaders/nnedi3/nnedi3-nns128-win8x4.glsl"                          #menu: 着色器 > NNEDI3 > 开/关 nns128-4
#                change-list glsl-shaders toggle "~~/shaders/nnedi3/nnedi3-nns128-win8x6.glsl"                          #menu: 着色器 > NNEDI3 > 开/关 nns128-6
CTRL+8           change-list glsl-shaders toggle "~~/shaders/ravu/ravu-zoom-ar-r3.glsl"                                 #menu: 着色器 > RAVU > 开/关 ravu-zoom-ar
#                change-list glsl-shaders toggle "~~/shaders/ravu/ravu-lite-ar-r3.glsl"                                 #menu: 着色器 > RAVU > 开/关 ravu-lite-ar
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Restore/Anime4K_Clamp_Highlights.glsl"        #menu: 着色器 > Anime4K > 开/关 Anime4K 去伪影
CTRL+9           change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Restore/Anime4K_Restore_CNN_Soft_M.glsl"      #menu: 着色器 > Anime4K > 开/关 Anime4K 抗锯齿
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Restore/Anime4K_Restore_CNN_Soft_VL.glsl"     #menu: 着色器 > Anime4K > 开/关 Anime4K 中强度抗锯齿
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Restore/Anime4K_Restore_CNN_Soft_UL.glsl"     #menu: 着色器 > Anime4K > 开/关 Anime4K 高强度抗锯齿
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Experimental-Effects/Anime4K_Darken_HQ.glsl"  #menu: 着色器 > Anime4K > 开/关 Anime4K 深线
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Experimental-Effects/Anime4K_Thin_HQ.glsl"    #menu: 着色器 > Anime4K > 开/关 Anime4K 收线
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Denoise/Anime4K_Denoise_Bilateral_Mode.glsl"  #menu: 着色器 > Anime4K > 开/关 Anime4K 降噪
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Deblur/Anime4K_Deblur_DoG.glsl"               #menu: 着色器 > Anime4K > 开/关 Anime4K 去糊
#                change-list glsl-shaders toggle "~~/shaders/Anime4K/glsl/Upscale/Anime4K_Upscale_CNN_x2_S.glsl"        #menu: 着色器 > Anime4K > 开/关 Anime4K 放大
#                change-list glsl-shaders toggle "~~/shaders/other/PixelClipper.glsl"                                   #menu: 着色器 > Other > 开/关 抗振铃
#                script-message cycle-commands "change-list glsl-shaders pre '~~/shaders/other/nlmeans_luma.glsl'" "change-list glsl-shaders remove '~~/shaders/other/nlmeans_luma.glsl'"      #menu: 着色器 > Other > 开/关 nlmeans-luma 降噪

##⇘⇘uosc 一级菜单：其它
CTRL+P           script-message cycle-commands "apply-profile FSRCNNX;show-text 配置组：FSRCNNX" "apply-profile FSRCNNX+;show-text 配置组：FSRCNNX+" "apply-profile NNEDI3;show-text 配置组：NNEDI3" "apply-profile ravu-zoom;show-text 配置组：ravu-zoom" "apply-profile Anime4K;show-text 配置组：Anime4K" #menu: 其它 > 常规配置组 > 切换 指定配置组
ALT+1            apply-profile FSRCNNX;show-text "配置组：FSRCNNX"                                                      #menu: 其它 > 常规配置组 > 切换 FSRCNNX 配置
ALT+2            apply-profile FSRCNNX+;show-text "配置组：FSRCNNX+"                                                    #menu: 其它 > 常规配置组 > 切换 FSRCNNX+ 配置
ALT+3            apply-profile ravu-zoom;show-text "配置组：ravu-zoom"                                                  #menu: 其它 > 常规配置组 > 切换 Ravu-zoom 配置
ALT+4            apply-profile Ani4K;show-text "配置组：Ani4K"                                                          #menu: 其它 > 常规配置组 > 切换 Ani4K 配置
ALT+5            apply-profile AniSD;show-text "配置组：AniSD"                                                          #menu: 其它 > 常规配置组 > 切换 AniSD 配置
ALT+6            apply-profile Anime4K;show-text "配置组：Anime4K"                                                      #menu: 其它 > 常规配置组 > 切换 Anime4k 配置
ALT+7            apply-profile NNEDI3;show-text "配置组：NNEDI3"                                                        #menu: 其它 > 常规配置组 > 切换 NNEDI3 配置
ALT+8            apply-profile NNEDI3+;show-text "配置组：NNEDI3+"                                                      #menu: 其它 > 常规配置组 > 切换 NNEDI3+ 配置
#                apply-profile SSIM;show-text "配置组：SSIM"                                                            #menu: 其它 > 常规配置组 > 切换 SSIM 配置
#                cycle border;show-text "显示边框:${border}"                                                            #menu: 其它 > 切换 边框模式  #@state=(border and 'checked')
CTRL+B           cycle title-bar;show-text "显示标题栏:${title-bar}"                                                    #menu: 其它 > 切换 标题栏    #@state=(title_bar and 'checked')
#                cycle-values title ${media-title} ${filename}                                                          #menu: 其它 > 切换 媒体标题
~                script-binding console/enable                                                                          #menu: 其它 > 打开 控制台
CTRL+R           cycle-values   reset-on-next-file "all" "no" "vf,af,loop-file,deinterlace,border,contrast,brightness,gamma,saturation,hue,video-zoom,video-rotate,video-pan-x,video-pan-y,panscan,speed,audio,sub,audio-delay,sub-pos,sub-scale,sub-delay,sub-speed,sub-visibility";show-text "播放下一个文件时重置以下选项:${reset-on-next-file}"   #menu: 其它 > 重置播放中更改项

##⇘⇘uosc 一级菜单：工具
Ctrl+p           script-message-to command_palette show-command-palette "Command Palette"                               #menu: 工具 > 打开命令面板
#                set clipboard/text ${filename}                                                                         #menu: 工具 > 复制文件信息 > 复制当前文件名
#                set clipboard/text ${path}                                                                             #menu: 工具 > 复制文件信息 > 复制当前文件路径
CTRL+ALT+t       set clipboard/text ${time-pos}                                                                         #menu: 工具 > 复制文件信息 > 复制当前时间
CTRL+ALT+s       set clipboard/text ${sub-text}                                                                         #menu: 工具 > 复制文件信息 > 复制当前字幕内容
#                script-message-to uosc open-config-directory                                                           #menu: 工具 > 定位配置文件
M                script-message manager-update-all ;show-text "更新脚本着色器"                                          #menu: 工具 > 一键更新脚本和着色器
CTRL+d           script-message-to uosc_danmaku show_danmaku_keyboard                                                   #menu: 工具 > 弹幕功能 > 开/关 弹幕显示
CTRL+D           script-message-to uosc_danmaku open_add_total_menu                                                     #menu: 工具 > 弹幕功能 > 打开弹幕综合菜单
CTRL+ALT+d       script-message danmaku-delay  1  ${=time-pos}                                                          #menu: 工具 > 弹幕功能 > 弹幕延迟 +1 秒
CTRL+ALT+a       script-message danmaku-delay -1  ${=time-pos}                                                          #menu: 工具 > 弹幕功能 > 弹幕延迟 -1 秒
_                script-message-to uosc_danmaku immediately_save_danmaku                                                #menu: 工具 > 弹幕功能 > 保存当前弹幕
#                ignore                                                                                                 #menu: ---

##⇘⇘uosc 一级菜单
b                cycle window-minimized                                                                                 #menu: 最小化
q                quit                                                                                                   #menu: 退出程序
Q                quit-watch-later                                                                                       # 退出并保存当前状态

##⇘⇘以下键位不显示在 uosc 菜单中
MENU             script-message-to uosc menu-blurred                                       # 开/关 uosc 菜单
POWER            quit
PLAY             cycle pause;script-message-to uosc flash-pause-indicator
PAUSE            cycle pause;script-message-to uosc flash-pause-indicator
PLAYPAUSE        cycle pause;script-message-to uosc flash-pause-indicator
STOP             quit
FORWARD          seek  30
REWIND           seek -30
NEXT             playlist-next
PREV             playlist-prev

SPACE            cycle pause;script-message-to uosc flash-pause-indicator

MBTN_LEFT        cycle pause;script-message-to uosc flash-pause-indicator
MBTN_LEFT_DBL    ignore
MBTN_Right       script-message-to uosc menu-blurred                                    # 开/关 uosc 菜单
MBTN_FORWARD     playlist-next;show-text "播放列表:${playlist-pos-1}/${playlist-count}" # 前进键 切换到列表中的下个文件
MBTN_BACK        playlist-prev;show-text "播放列表:${playlist-pos-1}/${playlist-count}" # 后退键 切换到列表中的上个文件
MBTN_Right_DBL   ignore
Wheel_Up         no-osd add volume  10; script-message-to uosc flash-volume
Wheel_Down       no-osd add volume -10; script-message-to uosc flash-volume
ESC              set fullscreen no;set window-maximized no

9                no-osd add volume -1; script-message-to uosc flash-volume  # 音量 -1
0                no-osd add volume  1; script-message-to uosc flash-volume  # 音量 +1
