Come posso forzare i terminali ad almeno una certa dimensione?


8

Vorrei impedire che uno qualsiasi dei miei terminali Terminator fosse più piccolo di 80x24. Cioè, mi sarebbe impedito di ridimensionare un terminale al di sotto di quella dimensione e se provassi a dividere un terminale che sarebbe troppo piccolo, o i terminali esistenti verrebbero ridotti per adattarsi o i terminali padre e figlio verrebbero spostati in una nuova finestra.

Sono disposto a cambiare i programmi terminali se necessario, sebbene sia preferibile una buona soluzione di piastrellatura come quella di Terminator.

Risposte:


4

Per ottenere ciò che desideri, dovrai modificare il codice sorgente gnome-terminale ricostruirlo da solo, poiché la dimensione minima della finestra è codificata nell'applicazione terminale. Per fare ciò, seguire questi passaggi.

Innanzitutto, vai su https://launchpad.net/ubuntu/+source/gnome-terminal/3.6.1-0ubuntu4 e scarica i file di origine (il file è gnome-terminal_3.6.1.orig.tar.xz). Scarica questo nella tua ~/Downloadscartella.

Quindi, apri un terminale e digita i seguenti comandi:

cd ~/Downloads

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

Questo estrarrà la fonte. Ora apri il tuo editor di testo preferito e modifica il file ~/Downloads/gnome-terminal-3.6.1/src/terminal-window.c. Passa alla riga 3107, dove troverai le variabili MIN_WIDTH_CHARSe MIN_HEIGHT_CHARS. Modificateli, questi sono l'altezza e la larghezza minima della finestra del terminale espressa in caratteri (ovvero un valore MIN_WIDTH_CHARSdi 20 significa che non è più possibile ridimensionare la larghezza della finestra a meno di 20 caratteri di larghezza)

Quindi, per costruire, in un tipo di terminale cd ~/Downloads/gnome-terminal-3.6.1. Quindi, esegui ./configureper generare il makefile (se si lamenta di eventuali pacchetti mancanti, installali usando apt-get(ad esempio se dice "pacchetto foonon trovato" o simile, usa sudo apt-get install foo). Puoi anche provare a installare auto-apte usare sudo auto-apt run ./configure(questo tenterà di installare tutte le dipendenze ), ma quando ho provato questo, non è riuscito a catturare tutto (esegui lo standard in ./configureseguito). Potrebbero essere necessari alcuni tentativi, a seconda del numero di pacchetti mancanti.

Una volta che ha generato i makefile make, digita semplicemente , seguito da sudo make install. Questo dovrebbe ricostruire il programma terminale. Chiudi tutte le finestre del terminale, quindi quella successiva che avvierai rispetterà la dimensione minima impostata nella sorgente (cioè non ridimensionerà al di sotto dei valori che hai definito lì).


Un metodo ancora più completo sarebbe quello di fare esattamente come hai affermato, ma andare al passaggio aggiuntivo dell'utente creando il proprio PPA in modo da creare un .deb che possano mantenere e / o bloccare in modo da non causare problemi durante l'aggiornamento del resto del sistema. In questo modo, il gestore pacchetti sta ancora gestendo i pacchetti, ma l'utente mantiene il controllo solo su quello nel proprio PPA senza compromettere la funzionalità prevista del gestore pacchetti. Citare tanto sarebbe (credo) solidificare il tuo come la risposta "vai a".
Darthlukan,

@darthlukan Punto interessante. In realtà non ci avevo pensato (forse avrei dovuto farlo prima di provarlo io stesso per testarlo) e in effetti non sono sicuro di come si potrebbe fare / applicare eventuali aggiornamenti del pacchetto mantenendo intatte le loro modifiche ... ho appena notato che la domanda si riferisce specificamente a Terminator, mentre questa soluzione è per gnome-terminal, quindi ...
Jez W

Indipendentemente dal fatto che sia gnome-terminal o Terminator (in realtà, Terminator mostra più terminali gnome e gnome-terminal è una dipendenza di terminator), la tua soluzione è ancora pronta. L'utente può fare più o meno la stessa cosa in Terminator, dovrà solo prestare attenzione ai nomi delle variabili che possono essere nomi di file diversi e diversi, ma i passaggi sono tutti uguali (contenuto principale). Quando crei un pacchetto .deb personalizzato e colleghi il tuo PPA ad Apt, il tuo pacchetto avrà la priorità finché bloccherai la versione.
Darthlukan,

4
  1. Premere il tasto super per aprire l'obiettivo di ricerca e cercare: menu principale
  2. Una volta avviata l' applicazione " Menu principale ", seleziona " Accessori " nel menu a sinistra, quindi seleziona " Terminale " nel secondo menu.
  3. Una volta selezionate le opzioni " Terminale ", premi il pulsante " Proprietà " sulla destra. Si aprirà una nuova finestra con le proprietà del Launcher del terminale.
  4. Vai alla voce " Comando " e aggiungi questo alla fine della voce:

    --geometry=132x24
    

    La voce finita dovrebbe essere:

    gnome-terminal --geometry=132x24
    

Questo è tutto. Chiudi le finestre e al prossimo avvio del terminale la finestra verrà ridimensionata. Potrebbe essere necessario disconnettersi e riconnettersi per funzionare correttamente.

(132x24 è solo un esempio, puoi usare qualunque risoluzione tu voglia)


2
Ciò influisce solo sulla geometria iniziale, non impedisce il ridimensionamento del terminale al di sotto delle dimensioni indicate.
Nicholas,

2

Bene, per quanto ne so, non è possibile, la risoluzione di una finestra Terminale si basa sulle proporzioni dei caratteri ... Quindi, se si modifica la dimensione del carattere, la finestra Terminale verrà ridimensionata per adattarsi alla proporzione di quel carattere ...

All'inizio sembra un po 'sciocco, ma dato che un terminale mostra semplicemente solo caratteri di testo, ha senso, se una finestra è dimensionata da pixel, spesso finiresti con uno spazio sprecato quando la dimensione della finestra non esattamente abbina il confine di un personaggio ...


è del tutto peggio che stupido e non si sa perché il programmatore lo abbia fatto. demolitore testa contorta
Carni

1

Se ti trovi in ​​una versione precedente di Ubuntu, fai clic con il pulsante destro del mouse -> finestra delle proprietà, la prima scheda ha due campi in cui puoi modificare le righe e le colonne del terminale.

Altrimenti, è possibile utilizzare l'input del comando a cui si fa riferimento nella risposta uno.

--geometry=132x24

Ciò influisce anche solo sulla geometria iniziale.
Nicholas,

1

Il piccolo trucco sulla dimensione predefinita era argomento qui . Lì, l'utente viscount lo ha risolto creando uno script e posizionandolo in / usr / bin / gnome-terminal in questo modo (suppongo che tu usi gnome come gestore delle finestre):

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

Puoi anche fare clic con il pulsante destro del mouse sull'icona gnome-terminal sulla barra delle applicazioni, selezionare le proprietà, quindi modificare il comando in un comando diverso come:

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

In questo modo hai la tua dimensione predefinita definita.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.