Assign hotkeys to paste predefined text
I am looking for a program that runs on Ubuntu 12.04+ x86_64
which allows pasting pre-defined text based on hotkey combinations. For instance:
Ctrl+Alt+V+U: pastes my username
Ctrl+Alt+V+E: pastes my email
Any suggestions?
Since Autokey is defunct, here is how I accomplished this.
First install xclip
and xdotool
:
sudo apt-get install xclip xdotool
Now write the text you want to paste and save it in a text file. In this example I wrote my address in a file I called address
.
Now write the bash script:
#!/bin/bash
xclip -in -selection c ~/scripts/xclip-scripts/address
sleep 0.5
xdotool key ctrl+v
xclip -in -selection c
tells xclip
to copy the contents of the file you saved. In this example, that file is at ~/scripts/xclip-scripts/address
.
The sleep
command simply allows enough time for xclip
to finish copying before xdotool
starts trying to paste the text.
The xdotool
command actually does the pasting of the text that xclip copied from your text file.
Save your script and make it executable.
chmod +x /path/to/your/script/<script_name>
The last step is to bind a shortcut key to your script. In Ubuntu this can be set by going to System Settings/Keyboard/Shortcuts and create a custom shortcut.
You can use autokey
.
Follow the instructions below:
-
Installation
Open a terminal (Ctrl+Alt+T) and run the following command:
sudo apt-get install autokey-gtk
-
Adding Phrases
- Open
autokey
using the dash. -
In the window, expand My Phrases.
autokey
already comes with four phrases as you can see in the screenshot below.
- You can either modify the existing phrases or make a new phrase using New button.
- Open
-
Configuring Shortcut Keys
Click on a any phrase name to see the current configuration. In the screenshot above, First phrase is selected.
To change the shortcut key or Hotkey, click on
Set
besides the Hotkey and then click on Press to set in the new dialog box that appears.
Then press the key combination you wish and select OK.
-
Configuring Window Filter
If you wish to use the hotkey only for a particular window, you can set Window Filter by selecting Set > Detect Window Properties and then clicking on the window.
Or if you would like the hotkey to work in all the windows, Clear the Window Filter.
Save the current phrase and Run the current script by clicking on the play-like button on the top write of the window.
-
Using the new shortcuts
- You can close the
autokey
window and use the Hotkey to paste the corresponding phrase.
- You can close the
Further Information: Autokey Wiki