Eu acho que seria mais útil se eu levasse isso um pedaço de cada vez. O problema geral é: para quem é a imprensa chave pretendida? O terminal ou o programa rodando dentro do terminal?
Como exemplo, "screen", que é um terminal tipo, usa Ctrl + A como um prefixo para seus comandos, para distingui-los das coisas que vão para o executando o próprio programa. (E fornece uma maneira de enviar Ctrl + A .)
gnome-terminal
tem várias chaves que captura para fazer várias coisas, incluindo algumas das quais você pergunta.
Lembre-se também que o "destaque" do terminal é separado da posição do cursor do terminal . Alguns terminais não têm capacidade de destacar nada.
Agora, use essas combinações de teclas por vez:
left+right arrows to move left+right ctrl+arrow to move an entire word home/end to move to start/end of line
Mover o que resta e para a direita? Bash pode ser configurado para fazer isso e normalmente é por padrão. Normalmente, eles movem a posição do cursor.
ctrl+c/ctrl+v to copy/paste
Primeiro: copiar / colar até faz sentido? Se você está em um VT, você não tem uma área de transferência, especialmente se o X não estiver em execução.
Alguns terminais podem copiar texto na saída, e alguns também "colam", simulando a digitação do conteúdo da área de transferência. Ctrl + Deslocamento + V , por exemplo, é colado em gnome-terminal
, o que pode ajudar. (E Ctrl + Shift + C é copy.) Como discutido anteriormente, o grande problema com Ctrl + < kbd> C e Ctrl + V é que eles se sobrepõem aos comandos comuns do terminal / programa. ( Ctrl + C é send interrupt (SIGINT) e Ctrl + V é textual.)
Alguns terminais também suportam dois modos de cópia de dados: uma "cópia justa" mais normal e o que é conhecido como "seleção de bloco" ou "cópia de bloco". (Segure Ctrl e arraste enquanto em gnome-terminal
, por exemplo).
Além disso, xsel -b
pode ser usado para canalizar o conteúdo da área de transferência. Depende da situação exata se xsel
ou a versão do terminal da pasta é mais útil. Veja man xsel
.
shift+arrow to highlight text shift+ctrl+arrow to highlight an entire word
O destaque do seu terminal (se tiver esse recurso) é separado da posição do cursor. Mais uma vez, a falta de combos de teclas disponíveis é provavelmente um fator. Lembre-se de que um destaque tem duas posições: o início e o final ou os cantos superiores esquerdo e inferior direito. Como você gerencia os dois?
Finalmente, observe que muitos terminais GUI, clicando duas vezes em uma palavra, a destacam. (E no X, copie para a seleção principal.)
screen
, como exemplo, possui chaves para alternar para um modo de movimentação pelo buffer (saída anterior) e cópia / colagem.
Acho que se você usar adequadamente o xsel
e a seleção principal, verá que as operações da área de transferência são raras e complexas o suficiente para merecer o uso do mouse.