問題タブ [xmonad]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - Xmonad トグル フルスクリーン / xmobar
私の Haskell に関する限られた (ゼロの) 知識を考えると、xmonad.hs は難しいものになる可能性があります。
たとえば、VLC視聴ビデオを使用して「真の」フルスクリーンを許可するように構成ファイルを変更する方法を探しています。
私の現在の xmonad.hs:
現在、ビデオを見ているときにxmobarが表示され、ビデオを表示するウィンドウに赤い境界線があります。
この設定を変更して、たとえば Mod-b でフルスクリーン モードと通常モードを切り替えることができるようにするにはどうすればよいですか?
haskell - xmonad サブマップが機能しない
私は xmonad と haskell が初めてです。自分で xmonad 構成を作成しようとしましたが、これが現在の状態です: https://gist.github.com/sbechtel/7900440
私の問題は、さまざまな検索プロンプトの 45 行目のサブマップです。問題なくコンパイルされますが、何もしません。私はそれが機能していたと信じていますが、今はもう機能していないので、その行で何も変更しなかったため、何らかの副作用だと思いますか?
よろしく、セバスチャン
haskell - XMonad は、表示されるモニターに応じてレイアウトを設定します
表示している物理画面に応じてワークスペースのレイアウトを変更することはできますか?
左モニターのレイアウトでreflectHoriz (XMonad.Layout.PerWorkspace から) を使用して、マスター ペインが常に 2 つの画面の中央に最も近くなるようにしたいと考えています。
私は XMonad.Layout.IndependentScreens を試しましたが、それはダブルモニターに依存するワークスペースを作成するだけで、それは私が目指しているものではありません。同じワークスペースでも、表示するモニターによってレイアウトが異なるのが理想です。
session - なぜXMonadは新しいセッションで子プロセスを実行するのですか?
XMonad の実行プログラムの手順についていくつか質問があります。これらの質問への回答も、X 環境でアプリケーションを実行する「標準的な」方法を説明するものになることを願っています。
XMonad は関数 ' spawn ' を使用して、ターミナル エミュレーターとプログラム ランチャー (gmrun など) を実行します。
この関数は、「/bin/sh cmd」コマンドを構築する「spawnPID」を呼び出します。
質問 1:単に「cmd」ではなく、「/bin/sh -c cmd」を実行する必要があるのはなぜですか?
私の推測: xmonad.hs のコマンドに追加できる引数を解析するため。
さらに遠く。「xfork」関数と呼ばれる構築されたコマンド「spawnPID」を実行するには、次のようにします。
- fork プロセス (setsid syscall によって要求される、プロセスがグループ リーダーになるのを防ぐため);
- デフォルトの SIGPIPE と SIGCHLD を復元します (forkProcess の動作の回避策のように見えます)。
- call 'createSession' (setsid syscall ラッパー);
- 「spawnPID」で構築されたコマンドを実行します。
質問 2 (メイン): XMonad がそれぞれの子プロセスを独自のセッションで実行するのはなぜですか?
私の意見では、セッションは主にユーザー ログイン セッションまたは「ユーザーが独立した」プログラムに関連付けられています。e. デーモン。1 つのログイン セッションで個別のプログラムごとにではありません。
質問 3: shell+createProcess または proc+createProcess ではなく、なぜ forkProcess+executeFile を使用したのですか?
「forkProcess」は一部非推奨のようです (場合によってはマルチプロセッサ システムでは、こちらを参照してください)。ただし、「createProcess」はこの場合正常に動作し、「/bin/sh -c」と入力せずにシェルでの実行をサポートする必要があります。
これは、実行中のプログラムに対処するためのより良い方法かもしれません。しかし、私はその専門家ではなく、ドキュメントを簡単に読むだけです。
xmonad - 他のバインディングに影響を与えない xmonad のカスタム キー バインディング
私は xmonad を使用しており、画面をロックする良い方法が必要でした。それで、slock(apt-get install slock)をインストールしましたが、うまく機能します。
次に、slock をトリガーする簡単なキー シーケンスが必要だったので、xmonad.hs で次の新しい関数を定義しました。
keys = myKeys
メイン関数に追加されました。
これにより、 を使用して画面を適切にロックできましたCtrl+Alt+l
が、他の xmonad ショートカットはどれも機能しません!
既存のバインディングを変更せずに、単一の新しいキー バインディングを追加する方法はありますか?
bash - xmonad の dmenu トップバーはいくつかのアイテム (Chromium) を実行しますが、レンジャーなどは実行しません
Archに「ストック」xmonadをインストールしています。
xmonad.hs への変更はまだありません
dメニューをインストールしました。
デフォルトのalt-pで実行され、期待どおりに表示およびフィルタリングされます。
Chromium は実行されますが、レンジャー、alsamixer などの他のタスクは実行されません。
これらのアイテムを実行するために何かをしなければならない人や、そうすることで問題を抱えている人については、どこにも何も見つかりません。
確かに、私のインストールには何か問題があります。
私の dmenu_run は次のとおりです。
通常、bash または zsh を使用して用語集を実行します。SHELL を に変更しようとしました/bin/bash
が、役に立ちませんでした。
他に見なければならない場所や変更すべき項目はありますか?
私はこれまでのところ xmonad が本当に好きで、xmonad.hs の調査を開始する前に dmenu を機能させたいと思っているので、とても残念です...
前もって感謝します
更新: ここArchwiki で、dmenu_run を変更し、自宅に .demenu_term を追加することを含む以下を見つけました。機能しているように見えますが、もっとオーサドックスなメカニズムがあったのではないかと思います。
haskell - xmonad の dynamicLog は、フォーカスされていないウィンドウのタイトルをどのようにフォーマットできますか?
私が解決しようとしている問題は、ワークスペースをフル レイアウトに設定してから、他のウィンドウを開いていることを忘れるという悪い習慣があることです。
私が使用したい解決策は、メイン ウィンドウのタイトルを ppTitle を介して黒地に白で表示し続けることですが、他のウィンドウも灰色で表示します (おそらく少しトリミングされますが、それは重要ではありません)。私は ppTitleUnfocused か何かを望んでいましたが、私が知る限り、ppTitle が唯一のタイトル書式設定オプションです。
箱から出してやりたいことをする方法はありますか? そうでない場合、どうすれば dynamicLog を拡張できますか? それが自明でない場合、魔法の文字を ppTitle に追加し、ppOutput 中に置き換えるのはどうですか? (私は追加と置換を処理できると思いますが、置換テキストを生成することは私の Haskell の能力を超えています。)