Ubuntu – Searchable Clipboard Manager, like ctrl-r in bash

clipboardhistoryindicatorsoftware-recommendationtext;

I am looking for a clipboard manager with search functionality.
I love CtrlR in the bash shell and would like to have the same functionality like that in clipboard manager for my desktop.

Up to now I have been using diodon, but this feature does not exist in diodon. See the related question there https://answers.launchpad.net/diodon/+question/403507

Use Case:

  • I copy+pasted "internationalisation" before.
  • I type the next text.
  • I want to insert "internationalisation" again.
  • I hit some magic key stroke. Then "inter" and then I want to see a list of all strings I copy+pasted during the last days.
  • I choose the one I want. Done.

With diodon I get a long list of last matches, that's good, but not perfect.

Best Answer

Introduction

As stated in the comments, I've written a simple clipboard manager indicator with use of Python 3 and a few zenity dialogs, which allows manipulating clipboard contents, as well as has search functionality.

Search functionality, in particular, makes use of Python's re module, which means you can use regex expressions for more fine-grained search. Each text entry has 4 options in its submenu: insert text into clipboard, append text to the end of what's currently in cliboard, prepend text to the beginning of current contents, and remove it from history.

Installation

In terminal , run the following commands:

sudo add-apt-repository ppa:1047481448-2/sergkolo
sudo apt-get update
sudo apt-get install indicator-bulletin

Demo

In the animation below you can see demonstration of text being copied, clipboard appended to with the indicator, and finally the test string is searched via simple search dialog. The found contents are displayed in a simple text view dialog with timestamp in user's locale (if it's set). The found text then can be copied via selecting text and using standard Ctrl+C shortcut. enter image description here

In case anybody is wondering:

Further development

The indicator was made in one day, thus it is fairly minimalistic in nature as of right now. In future there will be additional features added, such as preferences dialog. The menu length and text width are currently hard-coded to 10 items in the indicator and 30 characters max for each entry.

If you want to make a feature request, please submit an issue ticket on project's GitHub page, where its source code is also available.

Updates:

February 14,2017:

  • Implemented file operations feature - loading a text file into clipboard and writing clipboard contents to file.
  • Implemented displaying range of entries by date. The option calls for zenity forms dialog which requires starting and ending date in YYYY/MM/DD/HH:SS format. Effectively, this is log reading within date range, same as this
  • couple bug fixes

February 15,2017:

  • Added editing submenu. Users now can convert clipboard contents to upper/lower case, trim words/characters from beginning or end of the text, and replace expressions(uses python's re regex).

February 17,2017:

  • Added option for opening a history item in text file ( similar to bash's fcedit). So far this only opens default program set for the plain-text filetype.
  • couple improvements and bug fixes.

February 19,2017:

  • Added base64 operations (encode/decode).

March 3rd,2017:

  • Added "Pinned submenu" and ability to "pin" specific items from clipboard history. Code refactored, certain parts rewritten for repeated use.
Related Question