📄 skin.txt
字号:
# 本说明文件是"无限今日"的皮肤说明文件.
# 无限今日的皮肤在设计时参考了其它软件的脚本语言,向它们的作者表示敬意.
# 本软件作者"化石 FoSsiL"拥有无限今日软件和皮肤脚本语言格式的所有版权, 如需使用, 请联系作者并得到授权.
# 无限今日的皮肤为\Program Files\InfiniteToday\Skins目录下的*.ini文件(ASCII格式的文本文件)
# 文件行首如果是#,表示该行是注释行。#{...#} 表示'...'处的代码可以在皮肤编辑器中折叠.
# 皮肤中使用的指令如下:
Name, Refresh, Height, Var, DefaultGroup,
ClickRectAlpha, HideSoftKeyBar, AutoActive, wxDrawCalendar, wxDrawPic,
wxDrawPicEx, wxDrawString, wxDrawStringEx, wxDrawClock, wxDrawShape,
wxClickAction, wxClickActionEx, wxBarRect, wxBarDrawPic, wxBarDrawStringEx,
wxBarClickAction, wxSprite, wxGestureAction, wxTodayPlugin, wxShortCut,
wxContact, LoadPic, Set, if else end, if_run else_run end_run,
wxTaskMgr, wxBarTaskMgr.
(*注:无限今日兼容旧指令, DrawCalendar, DrawPic, DrawString, DrawStringEx, DrawClock和ClickAction, 具体
用法请参考万年历的说明文档)
指令参数中的分组编号解释如下:
1. 无限今日允许在同一个INI文件里将脚本分组,当脚本分为多组后, 可以使用wxClickAction来切换某个组或哪些组
的组合为有效;
2. 组编号为 0=永不显示,4294967295=永远显示,1=默认显示,分组显示是采用 (指定要显示的编号和脚本的分组编号
"位相与"), 结果不等于0来判断是否显示该脚本; (永远显示也可以用-1来表示)
3. 组编号依照以下规则: 1,2,4,8,16,32,64, ... 1073741824, 2147483648, 0 和 4294967295为特定编号;
4. 当不需要进行分组的组合显示时, 在wxClickAction中直接指定组编号即可;
5. 当需要进行分组的"组合显示"时, 在wxClickAction中指定欲显示组的相加之和即可;
例1: 要只显示第4组, wxClickAction指定的组编号为4,
例2: 要同时显示2,4组, wxClickAction指定的组编号为6,
例3: 要同时显示1,4,16组, wxClickAction指定的组编号为21,
可运算变量的解释如下:
1. 可运算变量是由各系统变量组成的运算表达式(格式: <?xxxxxxxx?> ), 将根据需要, 在程序运行中动态返回数值
或字符串(<?是起始标志, ?>是结束标志)
2. 变量表达式支持运算操作符 + - * / \ % ^ () , 变量运算采用实数运算, 整数输出(不四舍五入)方式.( / 为除,
% 为取余 \ 为整除, ^ 次方)
3. 支持判断语句和比较符号 if then else, ==, != >, >=, <, <=, &&, || ( == 等于, != 不等于, > 大于, >=
大等于, < 小于, <= 小等于, && 与, || 或) &&和||两个符号只允许外层使用, &&和||的优先级从右向左
4. 可运算变量允许直接嵌套, 例如:
wxDrawString=1,<?(3+<?(2*4)?>)?>,0,0,<?if {SS}==8 then <?if {SS}>20 then 20 else 10?> else {abc}?>
5. 在指令的字符串参数中出现的需要运算的表达式, 都要用括号括起来. 如果未用括号, 将视为字符串直接输出,
而不进行运算处理, 注意: 比较表达式外侧不能加括号, 如加括号会导致程序出错
6. 表达式中可以使用5种数学函数, sin(), con(), tan(), abs(), log().三角函数的参数为角度单位;
7. 支持从指定字符串中取子串或得到字符串的长度(格式: <?substr ?:?:xxxxxx?>) , 第1个?号表示从第几个
开始(0,1,2,...), 第2个?号表示长度, xxxxxx 为指定的字符串. 第1个和第2个?号和指定字符串都允许使用变量.
当第1个?号为-1时, 将返回指定字符串的长度. 当第2个?号为-1时, 将返回指定字符串中的第n个字串, n由
第1个?号指定, 各子串用|号隔开. 例如:
<?substr 0:5:hello world?> <?substr {WD2}:1:日一二三四五六?>
<?substr 3:{SS}:{abc}?> <?substr {SF}:{SS}:{abcdef}?>
<?substr -1:0:my length?> <?substr 0:-1:Monday|Tuesday|Wednesday?>
8. 支持对指定字符串进行操作(格式: <?opestr ?:?:?:xxxxxx?>), 第1个?号表示操作类型, 第2个?号表示参数1,
第3个?号表示参数2, xxxxxx 为指定的字符串. 第1个,第2个和第3个?号和指定字符串都允许使用变量.
各操作类型为(0-按位置长度取子串, 1-以指定子串为起始取子串, 2-以指定子串为结束取子串, 3-以指定子串为
起始结束取子串, 4-查找指定子串(返回值: 0-无,n-有n个), 5. 是否以指定子串起始(返回值: 0-假, 1-真),
6. 是否以指定子串结束(返回值: 0-假, 1-真), 7. 替换字符串, 8. 返回字符串长度, 9. 将子串加到指定字符串
前面, 10. 将子串加到指定字符串串后面, 11.返回指定子串在指定字符串串中的位置, 12. 将指定字符串中的所有
逗号替换为指定子串, 13.将指定字符串中所有子串替换为逗号, 14.将指定字符串中的换行符删除)
操作类型=0时, 参数1=开始位置, 参数2=长度(参数1如为-1时表示从尾部按长度取子串)
操作类型=1时, 参数1=指定子串, 参数2=出现次数(1表示1次)
操作类型=2时, 参数1=指定子串, 参数2=出现次数(1表示1次)
操作类型=3时, 参数1=起始特定子串, 参数2=结束特定子串
操作类型=4时, 参数1=查找子串, 参数2=无效(用0替代)
操作类型=5时, 参数1=指定子串, 参数2=无效(用0替代)
操作类型=6时, 参数1=指定子串, 参数2=无效(用0替代)
操作类型=7时, 参数1=查找子串, 参数2=替换子串
操作类型=8时, 参数1=无效(用0替代), 参数2=无效(用0替代)
操作类型=9时, 参数1=指定子串, 参数2=无效(用0替代)
操作类型=10时, 参数1=指定子串, 参数2=无效(用0替代)
操作类型=11时, 参数1=指定子串, 参数2=无效(用0替代)
操作类型=12时, 参数1=指定子串, 参数2=无效(用0替代)
操作类型=13时, 参数1=指定子串, 参数2=无效(用0替代)
操作类型=14时, 参数1=无效(用0替代), 参数2=无效(用0替代)
9. 在使用运算变量时应严格遵守大小写和格式, 用户自已保证表达式的正确性. 未作智能处理, 是为了保证速度.
(*例子: <?{SS}?> <?({SS}*5+(23-{SF}-4))?> <?(3/{SF}+30)?>
<?({SY}^(-3)+50)?> <?(23+sin({SF}))?> <?(5*abs(-43))?>
<?if ({SS}+4)==20 then 20 else 0?> <?if {APM_CHS}!=上午 then 是下午 else 不是下午?>
<?if ({SF}+3)>=30 then ({SS}-3) else 0?> <?if {APM_CHS}!=上午 then 1 else 0?>
<?if {SS}>20 && {SS}<40 then 1 else 0?> <?if {SF}==5 && {SS}<20 || {SS}>40 then 1 else 0?>
wxDrawPic=1,2,<?{SH}?>,16,<?{SS}?>,#000000,<?if {SS}>30 then TRUE.bmp else FALSE.bmp?>
wxDrawString=1,9,5,<?({SS}*3)?>,{SY1}----<?({WD}*{SS})?>--<?if {SS}>50 then 0 else 1?>--{JQ}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -