Страница 1 из 1

NCurses

Добавлено: 07 июн 2008, 10:04
mungo
Чисто ламерские вопросы от начинающего програмление в линухе.
10 лет програмлю на си. Вот торкнуло пописать для линуха. Чисто для себя. Есть необходимость написать пару софтин для работы, чтобы получить софт, которого нет стандартного для своих целей. С иксами пока не заморачиваюсь - достаточно консоли.
По понятным причинам взялся на курсы. Все конечно хорошо, все работает, но - не с русским. Конечно и по нерусски могем, но хочется чтобы понятнее было. А дурацкие курсы с русским не дружат. Юзаем простой консольный prinf - все по русски. Курсовый - только пару русских букв, остальное контрольные коды.
Типа условное решение сть в и-нете. Юзать кои8. Но дома я что-то напорол, работает только локаль утф8. Да и не выход это - переносимость нулевая.
Думал использовать iconv, но что-то не понимаю, какую кодировку курсам передавать, чтобы они понимали, что мне нужен русский.
Но больше всего вырубило в документации на курсы - типа printw поддерживает все, что и системный printf. Небольшой тест - printf("\u2554") и printw("\u2554"); В первом случае получаем рамочку, во-втором - глюки.
Народ, подскажите, как можно побороть? Кучу доков прогрыз, так про использование родных язов ваще нифига не нашел :cry:

Добавлено: 11 июн 2008, 16:49
mungo
Продвинулся чуть дальше. Если использовать ncursesw, то уникод печатается. Вот только кодировка непонятная. Утф-8 не подходит, уцс-2 тоже. Но путем экспериментов я споймал русские буквы. Они и впрямь двухбайтовые, только не пойму, какая нужна кодировка. Если бы понять, там мона через iconv все проделать, я уже понял, как.
Люди, хелп!

Добавлено: 11 июн 2008, 17:57
slavaz
Попробуй slang.
Пример использования - исходники mc

Добавлено: 13 июн 2008, 13:03
mungo
slang - полнейшая галиматья. В том смысле, что нет нормальной документации. Довольно утомительно каждый раз смотреть исходники для поиска нужной функции. Уж проще тогда через write(STDOUT_FILENO) печатать, и то больше толку. По крайней мере на libc есть доки нормальные...

Добавлено: 13 июн 2008, 14:42
mend0za
У s-lang нормальный reference, как по языку так и по функциям

Когда писал плагин для slrn - вполне юзабельная документация