Skip to content

Instantly share code, notes, and snippets.

@ognistik
Created December 9, 2024 23:43
Show Gist options
  • Save ognistik/873a313f8c316677f06084f0eba74a79 to your computer and use it in GitHub Desktop.
Save ognistik/873a313f8c316677f06084f0eba74a79 to your computer and use it in GitHub Desktop.
PasteFlow Key Bindings

PasteFlow Key Bindings

This is my custom keyboard bindings and arguments to use with PasteFlow, a paste stack for Alfred that helps pin and reuse text, files, and more. My configuration is a work in progress that I often tweak, so you can always find the most up-to-date version at THIS LINK (just search for "pasteflow").

I use Karabiner Elements, a powerful keyboard customization tool for macOS that lets me create layers and sub-layers, similar to having multiple keyboard layouts that activate with different modifier keys. This gives me unlimited possibilities for triggering different actions with just a few keystrokes. If you're using a mechanical keyboard, you can achieve similar results with firmware like QMK or VIA.

In my setup, I use Caps Lock as the main layer key, with additional S and E sub-layers. I configure these key bindings using Goku, which makes setting up Karabiner much easier through a simple configuration file. Since I usually keep my left hand on the keyboard (with my right hand occasionally on the mouse), I've designed all PasteFlow shortcuts to work with just the left hand. While this setup might not suit everyone's needs, the following table might give you some ideas for your own keyboard customization.

Keys Arguments Action
CAPS LOCK | S Layer + C toggleSingleClear Clear Single Items Toggle
CAPS LOCK | S Layer + CMD + C toggleDnd Do Not Disturb Toggle
CAPS LOCK | CMD + C c!!addCurrentClip Add Selection to PasteFlow
CAPS LOCK | OPT + C c!!addSplitClip Split & Add Selected Text to PasteFlow
CAPS LOCK | S Layer + D mainMenu Main Menu
CAPS LOCK | E Layer + D c!addRawClip Add Selection as RAW CLIPBOARD
CAPS LOCK | E Layer + CMD + D c!addRawClip,0,0,1 Add Selection as RAW CLIPBOARD NEXT
CAPS LOCK | S Layer + E pasteStack Paste Entire Stack
CAPS LOCK | S Layer + CMD + E copyStack Copy Entire Stack
CAPS LOCK | E Layer + F addRawClip Add Current Clipboard as RAW CLIPBOARD
CAPS LOCK | E Layer + CMD + F addRawClip,0,0,1 Add Current Clipboard as RAW CLIPBOARD NEXT
CAPS LOCK | S Layer + R pasteStack,0,1,0 Paste Entire Stack INVERTED
CAPS LOCK | S Layer + CMD + R copyStack,0,1,0 Copy Entire Stack INVERTED
CAPS LOCK | V !addSplitClip Split & Add Current Clipboard to PasteFlow
CAPS LOCK | CMD + V pasteNext Paste Next
CAPS LOCK | OPT + V pasteNext,0,1,0 Paste Previous
CAPS LOCK | CMD + W clearList Clear Stack
CAPS LOCK | OPT + W resetNext Reset Next Item
CAPS LOCK | X viewStack Text View
CAPS LOCK | S Layer + X !addCurrentClip Add Current Clipboard
CAPS LOCK | S Layer + CMD + X !addCurrentClip,0,0,1 Add Current Clipboard NEXT to PasteFlow
CAPS LOCK | CMD + X c!!addCurrentClip,0,0,1 Add Selection (In NEXT Item Index)
CAPS LOCK | OPT + X c!!addSplitClip,0,0,1 Split & Insert in PasteFlow (In NEXT Item Index)
CAPS LOCK | Z inputPasteItem Selective Processing Menu
CAPS LOCK | CMD + Z textEditListX Edit List
CAPS LOCK | OPT + Z inputManual Add in Text View
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment