xtermの80列のWMII端末幅(ルール)


2

xtermでWMIIを80列で水平に分割しようとしていますが、パーセンテージでこれを行う方法しか見ていません。さまざまな解像度のパーセンテージ以外の値で設定できると便利ですが、それに対処する必要がある場合はそうします。

問題は、パーセンテージでも私の解像度(1366x768)では機能しないことです。/ colrulesの47 + 47は79文字、48 + 48は81文字になります。私が知る限り、10進法は許可されていないため、たとえば47.5を実行できます。

私はIon3から来て、キーボードでサイズ変更可能な80の列端末を使用して、コーディング中にVIMの適切なカットオフポイントを取得することに慣れています。私はマウスを使うだけで落ち着きますが、WMIIはIon3よりもはるかに流動的であるように見えるので、それをLOTでやらなければなりません。

何か案は?

編集:(詳細)

grml @ dalek:〜$ wmiir xwrite / view / ctl next
wmiir:致命的:ファイル '/ view / ctl'を開けません:ファイルが見つかりません
grml @ dalek:〜$ wmiir ls /
クライアント/
コルール
ctl
出来事
キー
lbar /
rbar /
タグ/
タグルール
grml @ dalek:〜$ wmiir xwrite / tag / sel / ctl grow sel sel right +2
wmiir:致命的:ファイル '/ tag / sel / ctl'に書き込めません:不正なコマンド

何が起こっているのでしょうか?

回答:


1

あなたが言ったように、コルールとパーセンテージを使用しても、どこにも連れて行くことはできません。

手動でサイズ変更を強制される場合、マウスを使用する代わりに、wmiircキーボードショートカットを使用してクライアントの幅を制御するために、スクリプトに次を追加できます。

Key $MODKEY-Control-h
    wmiir xwrite /tag/sel/ctl grow sel sel left +2
Key $MODKEY-Control-j
    wmiir xwrite /tag/sel/ctl grow sel sel left -2
Key $MODKEY-Control-k
    wmiir xwrite /tag/sel/ctl grow sel sel right -2
Key $MODKEY-Control-l
    wmiir xwrite /tag/sel/ctl grow sel sel right +2

詳細についてConfigurationは、wmii manページのセクションを参照してください。

growコマンドを使用して固定幅を指定することはできないため、列のピクセル数を知っていると仮定すると、たとえばwidth=600、次のようなことができます。

  1. 最初の列の幅を読み取ります。

    cur_width=$(wmiir cat /tag/sel/index | grep '^# 1' | awk '{print $4}')
    
  2. 選択したクライアントを必要な量だけ拡大または縮小します。

    wmiir xwrite /tag/sel/ctl grow sel sel right $(($width - $cur_width))px
    

ただし、異なる解像度、異なる列などに柔軟に対応するには、少し作業する必要があります。


お返事ありがとうございます!マニュアルページは何も表示されませんでしたが、(debian squeeze)何かアイデアはありましたか?ソースをダウンロードすることでデフォルトのwmiircファイルを見つけることができることについに気付いたので、その設定の作業を開始します。すべての助けてくれてありがとう!

ドキュメントは別のパッケージにあるようwmii-docです。ソースツリーでは、docフォルダ内にwmiiユーザーガイドもあります。
-mrucci

さて、メインポストを編集して、ターミナルからの出力を作成しました。今は本当に混乱しています... wmii 3.6を実行していますが、どうなっていますか?

シンプル:wmiiの3.6バージョンは古く、廃止予定であり、growコマンドをサポートしていません。:ダウンロードし、ここから最新のベータ版をインストールしてくださいdl.suckless.org/wmii/wmii+ixp-3.9b1.tbz
-mrucci

私のシステムは複雑であり、Debianリポジトリのすべてにこだわるのが最善です。助けてくれてありがとう!私は間違いなくこのWMが好きですが、まだIon3よりも好きかどうかはわかりません。

0

次のキーバインドでワークスペースの切り替えを解決しました。今残っているのは、幅を機能させる方法を見つけることです。

キー$ MODKEY-カンマ
    wmiir xwrite / ctl view $(echo $(wmiir read / ctl | grep -E "^ view" | cut -d '' -f2)-1 | bc | sed -r "s / ^ 0 $ / 1 / g" )
キー$ MODKEY-period
    wmiir xwrite / ctl view $(echo $(wmiir read / ctl | grep -E "^ view" | cut -d '' -f2)+1 | bc)

0
キー$ MODKEY-u#左側を80カラム幅にします
    cur = $(wmiir cat / tag / sel / index | grep -E "^#1" | cut -d '' -f4)
    if ["$ cur" -lt "646"]; それから
        wmiir xwrite / tag / sel / ctl grow sel sel right $((646- $ cur))px
    elif ["$ cur" -gt "646"]; それから
        wmiir xwrite / tag / sel / ctl grow sel sel right-$(($ cur-646))px
    #else#何もしない
    fi
キー$ MODKEY-i#右側を80カラム幅にする
    cur = $(wmiir cat / tag / sel / index | grep -E "^#1" | cut -d '' -f4)
    width = $(
        xrandr | grep "*" | sed -r "s / [] + / / g" |
            カット-d '' -f2 | cut -d 'x' -f1
    )
    if ["$ cur" -lt "$(($ width-646))"]; それから
        wmiir xwrite / tag / sel / ctl grow sel sel left $(($ cur- $ width + 646))px
        echo $ width> / tmp / width
        echo $ cur> / tmp / cur
    elif ["$ cur" -gt "$(($ width-646))"]; それから
        wmiir xwrite / tag / sel / ctl grow sel sel left-$(($ width-646- $ cur))px
    #else#何もしない
    fi

これらは、mrucciが言及したリポジトリからWMII 3.9に更新した後の2つのキーバインドです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.