Bagaimana saya bisa membuat teks dalam berbunyi meld dibaca?

16

Beberapa bulan yang lalu, meldmulai bertingkah aneh. Baris umum hampir tidak dapat dibaca, dan ditampilkan sebagai teks abu-abu gelap dengan latar belakang hitam.

berbaur gagal

Anehnya, menjalankannya sebagai root baik-baik saja (dengan kdesudo meld), meskipun temanya kurang cantik.

root berbaur bekerja

Bagaimana cara menentukan opsi warna teks untuk berbaur?

Saya menggunakan:

  • Arch Linux
  • KDE 4.14.3 (juga terlihat pada 4.14.2)
  • berbaur 3.12.2 (juga terlihat pada 3.12.1)
  • gtk3 3.14.6 (juga terlihat pada 3.14.5)

Penyelesaian masalah

Pengaturan sistem KDE

meldmenggunakan GTK3, jadi saya mengutak-atik Pengaturan Sistem> Penampilan dan Perilaku Umum> Penampilan Aplikasi> GTK> Pilih Tema GTK3. Perubahan ini tercermin dalam berbaur, tetapi tidak satu pun dari tiga opsi yang saya pilih mengubah teks. (Opsi yang tersedia adalah Default, Emacs, dan oxygen-gtk; yang terakhir digunakan pada tangkapan layar di atas.)

Memodifikasi file konfigurasi secara manual

Saya mencari ~file dengan gtknama mereka.

~/.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

Menariknya, tidak ada apa-apa dengan gtknamanya di /root. Karenanya, saya mencoba menghapus beberapa ~file, untuk melihat apakah saya bisa mendapatkan efek yang sama untuk pengguna saya. Saya kira semua gtkrc-2.0file tidak relevan untuk berbaur.

Pertama, saya menghapus ~/.config/gtk-3.0, tetapi ini tidak berpengaruh, dan diciptakan kembali ketika saya membuka berbaur.

Satu-satunya pilihan lain tampaknya ~/.kde4/share/config/gtkrc, jadi hapus ini dan mulai berbaur, yang tidak terpengaruh. Namun, file tersebut tidak dibuat ulang, dan berisi beberapa baris yang mungkin terkait (misalnya text[ACTIVE] = { 1.000, 1.000, 1.000 }). Saya tidak yakin apakah file (hilang) dimuat sama sekali. Saya mencoba kbuildsycoca4 ; kquitapp plasma-desktop ; sleep 2 ; kstart plasma-desktop, tetapi ini tidak berpengaruh. Apakah saya perlu memuat ulang gtkrc secara manual? Dan mengapa file ini tidak terpengaruh / ditulis ulang oleh pengaturan sistem?

(Juga, FWIW, saya menghapus ~/.gtkrc-2.0-kde4, yang sebenarnya merupakan symlink ke ~/.gtkrc-2.0, dan saya juga menghapus target itu sendiri, tetapi itu tidak membantu. Sekali lagi, saya tidak memuat ulang gtk (saya tidak yakin apakah ini diperlukan, atau mungkin), dan file tidak dibuat kembali ketika saya mencoba menjalankan berbaur lagi.)

Mungkin variabel lingkungan yang bersangkutan

$ 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"

(Pengungkapan: Saya sebelumnya menanyakan pertanyaan ini di forum KDE , tetapi tidak menemukan solusi.)

Sparhawk
sumber
@tombart jawaban adalah yang terbaru, harus yang diterima
Francesco
@ Franco Tidak, pertanyaan tentang regresi diperkenalkan tiga tahun lalu. Jawaban Tombart menggambarkan masalah yang serupa namun terpisah. Bacalah dengan seksama pertanyaan dan jawaban untuk perincian lebih lanjut.
Sparhawk
oke itu berguna bagi saya :)
Francesco
Jangan khawatir. Itu sebabnya saya tidak memilih untuk menutup ini (sesuai meta ini ).
Sparhawk

Jawaban:

16

Setidaknya dari Meld 3.16.4 mendukung skema warna yang berbeda.

Lihat Meld > Preferences:

preferensi berbaur

(mungkin perubahan ini diperkenalkan di versi sebelumnya)

Catatan :
Dimungkinkan juga untuk memaksakan tema spesifik untuk Meld oleh CLI:GTK_THEME=Adwaita:dark meld

Tombart
sumber
4

Sepertinya itu adalah regresi yang diperkenalkan di Meld 3.12.1. Saya mengunduh versi sebelumnya dari situs web berbaur .

Meld 3.12.0 berfungsi dengan baik. 3.12.0

Meld 3.12.1 tidak. masukkan deskripsi gambar di sini

Saya menghubungi para devs dan mereka mengatakan kepada saya bahwa itu memang regresi yang diperkenalkan di port gtk + 3. Mereka menyarankan untuk mencoba 3.12.3 yang baru saja dirilis, yang sekarang berfungsi. (Namun, itu masih belum sepenuhnya menjelaskan mengapa berbaur dalam akun baru akan berfungsi.)

Sparhawk
sumber
Apakah Meld 3.12.1 masih sama setelah 3.12.0 dijalankan?
Graeme
@Graeme Ya, benar. Mungkin tidak penting, tetapi saya menjalankannya langsung dari file yang tidak dikompresi.
Sparhawk
Apakah ada dependensi Gnome yang berbeda antara kedua versi? Distro mana yang Anda gunakan dan bagaimana Anda menginstal?
Graeme
@ Greme Saya menggunakan Arch, menginstal dari repo resmi. Semua dependensi dari kedua versi itu identik.
Sparhawk
1
@Graeme Saya sudah memperbarui jawabannya.
Sparhawk
3

