数か月前、meld
は奇妙な動作を始めました。一般的な行はほとんど判読できず、黒い背景に濃い灰色のテキストとして表示されます。
奇妙なことに、テーマはそれほどきれいではありませんが、(kdesudo meld
を使用して)rootとして実行することは問題ありません。
Meldのテキストの色オプションを指定するにはどうすればよいですか?
私が使用しています:
meld
はGTK3を使用しているため、[システム設定]> [一般的な外観と動作]> [アプリケーションの外観]> [GTK]> [GTK3テーマの選択]をいじっています。この変更はmeldに反映されましたが、選択した3つのオプションのいずれもテキストを変更しませんでした。 (使用可能なオプションは、Default、Emacs、oxygen-gtkでした。後者は上記のスクリーンショットで使用されています。)
名前にgtk
が含まれるファイルを~
で探しました。
~/.gtkrc-2.0
~/.gtkrc-2.0-kde4
~/.config/gtk-2.0
~/.config/gtk-3.0
~/.kde4/share/config/gtkrc
~/.kde4/share/config/gtkrc-2.0
興味深いことに、/root
の名前にgtk
が含まれているものはありません。したがって、~
ファイルの一部を削除して、ユーザーに同じ効果が得られるかどうかを確認しました。すべてのgtkrc-2.0
ファイルはmeldとは無関係であると思います。
最初に、~/.config/gtk-3.0
を削除しましたが、これは効果がなく、メルドを開いたときに再作成されました。
他の唯一のオプションは~/.kde4/share/config/gtkrc
であるように見えたため、これを削除して、影響を受けなかったmeldを開始しました。ただし、ファイルは再作成されず、関連する行が含まれている可能性があります(例:text[ACTIVE] = { 1.000, 1.000, 1.000 }
)。 (欠落している)ファイルがロードされたかどうかはわかりません。 kbuildsycoca4 ; kquitapp plasma-desktop ; sleep 2 ; kstart plasma-desktop
を試しましたが、効果がありませんでした。手動でgtkrcをリロードする必要がありますか?そして、なぜこのファイルはシステム設定の影響を受けない/書き換えられないのですか?
(また、FWIWは~/.gtkrc-2.0-kde4
を削除しました。これは実際には~/.gtkrc-2.0
へのシンボリックリンクでした。また、ターゲット自体も削除しましたが、役に立ちませんでした。繰り返しますが、gtkを再ロードしませんでした(Iこれが必要かどうか、または可能かどうかは不明です)、そしてmeldをもう一度実行しようとしたときにファイルが再作成されませんでした)。
$ export | grep -i gtk
declare -x GTK2_RC_FILES="/etc/gtk-2.0/gtkrc:/home/sparhawk/.gtkrc-2.0:/home/sparhawk/.kde4/share/config/gtkrc-2.0"
declare -x GTK_IM_MODULE="xim"
declare -x GTK_MODULES="canberra-gtk-module"
declare -x GTK_RC_FILES="/etc/gtk/gtkrc:/home/sparhawk/.gtkrc:/home/sparhawk/.kde4/share/config/gtkrc"
(開示:以前、この質問を KDEフォーラム で行ったことがありますが、解決策はありませんでした。)
Meld 3.12.1で導入されたリグレッションだったようです。以前のバージョンをmeld website からダウンロードしました。
Meld 3.12.0は正常に動作します。
Meld 3.12.1ではサポートされていません。
開発者に連絡したところ、実際にgtk + 3ポートで発生したリグレッションであると言われました。彼らはリリースされたばかりの3.12.3を試してみることを提案しました。 (ただし、それでも、新しいアカウントでの統合が機能する理由は完全には説明されていません。)
更新のみを許可しています...
3.18バージョンでは、テーマを変更するための設定は表示されません。
しかし、dconf-editorを使用して、meld構成にアクセスし、style-chemaを 'meld-dark'に設定して、幸せになれます!
私が行った場合 locate -b meld | grep home
、あなたが言及していない3つのディレクトリを取得します。
~/.gconf/apps/meld
~/.gconf/apps/gnome-settings/meld
~/.local/share/meld
~/.local/share
はローカル比較の履歴のようですが、他の2つのディレクトリにはxml
ファイルがあります。それらを削除してみます。
それが機能しない場合は、meld
が読み取るファイルを次のように正確に確認できます。
strace -e trace=file meld |& grep home
出力を見ると、調査できる別のものが生成されるはずです。
失敗した場合は、別のユーザーアカウントを作成し、ログインしてmeld(他には何もない)を実行します。 okと表示される場合は、そこでドットファイル/環境変数を表示して、自分のアカウントと比較できます。デスクトップ環境がデフォルトのドットファイルを作成する機会を得るために、su
またはSudo
を使用するだけでなく、X経由でログインする必要があることに注意してください。ルートとして。
それでもうまくいかない場合は、いつでも諦めて Diffuse を代わりに使用できます。私自身はまだ適切にテストしていませんが、meld
で実行できないことがいくつかあります(ただし、ディレクトリの比較はできないため、完全な代替にはなりません)。 :)
問題のファイルを追跡するために、新しいアカウントのドットファイルを古いファイルと比較できます。残念ながら、それは新しいアカウントのほとんどすべてのドットファイルである可能性があります。これにより、他のアプリケーション(特にWebブラウザー)を実行しないことが重要になります。ファイルを比較するには、新しいアカウントで次のようなものを実行してみます。
find . -type f -exec cmp {} /home/your_account/{} \;
異なるものについては、メルドを使ってさらに調査することができます。これで何も生成されない場合は、おそらく削除するのが難しいファイルがあるはずです。 strace
に戻って、2つのアカウントの出力を比較してみてください。
meld.cssをそこにあるもので上書きすると、暗いテーマでMeldを使用できるようになります https://wiki.gnome.org/Apps/Meld/DarkThemes