人工智能 2024-05-02 11:56

Glipper,一个剪贴板管理器程序

剪贴板(英语:clipboard),有时也称剪切板剪贴簿剪贴本。它是一种软件功能,通常由操作系统提供,作用是使用复制和粘贴操作短期存储数据和在文档或应用程序间转移数据。它是图形用户界面(GUI)环境中最常用的功能之一,通常实现为匿名、临时的数据缓冲区,可以被环境内的大部分或所有程序使用编程接口访问。典型的应用程序会将剪贴板操作提供到用户界面,比如通过热键、菜单选项等。

剪贴板管理器是允许用户操控剪贴板的一种应用程序。

基本功能

剪贴板在各个操作系统上的语义实现各有差异,并且在同个操作系统的不同版本中也可能不同。它们还可能因不同的程序或用户设置而改变。

大多数环境是支持单份剪贴板操作,每次“剪切”或“复制”内容都将覆盖之前的内容。通常来说,“粘贴”操作都是制作内容的副本,剪贴板中的内容将被保留以备再次粘贴。

数据格式

最早的剪贴板实现是数据存储为纯文本,没有例如字体、样式和颜色等元信息。之后的实现支持了多种数据类型,允许存储复杂的数据结构。有样式的文本有RTF、HTML等,还有各类位图、矢量图,以及电子表格、数据库条目等等。

举例来说,在电子表格中剪切一些单元格并将其粘贴到另一个表格中有可能保留其格式和数据,甚至可转换单元格引用,比如“SUM(...)”计算的单元格会转换为新副本所在位置的相应参数。

在数据由应用程序添加到剪贴板时,它会存储它支持的所有数据格式。这包括原生和简单(常见)格式,以便提高其他各类程序的支持率。因此,在数据粘贴到另一个应用程序时,应用程序可以使用最接近自己原生(所需要)的格式,保留尽可能多的原始数据。特别是在Windows,操作系统内部的剪贴板功能会自动将已知的高级数据格式转换为简单格式(例如RTF转换为纯文本,Unicode转换为ANSI文本),增加各应用程序能够解析某种原始数据的可能性。

剪贴板管理

有些现代的用户图形界面提供一个剪贴板管理器,支持多次剪切和粘贴。在这种模式下,剪贴板被当作一个堆栈或者说剪贴板,新的剪切和粘贴被放在最近操作的顶部。标准的粘贴操作继续使用最近一次操作记录,而特制的界面可提供对其他记录的访问。这些管理器通常还提供一个窗口,显示最近的操作记录,允许用户选择更早的副本,然后编辑它们、更改它们的格式、搜索它们,以及其他高级功能。

大多数环境不将剪贴板的内容放入持久存储——在用户注销或重启系统时,剪贴板的内容会自动被清除。

特定操作系统的剪贴板

Microsoft Windows

在以前版本的Microsoft Windows操作系统中,剪贴板的内容可以随时使用“剪贴板查看器”查看(一个搭载于Windows XP和2000中的应用程序,clipbrd.exe)。用户可以按Windows+R键,然后输入clipbrd.exe运行它,或者在Windows的%windir%\system32\clipbrd.exe找到它。不过在更早版本和许多Windows用户手中,更常用的做法是打开“记事本”、“写字板”或者其他编辑器,然后粘贴剪贴板的内容。剪贴板的操作选项通常在“编辑”菜单或上下文菜单(右键菜单)可用,并且在文本框上下文菜单通常提供剪切、复制与粘贴的菜单选项。

标准的Windows快捷键是:

  • Ctrl+C 复制数据到剪贴板
  • Ctrl+X 剪切数据到剪贴板
  • Ctrl+V 粘贴剪贴板的数据

继承自IBM Common User Access的另一套快捷键:

  • Ctrl+Ins 是复制
  • ⇧ Shift+Del 是剪切
  • ⇧ Shift+Ins 是粘贴

第二套快捷键的优势是编辑大量文本时,手指更靠近方向和选择键。

剪贴板查看器从Windows Vista起已被完全移除。

在Windows 10中,用户可以按Windows+V键使用“剪贴板”。

Mac OS X

