• Stars
    star
    8,610
  • Rank 4,256 (Top 0.09 %)
  • Language
    C++
  • License
    GNU General Publi...
  • Created about 15 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Clipboard manager with advanced features

CopyQ

Documentation Status Translation Status Linux Build Status macOS Build Status Windows Build Status Coverage Status

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 OS X 10.15+
  • 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

Packaging status

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

Chocolatey package

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

Using Scoop:

scoop install copyq

Using Chocolatey:

choco install copyq

OS X

Homebrew package

On OS X you can use Homebrew to install CopyQ:

brew install --cask copyq

Debian 10+, Ubuntu 18.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):

sudo add-apt-repository ppa:hluk/copyq
sudo apt update
sudo apt install copyq

Fedora

Install copyq package.

Arch Linux

Install copyq package.

Other Linux Distributions

Install Flatpak and com.github.hluk.copyq from Flathub.

flatpak install flathub com.github.hluk.copyq

Start CopyQ from the menu or with the following command:

flatpak run com.github.hluk.copyq

Using the App

To start CopyQ, double-click the program icon or run copyq.

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:

copyq --help
copyq --help add

Insert some text in the history:

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:

copyq add 'first line\nsecond line'

Print the content of the first three items:

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

Show the current clipboard content:

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

Copy text to the clipboard:

copyq copy "Some Text"

Load file content into the clipboard:

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

Create image items:

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

Read more:

Build from Source Code

To build CopyQ from source code, first install the required dependencies:

Install Dependencies

Ubuntu

sudo apt install \
  cmake \
  extra-cmake-modules \
  git \
  libqt5svg5 \
  libqt5svg5-dev \
  libqt5waylandclient5-dev \
  libqt5x11extras5-dev \
  libwayland-dev \
  libxfixes-dev \
  libxtst-dev \
  qtbase5-private-dev \
  qtdeclarative5-dev \
  qttools5-dev \
  qttools5-dev-tools \
  qtwayland5 \
  qtwayland5-dev-tools

RHEL / CentOS / Oracle Linux

sudo yum install \
  cmake \
  extra-cmake-modules \
  gcc-c++ \
  git \
  libXfixes-devel \
  libXtst-devel \
  qt5-qtbase-devel \
  qt5-qtdeclarative-devel \
  qt5-qtsvg-devel \
  qt5-qttools-devel \
  qt5-qtwayland-devel \
  qt5-qtx11extras-devel \
  wayland-devel \
  kf5-knotifications-devel

Build CopyQ

Change install prefix if needed:

git clone https://github.com/hluk/CopyQ.git
cd CopyQ
cmake .
make

You can now run the built app.

./copyq

Contributions

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

Translations

Read more:

More Repositories

1

copyq-commands

Useful commands for CopyQ clipboard manager.
JavaScript
284
star
2

FakeVim

Vim emulation in QTextEdit, QPlainTextEdit and similar Qt widgets
C++
159
star
3

qxtglobalshortcut

Cross-platform library for handling system-wide shortcuts in Qt applications
C++
62
star
4

vimColorsToQtCreator

Convert vim color schemes so they can be used in Qt Creator.
Perl
39
star
5

imagequick

Simple image browser written in QML
C++
15
star
6

config

Various config files
Shell
12
star
7

dwm

Fork from git://git.suckless.org/dwm + applied patches
C
11
star
8

infinitecopy

Clipboard manager
Python
11
star
9

advent-of-code-2019-golang

Solutions for Advent of Code 2019 (http://adventofcode.com/2019) in Go
Go
5
star
10

lastfm_wallpaper

Creates wallpaper with personal top albums from Last.fm
Python
5
star
11

cheatsheet

Various commands and configuration
5
star
12

traypost

Desktop Tray Notifier
C++
4
star
13

copyq-docs

Documentation for CopyQ clipboard manager
Python
3
star
14

systeminfo

Simple system monitor for Linux
C
3
star
15

sprinter

Simple Qt application based on dmenu
C++
2
star
16

xitomatl

Simple pomodoro timer app residing in tray
Python
2
star
17

moka

JavaScript GUI framework
CoffeeScript
2
star
18

PasteSharp

Simple clipboard manager
C#
2
star
19

nvim-embed-test

Test application that uses embedding feature of neovim
Python
2
star
20

natsort

Simple natural sort utility
C
1
star
21

advent-of-code-2021-nim

Solutions for Advent of Code 2021 (http://adventofcode.com/2021) in Nim
Nim
1
star
22

imagepeek

Simple and fast image viewer
C
1
star
23

sprinter-gtk

Simple GTK application based on dmenu
C
1
star