Terminal: atalhos de atalhos para comandos textuais

4

Existe uma maneira de ligar teclas de atalho a comandos textuais no terminal? Por exemplo: ctrl+b == git branch <ret>

    
por EpsilonVector 22.11.2012 / 13:53

4 respostas

7

Você pode usar o comando bash bind como visto na resposta vinculada do Stackoverflow.

No seu caso, o comando seria:

bind '"\C-b":"git branch\n"'

Para colocá-lo de sessão em sessão, adicione-o ao seu ~/.inputrc

Referência de vinculação de Bash. (também disponível como man bash )

    
por Tron 22.11.2012 / 16:21
2

Em vez de uma tecla de atalho, que tal um bash alias ?

Por exemplo:

alias b='git branch'

agora b é um alias para git branch e você pode simplesmente digitar b <ret> no seu terminal.

É muito melhor do que uma tecla de atalho, pois você ainda pode adicionar outras opções ao seu comando antes de pressionar Enter. Por exemplo:

b --all
b --remotes
b -m newbranch

... e assim por diante.

Para tornar esse alias permanente, adicione-o ao final de seu ~/.bashrc ou ~/.bash_aliases . O último é o preferido, mas só funciona se o seu ~ / .bashrc o fornecer. O padrão para o Ubuntu 12.04 faz.

Você pode verificar se um determinado comando já está atribuído a um alias, programa, função ou incorporado usando type <command> :

$ type b
b is aliased to 'git branch'

$ type cp
cp is /bin/cp

$ type cd
cd is a shell builtin

$ type quote
quote is a function
quote () 
{ 
    echo \'${1//\'/\'\\'\'}\'
}

$ type c
bash: type: c: not found

Por último, mas não menos importante, também vale a pena verificar a disponibilidade de comandos que não existem no seu sistema , mas podem existir nos repositórios do Ubuntu:

$ blender
The program 'blender' is currently not installed.  You can install it by typing:
sudo apt-get install blender

Desta forma, o seu alias não obscurece nenhum comando (atual ou futuro)

    
por MestreLion 22.11.2012 / 15:17
0

Claro.

A melhor maneira seria:

  • Escreva um script com o comando que você deseja executar
  • Crie um arquivo .desktop para este arquivo .sh
  • Atribuir uma tecla de atalho para este arquivo .desktop
por deshmukh 22.11.2012 / 14:06
0

Um programa como o xmacro pode ajudar:

 xmacrorec can be used to record mouse and keyboard events on any X11 display.
 .
 xmacroplay can be used to playback recorded events or send any other
 mouse/keyboard events you choose. It is very handy for scripting an
 X display - for example controlling a presentation in mgp or ultrapoint
 from a script, network connection...
 .
 xmacroplay-keys is a script to help use the above.

Veja esta questão e sua resposta para mais detalhes.

    
por roadmr 22.11.2012 / 15:38