I'm using hideshow and I like it. The package is recommending me that I use the keys C-c @ C-h
to hide a block instead of typing some really long command. I'm familiar with C-c
and with C-h
, but I can't figure out what the @
means.
-
Following up on this question, is there any way to change the sequence of keys to something simpler? Like Tab and Shift Tab ? I find this sequence to be too long when working with org files. Thanks.– AnushaApr 18, 2020 at 18:09
2 Answers
@
doesn't mean anything, by itself, beside representing the @
key on your keyboard.
The key sequence C-c @ C-h
is bound to command hs-hide-block
in hs-minor-mode
, that is, in keymap hs-minor-mode-map
.
In that key sequence,
C-c
is a prefix key, which means it's bound to a keymap.In that keymap,
@
is a prefix key, which means it's bound to a keymap.In that keymap,
C-h
is bound to commandhs-hide-block
In hs-minor-mode
, type C-c C-h
to see the key bindings on prefix key C-c
.
Conventionally, typing C-h
after a prefix key shows you all of the keys on that prefix key. Prefix key C-c @
disobeys this convention, so C-c @ C-h
does not show you all the keys on prefix key C-c @
. Instead, it gives you hs-hide-block
.
(IMHO, that's unfortunate, but presumably the author thought otherwise.)
-
1
-
1@npostavs: Yes. Good point. (IMHO, it's still too bad to not support the convention also with
C-h
.)– DrewNov 17, 2019 at 1:44
I'm familiar with C-c and with C-h, but I can't figure out what the @ means.
It's the literal character @
for which your keyboard should have a key (or key sequence). On my keyboard @ is Shift+2.
So just type Ctrl+C and then type @
Conceptually it's no different to being told to type C-c a
(for example).