Как изменить цвет фона всплывающей подсказки в Unity?

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

Вот скриншот Eclipse, который отображает некоторый исходный код в подсказке с черным текстом на черном фоне:

Переход к другой теме (что-то кроме Ambiance или Radiance) помогает, но мне нравится Ambiance, и я хочу сохранить его.

Я нашел несколько решений для более старых версий Ubuntu, но они больше не работают с Unity в Ubuntu 11.10, потому что я не могу найти какую-либо функцию для настройки Ambiance или Radiance тема. Итак, как мне это сделать в текущей версии Ubuntu?

1
задан 26 April 2014 в 17:29

15 ответов

Установите и откройте gnome-color-chooser.

Перейдите к Specific → Tooltips и установите черный передний план на бледно-желтый фон.

143
ответ дан 25 May 2018 в 17:45
  • 1
    перезапустить eclipse, чтобы изменения вступили в силу – cmcginty 23 February 2012 в 06:14
  • 2
    Нет необходимости перезапускать меня. – ubuntudroid 3 April 2012 в 19:21
  • 3
    Это работает и для 12.04 LTS с Eclipse 4.2! – David Edwards 10 July 2012 в 19:09
  • 4
    К сожалению, это не сработало для меня (Ubuntu 12.04 64-бит и Eclipse Juno). Оба, принятый ответ и один ниже от DJo, работали на меня. – Luis 6 August 2012 в 04:24
  • 5
    +1, но обратите внимание, что это влияет на ВСЕ всплывающие подсказки системы. Если вы хотите решение только для Eclipse, следуйте за ответом @ bain. – ysap 30 August 2012 в 03:56

Если вы хотите изменить цвета всплывающей подсказки для всех приложений, установите и запустите gnome-color-chooser и перейдите на вкладку Specific> Tooltips. Установите флажки переднего плана и фона и выберите цвета.

Как это работает (вы можете сделать это вручную):

gnome-color-chooser добавляет следующее к вашему ~ / .gtkrc -2.0:

include ".gtkrc-2.0-gnome-color-chooser"

и ~ / .gtkrc-2.0-gnome-chooser:

style "gnome-color-chooser-tooltips"
{
  bg[NORMAL] = "#FFFFAF"
  fg[NORMAL] = "#000000"
}
widget "gtk-tooltip*" style "gnome-color-chooser-tooltips"

Если вы хотите изменить цвета всплывающей подсказки для одного приложения, как eclipse, затем поместите вышеуказанный текст в собственный файл gtkrc (например, ~ / gtkrc-eclipse) и запустите eclipse с помощью gnome-color-chooser

27
ответ дан 25 May 2018 в 17:45
  • 1
    Вот настройка для настройки цвета фона диалога автозаполнения в Eclipse: stackoverflow.com/a/8063723/356895 . – JJD 23 June 2012 в 15:12
  • 2
    Вы знаете, как я могу включить переменную окружения в меню приложения Ubuntu , чтобы Eclipse также загружал настройки, когда не запускался через оболочку? – JJD 23 June 2012 в 15:34
  • 3
    Я собрал статью , которая суммирует тему. – JJD 28 July 2012 в 20:19
  • 4
    фантастический подход @bain !!! :) Не требует sudo, влияет только на пользователя, и не нужно копировать всю тему в ваш ~. Ницца :) – MestreLion 2 April 2013 в 10:00
  • 5
    @JJD: Я обычно против «спасибо» и только комментарии, но ваша статья потрясающая. Я заметил, что он использует тот же подход, что и этот ответ. Поскольку я уже использую собственный сценарий оболочки для запуска Eclipse из командной строки и файла .desktop, добавление GTK2_RC_FILES = ... env легко. Благодаря :) – MestreLion 2 April 2013 в 10:23

Я создал небольшой скрипт, который делает это для вас

#/bin/sh
# Tooltip fix
# A script to fix themes files in Ubuntu 11.10
#  to have readable tooltips in applications such
#  as eclipse.
# The script edits the gtk.css, settings.ini and gtkrc files
# Author: Victor Pillac
# http://victorpillac.wordpress.com

if [[ $EUID -ne 0 ]]; then
  echo "This script must be run as root" 1>&2
  exit 1
fi  

path=/usr/share/themes
theme=Ambiance