Jika saya melakukannya locate -b meld | grep home, saya mendapatkan tiga direktori yang belum Anda sebutkan;

~/.gconf/apps/meld
~/.gconf/apps/gnome-settings/meld
~/.local/share/meld

Yang satu ~/.local/sharesepertinya hanya sejarah perbandingan lokal, tetapi dua direktori lainnya memiliki xmlfile di dalamnya. Saya akan mencoba menghapusnya.

Jika itu tidak berhasil, Anda dapat melihat file mana yang melddibaca dengan sesuatu seperti:

strace -e trace=file meld |& grep home

Melihat output diharapkan akan menghasilkan sesuatu untuk diselidiki.

Gagal bahwa saya akan mencoba membuat akun pengguna lain, masuk dan menjalankan berbaur (tapi tidak ada yang lain) di sana. Jika ditampilkan ok, Anda dapat melihat file dot / variabel lingkungan di sana dan membandingkannya dengan akun Anda sendiri. Perhatikan bahwa Anda harus masuk melalui X dan tidak hanya menggunakan suatau sudoagar lingkungan desktop Anda mendapat kesempatan untuk membuat file dot default - ini kemungkinan akan menjadi alasan mengapa terlihat polos saat dijalankan sebagai root.

Jika tidak ada yang berhasil, Anda selalu bisa menyerah dan menggunakan Diffuse . Saya sendiri belum mengujinya dengan baik, tetapi ia melakukan beberapa hal yang meldtidak bisa (tidak ada perbandingan direktori, jadi bukan penggantinya). :)

Memperbarui

Untuk mencoba melacak file yang menyinggung, Anda dapat membandingkan file dot di akun baru dengan yang lama. Sayangnya itu bisa berupa hampir semua file titik di akun baru, itulah sebabnya mengapa penting untuk tidak menjalankan aplikasi lain (terutama browser web) karena ini akan membuat / mengubah lebih banyak. Untuk membandingkan file, Anda dapat mencoba menjalankan sesuatu seperti ini di akun baru:

find . -type f -exec cmp {} /home/your_account/{} \;

Untuk yang berbeda, Anda bisa menyelidiki lebih jauh dengan, eh, Meld. Jika ini tidak menghasilkan apa-apa maka mungkin ada file yang ingin Anda hapus yang sulit ditemukan. Anda dapat mencoba kembali ke stracedan membandingkan output dari dua akun.

Graeme
sumber
+1 untuk strategi terperinci. Saya belum membuatnya bekerja, tapi sejauh ini hasilnya sejauh ini. Menghapus dua direktori yang disarankan kemudian memulai kembali berbaur tidak berhasil. stracemengungkapkan kandidat berikut: ~/.config/gtk-3.0/settings.ini, ~/.config/oxygen-gtk, ~/.kde4/share/config/kdeglobals, /home/lee/.kde4/share/config/oxygenrc. Yang pertama sudah dicoba, tetapi menghapus sisanya pada gilirannya tidak berhasil. Saya akan mencoba membuat akun baru selanjutnya.
Sparhawk
Saya membuat akun baru, dan ya, teksnya terlihat bagus di sana. Sebagai per pertanyaan, saya melihat variabel lingkungan (dengan export | grep -i gtk), tetapi satu-satunya perbedaan adalah kehadiran berikut di asli, non-kerja akun: declare -x GTK_IM_MODULE="xim". Saya tidak begitu yakin file apa yang harus dicari. Saya mencari file dengan gtkatau dengan meldnama mereka, tetapi hanya menemukan yang di atas, yang sudah saya uji.
Sparhawk
@Sparhawk, diperbarui. Saya ragu itu akan membuat perbedaan, tetapi tidak ada salahnya melakukan unset GTK_IM_MODULEdari baris perintah dan kemudian lari melddari shell yang sama.
Graeme
Saya telah memperbarui jawaban saya.
Sparhawk
3

hanya membiarkan pembaruan ...

Versi 3.18 tidak akan menampilkan preferensi untuk mengubah tema Anda.

tetapi dengan dconf-editor, Anda dapat mengakses konfigurasi berbaur dan mengatur style-chema ke 'berbaur-gelap' ... dan berbahagialah!

hampir seperti itu: https://linux.m2osw.com/no-meld-preferences-menu

masukkan deskripsi gambar di sini

Tiago Oliveira
sumber
1

menimpa meld.css dengan yang ada di sana dan Anda akan dapat menggunakan Meld dengan tema gelap https://wiki.gnome.org/Apps/Meld/DarkThemes

k_zoltan
sumber
Saya tidak ingin menggunakan tema gelap. Pertanyaan ini bukan tentang mengubah tema secara keseluruhan, itu hanya tentang elemen tertentu, yaitu baris umum. Sesuai jawaban yang diterima, itu adalah regresi yang telah diperbaiki.
Sparhawk
Untuk apa nilainya ... Untuk tujuan saya ini adalah jawaban yang sempurna - Beralih gtk ke tema gelap melakukan pekerjaan yang baik untuk membuat teks dalam berbaur tidak dapat dibaca
Dmitri DB