docs » TextClipboardHistory

Keep a history of the clipboard, only for text entries

Originally based on code by VFS, but with many changes and some contributions and inspiration from asmagill.

Download: https://github.com/Hammerspoon/Spoons/raw/master/Spoons/TextClipboardHistory.spoon.zip

API Overview

API Documentation

Variables

deduplicate
Signature TextClipboardHistory.deduplicate
Type Variable
Description

Whether to remove duplicates from the list, keeping only the latest one. Defaults to true.

frequency
Signature TextClipboardHistory.frequency
Type Variable
Description

Speed in seconds to check for clipboard changes. If you check too frequently, you will degrade performance, if you check sparsely you will loose copies. Defaults to 0.8.

hist_size
Signature TextClipboardHistory.hist_size
Type Variable
Description

How many items to keep on history. Defaults to 100

honor_ignoredidentifiers
Signature TextClipboardHistory.honor_ignoredidentifiers
Type Variable
Description

If true, check the data identifiers set in the pasteboard and ignore entries which match those listed in TextClipboardHistory.ignoredIdentifiers. The list of identifiers comes from http://nspasteboard.org. Defaults to true

ignoredIdentifiers
Signature TextClipboardHistory.ignoredIdentifiers
Type Variable
Description

Types of clipboard entries to ignore, see http://nspasteboard.org. Code from https://github.com/asmagill/hammerspoon-config/blob/master/utils/_menus/newClipper.lua. Default value (don't modify unless you know what you are doing):

 {
    ["de.petermaurer.TransientPasteboardType"] = true, -- Transient : Textpander, TextExpander, Butler
    ["com.typeit4me.clipping"]                 = true, -- Transient : TypeIt4Me
    ["Pasteboard generator type"]              = true, -- Transient : Typinator
    ["com.agilebits.onepassword"]              = true, -- Confidential : 1Password
    ["org.nspasteboard.TransientType"]         = true, -- Universal, Transient
    ["org.nspasteboard.ConcealedType"]         = true, -- Universal, Concealed
    ["org.nspasteboard.AutoGeneratedType"]     = true, -- Universal, Automatic
 }
logger
Signature TextClipboardHistory.logger
Type Variable
Description

Logger object used within the Spoon. Can be accessed to set the default log level for the messages coming from the Spoon.

paste_on_select
Signature TextClipboardHistory.paste_on_select
Type Variable
Description

Whether to auto-type the item when selecting it from the menu. Can be toggled on the fly from the chooser. Defaults to false.

show_in_menubar
Signature TextClipboardHistory.show_in_menubar
Type Variable
Description

Whether to show a menubar item to open the clipboard history. Defaults to true

Methods

bindHotkeys
Signature TextClipboardHistory:bindHotkeys(mapping)
Type Method
Description

Binds hotkeys for TextClipboardHistory

Parameters:

  • mapping - A table containing hotkey objifier/key details for the following items:
    • show_clipboard - Display the clipboard history chooser
    • toggle_clipboard - Show/hide the clipboard history chooser
checkAndStorePasteboard
Signature TextClipboardHistory:checkAndStorePasteboard()
Type Method
Description

If the pasteboard has changed, we add the current item to our history and update the counter

clearAll
Signature TextClipboardHistory:clearAll()
Type Method
Description

Clears the clipboard and history

clearLastItem
Signature TextClipboardHistory:clearLastItem()
Type Method
Description

Clears the last added to the history

pasteboardToClipboard
Signature TextClipboardHistory:pasteboardToClipboard(item)
Type Method
Description

Add the given string to the history

Parameters:

  • item - string to add to the clipboard history

Returns:

  • None
shouldBeStored
Signature TextClipboardHistory:shouldBeStored()
Type Method
Description

Verify whether the pasteboard contents matches one of the values in TextClipboardHistory.ignoredIdentifiers

showClipboard
Signature TextClipboardHistory:showClipboard()
Type Method
Description

Display the current clipboard list in a chooser

start
Signature TextClipboardHistory:start()
Type Method
Description

Start the clipboard history collector

toggleClipboard
Signature TextClipboardHistory:toggleClipboard()
Type Method
Description

Show/hide the clipboard list, depending on its current state

togglePasteOnSelect
Signature TextClipboardHistory:togglePasteOnSelect()
Type Method
Description

Toggle the value of TextClipboardHistory.paste_on_select