Буфер обмена

Бу́фер обме́на (англ. clipboard) — промежуточное хранилище данных, предоставляемое программным обеспечением и предназначенное для переноса или копирования информации между приложениями или частями одного приложения через операции вырезать, копировать, вставить.

Как правило, приложения используют буфер обмена, предоставляемый операционной системой или другой средой через определённый интерфейс. Некоторые приложения могут использовать свой собственный буфер обмена, доступный только в них. Физически, данные буфера обмена хранятся в оперативной памяти компьютера (RAM).

Приложение может записывать в буфер обмена одну и ту же информацию одновременно в нескольких различных форматах. Наиболее информативный формат помещается первым, за ним остальные по убыванию информативности. При вставке информации из буфера обмена обычно используется первый распознанный приложением формат, который будет наиболее информативен для данного приложения. Например, если текстовый процессор копирует в буфер обмена текст: в формате RTF, в виде рисунка WMF и в виде текста без форматирования, этот текст может быть вставлен в другой текстовый процессор с сохранением разметки, в графический редактор — рисунком и в простой текстовый редактор — неформатированным текстом. Операционная система может производить некоторые преобразования форматов информации, если запрошенный формат отсутствует в буфере обмена, но может быть получен из имеющегося, например, изменять кодировку текста[1].

Вставить объект из буфера обмена можно неограниченное число раз. При копировании информации в буфер его предыдущее содержимое, как правило, пропадает. Однако существуют реализации буфера обмена (например, в пакете Microsoft Office), позволяющие хранить в буфере одновременно несколько объектов и выбирать при вставке, который из объектов вставить.

Горячие клавиши для пользования буфером обмена править

Стандартные горячие клавиши для работы с буфером обмена, применяемые в графических интерфейсах пользователя на PC‐совместимых ПК (для клавиатуры PC101 с раскладкой QWERTY):

  • Скопировать выделенные объекты в буфер обмена: Ctrl+C или Ctrl+Ins.
  • Вырезать выделенные объекты в буфер обмена (для перемещения): Ctrl+X или ⇧ Shift+Del.
  • Вставить из буфера обмена: Ctrl+V или ⇧ Shift+Ins.

Хотя эти комбинации и являются наиболее распространёнными, некоторые приложения могут использовать какие-либо другие комбинации клавиш. Например в X Window System, кроме вышеописанного буфера обмена (выделение «CLIPBOARD»), доступен буфер (выделение «PRIMARY»), для копирования в который достаточно лишь выделить нужную часть текста, а для вставки достаточно нажать среднюю кнопку мыши или же одновременно левую и правую кнопки (имитация средней кнопки).[2][3][4]

Диспетчеры буфера обмена править

Существуют специальные программы — менеджеры буфера обмена, которые расширяют обычно используемые возможности.

 
Glipper[en] — менеджер буфера обмена для GNOME

Например, к базовым операциям они добавляют возможности:

  • иметь несколько буферов с возможностью сливать, разделять и редактировать их содержимое
  • выбирать буфер, в который будут сохраняться вырезанные или скопированные данные
  • выбирать буфер, из которого данные будут вставляться
  • работать с данными разных форматов
  • сохранять данные для хранения
  • индексировать, помечать и осуществлять поиск по сохранённым данным

Статьи о некоторых менеджерах буфера обмена можно найти в английской Википедии.

Просмотр содержимого буфера обмена в ОС Windows править

В ОС Windows (Windows 2000 и Windows XP) есть встроенная утилита просмотра буфера обмена — «Папка обмена» («Clipboard Viewer»). Её можно запустить, открыв меню «Пуск» — «Выполнить» — «clipbrd.exe». В более поздних ОС Windows (Windows Vista/7/8/10) производитель ОС (Microsoft) убрал из поставки операционной системы данную утилиту.

Программа просмотра буфера обмена, поставляемая в составе ОС Windows 2000/Windows XP, позволяет просматривать содержимое буфера обмена в виде текста, текста с оформлением (RTF) или изображения (BMP/WMF/EMF). Программа просмотра буфера обмена также позволяет сохранить все содержимое буфера обмена в файл с расширением .CLP. Файлы данного формата можно просмотреть и загрузить в буфер обмена при помощи данной программы просмотра буфера обмена.

Примечания править

  1. Clipboard Formats (англ.). MSDN Library. Microsoft. Дата обращения: 19 апреля 2012. Архивировано 30 мая 2012 года.
  2. Rodrigues, Philip; пер.: Екатерина Пыжова, Олег Баталов.: Использование Klipper. Справочное руководство по Klipper, изд. 2.92.00 (31 января 2005). Дата обращения: 21 января 2010. Архивировано 24 августа 2011 года.
  3. Jasmin Blanchette, Mark Summerfield; пер.: Андрей Киселёв.: Глава 9. Drag and Drop. Разработка графического интерфейса с помощью библиотеки Qt3. Дата обращения: 21 января 2010. Архивировано 21 августа 2011 года.
  4. Описание принципов работы буферов обмена X Window System (англ.). Дата обращения: 15 января 2010. Архивировано 24 августа 2011 года.