Как я могу заставить терминалы быть хотя бы определенного размера?


8

Я хотел бы, чтобы любой из моих терминальных терминалов был меньше 80x24. Таким образом, я не смог бы изменить размер терминала ниже этого размера, и если бы я попытался разделить терминал, который был бы слишком маленьким, либо существующие терминалы были бы сжаты, чтобы соответствовать, или родительский и дочерний терминалы были бы перемещены в новое окно.

Я готов поменять терминальные программы, если это необходимо, хотя предпочтительнее хорошее решение для работы с тайлами, например, Terminator.

Ответы:


4

Чтобы выполнить то, что вы хотите, вам нужно отредактировать исходный код gnome-terminalи перестроить его самостоятельно, так как минимальный размер окна жестко запрограммирован в терминальном приложении. Для этого выполните следующие действия.

Сначала перейдите на https://launchpad.net/ubuntu/+source/gnome-terminal/3.6.1-0ubuntu4 и загрузите исходные файлы (файл gnome-terminal_3.6.1.orig.tar.xz). Загрузите это в свою ~/Downloadsпапку.

Затем откройте терминал и введите следующие команды:

cd ~/Downloads

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

Это позволит извлечь источник. Теперь откройте ваш любимый текстовый редактор и отредактируйте файл ~/Downloads/gnome-terminal-3.6.1/src/terminal-window.c. Перейдите к строке 3107, где вы найдете переменные MIN_WIDTH_CHARSи MIN_HEIGHT_CHARS. Отредактируйте их, это минимальная высота и ширина вашего окна терминала, выраженная в символах (то есть, значение MIN_WIDTH_CHARS20 будет означать, что вы больше не сможете изменять ширину окна до размеров ниже 20 символов)

Затем, чтобы построить, в терминале типа cd ~/Downloads/gnome-terminal-3.6.1. Затем запустите, ./configureчтобы сгенерировать make-файл (если он жалуется на отсутствующие пакеты, установите их, используя apt-get(например, если он говорит «пакет fooне найден» или аналогичный, используйте sudo apt-get install foo). Вы также можете попробовать установить auto-aptи использовать sudo auto-apt run ./configure(это попытается установить все зависимости). ), но когда я попробовал это, он не совсем все поймал (запустите стандарт ./configureпотом) Это может занять несколько попыток, в зависимости от того, сколько пакетов отсутствует.

После того, как он сгенерировал make-файлы, просто введите make, а затем sudo make install. Это должно восстановить программу терминала. Закройте все окна терминала, и затем следующее, которое вы запустите, будет соответствовать минимальному размеру, который вы установили в источнике (т.е. не изменит размер ниже значений, которые вы там указали).


Еще более полным методом было бы сделать именно так, как вы заявили, но пройти дополнительный шаг пользователя, создавая свой собственный PPA, чтобы создать .deb, который он может поддерживать и / или заблокировать, чтобы не вызывать проблем. при обновлении остальной системы. Таким образом, менеджер пакетов по-прежнему управляет пакетами, но пользователь сохраняет контроль только над одним из них в своем PPA без ущерба для предполагаемой функциональности менеджера пакетов. Упоминание настолько, насколько я думаю, укрепит вашу уверенность в ответе «перейти к».
дартлукан

@darthlukan Интересный момент. На самом деле я не думал об этом (возможно, мне следовало бы пройти через это сам, чтобы проверить это), и на самом деле я не уверен, как можно поступить так / применить любые обновления пакетов, сохраняя их изменения нетронутыми ... Я также только что заметил, что вопрос относится именно к Терминатору, тогда как это решение предназначено для gnome-терминала, так что ...
Jez W

Независимо от того, является ли он терминалом gnome или Terminator (фактически, Terminator отображает несколько терминалов gnome, а терминал gnome является зависимостью от терминатора), ваше решение по-прежнему остается правильным. Пользователь может сделать почти то же самое в Terminator, ему просто нужно обратить внимание на имена переменных, которые могут отличаться, и имена файлов могут отличаться, но все шаги одинаковы (основной контент). Когда вы создаете пользовательский пакет .deb и присоединяете PPA к Apt, ваш пакет будет переопределен, пока вы заблокируете версию.
Дартлукан

4
  1. Нажмите супер-клавишу, чтобы открыть поисковый объектив и найдите: главное меню
  2. После запуска приложения « Главное меню » выберите « Аксессуары » в левом меню, а затем выберите « Терминал » во втором меню.
  3. После выбора параметров « Терминал » нажмите кнопку « Свойства » справа. Откроется новое окно со свойствами терминала запуска.
  4. Перейдите к записи « Команда » и добавьте ее в конец записи:

    --geometry=132x24
    

    Готовая запись должна быть:

    gnome-terminal --geometry=132x24
    

Вот и все. Закройте окна и при следующем запуске терминала размер окна изменится. Возможно, вам придется выйти и снова войти в систему, чтобы работать должным образом.

(132х24 - это просто пример, вы можете использовать любое разрешение)


2
Это влияет только на начальную геометрию, оно не препятствует изменению размера терминала ниже заданного размера.
Николай

2

Ну, насколько я знаю, вы не можете, разрешение окна терминала основано на пропорциях символов ... Так что, если вы измените размер шрифта, окно терминала изменится в соответствии с пропорцией этот шрифт ...

Поначалу это звучит немного глупо, но, учитывая, что терминал просто отображает только текстовые символы, имеет смысл, если размер окна измеряется в пикселях, вы часто теряете пространство впустую, когда размер окна не совсем точно соответствовать границе персонажа ...


это намного хуже, чем глупо, и никто не задумывался, почему программист сделал это. извилистый главный вредитель
Карни

1

Если вы работаете в более старой версии Ubuntu, в окне правой кнопки мыши -> свойства на первой вкладке есть два поля, в которых вы можете редактировать строки и столбцы терминала.

В противном случае вы можете использовать команду ввода, указанную в ответе один.

--geometry=132x24

Это также влияет только на исходную геометрию.
Николай

1

Небольшая хитрость о размере по умолчанию была темой здесь . Там пользователь viscount решил эту проблему, создав сценарий и поместив его в / usr / bin / gnome-терминал следующим образом (я предполагаю, что вы используете gnome в качестве оконного менеджера):

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

Вы также можете щелкнуть правой кнопкой мыши значок gnome-терминала на панели задач, выбрать свойства, а затем изменить команду на другую команду, например:

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

Таким образом, у вас есть свой собственный размер по умолчанию.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.