Awesome 'の `rc.lua`構成を複数のファイルに分割するにはどうすればよいですか?

OpenBoxからAwesomeWMに移動しました。非常に拡張性が高く、カスタマイズ可能で、ウィンドウレイアウトを大幅に制御できるのが気に入っています。構造化され整理されたものが好きで、その巨大な.config/awesome/rc.lua構成を複数のファイルに分割したいと思います。

回答

コードを別のファイルに配置して、それに含めることができます

dofile("somefile.lua") 

注:作業ディレクトリは$HOMErc.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()の実装。

コメント

  • awesome-3.5以降、luaバージョンが5.2に更新され、module()関数は非推奨になりました。したがって、モジュールはmodname = require ("modname")

のような変数に割り当てる必要があります。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です