Intereting Posts
Linux с гостевыми компьютерами VM в режиме киоска Перезагрузка / etc / default / locale без перезагрузки? Использование команды sed для соответствия текста в определенном блоке текста Что является хорошим примером сценария bash для изучения, чтобы изучить хорошие правила кодирования? Debian 6 и старый Pentium II диапазон конкретных котов от / etc / hosts до диалогового окна OpenVPN – Ошибка привязки Socket на локальном адресе IP: 1194: Невозможно назначить запрошенный адрес возвратные строки, содержащие числа в диапазоне в определенном столбце Как найти количество подкаталогов в заданной директории Невозможно установить пакеты PHP в CentOS Можно ли управлять xterm (или, в частности, процессом, который начал xterm) из другого процесса? Автоматически запускать kpartx во время загрузки Почему я пытаюсь подключиться к SFTP с ошибкой «Листинг удаленной папки»? Где я могу овладеть наиболее полезными командами linux для программистов? Нет загрузочного носителя после установки grub на ноутбуке Acer Aspire

Как я могу сделать текст удобным для чтения?

Несколько месяцев назад meld начал вести себя странно. Обычные строки почти нечитаемы и показаны как темно-серый текст на черном фоне.

meld не работает

Как ни странно, запуск его в качестве корня в порядке (с kdesudo meld ), хотя тема менее симпатичная.

Корневые работы

Как указать параметры цвета текста для meld?

Я использую:

  • Arch Linux
  • KDE 4.14.3 (также см. 4.14.2)
  • meld 3.12.2 (также видно из 3.12.1)
  • gtk3 3.14.6 (также см. 3.14.5)

Исправление проблем

Системные настройки KDE

meld использует GTK3, поэтому я возился с системными настройками> Common Appearance and Behavior> Application Appearance> GTK> Выберите тему GTK3. Это изменение отразилось в meld, но ни один из трех выбранных мной вариантов не изменил текст. (Доступными параметрами были 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 

Интересно, что с gtk в его имени в /root нет ничего. Следовательно, я попытался удалить некоторые из ~ файлов, чтобы увидеть, могу ли я получить тот же эффект для моего пользователя. Я предполагаю, что все файлы gtkrc-2.0 имеют отношения к meld.

Во-первых, я удалил ~/.config/gtk-3.0 , но это не повлияло и было воссоздано, когда я открыл meld.

Единственным другим вариантом оказалось ~/.kde4/share/config/gtkrc , поэтому он удалил это и запустил meld, который не был затронут. Однако файл не был воссоздан и содержит некоторые, возможно, соответствующие строки (например, text[ACTIVE] = { 1.000, 1.000, 1.000 } ). Я не уверен, что файл (отсутствует) был загружен вообще. Я попробовал kbuildsycoca4 ; kquitapp plasma-desktop ; sleep 2 ; kstart plasma-desktop kbuildsycoca4 ; kquitapp plasma-desktop ; sleep 2 ; kstart plasma-desktop kbuildsycoca4 ; kquitapp plasma-desktop ; sleep 2 ; kstart plasma-desktop , но это не имело никакого эффекта. Нужно ли вручную перезагружать gtkrc? И почему этот файл не изменяется / перезаписывается с помощью системных настроек?

(Кроме того, FWIW, я удалил ~/.gtkrc-2.0-kde4 , который был фактически символической ~/.gtkrc-2.0 на ~/.gtkrc-2.0 , и я также удалил сам объект, но это не помогло. reload gtk (я не уверен, что это необходимо или возможно), и файлы не были созданы повторно, когда я снова попытался запустить команду.)

Возможно, соответствующие переменные среды

 $ 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 , но не пришел к решению.)

Если я locate -b meld | grep home locate -b meld | grep home , я получаю три справочника, о которых вы не упомянули;

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

Одно в ~/.local/share просто похоже на историю локальных сравнений, но в двух других каталогах есть xml файлы. Я бы попробовал их удалить.

Если это не сработает, вы можете точно meld , какие файлы meld читаются с чем-то вроде:

 strace -e trace=file meld |& grep home 

Глядя на результат, мы надеемся получить что-то еще, чтобы исследовать.

В противном случае я попытаюсь создать другую учетную запись пользователя, войдя в систему и запустив meld (но ничего больше). Если он отобразится в порядке, вы можете просмотреть там файлы dot / environment и сравнить их с вашей собственной учетной записью. Обратите внимание, что вы должны войти в систему через X, а не просто использовать su или sudo чтобы среда рабочего стола получала возможность создавать файлы с точкой по умолчанию – это, вероятно, будет причиной того, что это выглядит обычным при запуске с правами root.

Если это не работает, вы всегда можете отказаться и использовать Diffuse . Я еще не тестировал его, но сам делал некоторые вещи, которые не могут (не сопоставлять каталоги, так что это не совсем замена). 🙂

Обновить

Чтобы попытаться отследить повреждающий файл (ы), вы можете сравнить файлы точек в новой учетной записи со старым. К сожалению, это может быть почти любой из точечных файлов в новой учетной записи, поэтому важно не запускать какие-либо другие приложения (особенно веб-браузер), так как это создаст / изменит больше. Чтобы сравнить файлы, вы можете попробовать запустить что-то вроде этого в новой учетной записи:

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

Для тех, которые отличаются друг от друга, вы можете исследовать дальше, сэр, Мелд. Если это ничего не дает, возможно, файл, который вы хотите удалить, будет трудно найти. Вы можете попробовать вернуться к strace и сравнить результаты с двух учетных записей.

Похоже, что это была регрессия, введенная в Meld 3.12.1. Я загрузил предыдущие версии с сайта meld.

Meld 3.12.0 отлично работает. 3.12.0

Meld 3.12.1 нет. введите описание изображения здесь

Я связался с разработчиками, и они сказали мне, что это действительно регресс, введенный в порт gtk + 3. Они предложили попробовать только что выпущенный 3.12.3, который теперь работает. (Тем не менее, он все еще не полностью объясняет, почему meld в новой учетной записи будет работать.)

перезапишите meld.css тем, который есть там, и вы сможете использовать Meld с темной темой https://wiki.gnome.org/Apps/Meld/DarkThemes

По крайней мере, из Meld 3.16.4 поддерживаются разные цветовые схемы.

См. Meld > Preferences :

предпочтительнее

(возможно, это изменение было внесено в более ранние версии)

Примечание .
Также возможно GTK_THEME=Adwaita:dark meld конкретную тему для Meld по CLI: GTK_THEME=Adwaita:dark meld