forum.wfido.ru  

Вернуться   forum.wfido.ru > Прочие эхи > RU.FTN.DEVELOP

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 07.10.2024, 22:32
Nil A
Guest
 
Сообщений: n/a
По умолчанию Глупый вопрос про CP866

Nil A написал(а) к All в Oct 24 19:46:04 по местному времени:

Нello, All!

Почему нельзя в этом вашем фидо нарисовать все эти сердечки и смайлики из CP866 ниже символа пробела 0x20? https://en.wikipedia.org/wiki/Codepage866

Тут на днях в градусах прислали, и значок пропечатывается "61° с.ш.". Т.е. походу можно все эти √ и прочие печатать выше русского, но не ниже.

Best Regards, Nil
--- GoldED+/LNX 1.1.5-b20240306
Ответить с цитированием
  #2  
Старый Сегодня, 00:31
Oleg Nazaroff
Guest
 
Сообщений: n/a
По умолчанию Глупый вопрос про CP866

Oleg Nazaroff написал(а) к Nil A в Oct 24 23:20:49 по местному времени:

Нello, Nil A.
On 07.10.2024 19:46 you wrote:

NA> Почему нельзя в этом вашем фидо нарисовать все эти сердечки и смайлики из CP866 ниже символа
NA> пробела 0x20? https://en.wikipedia.org/wiki/Codepage866 Тут на днях в градусах прислали, и
NA> значок пропечатывается "61° с.ш.". Т.е. походу можно все эти √ и прочие печатать выше
NA> русского, но не ниже.

А ты хоть бы напечатал штоль. Шоб знать что точно пролазит.

--
WBR, ON
--- ХотДог/2.14.5/Android
Ответить с цитированием
  #3  
Старый Сегодня, 01:13
Alexey Khromov
Guest
 
Сообщений: n/a
По умолчанию Глупый вопрос про CP866

Alexey Khromov написал(а) к Nil A в Oct 24 23:49:02 по местному времени:

Здраствуйте, Nil!

NA> Почему нельзя в этом вашем фидо нарисовать все эти сердечки и смайлики
NA> из CP866 ниже символа пробела 0x20?
NA> https://en.wikipedia.org/wiki/Codepage866

Потому что CP866 начинается с 0x80

А группа ASCII 0x00..0x1F зовется Control characters и терминальными программами не отображается, а приводит к действиям терминала, например табуляции или LineFeed. Режим "ИНД СУ" в современных терминальных программах не встречал). Отрисовка данных символов, ЕМНИП, в DOS-e проводилась записью в видеопамять в текстовом режиме напрямую.

В-общем, если пихать эти символы в текст, то его отображение может быть сильно испорчено при выводе средствами стандартных библиотек, которые воспринимают \t и \n именно как управляющие символы.

Alexey Khromov
--- GoldED+/LNX 1.1.5-b20240309
Ответить с цитированием
  #4  
Старый Сегодня, 04:31
Nil A
Guest
 
Сообщений: n/a
По умолчанию Глупый вопрос про CP866

Nil A написал(а) к Alexey Khromov в Oct 24 03:26:38 по местному времени:

Нello, Alexey!

08 Oct 24 23:49, from Alexey Khromov -> Nil A:
NA>> Почему нельзя в этом вашем фидо нарисовать все эти сердечки и
NA>> смайлики из CP866 ниже символа пробела 0x20?
NA>> https://en.wikipedia.org/wiki/Codepage866
AK> Потому что CP866 начинается с 0x80

Труъ. До этого это всё пендосный cp437.

AK> А группа ASCII 0x00..0x1F зовется Control characters и терминальными
AK> программами не отображается, а приводит к действиям терминала,
AK> например табуляции или LineFeed.

Это я помню. Всякие \r \n там. Но почему по сцылке выше на педовики дают в этом месте сердечки. Я хочу сердечки!

Best Regards, Nil
--- GoldED+/LNX 1.1.5-b20240306
Ответить с цитированием
  #5  
Старый Сегодня, 05:01
Nil A
Guest
 
Сообщений: n/a
По умолчанию Глупый вопрос про CP866

Nil A написал(а) к Alexey Khromov в Oct 24 03:49:42 по местному времени:

Нello, Alexey!

08 Oct 24 23:49, from Alexey Khromov -> Nil A:

NA>> Почему нельзя в этом вашем фидо нарисовать все эти сердечки и
NA>> смайлики из CP866 ниже символа пробела 0x20?
NA>> https://en.wikipedia.org/wiki/Codepage866
AK> Потому что CP866 начинается с 0x80
AK> А группа ASCII 0x00..0x1F зовется Control characters и терминальными
AK> программами не отображается, а приводит к действиям терминала,
AK> например табуляции или LineFeed.

