~~NOTOC~~
{{ :panel-plugins:xfce4-clipman-plugin.png?nolink|}}
====== Clipman - xfce4-clipman-plugin ======
* **[[#Getting Started|Getting Started]]**
* **[[#Search The History|Search The History]]**
* **[[#Settings|Settings]]**
* **[[#Action Settings|Action Settings]]**
* **[[#History Settings|History Settings]]**
* **[[#Latest Release|Latest Release]]**
* **[[#Source Code Repository|Source Code Repository]]**
* **[[#Reporting Bugs|Reporting Bugs]]**
----
===== Introduction =====
//**Clipman**// is a clipboard manager for //**Xfce**//. It keeps the clipboard contents around while it is usually lost when you close an application. It is able to handle text and images, and has a feature to execute actions on specific text by matching them against regular expressions.
==== Anatomy of a Clipboard ====
In X11 (all Unix platforms) there are by default two clipboards to exchange any data between the windows. A default clipboard which is modified by manual copies (for instance when you select a file and press the copy button), and there is a primary clipboard which is modified by selections (for instance when you select text in a field).
//**Clipman**// manages both clipboards, either separately or synchronously, and may or may not add selections to its history.
----
===== Getting Started =====
//**Clipman**// is used to keep in history a list of clipboard contents and to restore them. The history is displayed in a menu by clicking on the main icon. Within the menu it is possible to restore a text and to clear the history.
Shows the menu that popups when clicking the Clipman icon in the Xfce Panel or the notification area
There are two ways to run //**Clipman**//. You can select //**Clipman**// in the applications menu under the category //Utility// or type ''xfce4-clipman'' on the command-line, or you can add it into your panel. To add a new item in the panel right click the panel and select //Add new item…//.
//**Clipman**// provides the command-line tool ''xfce4-popup-clipman''. When called it popups the main menu. The command is practical for the //**Application Shortcuts**// available at {gui>Xfce Menu>Settings>Keyboard}.
----
===== Search The History =====
If you want to search the history of your clipboard, you can click on "Show full history…" in the menu or use the command-line tool ''xfce4-clipman-history'' which
* shows the complete history
* supports (fuzzy) type-ahead search
* supports paste-on-activate (i.e. pastes the selected text directly into the previously active window on hitting "return")
* allows the user to switch from paste-on-activate to regular copying by holding down the Ctrl key
Clipman history dialog, shown by running ''xfce4-clipman-history'' or by clicking on the menu entry
----
===== Settings =====
The settings dialog is available under the "Clipman settings…" item in the right click context menu on the main icon. It allows to tweak the history and to edit actions.
==== Behavior Settings ====
The following table describes the available options in the //Behavior// tab of the //Settings dialog//.
^ Option ^ Description ^
| Sync mouse selections | Sync the primary clipboard with the default clipboard in a way that it is possible to paste what gets selected |
| Persist mouse selections | Make primary clipboard persist until next selection if current selection is lost (e.g. by left-clicking in a text area) |
| QR-Code support | Show the QR-Code of the currently selected clipboard entry |
| Paste instantly | Automatically paste a selected item from the history |
| Position menu at pointer | Only for the xfce4-popup-clipman command |
| Maximum items | Number of menu items |
[[|Back to Top]]
----
==== Action Settings ====
An action is a pair of a name and a regular expression. Each action can have one or more commands. The support of actions is optional and can be enabled or disabled through the {gui>Enable automatic actions} option.
To add an action click the {gui>Add} icon, to edit an action select the action and click the {gui>Edit} icon or double click the action, and to remove an action select an action and click the {gui>Delete} icon. By adding or editing an action a new dialog is opened.
To learn more about actions go to [[#action_dialog|section Action Dialog]].
=== Action Dialog ===
An action has a human readable name that describes the pattern it is going to match. An action must have at least one command which also has a human readable name. The matched text can be reused in the command.
The actions are always matched against text selections unless specified otherwise. When the box {gui>Activate only on manual copy instead of selection} is checked, the action will be matched from the default clipboard (e.g. with {key>Ctrl+C}).
Settings dialog showing the Action Dialog when creating or editing an action
== Regular Expression ==
Basic special characters: "''.?+*(|)[]\''".
* "''.''": represents a single character.
* "''?+*''": respectively means zero or one character, one or more characters, and zero or more characters.
* "''(|)''": used for grouping and substitution, the vertical bar is used as an OR operation.
* "''[^]''": used to match a character from a set of characters and special characters, the circumflex is used at the start as a negation.
* "''\''": escapes a special character.
Basic alphanumeric character class: "''A-Za-z0-9''". Character classes are used within square brackets to represent a set of characters.
Regular expression examples:
* "''bug ?#?[0-9]+''": text "''bug''", zero or one space, zero or one sharp character, and one or more numbers.
* "''(http|ftp).+\.(jpg|png|gif)''": text "''http''" or "''ftp''", one or more character, a point, and the text "''jpg''", "''png''" or "''gif''".
* "''http://.{120}[^ ]+''": text "''http://''", 120 characters, and one or more characters except a space.
External resources:
* [[http://en.wikipedia.org/wiki/Regular_expression|Wikipedia article about regular expressions]].
== Commands ==
A command can reuse one or more substitutions from the regular expression. The substitutions are represented by "''\''" where '''' corresponds to the sub-pattern within parentheses or 0 for the complete text.
For example, from the simple pattern "''bug #(123)''" it is possible to use "''\0''" for the text "''bug #123''" and "''\1''" for the text "''123''". With the command "''exo-open http://host/\1''", the real executed command would be "''exo-open http://host/123''".
[[|Back to Top]]
----
==== History Settings ====
^ Option ^ Description ^
| Remember history | Enable history |
| Remember last copied image | Allows to store one image in the history |
| Reorder history items | Push last copied text to the top of the history |
| Reverse history order | Reverse order of the history shown in the menu |
| Ignore mouse selections | Prevents the primary clipboard from being inserted in the history |
| Size of the history | Sets the number of items to keep in history (different from the number of menu items) |
----
==== Xfconf ====
//**Clipman**// uses [[xfce:xfconf:|Xfconf]] to store its settings. That allows you to change the settings with the tool [[xfce:xfconf:xfconf-query|xfconf-query]] or [[xfce:xfce4-settings:editor|xfce4-settings-editor]]. The channel where //**Clipman**// stores its settings is ''xfce4-panel'' and the base property is ''/plugins/clipman''. The following table lists all the properties with their possible values.
^ Property ^ Type ^ Default ^ Values ^
| /settings/add-primary-clipboard | bool | false | true or false to sync the primary clipboard with the default clipboard |
| /settings/enable-actions | bool | false | true or false to enable actions |
| /settings/history-ignore-primary-clipboard | bool | false | true or false to exclude the primary clipboard from the history |
| /settings/max-images-in-history | uint | 0 | 0-5 number of images in history |
| /settings/max-texts-in-history | uint | 10 | 5-100 number of texts in history |
| /settings/save-on-quit | bool | true | true or false to restore the history at every new session |
| /tweaks/inhibit | bool | false | true or false to disable the collector |
| /tweaks/paste-on-activate | uint | 0 | 0 to disable, 1 to paste with Ctrl+V, or 2 to paste with Shift+Insert as soon as an item is selected from the history |
| /tweaks/popup-at-pointer | bool | false | true or false to popup the Clipman menu at the mouse pointer position, works only when called from the xfce4-popup-clipman command |
| /tweaks/reorder-items | bool | true | true or false to push the last copied text to the top of the history, useful to reorder old items |
| /tweaks/reverse-menu-order | bool | false | true or false to display the history in the reverse order |
| /tweaks/skip-action-on-key-down | bool | false | true or false to skip the actions popup menu when the Control key is hold down at the end of the selection|
To change a setting from a terminal type the following command-line:
xfconf-query -c xfce4-panel -p /plugins/clipman/property -s value
To list all settings type this command (the table above may be out of date):
xfconf-query -c xfce4-panel -lv | grep /plugins/clipman
[[|Back to Top]]
----
===== Latest Release =====
{{rss>https://archive.xfce.org/feeds/project/xfce4-clipman-plugin 1 date 2h}}
[[https://gitlab.xfce.org/panel-plugins/xfce4-clipman-plugin/-/blob/master/NEWS|Read the CHANGELOG]]
* **[[https://archive.xfce.org/src/panel-plugins/xfce4-clipman-plugin/|Download current release]]** (older versions of this component are also available here)
[[|Back to Top]]
----
===== Source code repository =====
[[https://gitlab.xfce.org/panel-plugins/xfce4-clipman-plugin]]
----
===== Reporting Bugs =====
* **[[:panel-plugins:xfce4-clipman-plugin:bugs|Reporting Bugs]]** -- List of currently open bugs and instructions on how to submit new bug reports
[[|Back To Top]]
----
[[ :xfce:xfce4-panel:start:|Return to xfce4-panel Main Documentation Page]]