%Fは何を意味し、どのように停止できますか?

%Fは何を意味し、どのように停止できますか?

rxvt-clone(私は使用していますが、通常の以前のバージョンでも発生しているrxvt-unicodeようです)では、文字の順序は特別な意味を持つようです(たとえば、他のクローンでも同じです)。具体的には、次のようになります。rxvt%F%S

% date +%F          
38;5;0m2011-04-02
% date +%F--%H.%M.%S
38;5;0m--.Hostname.2011-04-02--22.25.59

後ろのテキストはm暗く、ほぼ黒です。私の色スキーム(濃い青の水玉模様の背景にライラック色のテキスト)のため、ほとんど読めません。

これは何であり、もっと重要なことはどうすればこれを止めることができますか?

これが特に迷惑な理由を説明するために、私の講義のファイル名に日付が含まれています。したがって、次のように書くのが便利です。

xelatex lecture.beamer.$(date +%F).tex

私の歴史に保存し、賢明なタブを使って再び呼び出すことができるからです。ただし、後続の出力は白に近い色とは逆のため、エラーがないかどうかを確認するのは困難です。

違いがあれば私のシェルはzsh

ベストアンサー1

あなたのコメントの1つで呼び出しの使用について言及しましたzshpreexecprint -P $2

では、次の形式文字が許可されていますzshprint -P

  • %F前景色を設定するという意味です。
  • %S主な属性設定を示します。

バラよりzshプロンプト拡張完全なリストをチェックしてください。

したがって、in呼び出しから-Pこのフラグを削除するのが最善です。printpreexec

同じ効果を得る1つの方法:

settitle() {
    printf "%b%s%b" "\033]0;" "$1" "\007"
}

tildedir() {
    print -Pn "%~" 
}

preexec() {
    settitle "$(tildedir):$2"
}

おすすめ記事