LINUX.ORG.RU

Минимальный размер консоли


0

1

На моей системе стянуть окно консоли по вертикали до нуля нельзя, но по горизонтали можно, что не всегда хорошо. Есть ли команда или системная переменная для ограничения минимального размера консоли по оси Y, до высоты в 3-4 строки текста? Необходимо программно ограничивать этот параметр.

★★★★★

Ответ на: комментарий от Napilnik

Эм. Это не команда. Попробуй посмотреть возможности своего оконного менеджера. Тот же Квин умеет это через гуй ограничивать, к примеру.

LightDiver ★★★★★
()
Ответ на: комментарий от LightDiver

Не подойдёт, надо что-то универсальное, не зависящее от ДЕ. У меня консольная программа падает если размер окошка стремится к нулю, и запретить ненужное и ведущее к багу действие намного проще чем отлавливать все переменные значение которых выходит за допустимый диапазон. У неконсольных графических приложений фича ограничения минимального размера окна имеется, и это удобно. А если искать кучу фич для каждого ДЕ, то проще отловить баги в коде, тот же mc не падает при нулевом размере окна, значит его авторы смирились и забили на простую возможность упростить код.

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от Napilnik

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

Слова истинного эфирщика! Но как и в случае с обычной физикой, рекомендую ознакомится с матчастью — pty, эмуляторы терминалов, SIGWINCH, и т.д.

baverman ★★★
()
Ответ на: комментарий от Napilnik

Не подойдёт, надо что-то универсальное, не зависящее от ДЕ. У меня консольная программа падает если размер окошка стремится к нулю, и запретить ненужное и ведущее к багу действие намного проще

А, так ты хочешь подпорки поставить под свой неработающий быдлокод? Огорчу тебя, во-первых, что бы ты не делал, проблема всё равно останется у тебя. Во-вторых, ограничить ничего не получится, wm имеют полное право игнорировать любые хинты (и делают это).

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

Не, они просто руками код пишут а не задницей. Забить на проверки, обеспечивающие корректное поведение кода в разных ситуациях - это не упрощение, это позорище.

slovazap ★★★★★
()
Ответ на: комментарий от slovazap

А, так ты хочешь подпорки поставить под свой неработающий быдлокод? Огорчу тебя, во-первых, что бы ты не делал, проблема всё равно останется у тебя.

Во первых, неработающий быдлокод находится в твоих влажных фантазиях, всё давным давно работает и автор не я, иначе лишний раз залез бы в код вместо чтения документации в которой нужной фичи может и не быть. И как проблема останется у меня если баг пофиксится? Баги в результате которых программа так или иначе падает, фиксятся легче тех где программа не падает.

Не, они просто руками код пишут а не задницей. Забить на проверки, обеспечивающие корректное поведение кода в разных ситуациях - это не упрощение, это позорище.

Открой для себя среды быстрой разработки оконных графических приложений - ставишь в свойствах окна его минимальные размеры и никакого позорища. Если не веришь, то можешь _попытаться_ стянуть до нуля окошко konqueror

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от Napilnik

Открой для себя среды быстрой разработки оконных графических приложений - ставишь в свойствах окна его минимальные размеры и никакого позорища. Если не веришь, то можешь _попытаться_ стянуть до нуля окошко konqueror

Ты дурак? WM как хочет, так и меняет размер окна. Если там реализовано поведение учитывать эти хинты - сжать нельзя. Иначе можно

ставишь в свойствах окна его минимальные размеры и никакого позорища.

С виндой не попутал?

hvatitbanit
()
Ответ на: комментарий от Napilnik

Не подойдёт, надо что-то универсальное, не зависящее от ДЕ.

Графические настройки не зависящие от графического окружения...

У меня консольная программа падает если размер окошка стремится к нулю

Попробуй писать код руками. Даже если случиться чудо и ты найдешь способ ограничивать размер окна я более чем уверен что твое приложение будет падать при запуске в голой консоле например по ssh и ты прибежишь на лор с вопросом «Как запретить запуск консольного приложения без DE»

TDrive ★★★★★
()
Ответ на: комментарий от hvatitbanit

Ты дурак? WM как хочет, так и меняет размер окна. Если там реализовано поведение учитывать эти хинты - сжать нельзя. Иначе можно

От дурака и слышу. Если в фреймворке не реализована, или в программе его использующей отключена, поддержка фичи, например закрытия окна кликом по крестику в углу, то хоть обкликайся - WM не будет делать это за программу.

ставишь в свойствах окна его минимальные размеры и никакого позорища.

