Não posso responder sobre o que há de mais longo em algum lugar, mas aqui estão algumas informações que podem ajudar.
Eu tenho algumas bibliotecas que fornecem um conjunto de comandos relacionados vinculados a chaves em um mapa de teclas que eu vinculo a uma chave de prefixo.
Como não quero cooptar chaves de usuário etc., normalmente vinculo essa chave de prefixo em, digamos C-x
ou, para other-window
comandos, em C-x 4
(mapa de teclas ctl-x-4-map
).
As mesmas considerações se aplicam a grupos de comandos em um mapa de teclado: eles às vezes obtêm seu próprio mapa de teclado. E assim por diante, recursivamente.
Espero que pelo menos alguns usuários possam querer reconectar esses mapas de teclas (em qualquer nível) com suas próprias chaves de prefixo mais curtas, ou podem querer vincular comandos específicos a sequências de teclas mais curtas. Mas não quero fazer isso na própria biblioteca, obviamente.
Aqui está um exemplo de uma chave bastante longa: C-x 4 j t . % *
(sete pressionamentos de tecla), que é obrigada a comandar icicle-bookmark-file-this-dir-all-tags-regexp-other-window
no Marcador + .
Anatomia:
Na C-x 4
tecla do prefixo ( ctl-x-4-map
).
Na j
tecla prefixo, que é para todos os comandos para pular para um marcador .
Na t
tecla prefixo, que é para todos os comandos para ir para os marcadores que são marcados de alguma forma.
Na .
chave de prefixo, que é para todos os comandos para saltar para indicadores que são para arquivos no diretório atual que são marcados de alguma forma.
Na %
chave de prefixo, que é para todos os comandos para saltar para marcadores que são para itens no diretório atual que possuem tags que correspondem a um regexp para o qual você é solicitado.
Na *
chave, que é para todos os comandos para ir para os marcadores que são para itens no diretório atual que possuem tags , TODOS os quais correspondem a uma regexp solicitada. (Por outro lado, C-x 4 j t . % +
é para os favoritos ALGUNS cujas tags correspondem ao regexp.)
Tudo isso é convencional no Bookmark + (e parte corresponde às convenções Dired, BTW): j
é para comandos de salto , t
é para tag , .
é para diretório atual , %
é para regexp e *
é para todos ( +
é para alguns ).
(Oh, e usando @ sexp das mkcms, eu recebo C-x 4 j t f % *
, que é igualmente longo. O f
significa arquivo . É como C-x 4 j t . % *
, mas os marcadores candidatos para a conclusão são todos os marcadores de arquivos, não apenas aqueles para os arquivos no diretório atual ( .
).)