GNU Readline is a library that provides command-line editing and history searching capabilities for Bash and other interactive command-line programs. Use this tag for questions relating to the use of Readline functionality in Bash and other software.

learn more… | top users | synonyms

3
votes
1answer
38 views

Shell that tab-completes prefix?

I would like tab completion to behave differently when the cursor is at the beginning of a word than when the cursor is at the end of a word. I've only ever seen shells that tab-complete the suffix, ...
0
votes
1answer
35 views

Readline: treat dash as a word break character

I'd like Readline to consider words separated by dashes as single words, just as Vim does by default. So for example, if I'm at the end of the line below and I type ctrl-W cp long-filename-with-...
3
votes
1answer
35 views

Spurious @ symbol at start of bash prompt in Debian Jessie

As of late, and without my deliberately doing anything to make it happen, my Bash prompt has an at sign (i.e. @) prepended to it. This did not previously happen. Nor can I see anything in my ~/.bashrc ...
1
vote
0answers
24 views

Make Bash's vi-mode default to “normal” Vi mode (not “insert”), and place cursor at start of line, mimicking KornShell

I'm trying to get Bash to mimic the behaviour of KornShell93 (ksh) when the shells are in Vi command line editing mode. KornShell defaults to "Vi normal mode" (a.k.a. "command" mode) and it also ...
5
votes
1answer
52 views

Go forward in bash argument history

I know about Alt + . to show the previous argument in bash. But what if I went past the desired argument (pressing Alt + . one too many times) and I want to go forward in history? Is there a key ...
3
votes
1answer
9 views

Where to find a complete list of bindable readline-functions of Vi mode?

On searching for a way of jumping between whitespaces with GNU Readline library, I discovered the vi-fWord and vi-bWord readline-functions in this question. But strangely, I cannot find any trace of ...
4
votes
1answer
43 views

How do I search bash's history in vi mode for “foo.*bar”

I have my bash environment in vi mode (set -o vi). So I can type <ESC>/ followed by a word, followed by enter, and bash searches for the word in the history. Since / is also vi's method to ...
1
vote
1answer
31 views

Readline bindings not working with Control and Shift modifiers

