OpenBoxからAwesomeWMに移動しました。非常に拡張性が高く、カスタマイズ可能で、ウィンドウレイアウトを大幅に制御できるのが気に入っています。構造化され整理されたものが好きで、その巨大な.config/awesome/rc.lua
構成を複数のファイルに分割したいと思います。
回答
コードを別のファイルに配置して、それに含めることができます
dofile("somefile.lua")
注:作業ディレクトリは$HOME
。rc.lua
に関連するファイルを指定するには、
dofile(awful.util.getdir("config") .. "/" .. "somefile.lua")
を使用できます。 一部のコードだけでなく、他のユーザーにも使用される可能性がある場合は、
コメント
- 50%で動作するため、相対パスではなくフルパスを指定する必要があります
- @Miro修正されました。更新を参照してください。
- Ubuntuでは、Awesome 'のrequire関数は.config / awesome /で自動的に表示されるため、任意のファイルをrequireすることができます。そこに置いてください。
回答
コードを別のファイルに移動するには、モジュールを作成し、rc.luaにモジュールを要求します。
モジュールを作成するには、元のスクリプトから引き出したコードを含むスクリプト内。 Luaリファレンス-モジュール。
作成したモジュールを使用するには、require (modname)
を呼び出すだけです。 。 Luaリファレンス-require 。
Luawikiには優れたチュートリアルがありますこれを例で説明します。また、module()
が実際にどのように機能するかを確認したい場合は、Play WithLuaに関する記事があります。 module()の実装。
コメント
のような変数に割り当てる必要があります。
module()
関数は非推奨になりました。したがって、モジュールはmodname = require ("modname")