在Macintosh操作系统,使用Finder的“编辑”-“显示剪贴板”菜单可以查看剪贴板的内容。

标准的Mac OS快捷键是:

  • ⌘ Cmd-C 复制数据到剪贴板
  • ⌘ Cmd-X 剪切数据到剪贴板
  • ⌘ Cmd-V 粘贴剪贴板的数据

另一种作为辅助的方式,纯文本的剪贴板。这是一个Emacs式“kill-ring”(文本字符串的堆栈)。这在所有使用标准的Cocoa文本框的应用程序中可用:

  • Ctrl-K 删除光标到行或段落末尾间的所有文本。
  • Ctrl-Y to yank from kill-ring to cursor.

使用下列命令可以从命令行访问剪贴板:

$ # 复制数据到剪贴板: $ echo 'hello world' | pbcopy $ # 粘贴剪贴板的数据: $ pbpaste hello world

X窗口系统

X窗口系统是UNIX和Linux上的常用系统,在X Window选择中提供了一个剪贴板实现。因为“选择”是异步的,所以数据仅在被请求时转换到所需格式。

各个选择的使用和处理未被标准化。不过大多数现代的工具包和桌面环境(如GNOME和KDE)遵循被广泛接受的约定,在freedesktop.org标准中有其概述。一种名为CLIPBOARD的“选择”使用传统的剪贴板语义,并使用与Windows相同的快捷键。另一种名为PRIMARY的“选择”使用X11特有的机制。高亮的数据会立即被复制,而单击鼠标中键时会粘贴数据。这通常与CLIPBOARD的“选择”分别存储,不会改变其内容。

剪贴板扩展

已有许多独立的软件开发者提供了扩展本地剪贴板的软件。其中一种是在复制与剪切事件发生时,将本地剪贴板的数据在线保存到一个网络位置,使数据被在线存储并备粘贴。另一个例子是使不支持或允许复制或粘贴剪贴板的程序支持它。例如,在登录到远程Windows服务器时,用户不允许复制和粘贴自己的用户名和密码,而像是“Clipboard Typist”工具可以帮助解除这种限制。

剪贴板软件

名称 适用操作系统 许可协议
AceClipboard Windows 免费软件
AtoZ Clipboard Windows 免费软件
ArchiveClipboard Windows、Mac OS X、Linux 免费软件
Spartan Multi-Clipboard Windows 商业
ClipSync Android / Windows 免费软件
3D Clipboard Windows 免费软件
AM8 Free Clipboard Windows 免费软件
ArsClip Windows 开源 (Delphi)
Capast Windows 免费软件
Clipboard Evolved Mac OS X 商业
Clipboard History Windows 免费软件
Clipboard Magic Windows 免费软件
Clipboard Master Windows 免费软件
Clipjump Windows 开源 (Apache License)
ClipboardMultiSharer 跨平台 开源 (GPL)
Clipboard Typist Windows 免费软件
Clipcomrade Windows 开源 (LGPL)
Clipomatic Windows 免费软件
ClipX Windows 免费软件
Clipmenu Mac OS X 免费软件
Clipmate 7 Windows 商业
Clyppan Mac OS X 免费软件 / 商业
CopyPaste Mac OS X 商业
CopyTexty Windows 免费软件 / 商业
Cute Clips Mac OS X 商业
Ditto Windows 开源 (GPL)
ECPText and Template software Windows 免费软件 / 商业
Glipper / Klipper Gnu/Linux、GNOME / KDE 开源 (GPL)
Iclip Mac OS X 商业
Hot Copy Paste Windows 商业
Jumpcut Mac OS X 开源 (MIT License)
Open Paste Windows 商业
PasteCopy.NET Windows 免费软件
Pthpasteboard Mac OS X 商业
Rclipstep Windows 免费软件
Savvy Clipboard Mac OS X 商业
Shapeshifter Windows 免费软件
Stuf Mac OS X 商业
Wlipper Windows 开源 (GPL)
Yankee Clipper 3 / X Windows 免费软件 / 商业
copy+ iOS 商业
CopyIt Windows、Mac OS X、Linux、Android 开源 (GPL)
Clipboard Stripper Windows 商业
Clipdiary Windows 商业
Clipdiary Free Windows 免费软件