С виндой не попутал?

Неа, в линуксе тоже такое есть, но может быть не у всех.

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от TDrive

Попробуй писать код руками. Даже если случиться чудо и ты найдешь способ ограничивать размер окна я более чем уверен что твое приложение будет падать при запуске в голой консоле например по ssh и ты прибежишь на лор с вопросом «Как запретить запуск консольного приложения без DE»

Телепаты атакуют:)

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от Napilnik

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

O shi~ ты еще и быдлокодер. Исправляй ошибку у себя в программе.

Waterlaz ★★★★★
()
Ответ на: комментарий от Napilnik

Открой для себя среды быстрой разработки оконных графических приложений - ставишь в свойствах окна его минимальные размеры и никакого позорища. Если не веришь, то можешь _попытаться_ стянуть до нуля окошко konqueror

В xmonad я что угодно могу до любых размеров «стянуть»

Waterlaz ★★★★★
()
Ответ на: комментарий от Napilnik

От дурака и слышу. Если в фреймворке не реализована, или в программе его использующей отключена, поддержка фичи, например закрытия окна кликом по крестику в углу, то хоть обкликайся - WM не будет делать это за программу.

Причём тут ресайз только? По твоему программа тоже сама отвечает за ресайз, за расположение на окне и прочее? Ещё 4 звёздочки! Позор!

hvatitbanit
()
Ответ на: комментарий от hvatitbanit

Причём тут ресайз только? По твоему программа тоже сама отвечает за ресайз, за расположение на окне и прочее? Ещё 4 звёздочки! Позор!

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

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от LightDiver

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

Зы. Несколько раз скомпилил, уронил и нашёл таки баг - при схлопывании окна получалась операция DIV 0 Сейчас набегут грамотеи и начнут кричать на тему как это _я_ такое мог написать без проверки:)

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от Napilnik

Вот это обведенное красным - конкверор. Специально сделал его большим 50х80 пикселей, чтобы было видно что это именно он. А так - можно любой размер. Видимо да, у меня какие-то другие кеды.

LightDiver ★★★★★
()
Ответ на: комментарий от x3al

Ага, каждый новый программист должен лично правильно переписать всё что накодили до него предшественники.

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от Napilnik

работает и автор не я

Мне твои оправдания не интересны. Если программа падает при нулевом размере - баг в ней, и хоть ты действительно _попытайся_ во всех DE сжимать окна до нулевого размера, баг в ней останется. Во-первых, он рано или поздно вылезет по факту потому что появится DE которая плевать хотела на твои требования, во-вторых, при таком быдлокодерском подходе вылезут десятки других багов. Полагаться на внешние данные нельзя ни при каких условиях, это аксиома.

Открой для себя среды быстрой разработки оконных графических приложений - ставишь в свойствах окна его минимальные размеры и никакого позорища. Если не веришь, то можешь _попытаться_ стянуть до нуля окошко konqueror

Только что это сделал, и не попытался, а стянул.

slovazap ★★★★★
()
Ответ на: комментарий от Napilnik

Если ты такой офигенный программист что всегда проверяешь делитель на 0 перед делением, то баги в коде от которого зависишь ты уж как-нибудь осилишь исправить.

slovazap ★★★★★
()
Ответ на: комментарий от Napilnik

Не подойдёт, надо что-то универсальное, не зависящее от ДЕ.

DE тут никаким боком и не стояло. Что делать с окном решает WM, а он может забить на HINTS, и ресайзить до таких размеров, которые ему захочется.

andreyu ★★★★★
()
Ответ на: комментарий от slovazap

то баги в коде от которого зависишь ты уж как-нибудь осилишь исправить.

Падающий с ошибкой код понятно как исправлять, хуже когда в чужом коде лютое ООП, баг состоит в том что фича Х не работает, то есть событие заключается в отсутствии события, и искать нужно в процедуре типа указатель которая указывает неизвестно на что, не находящееся поисковиком:( Тут уж надо спрашивать на тематическом форуме и зубрить целый пласт знаний - придумали хреновы изобретатели развлечение.

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от Waterlaz

...Сказал чел с ником Ватерклозет...

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от Napilnik

Я же сказал - мне твои оправдания не интересны. Можешь - найди багу и исправь, не можешь - вали улицы подметать. Третьего варианта - подставлять костыли - не существуют. Вместо него вали улицы подметать.

slovazap ★★★★★
()
Ответ на: комментарий от slovazap

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

Napilnik ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Каких дизайнеров в ядре ты имел ввиду?

Ядро<>ОС.

Napilnik ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.