Respostas:
Você pode simplesmente colocar o código em um arquivo separado e incluí-lo com
dofile("somefile.lua")
Nota: O diretório de trabalho é $HOME
. Para especificar um arquivo relativo a rc.lua
você, use
dofile(awful.util.getdir("config") .. "/" .. "somefile.lua")
Se for mais do que apenas um código e também puder ser usado por outros, pode fazer sentido criar um módulo lua que possa ser incluído no
somemodule = require("somemodule")
Para mover o código para um arquivo diferente, você cria um módulo e requer o módulo no rc.lua.
Para criar um módulo, basta chamar module (name [, ···])
o script que possui o código extraído do script original. Referência Lua - módulo .
Para usar o módulo que você criou, basta ligar require (modname)
. Referência Lua - requer .
Há um excelente tutorial no wiki Lua que explica isso com exemplos. E se você quiser ver como module()
realmente funciona, há um artigo sobre o Play With Lua que começa escrevendo uma implementação do módulo ().
module()
função está obsoleta. Portanto, o módulo deve ser atribuído a uma variável, comomodname = require ("modname")