Usando layouts de terminal customizados com o Hyper
Em 2016, mostramos aqui no portal como criar um tema para o terminal Hyper que, na época, ainda se chamava HyperTerm.
Também anunciamos a mudança de nome por aqui.
Desde então, o projeto evoluiu bastante e, atualmente, está na lista dos emuladores de terminais preferidos da comunidade.
Hyper terminal
Desta vez, venho falar sobre uma funcionalidade muito legal que estou usando diariamente: Layouts customizados.
O Hyper permite a criação de painéis na mesma janela, facilitando a organização e tornando a nossa vida mais produtiva.
Normalmente, quando vamos começar a trabalhar em um projeto, precisamos rodar alguns comandos no terminal, seja para iniciar a aplicação, rodar algum teste ou iniciar algum outro processo.
Esta tarefa pode ser trivial, mas e se pudéssemos automatizar esse processo?
Veja na imagem abaixo como fica o meu terminal quando vou fazer alguma alteração no meu blog.
Meu terminal quando preciso fazer alguma alteração no meu blog
Para criar painéis no Hyper, basta usar o menu de contexto (botão direito) e selecionar a opção desejada: Split Vertically ou Split Horizontally.
Menu de contexto do Hyper
Após fazer as alterações necessárias no projeto, eu fecho o terminal e aquele layout de painéis se perde, e toda vez que vou iniciar novamente no projeto, preciso abrir cada painel mais uma vez.
Existe uma solução bem legal para isso, o HyperLayout.
O HyperLayout permite a criação de presets de layout para o terminal Hyper.
Veja na imagem abaixo um exemplo retirado do próprio repositório do projeto:
O interessante é que podemos ter um layout por projeto ou, até mesmo, layouts globais.
No caso do meu blog, eu criei um layout específico, que fica versionado no repositório, então quando vou trabalhar nele, basta abrir este preset.
Layouts do HyperLayout devem ser arquivos json com a extensão .hyperlayout
.
Para layouts globais, basta criar um arquivo hyperlayout
no seu home (~/.hyperlayout).
A sintaxe é meio bizarra, mas o resultado final acaba funcionando muito bem.
Dado o seguinte .hyperlayout
:
[ [ "echo 'Hello'", "echo 'World'" ] ]
O resultado será...
Exemplo de layout HyperLayout
Instalação e execução
npm install -g hyperlayout hpm-cli hpm install hyperlayout
O primeiro comando instala o hyperlayout
globalmente (vamos precisar executá-lo para abrir o nosso layout) e também o hpm, que é o package manager do Hyper.
O segundo comando instala o hyperlayout no Hyper.
Agora, seguindo o exemplo do meu blog, basta eu navegar para o diretório do meu projeto, onde já tenho o meu .hyperlayout
e executar (pode ser no próprio Hyper).
Veja como ficou a configuração do meu layout (.hyperlayout
):
[ [ [ "cd ~/Workspace/jaydson.com && ls", "cd ~/Workspace/jaydson.com && hugo server --theme=casper", [ "code ~/Workspace/jaydson.com", ["tree -L 1", "top"] ] ] ] ]
Como podemos configurar comandos a serem executados, é possível já abrir o editor de código preferido 😀
hyperlayout
Interessante a solução, não é mesmo?