草地 樣 丸山です。有難うございます。
Thu, 30 Mar 2023 18:46:11 +0900 Kaoru Kusachi <t...@st.rim.or.jp> writes: >草地@リムネットと申します。 > >普段は FreeBSDをデスクトップ環境として使ってはいないのですが、少し古い手元で >動くデスクトップ環境 (FreeBSD 11.4 + xorg 7.7 + xfce4-wm 4.16 + emacs 27.2 + >screen 4.8.0) で確認すると xfce-terminal で screen を起動して emacs -nw を実 >行すると同じ様にモードラインの表示が見えなくなると言う現象は確認出来ました。 11 からでしたか。 >更に調べてみるとどうも普通にターミナル内で emacs -nw で起動した場合と screen >内で実行した場合ではどうも emacs のカラーマップが変わってしまう様でモードライ >ンの background colorと foreground colorが同じになってしまって見えない状態に >なっている様です。 ということは、 emacs の問題と言えそうですね。カラーマップ、ということな ので、env TERM=vt100-color emacs -nw とやってみると、この場合もモードラ インは見えませんね。 >とりあえず、emacs を screen内で起動した時にだけ強制的にモードラインの色を変更 >する様なコードを書いてみましたので、.emacs に追記して確認してみて下さい。 > >;; >;; mode-line-color (screen) >;; >(when (string= "TERM=screen" > (format "%s" (nth 0 (nth 0 (list > (mapcan #'(lambda (e) (and (string-match "^TERM=" e) (list e))) > initial-environment)))))) > (progn > (set-face-foreground 'mode-line "black") > (set-face-background 'mode-line "darkslategrey") > ) >) > >これでとりあえず、emacs の mode-lineが見える様にはなるのですが、emacsの >ターミナル設定の問題なのか screenの問題なのかは原因不明です。 これで確かにモードラインは見えるようになりました。 ># 普段は emacs -nw --color=never で使っているので全く気が付きませんでした。 > >なお、mode-line に指定している色については M-x list-colors-display で表示 >される色の名前を設定しています。 > >とりあえず参考まで。 はい、参考になります。勉強になりました。有難うございました。 -------- 丸山 直昌 まるやま なおまさ メールアドレス: m...@amogha.jp