Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
Xmobarのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
Xmobar
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
{{Lowercase title}} [[Category:視覚効果]] [[Category:アプリケーションランチャー]] [[en:Xmobar]] '''xmobar''' は [[Haskell]] で書かれた、軽量なテキストベースのステータスバーです。本来は [[Xmonad]] と一緒に使用するように作られていますが、他の[[ウィンドウマネージャ]]でも利用できます。''xmobar'' は Haskell で書かれている一方、インストールしたり使ったりするのに Haskell 言語を学ぶ必要はありません。 == インストール == [[公式リポジトリ]]から {{Pkg|xmobar}} を[[インストール]]してください。以下の亜種も利用できます: * {{AUR|xmobar-git}} - 開発版。 == 実行 == {{ic|~/.xmobarrc}} に保存されている設定ファイルを使うには: $ xmobar & もしくは、設定ファイルのパスを指定することもできます: $ xmobar /path/to/config & 以下はコマンドラインオプションを使って xmobar を設定する方法の例です: $ xmobar -B white -a right -F blue -t '%LIPB%' -c '[Run Weather "LIPB" [] 36000]' & 上記のコマンドで実行される ''xmobar'' は右揃えで、白地に青字、そして {{ic|Weather}} プラグインを使用します。出力テンプレートには最低でも一つコマンドを指定する必要があるので注意してください。オプションの詳しい説明は以下のセクションを参照してください。 また、フラグの {{ic|-x ''number''}} を用いて ''xmobar'' を実行する x ディスプレイを指定できます。このフラグは設定オプションの ''pickBroadest'' と ''allDesktops'' を上書きして実行します。 == 設定 == ''xmobar'' の設定は基本的に {{ic|~/.xmobarrc}} で定義するか、''xmobar'' を実行するときにコマンドラインオプションを使って指定します。指定されたコマンドラインオプションは設定ファイルの同一の設定を上書きします。設定ファイルを編集しないで新しい設定をテストしたいときにコマンドラインオプションは有用です。 以下は {{ic|~/.xmobarrc}} のサンプルファイルです。オプションごとに説明が付いています。各オプションにはそれぞれ対応するコマンドラインオプションが存在します。 {{Note|設定ファイルは Haskell のソースコード (のサブセット) ではになっています。そのためコメント行を {{ic|--}} で示します。}} {{bc|<nowiki> Config { -- appearance font = "xft:Bitstream Vera Sans Mono:size=9:bold:antialias=true" , bgColor = "black" , fgColor = "#646464" , position = Top , border = BottomB , borderColor = "#646464" -- layout , sepChar = "%" -- delineator between plugin names and straight text , alignSep = "}{" -- separator between left-right alignment , template = "%battery% | %multicpu% | %coretemp% | %memory% | %dynnetwork% }{ %RJTT% | %date% || %kbd% " -- general behavior , lowerOnStart = True -- send to bottom of window stack on start , hideOnStart = False -- start with window unmapped (hidden) , allDesktops = True -- show on all desktops , overrideRedirect = True -- set the Override Redirect flag (Xlib) , pickBroadest = False -- choose widest display (multi-monitor) , persistent = True -- enable/disable hiding (True = disabled) -- plugins -- Numbers can be automatically colored according to their value. xmobar -- decides color based on a three-tier/two-cutoff system, controlled by -- command options: -- --Low sets the low cutoff -- --High sets the high cutoff -- -- --low sets the color below --Low cutoff -- --normal sets the color between --Low and --High cutoffs -- --High sets the color above --High cutoff -- -- The --template option controls how the plugin is displayed. Text -- color can be set by enclosing in <fc></fc> tags. For more details -- see http://projects.haskell.org/xmobar/#system-monitor-plugins. , commands = -- weather monitor [ Run Weather "RJTT" [ "--template", "<skyCondition> | <fc=#4682B4><tempC></fc>°C | <fc=#4682B4><rh></fc>% | <fc=#4682B4><pressure></fc>hPa" ] 36000 -- network activity monitor (dynamic interface resolution) , Run DynNetwork [ "--template" , "<dev>: <tx>kB/s|<rx>kB/s" , "--Low" , "1000" -- units: kB/s , "--High" , "5000" -- units: kB/s , "--low" , "darkgreen" , "--normal" , "darkorange" , "--high" , "darkred" ] 10 -- cpu activity monitor , Run MultiCpu [ "--template" , "Cpu: <total0>%|<total1>%" , "--Low" , "50" -- units: % , "--High" , "85" -- units: % , "--low" , "darkgreen" , "--normal" , "darkorange" , "--high" , "darkred" ] 10 -- cpu core temperature monitor , Run CoreTemp [ "--template" , "Temp: <core0>°C|<core1>°C" , "--Low" , "70" -- units: °C , "--High" , "80" -- units: °C , "--low" , "darkgreen" , "--normal" , "darkorange" , "--high" , "darkred" ] 50 -- memory usage monitor , Run Memory [ "--template" ,"Mem: <usedratio>%" , "--Low" , "20" -- units: % , "--High" , "90" -- units: % , "--low" , "darkgreen" , "--normal" , "darkorange" , "--high" , "darkred" ] 10 -- battery monitor , Run Battery [ "--template" , "Batt: <acstatus>" , "--Low" , "10" -- units: % , "--High" , "80" -- units: % , "--low" , "darkred" , "--normal" , "darkorange" , "--high" , "darkgreen" , "--" -- battery specific options -- discharging status , "-o" , "<left>% (<timeleft>)" -- AC "on" status , "-O" , "<fc=#dAA520>Charging</fc>" -- charged status , "-i" , "<fc=#006000>Charged</fc>" ] 50 -- time and date indicator -- (%F = y-m-d date, %a = day of week, %T = h:m:s time) , Run Date "<fc=#ABABAB>%F (%a) %T</fc>" "date" 10 -- keyboard layout indicator , Run Kbd [ ("us(dvorak)" , "<fc=#00008B>DV</fc>") , ("us" , "<fc=#8B0000>US</fc>") ] ] } </nowiki>}} * '''font''' - 使用するフォントの名前。XFT フォントが有効になっている場合、XFT フォントの名前には前に {{Ic|xft:}} を付けます。例:{{bc|1=font = "xft:Bitstream Vera Sans Mono:size=8:antialias=true"}} * '''additionalFonts''' - {{ic|1=<fn=''n''>}}タグで使用するフォントのリスト。例:{{bc|1=additionalFonts = [ "xft:Bitstream Vera Sans Mono:size=8:antialias=true", "xft:Source Code Pro:size=10:regular:antialias=true"]}} * '''fgColor''' - フォントの色。{{Ic|black}} と色の名前を使うことも {{ic|#000000}} と16進数で指定することもできます。 * '''bgColor''' - バーの色。{{Ic|red}} と色の名前を使うことも {{ic|#ff0000}} と16進数で指定することもできます。 * '''position''' - バーの位置。使用できるキーワード: {{Ic|Top}}/{{ic|Bottom}}, {{ic|TopW}}/{{ic|BottomW}}, {{Ic|Static}}, {{ic|OnScreen}}。 ** {{ic|Top}}/{{ic|Bottom}} - 画面の上部と下部。 ** {{ic|TopW}}/{{ic|BottomW}} - 画面の上部と下部で固定幅を使用。TopW/BottomW には2つの引数を指定: *** Alignment: 左 ({{ic|L}}eft), 中央 ({{ic|C}}enter), 右 ({{ic|R}}ight) に揃える。 *** Width: バーの横幅。パーセンテージで指定。 ** {{ic|Static}} - 画面上の固定位置と固定幅。Static には4つの引数を指定: *** xpos: 左上からの縦の位置 (ピクセル)。 *** ypos: 左上からの横の位置 (ピクセル)。 *** width: バーの横幅 (ピクセル)。 *** height: バーの高さ (ピクセル)。 ** {{ic|OnScreen}} - バーを表示するスクリーンを指定。OnScreen には2つの引数を指定: *** screenNr: バーを表示するスクリーンのインデックス。 *** position: バーの位置。上に挙げられたキーワードとそれらの引数を指定します。 :例 - 画面下部の中央に、画面全体の 75% の横幅で表示:{{bc|1=position = BottomW C 75}} :例 - 画面上部の左側に、横幅1024ピクセル、高さ15ピクセルで表示:{{bc|<nowiki>position = Static { xpos = 0 , ypos = 0, width = 1024, height = 15 }</nowiki>}} * '''border''' - ボーダーの位置と外観。使用できるキーワード: {{Ic|TopB, TopBM, BottomB, BottomBM, FullB, FullBM}} と {{Ic|NoBorder}} (デフォルト)。 ** {{ic|TopB}}/{{ic|BottomB}} - バーの上下。 ** {{ic|FullB}} - バーの全周。 ** {{ic|TopBM}}/{{ic|BottomBM}}/{{ic|FullBM}} - バーの縁とボーダーの表示を何ピクセル離すか指定できます。どのオプションも数字を一つ指定。 :例 - バーの縁から3ピクセル離したところにボーターを表示:{{bc|border: BottomBM 3}} * '''sepChar''' - 出力テンプレートのコマンドを示すために使用する文字。デフォルトの文字は {{ic|"%"}}。 * '''alignSep''' - 出力テンプレートのテキストを整列する文字列。最初の文字より前のテキストは左寄せになり、文字列の間のテキストは中央、最後の文字より右のテキストは右に寄せられます。デフォルトの文字列は {{ic|"}{"}}。 * '''iconRoot''' - アイコンが保存されているルートフォルダ。 * '''template''' - 出力テンプレートは表示するテキストやコマンドを含んだ文字列です。{{ic|%command%}} のエイリアスを記述して、テキストを書き出したり色のタグでテキストの色を設定できます。タグはカスタムテンプレートの{{ic|Run ''command''}}でも設定できます。テンプレートタグは次を含みます: ** {{ic|%command%}} - コマンドの出力をプリント. ** {{ic|1=<fc=#f0f0f0,#101010>string</fc>}} - フォアグラウンドに #f0f0f0, バックグラウンドに #101010 を使用して ''string'' をプリントします (どちらかを省略することも可能です)。 ** {{ic|1=<fn=1>string</fn>}} - additionalFonts のフォントリストにある''n'' 番目(この場合1番目)のフォントで ''string'' をプリント。n=0 がデフォルトのフォントを示します。 ** {{ic|1=<icon=/path/to/icon.xbm/>}} - パスが示す XBM や XPM アイコンをプリント。もし /, ./ や ../ の相対パスから始まる場合、icronRoot ++ path/to/icon のように iconRoot から探します。XBM アイコンが独自あるいはデフォルトのフォアグラウンドやバックグラウンドを使うのに対して、透明な XPM アイコンは fc タグを無視してデフォルトの bgcolor を使います。''xmobar'' はサイズに関わらずアイコンを 20px の高さに揃えて ''bgcolor'' と ''fgcolor'' でプリントします。横幅には制限はありません。 ** {{ic|1=<action=`command` button=1>string</action>}} - ''string'' がボタン1 (左マウスボタン)でクリックされたときにコマンド {{ic|`command`}} を実行します。 ** {{ic|1=<raw=''len'':string/>}} - 長さ ''len'' の ''string'' を出力します。 例:{{bc|<nowiki>template = "%StdinReader%}{%cpu% %memory% <fc=#ffaaff>battery:</fc> %battery% %date%"</nowiki>}} * '''commands''' - 実行するプログラムのオプションを設定。コマンドはカンマで区切って、任意でオプションを指定できます。 :例 - {{ic|Memory}} プラグイン (テンプレートを指定) と {{ic|Swap}} プラグイン (デフォルト引数) を実行。どちらも1秒ごとに更新:{{bc|<nowiki>commands = [Run Memory ["-t","Mem: <usedratio>%"] 10, Run Swap [] 10]</nowiki>}} 最後に、バーの挙動を制御するオプション - どのオプションも {{ic|True}} か {{ic|False}} の値で設定: * '''lowerOnStart''' - バーを他のウィンドウの下に表示するかどうか。 * '''hideOnStart''' - 起動時にバーを非表示にするかどうか。 * '''allDesktops''' - 全てのデスクトップでバーを表示するかどうか。 * '''overrideRedirect''' - ウィンドウマネージャからバーを通常ウィンドウのように扱わせないようにするオプション。 * '''pickBroadest''' - マルチモニターの場合に、一番広いモニターにバーを表示する。 * '''persistent''' - バーの 'hidden' の状態にかかわらず、常時バーを表示するかどうか。 == ヒントとテクニック == ''xmobar'' では様々なプラグインを使用することができます。いくつか例をあげると、ディスクの使用量、RAM や CPU、バッテリーの状態、天気予報、ネットワークの活動状況を表示するプラグインがあります。各プラグインの詳しい説明や、依存パッケージ、あるいは設定方法などはプロジェクトの [http://projects.haskell.org/xmobar/#system-monitor-plugins ウェブサイト] を見てください。 === GMail の統合 === ''xmobar-gmail-darcs'' や ''xmobar-gmail'' をインストールしている場合、以下のように {{ic|.xmobarrc}} を設定できます。commands リストに GMail プラグインを追加してください: , Run GMail "gmail.username" "GmailPassword" ["-t", "Mail: <count>"] 3000 そしてコマンドを template に追加: , template = "... '''%gmail.username%''' ..." === [[MPD]] の統合 === ステータスバーに現在再生している曲を表示するプラグインがあります。再生中のトラックのアーティストと曲名を表示するプラグインを追加するには、以下の行を {{ic|~/.xmobarrc}} の commands リストに追加してください: , Run MPD ["-t", "<state>: <artist> - <track>"] 10 そして、以下のように template のどこかにプラグインを記述してください: , template = "%StdinReader% }{ ... '''%mpd%''' ..." === Conky-Cli の統合 === {{AUR|conky-cli}} の機能を利用して、ディスクの使用量や top やシステムメッセージなどの情報を conky からテキストファイルにパイプして、そこから情報を読み取ることができます。以下は xmobar を使ってそれを行う bash スクリプトです: {{hc|~/.xmonad/conkyscript| #!/bin/bash conky -c ~/.conkyclirc -i1 -q > conkystat & sleep 4 killall -q conky cat conkystat rm conkystat }} {{ic|~/.xmobarrc}} の commands セクションに以下の行を追加: , Run Com ".xmonad/conkyscript" ["&"] "conky" 300 これでスクリプトが30秒ごとに実行されます。 そして以下を {{ic|.xinitrc}} の {{ic|exec xmonad}} エントリの前に追加してください: .xmonad/conkyscript & sleep 6 && xmobar & 最後に {{ic|%conky%}} を template セクションに追加します。 === シンプルな conky-cli の統合 === {{ic|.xmobarrc}} に以下のコードを記述してください: Run Com "conky" ["-q", "-i", "1"] "conky" 600 == トラブルシューティング == === フォーカス中のウィンドウ以外で xmonad が反応しない === フォーカスしているウィンドウでタイピングができるが、[[xmonad]]でクリックやホットキーが反応しない場合、読み込みできないハンドルへの logHook のパイプによるものの可能性があります。 これを解決するためにはコマンドセクションにそれぞれのコマンドを実行するとともに、{{ic|%StdinReader%}} か {{ic|%UnsafeStdinReader%}} を ''xmobar'' の template に追加してください。''xmobar'' のインスタンスが複数ある場合には、パイプしている全てのバーで ''StdinReader'' があることを確認してください。そうでない場合はこれを追加するか、logHook から ppOutput からバーを削除してください。 == 参照 == * [https://hackage.haskell.org/package/xmobar xmobar hackage] * [http://projects.haskell.org/xmobar/ xmobar プロジェクト] * [https://bbs.archlinux.org/viewtopic.php?pid=304851 dzen and xmobar hacking thread]
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Bc
(
ソースを閲覧
)
テンプレート:Hc
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:Lowercase title
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
Xmobar
に戻る。
検索
検索
Xmobarのソースを表示
話題を追加