I'm tweaking with GNU Readline's key bindings in Bash. Specifically, I wish to achieve the following mapping effect: Control' ==> 'I' ControlShift' ==> "I" Control` ==> `I` Control[ ==>...
2
votes
2answers
42 views

If statement in inputrc

I'm using a central location for my bashrc and source that for all my users like this: GLOBAL_BASHRC="/path/to/global/bashrc" if [ -r "$GLOBAL_BASHRC" -a -f "$GLOBAL_BASHRC" ]; then # Load the ...
1
vote
1answer
141 views

Why does ci" (change inside quotes) not work in bash with vi mode enabled?

My favourite way to use bash is with readline's vi mode, enabled with set -o vi. It works perfectly for me, except that ci" does nothing. The change inside X feature does not work. What can I do to ...
1
vote
1answer
36 views

trigger vi mode key binding in normal mode only

I've created some custom key bindings for bash vi mode. They trigger while I'm in insert mode and I want them instead to trigger when I'm in normal mode. I'm using vi mode set -o vi in a terminal ...
1
vote
1answer
22 views

View path options when using readline?

When I am typing in a path at the bash prompt I sometimes do not remember what the directories are so I cannot incrementally search for them. Is there a way in readline to cycle through the ...
4
votes
2answers
70 views

What does “rotate the kill ring” mean?

In the readline info pages : info bash -n "Commands For Kill" M-y Rotate the kill-ring, and yank the new top. You can only do this if the prior command is C-y or M-y. Ì understand ...
3
votes
1answer
108 views

Bash script - auto complete for user input based on array data

In a bash script I'm reading some user input with read. Now I want to provide the possibility to auto-complete the input by hitting the Tab key. Easy example: Let's say, the user shall type in a name ...
3
votes
2answers
69 views

rlwrap: tclsh multi-word autocompletion

How do I get multi-word autocompletion with rlwrap for tclsh? Example: I type file <space> then pressing <tab> <tab> I only want to see the sub-commands to file, such as exists ...
2
votes
1answer
71 views

How to bind “\C-;” in ~/.inputrc?

I use Meta-ijkl as arrows in Emacs, and M-; as a backspace, so I want to make the keys in bash represent the same style. Moving and deleting works well, but for some reason I cannot bind unix-line-...
2
votes
0answers
40 views

Is it possible for bash/readline to “clean up” completion suggestions out the terminal?

If you are using zsh and do a tab completion for commands, pathnames, options etc, whenever there are multiple potential matches the suggestions will be displayed below the prompt. Once you chose a ...
1
vote
1answer
115 views

Implement a shell in a bash script [closed]

I am trying to emulate a shell in a bash script, like this: cmd_shell() { while true; do read -e -p 'pass> ' command run_cmd $command done } It works ok, and the option -...
1
vote
1answer
60 views

Using bind to read the current command line

I'm using bind -x to execute a script whenever a certain key sequence is pressed. For example I have a script at /usr/local/bin/foo with the contents #!/bin/bash echo foo If I run bind -x '" ": ...
2
votes
1answer
77 views

Readline: Binding an ANSI escape sequence to a key

I would like to bind a key with bash / readline, to clear the bottom of my console screen. The ANSI sequence to clear the bottom of the screen is \e[J, so I tried to add the following line to my ....
2
votes
0answers
48 views

readline - use of modifiers other than control and meta

I'm trying to use Apple's ⌘ command and ⌥ option keys to map some functions in readline to no avail. As per the man page I used octal values but that doesn't seem to work \xHH the eight-bit ...
2
votes
0answers
27 views

readline - yank resets set-mark

I want to implement this binding "\C-xk": kill-region # turn previous word into HTML/XML # opening and closing tag pair "\C-xh": "\e \eb\C-xk<\C-y>\e </\C-y>\C-x\C-x" but it returns to ...
6
votes
2answers
827 views

How to display control characters (^C, ^D, ^[, …) differently in the shell

When you type control characters in the shell they get displayed using what is called "caret notation". Escape for example gets written as ^[ in caret notation. I like to customize my bash shell to ...
6
votes
1answer
107 views

Change in bash prompt depending on whether first character is a space

Right now every command which starts with a space character gets ignored by bash history (HISTCONTROL=ignoreboth in ~/.bashrc). I would like to have a better visual cue when I press space as the first ...
2
votes
2answers
125 views

Why does “shift-tab” result in “Escape” in the terminal?

I just noticed this by accident. I use the vi readline mode (run set -o vi in bash) so it is particularly noticeable; in emacs readline mode I don't think Esc does anything, but in vi mode it exits ...
6
votes
2answers
62 views

How can I make readline add pre-“typed” text on terminal startup?

By pre-"typed", I mean the interactive console has code text waiting for the user to (edit and) run by simply pressing enter. It looks like something readline should support, but a confirmation that ...
1
vote
0answers
63 views

paste clipboard text plus string with .inputrc

I've got in my .inputrc something like "\C-v": "script.sh " I use a link from my clipboard as a parameter for the script, so I type ctrl-v and then paste the link, and then hit enter. So I've seen ...
-2
votes
1answer
50 views

Script To Update Multiple Hostnames

Needing a script to read row by row, then ssh into the machine and update the hostname of the machine, then exit and continue with the next row. We have a cvs file that contains the previous hostname ...
2
votes
1answer
82 views

How do I convert inputrc settings to bashrc ones?

I'd like to keep my modifications to as few files as possible, so I don't want to touch .inputrc unless I absolutely have to. So, given .inputrc lines like: "\e[5~": history-search-backward "\e[6~": ...
12
votes
2answers
523 views

Why does bash link to ncurses?

I think I've noticed this before but never thought about it much; now I'm curious. > ldd /bin/bash linux-vdso.so.1 => (0x00007fff2f781000) libtinfo.so.5 => /lib64/libtinfo....
0
votes
0answers
52 views

reverse-i-search (Ctrl-r) with history -r?

I'm searching a way to reload the bash history before executing "Ctrl-r" command. Or better, complete using the .bash_history instead of the in-memory dump. Every Terminal has its "own" history but ...
1
vote
1answer
45 views

Some characters are filtered in bash

I'm currently running a Xubuntu image using VirtualBox and a strange issue just started occurring: I cannot enter a or c in a terminal or terminal emulator. A and C (that is, a/c + left/right Shift or ...
5
votes
1answer
444 views

How to have type-ahead apply to bash history search (Ctrl-R)?

Context Typeahead in bash: good When a bash shell is busy (initializing, running a command), one can type before the next prompt appears. If the shell has launched a program, that program will ...
0
votes
0answers
41 views

readline emacs equivalent to vi's 'fc'

In vi readline, I can use the command fc where c is a character I want to find and jump to in the current line. E.g. echo 'hello world' fw --------> Is there an equivalent command in emacs mode? ...
0
votes
1answer
43 views

Keys in the keyboard are not functioning in an interactive script!

I am using this code in bash to make my script interactive. What I mean by interactive is to let the script ask me questions such as what is the path to my data: #!/bin/bash -ef read userInput if [[ -...
2
votes
1answer
192 views

bash/gnu readline multiline command: move row up/down

How to move one editing row up (back) or down (forward) in a multi-line command in bash/readline? Somethnig like gj/gk in Vim.
0
votes
1answer
245 views

inputrc not loading correctly

I added the following to my ~/.inputrc: set show-all-if-ambiguous on # single tab to start completion help set completion-ignore-case on # completion is case-insensitive $include /etc/inputrc ...
4
votes
0answers
155 views

Bash command not found due to stray garbage characters

What is the cause of this behavior? $ cd ../ $ bash: $'\210\210cd': command not found This happens sometimes (rarely) when I enter a command, there is no visible character preceding the cd, still ...
1
vote
0answers
59 views

Clear the terminal in “vi” mode? (equivalent of “ctrl+l” from “emacs” mode) [duplicate]

I am aware of Ctrl+L on bash terminal (using it on Ubuntu) which clears the screen by applying appropriate scrolling on bash terminal. After learning that the terminal is by default set to emacs mode ...
1
vote
1answer
72 views

How can I change readline settings on keypress?

I checked docs for readline (in man bash), and I can't find a way to solve one problem: how to change readline setting (set ... on/off) on keypress? Keybindings seem to have form: key:function or ...
1
vote
1answer
66 views

bash show-all-if-ambiguous turns on spontaneously

I am using tmux and bash. I find that, at seemingly random intervals, my running shells have show-all-if-ambiguous set to on. This is a significant annoyance to me, since many of my operations are in ...
3
votes
0answers
96 views

Are there any command line IRC clients that use readline?

I'm currently using irssi as my irc client, which is ok, mostly, but there are a couple of things that would make the chat experience better: readline support -- the ability to use vi key bindings ...
5
votes
2answers
436 views

Bash displays international characters as escape sequences

When I press certain keys (e.g. German umlauts) in the bash command line, I get escape sequences. For example, ß gives me \303. These escape sequences are treated as single characters, so one ...
5
votes
3answers
461 views

How to undo changes in the commands-history?

In UNIX systems you can press top and bottom arrows to navigate through the previous commands. This is extremely handy. Sometimes, I go up and find a command that I want to use again, but with some ...
4
votes
2answers
97 views

Coming back to a command I have partially written [duplicate]

Often I find myself partway through writing a long command (or chain of commands) and realise I need to run another command before I can finish typing out this current one. Examples Sometimes, I... ...
1
vote
1answer
210 views

Enable cursor keys in python shell over ssh

I run OpenElec on a Pi. I can ssh to the Pi and open a python shell. How do I enable the cursor keys to work like up getting to last command in the python shell, like it does on my Ubuntu box. Now ...
3
votes
2answers
249 views

How do I swap the two last command line arguments?

$ ln -s ./dir/target.txt /path/to/source.txt{cursor here} How do swap file typed filenames in command line? Alt+T swaps words, not filenames, resulting in ln -s ./dir/target.txt /path/to/txt.source. ...
2
votes
1answer
565 views

Strip newline from piped input

I've been setting up a script to work with haste-server. This takes piped or file input (tail /var/log/messages | haste and haste < /path/to/file.txt) and submits it to the server which then ...
5
votes
1answer
210 views

Remap Return key in terminal to prevent accidental command on productions servers

I am looking for a way to remap the key for executing commands in terminal (I am using bash) to prevent accidental commands on productions servers. Return should be disabled. I tried the following ...
6
votes
3answers
228 views

Deleting input forward to the next space

When in terminal I can use Ctrl+w to delete a whole word or IP (. is separator for each octet) when going leftward of prompt. However, if I try Alt+d to go rightward of prompt, terminal recognizes "." ...