Como forçar os terminais a terem pelo menos um determinado tamanho?

8

Gostaria de impedir que qualquer um dos meus terminais Terminator seja menor que 80x24. Ou seja, eu seria impedido de redimensionar um terminal abaixo desse tamanho e, se eu tentasse dividir um terminal que fosse muito pequeno, os terminais existentes seriam reduzidos para caber ou os terminais pai e filho seriam movidos para uma nova janela

Estou disposto a alterar os programas de terminal, se necessário, embora seja preferível uma boa solução lado a lado como a do Terminator.

Nicholas
fonte

Respostas:

4

Para realizar o que você deseja, você terá que editar gnome-terminale reconstruir o código fonte , já que o tamanho mínimo da janela é codificado no aplicativo de terminal. Para fazer isso, siga estas etapas.

Primeiro, vá para https://launchpad.net/ubuntu/+source/gnome-terminal/3.6.1-0ubuntu4 e baixe os arquivos de origem (o arquivo é gnome-terminal_3.6.1.orig.tar.xz). Faça o download para sua ~/Downloadspasta.

Em seguida, abra um terminal e digite os seguintes comandos:

cd ~/Downloads

tar -xJf gnome-terminal_3.6.1.orig.tar.xz

Isso extrairá a fonte. Agora, abra seu editor de texto favorito e edite o arquivo ~/Downloads/gnome-terminal-3.6.1/src/terminal-window.c. Navegue para a linha 3107, onde você encontrará as variáveis MIN_WIDTH_CHARSe MIN_HEIGHT_CHARS. Edite-os, são a altura e largura mínimas da janela do terminal, expressas em caracteres (ou seja, um MIN_WIDTH_CHARSde 20 significa que você não pode mais redimensionar a largura da janela para menos de 20 caracteres)

Em seguida, para construir, em um tipo de terminal cd ~/Downloads/gnome-terminal-3.6.1. Em seguida, execute ./configurepara gerar o makefile (se houver algum pacote ausente, instale-o usando apt-get(por exemplo, se ele diz "pacote foonão encontrado" ou similar, use sudo apt-get install foo) .Você também pode tentar instalar auto-apte usar sudo auto-apt run ./configure(isso tentará instalar todas as dependências) ), mas quando tentei isso, ele não capturou tudo (execute o padrão ./configureposteriormente). Isso pode levar algumas tentativas, dependendo de quantos pacotes estão faltando.

Uma vez gerados, os makefiles simplesmente digitam make, seguidos por sudo make install. Isso deve reconstruir o programa do terminal. Feche todas as janelas do terminal e, em seguida, a próxima que você iniciar respeitará o tamanho mínimo definido na fonte (ou seja, não será redimensionado abaixo dos valores que você definiu lá).

Jez W
fonte
Um método ainda mais completo seria fazer exatamente o que você indicou, mas siga a etapa adicional do usuário criando seu próprio PPA para criar um .deb que ele possa manter e / ou travar para não causar problemas ao atualizar o restante do sistema. Dessa forma, o gerenciador de pacotes ainda está gerenciando pacotes, mas o usuário mantém controle sobre apenas o do PPA, sem comprometer a funcionalidade pretendida do gerenciador de pacotes. Mencionar o quanto (acho) solidificará o seu como a resposta "vá para".
darthlukan
@darthlukan Ponto interessante. Na verdade, eu não tinha pensado nisso (talvez eu devesse ter feito isso antes para testá-lo) e, de fato, não tenho certeza de como alguém faria isso / aplicaria qualquer atualização de pacote enquanto mantinha as alterações intactas ... só notei que a questão refere-se especificamente ao Terminator que esta solução é para gnome-terminal, então ...
Jez W
Independentemente de ser o gnome-terminal ou o Terminator (na verdade, o Terminator exibe vários terminais gnome e o gnome-terminal é uma dependência do terminador), sua solução ainda está correta. O usuário pode fazer a mesma coisa no Terminator, apenas prestando atenção aos nomes de variáveis ​​que podem ser nomes de arquivos diferentes e diferentes, mas as etapas são as mesmas (conteúdo principal). Quando você cria um pacote .deb personalizado e anexa seu PPA ao Apt, seu pacote substituirá enquanto você bloquear a versão.
darthlukan
4
  1. Pressione a tecla super para abrir a lente de pesquisa e procurar: menu principal
  2. Quando o aplicativo " Menu principal " estiver em execução, selecione " Acessórios " no menu esquerdo e selecione " Terminal " no segundo menu.
  3. Depois de selecionar as opções " Terminal ", pressione o botão " Propriedades " à direita. Uma nova janela será aberta com as propriedades do Iniciador do terminal.
  4. Vá para a entrada " Comando " e adicione-a ao final da entrada:

    --geometry=132x24
    

    A entrada finalizada deve ser:

    gnome-terminal --geometry=132x24
    

É isso aí. Feche as janelas e da próxima vez que você iniciar o terminal, a janela será redimensionada. Pode ser necessário sair e fazer login novamente para funcionar corretamente.

(132 x 24 é apenas um exemplo, você pode usar a resolução que desejar)

cristão
fonte
2
Isso afeta apenas a geometria inicial, não impede que o terminal seja redimensionado abaixo do tamanho especificado.
22413 Nicholas
2

Bem, até onde eu sei, você não pode, a resolução de uma janela do Terminal é baseada nas proporções dos caracteres ... Então, se você alterar o tamanho da fonte, a janela do Terminal será redimensionada para se ajustar à proporção de essa fonte ...

Parece um pouco bobo no começo, mas, como um terminal simplesmente exibe apenas caracteres de texto, faz sentido, se uma janela é dimensionada por pixels, você geralmente acaba com espaço desperdiçado quando o tamanho da janela não é exatamente corresponder a um limite de caractere ...

cristão
fonte
é totalmente pior do que estúpido e não se discute por que o programador fez isso. guincho cabeça convoluta
Carni
1

Se você estiver em uma versão mais antiga do Ubuntu, clique com o botão direito do mouse em -> janela de propriedades, a primeira guia possui dois campos nos quais você pode editar as linhas e colunas do terminal.

Caso contrário, você pode usar a entrada de comando mencionada na resposta um.

--geometry=132x24
cossacksman
fonte
Isso também afeta apenas a geometria inicial.
Nicholas
1

O pequeno truque sobre o tamanho padrão foi o tópico aqui . Lá, o visconde do usuário resolveu o problema criando um script e o colocou em / usr / bin / gnome-terminal como este (suponho que você use o gnome como gerenciador de janelas):

#!/bin/sh
gnome-terminal --geometry=132x24

Você também pode clicar com o botão direito do mouse no ícone do gnome-terminal na barra de tarefas, selecionar propriedades e alterar o comando para outro comando, como:

gnome-terminal --working-directory=%f --geometry=132x24

Dessa forma, você tem seu tamanho padrão definido.

dschinn1001
fonte