저는 OpenBox에서 Awesome WM으로 방금 이동했습니다. 매우 확장 가능하고 사용자 정의가 가능하며 창 레이아웃에 대한 큰 제어 권한이 있다는 점이 마음에 듭니다. 저는 구조화되고 조직화 된 것을 좋아하고 그 거대한 .config/awesome/rc.lua
구성을 여러 파일로 분리하고 싶습니다.
Answer
별도의 파일에 코드를 배치하고 다음과 함께 포함 할 수 있습니다.
dofile("somefile.lua")
참고 : 작업 디렉토리는
. rc.lua
에 상대적인 파일을 지정하려면
dofile(awful.util.getdir("config") .. "/" .. "somefile.lua")
를 사용할 수 있습니다. 단순히 일부 코드 이상이고 다른 사람들도 사용할 수 있다면 다음과 함께 포함될 수있는 lua 모듈을 만드는 것이 합리적 일 수 있습니다.
somemodule = require("somemodule")
댓글
- 50 %에서 작동합니다. 상대 경로 대신 전체 경로를 지정해야합니다.
- @Miro 수정 됨, 업데이트 참조.
- Ubuntu에서 Awesome '의 require 함수는 .config / awesome /에서 자동으로 표시되므로 원하는 파일을 요구할 수 있습니다. 거기에 넣어.
답변
코드를 다른 파일로 이동하려면 모듈을 생성하고 rc.lua의 모듈이 필요합니다.
모듈을 생성하려면 원본 스크립트에서 가져온 코드가있는 스크립트에서. Lua 참조-모듈 .
생성 한 모듈을 사용하려면 require (modname)
를 호출하면됩니다. . Lua 참조-필요 .
Lua 위키에 뛰어난 자습서가 있습니다. / a>를 예로 들어 설명합니다. module()
가 실제로 어떻게 작동하는지보고 싶다면 다음 글로 시작하는 Play With Lua 관련 기사 가 있습니다. module ()의 구현입니다.
Comments
- awesome-3.5부터 lua 버전이 5.2로 업데이트되었습니다. 여기서
module()
기능은 더 이상 사용되지 않습니다. 따라서 모듈은modname = require ("modname")
와 같은 변수에 할당되어야합니다.