LINUX.ORG.RU
ФорумTalks

Возможное разрешение консольного приложения


0

1

Есть желание в текстовом приложении собрать на одном экране множество информации и представить её подробно и красиво.
Меня вот что интересует — на какие размеры (в литерах) ориентироваться. 80*24, конечно, классика, но неимоверно мало. Да и готов поспорить, что большинство людей используют бОльшее разрешение.
Приложение развлекательное, поэтому всякие там серверы без видеодров и прочие телетайпы не интересуют.

★★☆

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

Почему бы тогда не сделать его графическим, а не консольным?

AntonK
()

Нет ни одного плюса в использовании *curses по сравнению с гуевыми тулкитами. ssh — не аргумент, если что.

Хотя... gtk+ — аргумент, но у него же есть альтернативы.

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

Потому, что я не умею графику. Я пытался. Честно-честно.
На бумаге я рисую плохо, а после скана и вовсе получается дерьмо. А после масштабирования — эпичное дерьмо.
Так что не сходи с темы.

Stahl ★★☆
() автор топика

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

Ну и на свои размеры фреймбуффера/терминала в фулскрин-режиме.

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

Нет ни одного плюса в использовании *curses по сравнению с гуевыми тулкитами.

curses я могу просунуть в tmux и спокойно рестартовать иксы при необходимости.

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

Гм. Меня интересует максимальное разрешение, которое есть у 90% потенциальных пользователей.
Вот например 80*25 есть у всех, но это мало и мне не интересно.
А вот, скажем, 160*50?

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

Нет такой возможности. Впрочем, это не важно. Я всё ещё собираю статистику по заданному вопросу.

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

А иксовый софт можно просунуть в Xpra и спокойно рестартовать что угодно.

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

160*50?

Голосую за этот вариант, но... Ты уверен что тебе прямо столько надо всего напихать? Если есть скриншоты то показывай :)

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

Нет скриншотов. Внешний вид я как раз буду разрабатывать исходя из этих данных. Сейчас идея такова, что масштабированию не поддаётся совсем и никак.
Т.е. у кого экран меньше — идут лесом.
У кого больше — получают отцентрированное изображение.

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

Что значит нет возможности? Написать на форуме, что ищешь художника для игры, так сложно?

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

Т.е. у кого экран меньше — идут лесом.

Ну ок, не очень-то и хотелось.

gadfly ★★
()

Ориентироваться на одно жёсткое разрешение в эпоху эмуляторов терминалов, изменяющих размер - это неумно. 80х25 - это минимум, а максимум не определён.

ncurses умеет получать разрешение терминала. Пользуйся текущими значениями для того, чтобы расположить виджеты, растянуть карту в игре, приклеить hud к правой стороне, расширять список/окно вывода логов, етц.

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

Эй, раскричался тут! Гони разрешение своего терминала! А то пока от тебя сплошной вред — и информацией не делишься и критикуешь что попало.

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

растянуть карту в игре

Невозможно

расположить виджеты

Из-за предыдущего нюанса — бесполезно

80х25 не интересно.
Гони своё разрешение терминала:)

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

Это стандарт 30-летней давности. Найдти хоть кого-то у кого на рабочей машине разрешение терминала РАВНО 80х25. У всех больше.

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

Да, если консольная графика в игре и нужна, то только 80х25 с возможностью масштабирования в большую сторону. Если сделаешь минимальный размер больше чем 80х25 — сотворишь эталонное не нужно.

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

хоть кого-то у кого на рабочей машине разрешение терминала РАВНО 80х25

Да, пожалуйста, дефолтный терминал cygwin и mingw.

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

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

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

Совет — запили эмуляцию curses на opengl. Плюсы: идеально кроссплатформенно, можешь гвоздями прибить желаемое разрешение текстового поля (оно будет ресайзиться на реальный экран средствами opengl). Я так сделал — нарадоваться не могу.

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

Из двух зол — играть в 80х25 или ресайзить терминал я выберу меньшее. 80х25 это слишком мало. Даже рогаликам довольно тесно в таких габаритах.

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

Э-э-э... Либо это неимоверно круто, либо я неимоверно туплю, но... как это?

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

Даже рогаликам довольно тесно в таких габаритах

Все годные рогалики нормально в них работают

как это?

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

buddhist ★★★★★
()
Ответ на: комментарий от om-nom-nimouse

Да, стало. Спасибо. Ещё давай. Что-то великовато у тебя разрешение.... 2 монитора что ли?

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

curses я могу просунуть в tmux и спокойно рестартовать иксы при необходимости.

Тащемта, при необходимости гуй тоже можно засунуть в xpra и рестартовать иксы пока рука не устанет. ☺ Правда, тогда никакого графического ускорения.

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

1366x768, 12-й терминус. Я предпочитаю 13.3", но пришлось купить 12.5".

gadfly ★★
()

Раз уж речь зашла о консольных приложениях - то советую подумать заодно и о поддержке большого количества цветов. Тут я собрал общую информацию о поддержке различными терминалами 24-х битных цветовых последовательностей, так же известных как true color (16 миллионов цветов). Основные терминалы - Konsole из KDE, а также libvte (с версии 0.36), а значит большинство Gnome-терминалов поддерживают true color на все 100%.

XVilka ★★★★★
()

Ориентироваться на адаптивную вёрсткупеременное разрешение.

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

У него с этим проблемы.

У меня на работе точно больше по вертикали (вроде 30), всё нормально.

По теме: 86×32, больше уже чересчур.

Gotf ★★★
()
Последнее исправление: Gotf (всего исправлений: 1)
[ /home/pztrn ] % tput cols
189
[Пн 14/07/07 10:45 YEKT][pts/2][3.15.3-gentoo][5.0.5][User: pztrn][Host: laptop.pztrn.name][1007]
[ /home/pztrn ] % tput lines
52

И да - без масштабирования задумка будет очень неюзабельной.

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

растянуть карту в игре

Невозможно

То есть, карта у тебя не растягивается, но ты собрался её растянуть на 160х50. Окей.

Гони своё разрешение терминала

80x25..190x52, в зависимости от настроения.

Найдти хоть кого-то у кого на рабочей машине разрешение терминала РАВНО 80х25

У меня на работе tmux с четырьмя консольками 80x25. Больше сотни по горизонтали не приносит никакой пользы.

E ★★★
()
Последнее исправление: E (всего исправлений: 2)

В настоящей консольке такое и есть. Больше сделать невозможно, т.к., к сожалению, nVidia не умеет фреймбуфер!

Eddy_Em ☆☆☆☆☆
()
[archie ~]$ echo "`tput cols`x`tput lines`"
227x63

Фуллскрин. Терминус 9. Ноутбук 15.6". 1366х768.

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