# Keybindings

TermRead implements the following keybindings to interact with the input:

<table><thead><tr><th width="196.5">Keybinding</th><th>Action</th></tr></thead><tbody><tr><td><code>ENTER</code></td><td>Accepts input</td></tr><tr><td><code>Ctrl</code>+<code>C</code></td><td>Cancels reading (if <code>TreatCtrlCAsInput</code> is enabled)</td></tr><tr><td><code>Ctrl</code>+<code>A</code> / <code>HOME</code></td><td>Beginning of line</td></tr><tr><td><code>Ctrl</code>+<code>E</code> / <code>END</code></td><td>End of line</td></tr><tr><td><code>Ctrl</code>+<code>B</code> / <code>←</code></td><td>Backward one character</td></tr><tr><td><code>Ctrl</code>+<code>F</code> / <code>→</code></td><td>Forward one character</td></tr><tr><td><code>BACKSPACE</code></td><td>Remove one character from the left</td></tr><tr><td><code>UP ARROW</code></td><td>Get the older input</td></tr><tr><td><code>DOWN ARROW</code></td><td>Get the newer input</td></tr><tr><td><code>DELETE</code></td><td>Remove one character in current position</td></tr><tr><td><code>ALT</code>+<code>B</code></td><td>One word backward</td></tr><tr><td><code>ALT</code>+<code>F</code></td><td>One word forward</td></tr><tr><td><code>TAB</code></td><td>Next auto-completion entry (if there is one)</td></tr><tr><td></td><td>Insert four spaces (if no autocompletions)</td></tr><tr><td><code>SHIFT</code>+<code>TAB</code></td><td>Previous auto-completion entry</td></tr><tr><td><code>CTRL</code>+<code>U</code></td><td>Cut to the start of the line</td></tr><tr><td><code>CTRL</code>+<code>K</code></td><td>Cut to the end of the line</td></tr><tr><td><code>CTRL</code>+<code>W</code></td><td>Cut to the end of the previous word</td></tr><tr><td><code>ALT</code>+<code>D</code></td><td>Cut to the end of the next word</td></tr><tr><td><code>CTRL</code>+<code>Y</code></td><td>Yank the cut content</td></tr><tr><td><code>Alt</code>+<code>L</code></td><td>Make word lowercase</td></tr><tr><td><code>Alt</code>+<code>U</code></td><td>Make word uppercase</td></tr><tr><td><code>Alt</code>+<code>C</code></td><td>Make character uppercase and move to the end of word</td></tr><tr><td><code>Alt</code>+<code>V</code></td><td>Make character lowercase and move to the end of word</td></tr><tr><td><code>Alt</code>+<code>S</code></td><td>Shows all suggestions in the style akin to the Bourne Again SHell (bash)</td></tr><tr><td><code>Alt</code>+<code>R</code></td><td>Refreshes the prompt, the text input, and the current cursor position.</td></tr><tr><td><code>Insert</code></td><td>Text append mode (Insert or append)</td></tr><tr><td><code>CTRL</code>+<code>L</code></td><td>Clears the screen and refreshes the prompt.</td></tr><tr><td><code>ALT</code>+<code>\</code></td><td>Cut the whitespaces before and after the character.</td></tr><tr><td><code>CTRL</code>+<code>T</code></td><td>Substitutes two characters</td></tr><tr><td><code>ALT</code>+<code>T</code></td><td>Substitutes two words</td></tr><tr><td><code>ALT</code>+<code>SHIFT</code>+<code>#</code></td><td>Makes your current input text a comment (visual only, but ignores your text on submit)</td></tr><tr><td><code>ALT</code>+<code>TAB</code> / <code>CTRL</code>+<code>I</code></td><td>Forces the tab character to be written. Writes as spaces.</td></tr><tr><td><code>ALT</code>+<code>SHIFT</code>+<code>C</code></td><td>Temporarily conceals or reveals the whole input in normal prompts.</td></tr></tbody></table>

{% hint style="warning" %}
**Warning:** Some of the keys conflict with the terminal emulator and/or the operating system keybindings.
{% endhint %}
