CopyQ Documentation

Clipboard manager with advanced features

11,675 stars C++ C++ 1 file ยท ~1,968 tokens #clipboard#clipboard-manager#copyq#cross-platform#scripting#tray
RAW Doc

CopyQ






CopyQ is an advanced clipboard manager with powerful editing and scripting features.

Overview

  • CopyQ monitors the system clipboard and saves its content in customized tabs.
  • Saved clipboard entries can later be copied and pasted directly into any application.

Features

  • Support for Linux, Windows, and macOS 13+
  • Store text, HTML, images, and any other custom formats
  • Quickly browse and filter items in clipboard history
  • Sort, create, edit, remove, copy/paste, drag'n'drop items in tabs
  • Add notes and tags to items
  • System-wide keyboard shortcuts with customizable commands
  • Paste items with keyboard shortcuts, from tray, or from main window
  • Fully customizable appearance
  • Advanced command-line interface and scripting
  • Ignore clipboard copied from specified windows or containing specified text
  • Support for simple Vim-like editor with keyboard shortcuts
  • Many more features

Install

To install CopyQ, use the binary package or the installer provided for your operating system.

For unlisted operating systems, please follow the instructions in
Build from Source Code.

Windows

On Windows you can use any of the following options to install CopyQ:

Using Scoop:

text
scoop install copyq

Using Chocolatey:

text
choco install copyq

macOS

macOS 13 and above are supported (this mainly depends on the Qt version).

On macOS you can use Homebrew to install CopyQ:

bash
brew install --cask copyq

If you encounter an issue where the app crashes with a dialog saying "CopyQ is
damaged" or "CopyQ cannot be opened", you may need to run the following
commands (for details, see #2652):

bash
xattr -d com.apple.quarantine /Applications/CopyQ.app
codesign --force --deep --sign - /Applications/CopyQ.app

Debian 11+, Ubuntu 22.04+, and their derivatives

Install copyq and copyq-plugins packages.

Ubuntu PPA

Install and keep CopyQ always up to date by running the following commands from
the terminal (the package from PPA contains all plugins and documentation):

bash
sudo apt install software-properties-common python-software-properties
sudo add-apt-repository ppa:hluk/copyq
sudo apt update
sudo apt install copyq
# this package contains all plugins and documentation

Fedora

Install copyq package.

Arch Linux

Install copyq package.

Other Linux Distributions

Download the latest AppImage from
GitHub Releases:

bash
chmod +x CopyQ-*.AppImage
./CopyQ-*.AppImage

Alternatively, install Flatpak and com.github.hluk.copyq from
Flathub.
See Flathub Setup for initial Flatpak/Flathub configuration.

Start CopyQ from the menu or with the following command:

bash
flatpak run com.github.hluk.copyq

Using the App

To start CopyQ, double-click the program icon or run copyq (on Windows, run CopyQ.exe, or launch it from the Start menu; no desktop icon is created by default).

The list with the clipboard history is accessible by clicking on the system tray icon
or by running copyq toggle.

Copying text or image to the clipboard will create a new item in the list.

Selected items can be:

  • edited (F2)
  • removed (Delete)
  • sorted (Ctrl+Shift+S, Ctrl+Shift+R)
  • repositioned (with mouse or Ctrl+Up/Down)
  • copied back to the clipboard (Ctrl+C)
  • pasted to the previously active window (Enter)

All items will be restored when CopyQ is next started.

To exit CopyQ, select Exit from the tray menu or press Ctrl-Q in the
CopyQ window.

Read more:

Adding Functionality

To create custom actions that can be executed
from the menu, with keyboard shortcuts, or when the clipboard changes:

  • go to the Command dialog (F6 shortcut)
  • click the Add button, then select a predefined command, or create a new one
  • optionally change the command details (shortcut, name)
  • click OK to save the command

One of the very useful predefined commands is "Show/hide main window".

Read more:

Command Line

CopyQ has a powerful command line and scripting interface.

Note: The main application must be running to be able to issue commands using the
command line.

Print help for some useful command line arguments:

text
copyq --help
copyq --help add

Insert some text in the history:

text
copyq add -- 'first item' 'second item' 'third item'

Omitting the double-dash (--) in the command above would mean that slashes
(\) in arguments will be treated as special characters. For example, \n will be treated as
the new line character, \t as tab, \\ as slash, \x as x, etc.

Create a single item containing two lines:

text
copyq add 'first line\nsecond line'

Print the content of the first three items:

text
copyq read 0 1 2
copyq separator "," read 0 1 2

Show the current clipboard content:

text
copyq clipboard
copyq clipboard text/html
copyq clipboard \?    # lists formats in clipboard

Copy text to the clipboard:

text
copyq copy "Some Text"

Load file content into the clipboard:

text
copyq copy - < file.txt
copyq copy text/html < index.html
copyq copy image/jpeg - < image.jpg

Create image items:

text
copyq write image/gif - < image.gif
copyq write image/svg - < image.svg

Read more:

Build from Source Code

See the documentation section Build from Source
Code
.

Contributions

You can help translate CopyQ (click the banner below)
or help fix issues and implement new features.

Read more: