Como separar a configuração 'rc.lua' do Awesome em múltiplos arquivos?

14

Acabei de me mudar para o Awesome WM do OpenBox. Eu gosto que é muito extensível, personalizável e eu tenho um enorme controle sobre o layout da janela. Eu gosto de coisas estruturadas e organizadas e gostaria de separar essa enorme configuração .config/awesome/rc.lua em vários arquivos.

    
por kravemir 28.10.2012 / 14:00

2 respostas

11

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ê pode usar

dofile(awful.util.getdir("config") .. "/" .. "somefile.lua")

Se é mais do que apenas algum código e pode ser usado por outros também, pode fazer sentido criar um módulo lua que pode ser incluído com

somemodule = require("somemodule")
    
por 28.10.2012 / 14:36
5

Para mover o código para um arquivo diferente, crie um módulo e exija o módulo no rc.lua.

Para criar um módulo, basta chamar module (name [, ···]) no script que tem o código que você retirou do script original. Referência de Lua - módulo .

Para usar o módulo que você criou, basta chamar require (modname) . Referência de Lua - requer .

Existe um excelente tutorial no wiki da Lua que explica isso com exemplos. E se você quiser ver como o module() realmente funciona, há um artigo sobre o Play With Lua que começa escrevendo uma implementação do módulo ().

    
por 28.10.2012 / 14:39