zHz00 Untitled

воскресенье, 14 сентября 2025
23:57 curses: проблема правого нижнего угла
Когда при помощи библиотеки curses выводишь символ, курсор сдвигается в следующую позицию. Когда эта позиция последняя в строке, курсор переходит в начало следующей (и это серьёзное удобство, т.к. не надо вручную менять номер строки).

Но что происходит, если попытаться вывести символ в правый нижний угол? Библиотека не предусматривает для этого особого случая. Она генерирует ошибку. В питоне вообще получается эксепшн. Как же легально вывести символ в правый нижний угол?

Оказывается, есть функция insch(), которая сначала выводит символ в заданное положение, а потом сдвигает всю оставшуюся строчку в правую сторону, обрезая её. А поскольку там и так ничего нет, то проблем это не вызывает. Курсор при этом тоже никуда не смещается.

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

Основной пост про curses: diary.space/~zHz00/p222166383_biblioteka-curses...

@темы: Лайфхак, Программирование

URL
http://www.freakcentral.com/cgi-bin...omophobicareyou ...
Ну почему люди не-деяние так часто путают с ничегонедела...
О том, как известный иерусалимский поэт Г. понял, что доп...
Ну почему умные, понимающие, чувствующие люди так часто в...
Прикольно :)
Такое вот давеча было в Дневниках соседство :) Радуют ...

15.09.2025 в 11:49

15.09.2025 в 11:49

Мощный костылинг, конечно 😅


URL