Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны. Не разумней было бы назначить отдельные символы только тем буквам, которые отличаются от латинских? Тут даже цель не в экономии битов, а именно в исключении ситуации, когда выглядит одинаково, а коды разные.
К примеру в казахском языке используются русские буквы плюс 9 своих, никто эти русские буквы в таблице символов не дублирует. Вроде бы то же самое относится к европейским языкам, там тоже используются латинские буквы + несколько своих.
Здравствуйте, vsb, Вы писали:
vsb>Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны. Не разумней было бы назначить отдельные символы только тем буквам, которые отличаются от латинских? Тут даже цель не в экономии битов, а именно в исключении ситуации, когда выглядит одинаково, а коды разные.
vsb>К примеру в казахском языке используются русские буквы плюс 9 своих, никто эти русские буквы в таблице символов не дублирует. Вроде бы то же самое относится к европейским языкам, там тоже используются латинские буквы + несколько своих.
А сортировать как будешь?
_____________________
С уважением,
Stanislav V. Zudin
Здравствуйте, Stanislav V. Zudin, Вы писали:
vsb>>Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны. Не разумней было бы назначить отдельные символы только тем буквам, которые отличаются от латинских? Тут даже цель не в экономии битов, а именно в исключении ситуации, когда выглядит одинаково, а коды разные.
vsb>>К примеру в казахском языке используются русские буквы плюс 9 своих, никто эти русские буквы в таблице символов не дублирует. Вроде бы то же самое относится к европейским языкам, там тоже используются латинские буквы + несколько своих.
SVZ>А сортировать как будешь?
По специальным таблицам, зависящим от локали, так же, как и сейчас это происходит. Но аргумент принят, спасибо, как минимум смысл в том, чтобы отличать английский Top (верх) от русского Тор-а (бог). Хотя опять же наверняка можно найти случаи, когда в каком-нибудь французском одно слово пишется идентично другому английскому, но имеет разное значение и ничего, живут и сортируют как-то.
Здравствуйте, vsb, Вы писали:
vsb>Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны. Не разумней было бы назначить отдельные символы только тем буквам, которые отличаются от латинских? Тут даже цель не в экономии битов, а именно в исключении ситуации, когда выглядит одинаково, а коды разные.
Регулярки в помощь. А вообще нормальные среды умеют подсвечивать не латиницу.
vsb>К примеру в казахском языке используются русские буквы плюс 9 своих, никто эти русские буквы в таблице символов не дублирует. Вроде бы то же самое относится к европейским языкам, там тоже используются латинские буквы + несколько своих.
Поизучайте unicode вообще волосы на подмышках зашевеляться.
Здравствуйте, kov_serg, Вы писали:
_>Регулярки в помощь.
Ну когда знаешь, что проблема в этом, то как бы и проблема уже на 90% решена. Вопрос в том, чтобы осознать, что какой-то нехороший человек сделал такую подставу.
_>А вообще нормальные среды умеют подсвечивать не латиницу.
Здравствуйте, vsb, Вы писали:
vsb>Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны. Не разумней было бы назначить отдельные символы только тем буквам, которые отличаются от латинских? Тут даже цель не в экономии битов, а именно в исключении ситуации, когда выглядит одинаково, а коды разные.
Было. ДКОИ-8, кодировка ЕС ЭВМ. См. там "Совмещение букв".
Здравствуйте, vsb, Вы писали:
vsb>>>Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны. Не разумней было бы назначить отдельные символы только тем буквам, которые отличаются от латинских? Тут даже цель не в экономии битов, а именно в исключении ситуации, когда выглядит одинаково, а коды разные.
SVZ>>А сортировать как будешь?
vsb>По специальным таблицам, зависящим от локали, так же, как и сейчас это происходит. Но аргумент принят, спасибо, как минимум смысл в том, чтобы отличать английский Top (верх) от русского Тор-а (бог).
Да, выделенное портит всю малину.
ЗЫ. Тор это не только бог но еще и пончик.
_____________________
С уважением,
Stanislav V. Zudin
Здравствуйте, vsb, Вы писали:
vsb>Не разумней было бы назначить отдельные символы только тем буквам, которые отличаются от латинских?
В чём здесь разумность? Полно языков отличающихся от латинского абсолютно всеми буквами. А ещё есть такое понятие как кодировка. Это предложение создать ещё одну кодировку, но вот такую странную, которой никто пользоваться не будет.
vsb>Тут даже цель не в экономии битов, а именно в исключении ситуации, когда выглядит одинаково, а коды разные.
У меня редактор kate показывает английский алфавит обычным шрифтом, а русский жирным, так что я сразу вижу какой символ какому алфавиту принадлежит. Нормальные люди создали бы программу, которая отлавливает ошибки использования в одном слове символов из различных алфавитов, а не стали бы пытаться внедрить другую кодировку.
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Сортировать — это полбеды, если знать, что именно тут. А вот как узнать ?
Да, без контекста не узнаешь.
PD>Иду я как-то по городу в 90-е годы (а тогда вывесок на английском было полно, потом стало поменьше) и вижу надпись на здании MEXA PD>Хм. MEXA . На каком это языке ? Английском ? Нехарактерное какое-то окончание "A". На каком тогда ? И что это такое ? PD>Через секунду доходит. Никакое это не таинственное MEXA, а просто МЕХА.
Несколько лет назад по соцсетям ходила байка:
Еду, вижу — на фасаде здания вывеска: "ДОМ ГОТОВ". Ломаю голову, это что же получается, только готы будут жить? Потом доходит, что дом готОв...
_____________________
С уважением,
Stanislav V. Zudin
Здравствуйте, vsb, Вы писали:
vsb>По специальным таблицам, зависящим от локали, так же, как и сейчас это происходит. Но аргумент принят, спасибо, как минимум смысл в том, чтобы отличать английский Top (верх) от русского Тор-а (бог). Хотя опять же наверняка можно найти случаи, когда в каком-нибудь французском одно слово пишется идентично другому английскому, но имеет разное значение и ничего, живут и сортируют как-то.
Не только во французском. Например, бывает лук, из которого стрелают, а бывает лук, который едят. И это разные луки.
Так мне похожие надо, а не все. В данном случае не поможет, у меня эти символы в строке были, а не в идентификаторе (и вообще не в проекте, а в отдельном файле, на него инспекции идея не показывает).
vsb>Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны.
Потому что шрифт и смысл тех символов, которые шрифт отображает, — это две большие разницы. И ожидается, что программы будут работать со смыслом символов, а не с их начертаниями. Идиотизм с кодировками мир уже прошел в 80е-90е-начало-2000х и возвращаться к нему не хочет по вполне понятным причинам.
Ты предлагаешь не просто плохую кодировку, а худшую из возможных, которая даже близко не позволяет иметь в тексте различимые кодом слова более, чем на одном языке. Как человек, которому приходилось в начале-середине 2000-х выводить на экран и в документы тексты, содержащие русский, английский и турецкий, ответственно заявляю: Юникод — лучшее, что произошло в развитии компьютеров.
Здравствуйте, Mamut, Вы писали:
vsb>>Тут в очередной раз наслаждаюсь отловом бага, когда в коде написано Tехосмотр (первая буква латинская). И возник вопрос, а зачем вообще этим буквам назначили отдельные коды? Во всех шрифтах, которые я видел, латинская T и русская Т полностью идентичны.
M>Потому что шрифт и смысл тех символов, которые шрифт отображает, — это две большие разницы. И ожидается, что программы будут работать со смыслом символов, а не с их начертаниями. Идиотизм с кодировками мир уже прошел в 80е-90е-начало-2000х и возвращаться к нему не хочет по вполне понятным причинам.
M>Ты предлагаешь не просто плохую кодировку, а худшую из возможных, которая даже близко не позволяет иметь в тексте различимые кодом слова более, чем на одном языке. Как человек, которому приходилось в начале-середине 2000-х выводить на экран и в документы тексты, содержащие русский, английский и турецкий, ответственно заявляю: Юникод — лучшее, что произошло в развитии компьютеров.
vsb>К примеру в казахском языке используются русские буквы плюс 9 своих, никто эти русские буквы в таблице символов не дублирует. Вроде бы то же самое относится к европейским языкам, там тоже используются латинские буквы + несколько своих.
vsb>>К примеру в казахском языке используются русские буквы плюс 9 своих, никто эти русские буквы в таблице символов не дублирует. Вроде бы то же самое относится к европейским языкам, там тоже используются латинские буквы + несколько своих.
vsb>И это в твоём любимом юникоде.
И? Что тебе не нравится? Ты 10 апреля 2020-го года впервые узнал, что есть алфавиты на основе латиницы, алфавиты на основе кириллицы и вообще различные алфавиты?
Здравствуйте, Mamut, Вы писали:
vsb>>>К примеру в казахском языке используются русские буквы плюс 9 своих, никто эти русские буквы в таблице символов не дублирует. Вроде бы то же самое относится к европейским языкам, там тоже используются латинские буквы + несколько своих.
vsb>>И это в твоём любимом юникоде.
M>И? Что тебе не нравится? Ты 10 апреля 2020-го года впервые узнал, что есть алфавиты на основе латиницы, алфавиты на основе кириллицы и вообще различные алфавиты?
Кириллица это алфавит на основе латинницы (а точнее оба алфавита произошли от греческого).