if [ $# = 1 ]; then
  theme=$1
fi

echo "Fixing tooltips for theme $theme"
echo " (you can select a different theme by passing its name as argument)"
sed -i 's/tooltip_bg_color #000000/tooltip_bg_color #f5f5b5/g' $path/$theme/gtk-3.0/gtk.css
sed -i 's/tooltip_fg_color #ffffff/tooltip_fg_color #000000/g' $path/$theme/gtk-3.0/gtk.css
sed -i 's/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g' $path/$theme/gtk-3.0/settings.ini
sed -i 's/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g' $path/$theme/gtk-3.0/settings.ini
sed -i 's/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g' $path/$theme/gtk-2.0/gtkrc
sed -i 's/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g' $path/$theme/gtk-2.0/gtkrc
echo "Done"
21
ответ дан 25 May 2018 в 17:45

Для CDT сделайте следующее:

Окно> Настройки> C / C ++> Редактор: Внешний вид Параметры цвета> Исходный фон Hover Background

Снимите флажок «Системное значение по умолчанию» и выберите цвет. [ ! d2]

К сожалению, для меня не существует настройки Eclipse. Довольно хромой. Вам не нужно устанавливать такие вещи для каждой точки зрения.

7
ответ дан 25 May 2018 в 17:45

Я принял немного другое решение:

Сначала создайте новый скрипт eclipse.sh, который запустит eclipse, мой вид выглядит следующим образом:

#!/bin/bash
GTK2_RC_FILES=/usr/share/eclipse/gtkrc-2.0-eclipse /usr/share/eclipse/eclipse

Затем создайте файл gtkrc (/usr/share/eclipse/gtkrc-2.0-eclipse), мой вид выглядит так (у него есть и другие изменения, чтобы лучше использовать экран):

style "my-tooltips"
{
  bg[NORMAL] = "#FFFFAF"
  fg[NORMAL] = "#000000"
}
widget "gtk-tooltip*" style "my-tooltips"

style "gtkcompact" 
{
    font_name="Ubuntu Light 11"

    GtkButton::default_border={0,0,0,0}
    GtkButton::default_outside_border={0,0,0,0}
    GtkButtonBox::child_min_width=0
    GtkButtonBox::child_min_heigth=0
    GtkButtonBox::child_internal_pad_x=4
    GtkButtonBox::child_internal_pad_y=4
    GtkMenu::vertical-padding=1
    GtkMenuBar::internal_padding=0
    GtkMenuItem::horizontal_padding=4
    GtkToolbar::internal-padding=1
    GtkToolbar::space-size=1
    GtkOptionMenu::indicator_size=0
    GtkOptionMenu::indicator_spacing=0
    GtkPaned::handle_size=4
    GtkRange::trough_border=0
    GtkRange::stepper_spacing=0
    GtkScale::value_spacing=0
    GtkScrolledWindow::scrollbar_spacing=0
    GtkExpander::expander_size=10
    GtkExpander::expander_spacing=0
    GtkTreeView::vertical-separator=0
    GtkTreeView::horizontal-separator=0
    GtkTreeView::expander-size=10
    GtkTreeView::fixed-height-mode=TRUE
    GtkWidget::focus_padding=0
    GtkTreeView::vertical-separator = 0
}

class "GtkWidget" style "gtkcompact"

style "gtkcompactextra" 
{
    xthickness=0
    ythickness=0
}

class "GtkButton"   style "gtkcompactextra"
class "GtkToolbar"  style "gtkcompactextra"
class "GtkPaned"    style "gtkcompactextra"
class "GtkNotebook" style "gtkcompact"
6
ответ дан 25 May 2018 в 17:45

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

Моя настройка: Ubuntu 12.04, Gnome (Not Unitiy), Eclipse Indigo (3.7), тема GrayDay для Гном. Название темы и самой темы не является импортом.

Откройте терминал, перейдите в каталог темы (cd $ HOME / .themes), и там перейдите в каталог вашей темы. Если ваш .themes direcotry, если его нет, не существует, то вы используете системную тему, которая находится в / usr / share / themes. Просто укажите имя темы, которую вы используете (щелкните правой кнопкой мыши на bakcground, выберите «Изменить фоновый рисунок рабочего стола», название темы должно быть в нижнем правом углу. Если в нем ничего не сказано о названии темы, затем используйте gnome-tweak-tool, чтобы найти какую тему вы используете).

В каталоге темы выпустите эту команду:

grep -r tooltip *

он должен указать все файлы и строки, в которых упоминается «подсказка» для ключевого слова. Измените каждый фон (tooltip_bg_color) на #ffffff и каждый передний план на # 000000. Черные конечности на белом переднем плане, это то, что мы хотим! В частности, измените значения в файле gtk-2.0/gtkrc.

Ошибка, которую я делал, перетаскивает подсказку в каталоге gtk-3.0, которая не имела никакого эффекта.

Теперь перейдите в Eclipse, Window -> Preferences -> Java -> Editor и установите Background Hover Background на «System color» (отметьте справа). Перезагрузите Eclipse!

Это список grep -r tooltip * из моего каталога тем после выполнения изменений:

gtk-2.0/gtkrc:gtk-color-scheme  = "tooltip_fg_color:#000000\ntooltip_bg_color:#ffffff\nlink_color:#0033ff"
gtk-2.0/gtkrc:style "tooltips" {
gtk-2.0/gtkrc:  bg[NORMAL]  = @tooltip_bg_color
gtk-2.0/gtkrc:  fg[NORMAL]  = @tooltip_fg_color
gtk-2.0/gtkrc:  GtkWidget::new-tooltip-style    = 0
gtk-2.0/gtkrc:# The window of the tooltip is called "gtk-tooltip"
gtk-2.0/gtkrc:widget "gtk-tooltip*"             style "tooltips"
gtk-3.0/gtk.css:/* @define-color tooltip_bg_color #343434; */
gtk-3.0/gtk.css:/* @define-color tooltip_fg_color #ffffff; */
gtk-3.0/gtk.css:@define-color tooltip_bg_color #ffffff;
gtk-3.0/gtk.css:@define-color tooltip_fg_color #343434;
gtk-3.0/gtk.css:@define-color theme_tooltip_bg_color @tooltip_bg_color;
gtk-3.0/gtk.css:@define-color theme_tooltip_fg_color @tooltip_fg_color;
gtk-3.0/gtk-widgets.css:.tooltip {
gtk-3.0/gtk-widgets.css:    background-color:   @theme_tooltip_bg_color;
gtk-3.0/gtk-widgets.css:    color:              shade(@theme_tooltip_fg_color, 0.90);
gtk-3.0/gtk-widgets.css:.tooltip * {
gtk-3.0/gtk-widgets.css:    background-color: @theme_tooltip_bg_color;
gtk-3.0/settings.ini:gtk-color-scheme   = "tooltip_fg_color:#343434\ntooltip_bg_color:#ffffff\nlink_color:#4a90d9"
gtk-3.0/settings-default.ini:gtk-color-scheme   = "tooltip_fg_color:#343434\ntooltip_bg_color:#ffffff\nlink_color:#4a90d9"
4
ответ дан 25 May 2018 в 17:45
  • 1
    Этого было достаточно, чтобы выполнить ответ jgreen и изменить только одну строку в одном файле. – Teemu Leisti 25 September 2012 в 18:29

У меня была такая же проблема (Xubuntu 12.04, тема Greybird, Eclipse Indigo), и ответ Михаэля К работал для меня. Единственный файл, который я изменил, был gtk-2.0 / gtkrc, и я только изменил одну строку. Третья строка после первоначальных комментариев. Изменены значения шестнадцатеричного цвета tooltip_bg_color: # 000000 to tooltip_bg_color: # ffffe1 и tooltip_fg_color: #ffffff to tooltip_fg_color: # 000000. Итак, строка будет выглядеть так:

gtk_color_scheme        = "tooltip_bg_color:#ffffe1\ntooltip_fg_color:#000000" # Tooltips.

Перезапущенный elipse и всплывающие подсказки теперь являются желтоватым цветом, к которому я привык. Мне не нужно было делать никаких дополнительных настроек в eclipse или других файлах.

2
ответ дан 25 May 2018 в 17:45

Я решил проблему с белыми черными всплывающими подсказками с 4 файлами gtkrc:

~ / .config / gtk-3.0 / gtk.css
/* tooltips */
@define-color tooltip_bg_color #ffffaf;    
@define-color tooltip_fg_color #000000;
~ / .config / gtk-3.0 / settings .ini
[Settings]
gtk-color-scheme = "tooltip_bg_color:#ffffaf\ntooltip_fg_color:#000000"
~ / .gtkrc-2.0
include ".gtkrc-2.0-gnome-color-chooser"
~ / .gtkrc-2.0-gnome-color-chooser
pixmap_path "/home/user/.gnome-color-chooser/images/"

style "gnome-color-chooser-tooltips"

{
bg[NORMAL] = "#FFFFAF"
fg[NORMAL] = "#000000"
}

widget "gtk-tooltip*" style "gnome-color-chooser-tooltips"

3-й и 4-й файлы были созданы gnome-color-chooser. Мои подсказки черно-желтые. Я использую Ubuntu 12.04 и считаю, что нехорошо редактировать / usr / share / themes на общесистемном уровне. Я надеюсь, что мое решение поможет кому-то.

2
ответ дан 25 May 2018 в 17:45

Существует еще одно решение: используйте dconf-editor, чтобы найти следующий ключ:

org->gnome->desktop->interference->gtk-color-scheme

, описание которого указано: A \n разделенный список name:color, как это определено в [ f5].

Записать схему в gedit в стиле нравится следующее (этот пример мой), а затем вставить его в dconf-editor (обратите внимание на «\ n» на каждом конце строки ):

fg_color:#4c4c4c4c4c4c
bg_color:#f2f2f1f1f0f0
text_color:#3c3c3c3c3c3c
base_color:#ffffffffffff
selected_fg_color:#ffffffffffff
selected_bg_color:#f0f077774646
tooltip_fg_color:#ffffff5a0e74
tooltip_bg_color:#14a784edd8b6

, и проблема будет решена немедленно.

1
ответ дан 25 May 2018 в 17:45

Более удобный для пользователя способ изменить фон - это использовать пользовательский интерфейс. Открытая система, настройки, внешний вид. По умолчанию будет выбрана тема «Ambiance», но вы можете изменить ее для любой темы. Нажмите кнопку «Настроить» ниже и перейдите на вкладку «Цвета». Там вы можете изменить цвета переднего плана и фона для всплывающих подсказок, щелкнув соответствующие поля.

0
ответ дан 25 May 2018 в 17:45
  • 1
    11.10 это не работает. Я могу изменить тему в Appearance, но нет никаких средств для настройки темы. – daniel kullmann 21 November 2011 в 17:10
  • 2
    У меня нет 11.10, но мне было бы странно, если бы они удалили способ настройки темы. Возможно, они переименовали кнопку и / или поместили ее в другое место / вкладку? – Sergiy Byelozyorov 21 November 2011 в 22:19
  • 3
    Сергий, многие из нас обыскали, но похоже, что его там нет. Мы надеемся, что он появится снова в 12.04. – user 1 December 2011 в 17:35
  • 4
    Сергий, многие из нас обыскали, но похоже, что его там нет. Мы надеемся, что он появится снова в 12.04. – user 1 December 2011 в 17:35
  • 5
    Сергий, многие из нас обыскали, но похоже, что его там нет. Мы надеемся, что он появится снова в 12.04. – user 1 December 2011 в 17:35
  • 6
    Сергий, многие из нас обыскали, но похоже, что его там нет. Мы надеемся, что он появится снова в 12.04. – user 1 December 2011 в 17:35
  • 7
    Сергий, многие из нас обыскали, но похоже, что его там нет. Мы надеемся, что он появится снова в 12.04. – user 1 December 2011 в 17:35
  • 8
    Сергий, многие из нас обыскали, но похоже, что его там нет. Мы надеемся, что он появится снова в 12.04. – user 1 December 2011 в 17:35
  • 9
    Вы, ребята, действительно удивлялись удаленным настройкам в Gnome3 / Unity? – MestreLion 28 August 2013 в 19:34
  • 10
    Больше не ... после использования 12.04 какое-то время, наши администраторы рассматривают возможность перехода на Fedora или какой-либо другой дистрибутив RHEL. Ubuntu стала мультимедийной платформой, которая хорошо работает для домашних пользователей, но не для ИТ-специалистов. – Sergiy Byelozyorov 28 August 2013 в 21:20

На ubuntu 12.10 (quantal) вы можете использовать следующие две команды:

#foreground white => black
sudo sed -i s/tooltip_fg_color:#ffffff/tooltip_fg_color:#000000/g  /usr/share/themes/Ambiance/gtk-3.0/settings.ini /usr/share/themes/Ambiance/gtk-3.0/gtk.css /usr/share/themes/Ambiance/gtk-2.0/gtkrc
#background black => yellow
sudo sed -i s/tooltip_bg_color:#000000/tooltip_bg_color:#f5f5b5/g  /usr/share/themes/Ambiance/gtk-3.0/settings.ini /usr/share/themes/Ambiance/gtk-3.0/gtk.css /usr/share/themes/Ambiance/gtk-2.0/gtkrc

(Спасибо другим ответам, которые помогли мне разобраться в этом!)

0
ответ дан 25 May 2018 в 17:45

Этот ответ должен указывать на редкий случай, когда очень похожая ошибка возникает, если вы установили xulrunner и настроенное eclipse для ее использования.

Я установил xulrunner, чтобы заставить GPE Designer правильно отображать пользовательские интерфейсы GWT в режиме разработки, который работал очень хорошо, но я обнаружил, что он также сломал всплывающие подсказки.

Чтобы исправить это, вам нужно удалить параметр xulrunner из eclipse.ini:

-Dorg.eclipse.swt.browser.XULRunnerPath=/path/to/xulrunner/

Он работал для меня с Ubuntu 12.04, Eclipse 4.2 / Juno и xulrunner 1.9.2

0
ответ дан 25 May 2018 в 17:45

Для элементарных пользователей:

Перейдите к /usr/share/themes/elementary/gtk-3.0, отредактируйте файл gtk-widgets.css с помощью sudo nano, введите Ctrl + W, чтобы найти Tooltips, а затем в background-color: alpha(#color, #opacity) измените цвет к чему-то вроде #f5f5b5 и установите непрозрачность в 1.

0
ответ дан 25 May 2018 в 17:45

Чтобы открыть окно Appearance с помощью Tab: Темы непосредственно из root @ terminal write (вы можете использовать эту команду также для скрипта):

sudo -u USER gnome-appearance-properties -p theme

, где USER является вашим текущим пользователем на рабочем столе. Это откроет Appearance правильно, но вам все равно нужно щелкнуть по темам в окне Appearance, чтобы запустить вашу тему.

Для теста с темой установки: Пыль от root @ terminal, команда:

[ f2]

получает эту ошибку:

(gnome-appearance-properties: 16161): Gtk-WARNING **: невозможно найти движок темы в модуле_паре: «murrine»

но если тема: Пыль устанавливается путем выбора меню: System / Preferences / Appearance и устанавливается из окна Appearance, установка темы: Пыль верна.

Необходима команда, ответственная за выбор тем в окне «Внешний вид», но я не могу его найти.

0
ответ дан 25 May 2018 в 17:45

Я запускаю Kubuntu 16.04 с темой Breeze и Eclipse 4.6.1 с GTK3 по умолчанию, теперь они исправили проблему с добавлением кнопки.

Чтобы получить всплывающие подсказки на hover со светло-серым фоном и черным передним планом, я сделал несколько изменений в /usr/share/themes/Breeze-gtk/gtk-3.0/gtk.css; вот что я закончил:

/************
 * Tooltips *
 ************/
.tooltip {
  color: #000000;
  padding: 4px;
  box-shadow: none;
}
.tooltip.background {
    background-color: #f5f5f5;
    background-clip: padding-box;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

И оригинал:

/************
 * Tooltips *
 ************/
.tooltip {
  color: white;
  padding: 4px;
  /* not working */
  border-radius: 5px;
  box-shadow: none;
  text-shadow: 0 1px black; }
  .tooltip.background {
    background-color: rgba(0, 0, 0, 0.8);
    background-clip: padding-box;
    border: 1px solid rgba(255, 255, 255, 0.1); }

В случае, если ссылки не работают во всплывающих окнах Javadoc, это может помочь установить libwebkitgtk например:

sudo apt install libwebkitgtk-1.0-0
0
ответ дан 25 May 2018 в 17:45

Другие вопросы по тегам:

Похожие вопросы: