Inicie o processo em segundo plano no atalho de teclado (anexe `& disown` em Ctrl + Enter)

Inicie o processo em segundo plano no atalho de teclado (anexe `& disown` em Ctrl + Enter)

Digamos que eu queira abrir o Chrome, Sublime Idea, etc. na linha de comando, mantendo o controle do terminal.

Existe uma maneira de anexar & disownao comando no Bash quando você pressiona Ctrl+ Enterou outra combinação conveniente?

Tentei criar um alias para eles, por exemplo alias subl='subl & disown', mas passar argumentos não funciona mais e ter que escrever aliases para todos os programas que desejo usar dessa maneira é muito incômodo. Tem que haver uma maneira mais inteligente.

Responder1

Do seu comentário:

Eu adicionei "\C-e": ' & disown\n'e .inputrcele faz o que eu quero em Ctrl+ e. Por alguma razão, não funciona com \nem vez de e.

Eu não acho \nque seja a string certa para usar, mas há um problema maior: em um console Enterem si é \C-M+ Ctrl, Mentão Ctrl+ Enteré justo Entere você não pode diferenciá-los.

Você pode, no entanto, distinguir Entere Meta (aka Alt)+ Enter. Coloque esta linha em seu .inputrc:

"\C-\M-M":' & disown\n'

e aperte Meta (aka Alt)+ Entersempre que quiser usá-lo.

Responder2

Eu aprendi isso\rcompartilha o mesmo código ASCII que Ctrl+ M, o que significa que Ctrl+ Enteré equivalente a Ctrl+ Ctrl+ M. Pressionar Ctrlduas vezes não faz sentido, portanto Ctrl, não Enterpode ser usado junto no terminal sem algum xtermtradução.

Consegui fazer o truque com Ctrl+ Eadicionando "\C-E": ' & disown\n '..inputrc

informação relacionada