Právě jsem se přesunul do Awesome WM z OpenBoxu. Líbí se mi, že je velmi rozšiřitelný, přizpůsobitelný a mám velkou kontrolu nad rozvržením okna. Mám rád strukturované a organizované věci a rád bych rozdělil tuto obrovskou .config/awesome/rc.lua
konfiguraci na více souborů.
Odpovědět
Můžete jednoduše umístit kód do samostatného souboru a zahrnout jej
dofile("somefile.lua")
Poznámka: Pracovní adresář je $HOME
. Chcete-li určit soubor relativně k rc.lua
, můžete použít
dofile(awful.util.getdir("config") .. "/" .. "somefile.lua")
Pokud to není jen nějaký kód a mohou ho používat i ostatní, může mít smysl vytvořit modul lua, který lze zahrnout do
somemodule = require("somemodule")
Komentáře
- Funguje na 50%, místo relativní cesty musím zadat úplnou cestu
- @Miro opraveno, viz aktualizace.
- Na Ubuntu vypadá funkce Awesome ' s automaticky automaticky v .config / awesome /, takže můžete vyžadovat jakýkoli soubor, který vložte tam.
Odpověď
Chcete-li přesunout kód do jiného souboru, vytvoříte modul a vyžadujete modul v rc.lua.
Chcete-li vytvořit modul, jednoduše zavoláte module (name [, ···])
ve skriptu, který obsahuje kód, který jste vytáhli z původního skriptu. Lua reference – modul .
Chcete-li použít vámi vytvořený modul, stačí zavolat require (modname)
. Lua reference – require .
Na Lua wiki je vynikající návod to vysvětluje na příkladech. A pokud chcete vidět, jak module()
skutečně funguje, existuje článek o hře Play With Lua , který začíná psaním implementace modulu ().
module()
funkce je zastaralá. Proto musí být modul přiřazen k proměnné, napříkladmodname = require ("modname")