Изменение (уменьшает) Gnome 3 горизонтальное дополнение значка в области уведомлений (Хрипящий Debian)

Лично убедитесь (следующий сценарий отображает текущее "состояние времени" в псевдореальное время при входе внезапных изменений в значении),

#!/bin/sh
set -eu

get_time() {
    local line="$1"
    timedatectl \
        | sed -nE $line'p' \
        | sed -E 's/.* ([0-9]+):([0-9]+):([0-9]+).*/\1\2\3/'
}


get_time_status() {
    adjtimex --print \
        | grep -F status \
        | awk '{print "obase=2;" $2}' \
        | bc
}


num_diff() {
    local a="$1" b="$2"
    echo "ah = ${a:0:2}; am = ${a:2:2}; as = ${a:4:2}
        bh = ${b:0:2}; bm = ${b:2:2}; bs = ${b:4:2}
        a = ah * 60 * 60 + am * 60 + as
        b = bh * 60 * 60 + bm * 60 + bs
        if (a > b) a - b else b - a" | bc
}


print_line() {
    local f1="$1" f2="$2"
    printf "%20s %-$(($(tput cols) - 21))s\n" "$f1" "$f2"
}


localt=
universalt=
rtct=
ntp_enabled=
ntp_synchronized=
time_status=

localt_prv="$(get_time 1)"
universalt_prv="$(get_time 2)"
rtct_prv="$(get_time 3)"
ntp_enabled_prv="$(timedatectl | grep -E 'NTP enabled' | awk '{print $3}')"
ntp_synchronized_prv="$(timedatectl | grep -E 'NTP synchronized' | awk '{print $3}')"
time_status_prv="$(get_time_status)"

while true; do
    localt="$(get_time 1)"
    universalt="$(get_time 2)"
    rtct="$(get_time 3)"
    ntp_enabled="$(timedatectl | grep -E 'NTP enabled' | awk '{print $3}')"
    ntp_synchronized="$(timedatectl | grep -E 'NTP synchronized' | awk '{print $3}')"
    time_status="$(get_time_status)"

    if [ "$(num_diff $localt $localt_prv)" -gt 5 ]; then
        print_line "[$(date +%H:%M:%S)]" "localt: $localt_prv -> $localt"
    fi
    if [ "$(num_diff $universalt $universalt_prv)" -gt 5 ]; then
        print_line "[$(date +%H:%M:%S)]" "universalt: $universalt_prv -> $universalt"
    fi
    if [ "$(num_diff $rtct $rtct_prv)" -gt 5 ]; then
        print_line "[$(date +%H:%M:%S)]" "rtct: $rtct_prv -> $rtct"
    fi
    if [ "$ntp_enabled" != "$ntp_enabled_prv" ]; then
        print_line "[$(date +%H:%M:%S)]" "ntp_enabled: $ntp_enabled_prv -> $ntp_enabled"
    fi
    if [ "$ntp_synchronized" != "$ntp_synchronized_prv" ]; then
        print_line "[$(date +%H:%M:%S)]" "ntp_synchronized: $ntp_synchronized_prv -> $ntp_synchronized"
    fi
    if [ "$time_status" != "$time_status_prv" ]; then
        print_line "[$(date +%H:%M:%S)]" "time_status: $time_status_prv -> $time_status"
    fi

    print_line local: "$localt"
    print_line universal: "$universalt"
    print_line rtc: "$rtct"
    print_line 'NTP enabled:' "$ntp_enabled"
    print_line 'NTP synchronized:' "$ntp_synchronized"
    print_line 'time status:' "$time_status"

    sleep 1

    localt_prv="$localt"
    universalt_prv="$universalt"
    rtct_prv="$rtct"
    ntp_enabled_prv="$ntp_enabled"
    ntp_synchronized_prv="$ntp_synchronized"
    time_status_prv="$time_status"

    printf '\033[6A'
done
2
30.11.2013, 19:50
2 ответа

Найдите "естественную-hpadding" строку в (/usr/share/gnome-shell/theme/gnome-shell.css) и замените 12 пкс значением, которое Вы любите:

.panel-button {
    -natural-hpadding: 5px;
    -minimum-hpadding: 6px;
    font-weight: bold;
    color: #ccc;
    transition-duration: 100ms;
}

Для получения дополнительной информации и подсказки видят: http://forums.linuxmint.com/viewtopic.php?f=42&t=86813 (разделяют 2 г),

2
27.01.2020, 22:01
  • 1
    Хотя это, кажется, работает на Gnome Shell, он не работает при использовании режима Classic (режим, который я использую). –  Totor 30.11.2013, 19:49

В Ubuntu 18.04 (Gnome 3 )таблица стилей называется /usr/share/gnome-shell/theme/ubuntu.css.

Как писал jpoppe, .panel-button> natural-hpaddingнеобходимо скорректировать. Если пространство все еще слишком велико на ваш вкус, также уменьшитеminimum-hpadding:

.panel-button {
    -natural-hpadding: 12px;  /* change HERE */
    -minimum-hpadding: 6px;   /* and here */
    font-weight: bold;
    color: #eee;
    text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.9);
    transition-duration: 100ms;
}

Если вы не хотите перезагружаться, вы также можете перезагрузить тему только через

gdbus call --session --dest org.gnome.Shell --object-path /org/gnome/Shell --method org.gnome.Shell.Eval 'Main.loadTheme();'

Редактировать:В Ubuntu 20.04 таблица стилей упакована в /usr/share/gnome-shell/gdm3-theme.gresource.

Список файлов

gresource list /usr/share/gnome-shell/gdm3-theme.gresource

Извлечь файл

gresource extract /usr/share/gnome-shell/gdm3-theme.gresource /org/gnome/shell/theme/gdm3.css > gdm3.css

Хотя можно изменить файл и перекомпилировать его обратно в файл gresource, вместо этого лучше создать дочернюю тему .

  1. Создать папку:mkdir -p ~/.themes/NAME/gnome-shell
  2. Создать манифестtheme.json(необязательно):

    {
      "shell-theme": {
        "name": "NAME",
        "author": "AUTHOR",
        "version": "0.0",
        "type":   "custom",
        "url": "URL"
       }
    }
    
  3. Создать стильgnome-shell.css:

    #panel {
        font-size: 0.9em;
    }
    
    .panel-button {
        -natural-hpadding: 4px;
        -minimum-hpadding: 2px;
    }
    

    Он должен автоматически включать CSS по умолчанию. Если это не работает, попробуйте добавить в начало одну из следующих строк:

    @import url("resource:///org/gnome/shell/theme/gdm3.css");
    @import url("/usr/share/gnome-shell/theme/gdm3.css");
    
  4. Выберите тему NAMEс помощьюgnome-tweak-tool(Tweaks > Appearance > Shell)

4
27.01.2020, 22:01

Теги

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