Spec-Zone.ru › Elisp

Управление функциями панели задач графического интерфейса системы

Обзор и описание настройки см. в разделе Панель задач системы руководства The GNU Emacs Manual.

Функция: system-taskbar-badge &optional count

Эта функция отображает count в виде наложенного значка на значке Emacs на системной панели задач.

Если count — целое число, отображается это число.

На серверных частях, поддерживающих строки, если count — строка, отображается она. Строка должна быть короткой.

На серверных частях, не поддерживающих строки, count преобразуется в целое число; если преобразование не удалось, используется nil.

Если count — nil или пустая строка, счётчик или короткая строка удаляется.

Отображает значок на системной панели задач со значением count. Если count — nil, значок очищается. Обычно count — целое число.

Если count — строка, в системах, не поддерживающих строковые значки (например, в GNU/Linux D-Bus), она преобразуется в целое число; значок очищается, если строка не является допустимым представлением целого числа. В системах, поддерживающих строковые значки (например, macOS/GNUstep и MS-Windows), значок отображается в виде строки, которая может быть усечена, чтобы поместиться в отведённое системой пространство. В любом случае, если строка пуста, значок очищается.

Функция: system-taskbar-attention &optional urgency timeout

Эта функция мигает значком Emacs на системной панели задач и/или заставляет его окно подпрыгивать, чтобы привлечь внимание пользователя.

urgency может быть одним из символов informational или critical.

Если urgency — nil, индикатор привлечения внимания очищается.

Индикатор привлечения внимания очищается при первом из следующих событий: графический интерфейс Emacs получает фокус или истекает timeout секунд. Если timeout — nil, приоритет имеет поведение графического интерфейса системы.

На некоторых серверных частях critical действует так же, как informational.

На некоторых серверных частях уведомление отображается, только если Emacs не является приложением, находящимся в фокусе.

Функция: system-taskbar-progress &optional progress

Эта функция отображает индикатор выполнения поверх значка Emacs на системной панели задач.

progress — вещественное число в диапазоне от 0.0 до 1.0. Если progress — nil, индикатор выполнения удаляется.

Удобно использовать встроенные функции отображения хода выполнения, которые при включённом system-taskbar-mode по умолчанию интегрируются с system-taskbar-progress. См. раздел Отображение хода выполнения операции.

Примеры функций системной панели задач:

;; Enable and initialize system-taskbar-mode before calling its
;; package functions.
(system-taskbar-mode)

;; Display a badge integer on the taskbar icon.
(system-taskbar-badge emacs-major-version)

;; A string representation of an integer is converted to an
;; integer on GNU/Linux.
(system-taskbar-badge "31")

;; Short strings are displayed on macOS/GNUstep and MS-Windows.
(system-taskbar-badge "Test")

;; Clear the badge.
(system-taskbar-badge)
;; Get the user's attention and clear the request after 3 seconds.
(system-taskbar-attention 'informational 3)

;; Get the user's attention and clear when Emacs is focused.
(system-taskbar-attention 'critical)

;; Clear the attention request.
(system-taskbar-attention)
;; Make sure system taskbar is integrated with progress-reporter.
(setopt system-taskbar-use-progress-reporter t) ; t is the default
(system-taskbar-mode)

;; Report `dotimes` progress on the taskbar icon.
(dotimes-with-progress-reporter
    (i 10)
    "Counting from 1 to 10..."
  (sleep-for 1))

;; Report `dolist` progress on the taskbar icon.
(dolist-with-progress-reporter
    (i (make-list 10 t))
    "Progress from 1 to 10 elements..."
  (sleep-for 1))

Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/System-Taskbar.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API