【Rainmeter/雨滴】一言(Hitokoto)小插件

|??ω??)雨滴萌新來交作業(yè)啦
沒錯(cuò),就是這一行小字??山换スδ苋缦拢创a附后,使用方法附后后:
左擊正文部分:手動更新一言
右擊正文部分:1)復(fù)制并收藏句子;2)文字變色
文字變色時(shí)右擊正文部分:1)取消收藏;2)文字變回原來的顏色
可以一直戳戳戳,自己玩的時(shí)候沒發(fā)現(xiàn)bug
隔一段時(shí)間會自動更新(默認(rèn)300秒)
每次更新都會自動保存句子


源碼
總共有兩個(gè)文件,一個(gè)是lua腳本文件,另一個(gè)是ini配置文件,使用方法放在后面,先給源碼~
EditFile.lua
Hitokoto.ini

安裝方法
1、打開記事本,粘貼第二個(gè)代碼塊Hitokoto.ini,另存為ini文件,名稱可以自定,這里需要修改編碼為UTF-16 LE

2、如法炮制,將第一個(gè)代碼塊EditFile.lua另存為lua文件,這里需要修改編碼為UTF-8,同時(shí)要把文件名修改為EditFile.lua

2.5、注:由于莫名其妙的原因,lua的代碼在稿件預(yù)覽時(shí)被加上了一行文字

如果看到圖中所示的淺藍(lán)色高亮的文字的話,請將其替換為英文輸入的雙引號(")
3、把這兩個(gè)文件裝進(jìn)一個(gè)文件夾里,一起送到雨滴的皮膚保存路徑下,一般來說是%UserProfile%\Documents\Rainmeter\Skins

4、最后按照正常的流程,在雨滴主界面雙擊ini文件就好啦(o?▽?)o??
5、啊對了,如果要啟用文件保存功能,還需要在ini文件中手動補(bǔ)全FilePath路徑(缺少用戶名),具體如下

簡單個(gè)性化設(shè)置
所有的配置都可以在ini文件中完成
為了方便調(diào)整,我盡可能地把需要個(gè)性化的變量都整合到一起,放在“設(shè)置變量”部分中

Scale:調(diào)整桌面文本的整體大小
Update(ms):皮膚的更新時(shí)間,以毫秒計(jì),更短的更新時(shí)間意味著手動刷新、收藏時(shí)更快的響應(yīng)速度,同時(shí)也意味著更高的資源占用
RefreshTime(s):是一言文本的自動刷新時(shí)間,以秒計(jì),默認(rèn)5分鐘刷新一次
FontFace:字體
FontColor:字體顏色,RGBα,也就是三個(gè)顏色通道+一個(gè)透明度通道
FontColorChangeTo:收藏后字體的顏色變化
Time:保存一言時(shí),附在每句話開頭的時(shí)間格式。不想要保存時(shí)間的話可以直接刪掉,保留雙引號即可
FilePath:兩個(gè)變量分別為? 手動/自動? 保存一言的文件路徑。請把“(這里填用戶名)”替換為自己的用戶名,或者另行更改保存路徑。不想要保存的話姑且可以放著不管,這不會影響桌面文本的顯示,但會在日志中報(bào)錯(cuò)。想完整關(guān)閉保存功能請參見下一部分內(nèi)容
Output:寫入剪貼板和txt文檔的正文格式

進(jìn)階個(gè)性化設(shè)置
1、修改一言的獲取類型,關(guān)閉自動保存功能

如上圖,在“獲取一言”部分中,Url后的路徑即為一言接口的請求地址
至于如何修改相關(guān)分類,在注釋中已經(jīng)闡述,也可以參考一言開發(fā)者中心說明:https://developer.hitokoto.cn/sentence/
順便一同附上一言官網(wǎng)地址:https://hitokoto.cn/
要關(guān)閉自動保存功能,只要刪除圖中藍(lán)色高亮顯示的語句(兩端的中括號也一起刪掉)即可
2、單獨(dú)修改文本格式,關(guān)閉手動保存和復(fù)制功能

在最后的“呈現(xiàn)桌面文本”部分中單獨(dú)修改文本格式
[StringOne]是正文,[StringTwo]是副標(biāo)題
Text是文本顯示的內(nèi)容
FontSize修改字體大小
X和Y是文本的位置,“R”表示Relative,即相對上一個(gè)元素的位置
至于文本的顏色……因?yàn)樯婕芭c鼠標(biāo)交互的顏色變換,要修改起來相對麻煩一點(diǎn)。如果真的想要分別修改顏色,并且您有Rainmeter皮膚制作經(jīng)驗(yàn)的話,文章最后一部分是相關(guān)代碼的編寫思路,可以參照著進(jìn)行修改
要關(guān)閉手動保存功能和復(fù)制文本功能,只要刪除圖中藍(lán)色高亮顯示的語句即可
要關(guān)閉手動保存功能的同時(shí),保留復(fù)制文本功能,只要在刪除高亮語句的基礎(chǔ)上,在原位置添加下面這句即可:
RightMouseUpAction=[!SetClip #Output#]
要保留手動保存功能的同時(shí),關(guān)閉復(fù)制文本功能,只要在圖中藍(lán)色高亮顯示的語句中找到下面這句,并刪除即可(圖中是第三行的“=”的后面):
[!SetClip #Output#]

鼠標(biāo)交互事件編寫思路
總共用到三個(gè)鼠標(biāo)事件:LeftMouseUpAction、RightMouseDownAction、RightMouseUpAction
左鍵抬起:強(qiáng)制更新一言
右鍵按下:(這個(gè)動作在每次一言更新時(shí)都會被禁用,以防止誤刪文檔內(nèi)容)
刪除文檔最后一句話
將文本組的顏色改為#FontColor#
禁用右鍵按下的鼠標(biāo)事件
延遲16ms
啟用右鍵抬起的鼠標(biāo)事件
右鍵抬起:
將#Output#復(fù)制到剪貼板
將#Time##Output#\n寫入文檔,“\n”起到換行的作用
將文本組的顏色改為#FontColorChangeTo#
禁用右鍵抬起的鼠標(biāo)事件
(中間不需要延遲,因?yàn)橛益I抬起不會誤觸發(fā)右鍵按下的鼠標(biāo)事件)
啟用右鍵按下的鼠標(biāo)事件
然后,在“獲取一言”部分的[GetText]的“OnChangeAction”起到初始化文本屬性的作用,如下:
(在每次一言更新時(shí))
將#Time##Output#\n寫入文檔
禁用右鍵按下的鼠標(biāo)事件
啟用右鍵抬起的鼠標(biāo)事件
將文本組的顏色設(shè)置為#FontColor#
以上,就是所有涉及文本顏色的代碼部分了