Home » Questions » Computers [ Ask a new question ]

Equivalent/Alternatives for Alt+Dot in Mac

Equivalent/Alternatives for Alt+Dot in Mac

One thing i miss from the Linux shell is the Alt+Dot shortcut. What it does is insert the last argument of the previous command. It appears to be a trivial technique, but it's really useful.

Asked by: Guest | Views: 165
Total answers/comments: 3
Guest [Entry]

"You can press Escape+. many times, it does the same thing as Alt+..
But, like you, I find it more cumbersome to type than Alt+.."
Guest [Entry]

"Use option+.

Note that this is a feature of bash and not linux. Macs have bash on them as well. Alt-. is the shortcut for a builtin bash function insert-last-argument. Read the READLINE section of the bash man page for how you can bind this to a different key combination.

Pasting a few relevant parts:

Readline Initialization
Readline is customized by putting commands in an initialization file (the
inputrc file).
The default key-bindings may be changed with an inputrc file. Other pro-
grams that use this library may add their own commands and bindings.

For example, placing

M-Control-u: universal-argument
or
C-Meta-u: universal-argument
into the inputrc would make M-C-u execute the readline command univer-
sal-argument.

Readline Key Bindings
The syntax for controlling key bindings in the inputrc file is simple.
All that is required is the name of the command or the text of a macro and
a key sequence to which it should be bound. The name may be specified in
one of two ways: as a symbolic key name, possibly with Meta- or Control-
prefixes, or as a key sequence.

When using the form keyname:function-name or macro, keyname is the name of
a key spelled out in English. For example:

Control-u: universal-argument
Meta-Rubout: backward-kill-word
Control-o: ""> output""

In the above example, C-u is bound to the function universal-argument,
M-DEL is bound to the function backward-kill-word, and C-o is bound to run
the macro expressed on the right hand side (that is, to insert the text
``> output'' into the line).

In the second form, ""keyseq"":function-name or macro, keyseq differs from
keyname above in that strings denoting an entire key sequence may be spec-
ified by placing the sequence within double quotes. Some GNU Emacs style
key escapes can be used, as in the following example, but the symbolic
character names are not recognized.

""\C-u"": universal-argument
""\C-x\C-r"": re-read-init-file
""\e[11~"": ""Function Key 1""

Commands for Manipulating the History
insert-last-argument (M-., M-_)
A synonym for yank-last-arg."
Guest [Entry]

"In my preferred terminal (iTerm2) there is an option on the Preferences dialog's Profiles tab in the Keys sub tab to set one or both Option keys to ""Esc+""
Setting the option to Meta did not give me the expected result but setting it to Esc+ gave me the exact behavior I expect. Hold the left option key and press period as many times as I need to to get the text I want from my history!"