Conky

Conky 可以自然地執行基本數學嗎?

  • June 26, 2019

我想在不為其編寫 lua 函式的情況下執行基本的、任意的數學運算。

一個(非工作)範例可能是:${${loadavg 1}*100)}% 如果這是可能的,那麼可以想像許多其他用途。

答案取決於你如何看待它。如果您認為 Conky 的內置 Lua 支持和 Lua 的相關使用是 Conky 的一部分,那麼是的。否則,沒有。

使用 Lua 進行計算相當簡單。這是一個範例 Lua 文件,要求temps.lua進行一些計算(我也加入了您的範例)…

function conky_F2C(f)
   local c = (5.0/9.0)*(f-32.0)
   return c
end

function conky_C2F(c)
   local f = c*(9.0/5.0)+32.0
   return f
end

function conky_acpitempF()
   local c = conky_parse("${acpitemp}")
   return conky_C2F(c)
end

function conky_loadavg()
   return conky_parse("${loadavg 1}") * 100
end

conky.config在我的文件部分的頂部.conkyrc,我放了以下…

lua_load = '~/bin/lua_scripts/temps.lua',

在該conky.text部分中,我放了以下幾行…

ACPI Temp... ${acpitemp}°C
Conv to F... ${lua conky_acpitempF}°F

Body Temp... 98.6°C
Conv to C... ${lua conky_F2C 98.6}°C

Load Avg... ${loadavg 1}
Multipliled by 100... ${lua conky_loadavg}%

Conky 上的結果顯示應該類似於…

ACPI Temp... 43°C
Conv to F... 109.4°F

Body Temp... 98.6°C
Conv to C... 37°C

Load Avg... 0.28
Multipliled by 100... 28.0%

請注意,據我所知,您不能將 Conky 對像${loadavg 1}傳遞給 Lua 函式。但是你可以在 Lua 函式中訪問一個對象,就像上面的範常式式碼一樣。

引用自:https://unix.stackexchange.com/questions/317621