Выходит, что в фидо всё врут? Если я ставлю кодировку CP437, то я могу смайлики рисовать, и прочие нотки, которые ДО пробела 0x20? Ну кроме символа \001, который начинает kludge в фидо, это все знают из FTS-1.

Звонок другу Чатову https://chatgpt.com/share/6705d315-d...d-6dae3b981a24

NA> I'm looking at code page 437. There are smile characters and other
NA> "emoji" below the space 0x20 symbol. But as I understand, everything
NA> under the space symbol are control characters, e.g \n \r line feed and
NA> stuff. Нow can I get those smile characters using cp437 then?

You're absolutely right that the bytes under 0x20 in code page 437 (CP437) correspond to control characters like line feed (\n), carriage return (\r), etc. These control characters are not directly displayable as symbols or glyphs because they are used for controlling text flow and formatting rather than visual representation.

Нowever, the smiley faces and other graphical characters you're referring to (like ? and ?) actually start after 0x20, specifically from 0x01 to 0x1F. Normally, these positions in modern character encodings are reserved for control characters, but in CP437 they are mapped to visual symbols.

To access these smiley characters, you'd need to:
1. Use the byte values directly from 0x01 to 0x1F when encoding strings using CP437.
2. Interpret or display them in an environment that understands CP437, such as older DOS systems or software designed to emulate the CP437 font and encoding.

Нere's an example in Python to print those characters by interpreting them as CP437:

# Python 3 example to print CP437 smiley characters
smiley_bytes = bytes([0x01, 0x02]) # ? and ? (CP437 values)
print(smiley_bytes.decode('cp437')) # Decode using CP437 encoding
...


Кстати, питоновский код реально смайлики рисует.

--- GoldED+/LNX 1.1.5-b20240306
Ответить с цитированием
  #6  
Старый Сегодня, 13:51
Rinat Sadretdinow
Guest
 
Сообщений: n/a
По умолчанию Глупый вопрос про CP866

Rinat Sadretdinow написал(а) к Nil A в Oct 24 11:54:54 по местному времени:

Нello Nil!

09 Oct 24 03:49, you wrote to Alexey Khromov:

NA> Нere's an example in Python to print those characters by interpreting
NA> them as CP437:

NA> # Python 3 example to print CP437 smiley characters
NA> smiley_bytes = bytes([0x01, 0x02]) # ? and ? (CP437 values)
NA> print(smiley_bytes.decode('cp437')) # Decode using CP437 encoding
NA> ...

NA> Кстати, питоновский код реально смайлики рисует.

АВОТХРЕН! Ничего он не рисует, вообще ничего:

===
rhs@sys3175:~$ cat>fafafa.py
# Python 3 example to print CP437 smiley characters
smiley_bytes = bytes([0x01, 0x02]) # ? and ? (CP437 values)
print(smiley_bytes.decode('cp437')) # Decode using CP437 encoding

rhs@sys3175:~$ python fafafa.py

rhs@sys3175:~$
===

Bye!

--- GoldED+/LNX 1.1.5-b20231106
Ответить с цитированием
  #7  
Старый Сегодня, 13:51
Rinat Sadretdinow
Guest
 
Сообщений: n/a
По умолчанию Глупый вопрос про CP866

Rinat Sadretdinow написал(а) к Nil A в Oct 24 11:57:08 по местному времени:

Нello Nil!

09 Oct 24 03:26, you wrote to Alexey Khromov:

AK>> А группа ASCII 0x00..0x1F зовется Control characters и
AK>> терминальными программами не отображается, а приводит к действиям
AK>> терминала, например табуляции или LineFeed.

NA> Это я помню. Всякие \r \n там. Но почему по сцылке выше на педовики
NA> дают в этом месте сердечки. Я хочу сердечки!

Нарисовать можно всё что угодно. И как правильно было ранее сказано что если прям в экранную память пИсать эти коды, то тогда будут сердкчки. А если через всякие принтфы гнать, то сердечек не будет. А если какой-нибудь XOFF случайно попадётся, который тоже из этих контрольных характеров, то вообще после этого ничего на экране и не увидишь, и напИсать ничего не сможешь пока XON опять же через принтф не зашлёшь или на клавиатуре Ctrl-Q не тыкнешь (я сейчас про нормальные терминалы, а не про не к ночи будет упомянут cmd.exe).

Bye!

--- GoldED+/LNX 1.1.5-b20231106
Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 17:22. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot