Выбор системы окон
В системах окон, таких как X, данные могут передаваться между различными приложениями с помощью выделений. X определяет произвольное количество типов выделений, каждый из которых может хранить свои данные; однако, обычно используются только три: буфер обмена, главное выделение и вторичное выделение. Другие системы окон поддерживают только буфер обмена. См. Вырезание и вставка в Руководстве GNU Emacs для команд Emacs, которые используют эти выделения. В этом разделе описываются низкоуровневые функции для чтения и установки выделений системы окон.
- Команда: gui-set-selection тип данные
-
Эта функция устанавливает выделение системы окон. Она принимает два аргумента: тип выделения тип и значение, которое нужно присвоить ему, данные.
тип должен быть символом; обычно это один из
PRIMARY,SECONDARYилиCLIPBOARD. Это символы с заглавными буквами в соответствии с соглашениями системы X Window System. Если тип равенnil, это означаетPRIMARY.Если данные равны
nil, это означает очистку выделения. В противном случае данные могут быть строкой, символом, целым числом (или списком из двух целых чисел), наложением или списком из двух маркеров, указывающих на один и тот же буфер. Наложение или пара маркеров обозначают текст в наложении или между маркерами. Аргумент данные также может быть вектором допустимых значений выделения, не являющихся векторами.Эта функция возвращает данные.
- Функция: gui-get-selection &optional тип тип-данных
-
Эта функция получает выделения, установленные Emacs или другими программами. Она принимает два необязательных аргумента, тип и тип-данных. Значение по умолчанию для тип, тип выделения, равно
PRIMARY.Аргумент тип-данных определяет форму преобразования данных для преобразования необработанных данных, полученных от другой программы, в данные Lisp. Значимые значения включают
TEXT,STRING,UTF8_STRING,TARGETS,LENGTH,DELETE,FILE_NAME,CHARACTER_POSITION,NAME,LINE_NUMBER,COLUMN_NUMBER,OWNER_OS,HOST_NAME,USER,CLASS,ATOM, иINTEGER. (Эти символы имеют заглавные имена в соответствии с соглашениями X). Значение по умолчанию для тип-данных равноSTRING. Системы окон, отличные от X, обычно поддерживают только небольшое подмножество этих типов, в дополнение кSTRING.
- Пользовательский параметр: selection-coding-system
Эта переменная определяет кодировку, которую следует использовать при чтении и записи выделений или буфера обмена. См. Системы кодирования. Значение по умолчанию -
compound-text-with-extensions, которое преобразует в текстовое представление, обычно используемое X11.
Когда Emacs работает под MS-Windows, он не реализует выделения X в целом, но поддерживает буфер обмена. gui-get-selection и gui-set-selection под MS-Windows поддерживают только тип данных "текст"; если буфер обмена содержит другие типы данных, Emacs обрабатывает буфер обмена как пустой. Поддерживаемый тип данных — STRING.
Для обратной совместимости существуют устаревшие псевдонимы x-get-selection и x-set-selection, которые были именами gui-get-selection и gui-set-selection до Emacs 25.1.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Window-System-Selections.html