Tente dar uma olhada nesta pergunta no SO: existem combinações de teclas emacs reservadas para comandos personalizados?
Quanto a ver o que está disponível, há a unbound
biblioteca (veja a primeira resposta à pergunta acima).
Uma convenção (retirada da minha resposta a essa pergunta ) é:
Você pode redefinir qualquer coisa, mas a convenção é usar C-c l (onde lestá qualquer letra).
Como usuário, você pode redefinir qualquer chave; mas geralmente é melhor manter as seqüências principais que consistem em C-c
seguidas de uma letra (maiúscula ou minúscula). Essas chaves são "reservadas para usuários", para que não entrem em conflito com nenhuma extensão do Emacs projetada corretamente. As teclas de função F5através F9também estão reservados para os usuários. Se você redefinir outra tecla, sua definição poderá ser substituída por determinadas extensões ou modos principais que redefinem a mesma tecla.
Lembre-se de que as combinações de teclas são diferentes em cada um dos vários modos (principal e secundário); portanto, o que está disponível em um buffer não está necessariamente disponível em outro. E torne suas associações de teclas no nível mais localizado possível. Por exemplo, se a funcionalidade faz algo para uma linha de código, não fazer uma ligação para ela chave global, defini-lo nos keymaps apropriados ( c++-mode-map
, ruby-mode-map
, etc.).
Quanto às suas tarefas específicas, você notou:
- M-% aka
query-replace
- C-M-% aka
query-replace-regexp
Além disso, quando estiver pesquisando ( C-sou C-M-s(e as variantes reversas)), você pode digitar M-%(ou C-M-%) para inserir diretamente query-replace
( query-replace-regexp
) com a sequência de pesquisa como a alternativa a substituir ... Bastante útil.