LINUX.ORG.RU

Шрифты с отличающейся кириллицей

 , ,


6

4

Лет 5 ждал, пока кто-то сделает, и в итоге сам сделал. Задача состояла в том, чтобы сделать шрифт, в котором визуально отличаются пары букв, которые обычно выглядят одинаково, например, „с“ и „c“. Тогда при любой работе с двуязычными текстами в программировании можно будет избегать ошибок, связанных с перепутыванием этих букв.

https://tvoygit.ru/budden/dr_cyr

Сделан необходимый минимум, один моноширинный шрифт - модифицированный Ubuntu Mono, и один пропорциональный - модифицированный Golos Text, одно начертание для каждого. Проигнорировано всё, кроме русской кириллицы и основной латиницы, возможны косяки. Идея, заложенная в шрифты, немного отличается.

Художники обругали, простой народ похвалил, на данный момент порядка 4 внедрений.

★★★★★

Последнее исправление: den73 (всего исправлений: 4)

Ответ на: комментарий от anonymous

Думаю, что бестолковка не лопнет от нагрузки, если к кириллице и латинице добавить хотя бы одну из вышеупомянутых.

Было видео от Татьяны Черниговской, где она смутно намекала, что может и лопнуть.

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

Вон недавно наша авиация перешла с метров и километров на футы и мили. Причем у лётчиков и моряков - мили разные.

Ну что, поклонились гегемону. По сравнению с метрической системой футы - это большой шаг назад.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от watchcat382

А так ли надо ориентироваться на плохого программиста,не способного понимать код написанный в соответствии с принятыми в данной предметной области традициями?

Если надо попонтоваться и показать, что ты умнее других, то можно выдумать какие-то трудные в постижении традиции - писать код на иностранном языке, да желательно ещё затащить туда какой-нибудь C++ или Хаскель. Если же речь идёт о ремесле, то надо снижать издержки. С точки зрения бизнеса, идея нанять в команду индуса или выйти на рынок Бразилии со своей системой учёта полярных оленей в тундре является в лучшем случае журавлём в облаках. А вот премия на рынке труда за знание английского - это совершенно конкретная и не такая маленькая цифра. Которую можно платить в двух формах на выбор: или брать только тех, кто знает английский и платить им больше, или брать всех подряд, но они не будут друг друга понимать, потому что у каждого из них будет своя версия неправильного английского. В обоих случаях эти деньги можно было бы положить себе в карман, но так не выходит. Ну и кому нужны такие традиции?

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

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от watchcat382

А я предложил представить что каждая страна имеющая хоть сколько-то заметную собственную промышленность пользовалась бы собственными единицами измерения.

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

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Как уже указали выше, профессиональная среда не обязательно подразумевает знание английского, например 1С.

В России в любой отрасли есть (и по закону должна быть) своя терминология на русском. Исторически мы заимствовали большинство технологий и областей знаний, но сегодня мы все их способны обсуждать на русском языке. Медицина, машиностроение и т.п. И там всё начиналось с того, что коммуникации велись на иностранном языке, но постепенно русифицировалось, каждая область в своём темпе. Даже западник Пётр I написал морской устав на русском языке, а не на голландском. ИТ - это просто ещё одна область знаний. Ну как пример, если есть международные авиаперевозки, из этого не следует, что внутренних авиарейсах надо тоже говорить по-английски - и все, естественно говорят там по-русски.

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

Поэтому неясно, почему надо брать пример с биологии, а не с машиностроения, где баланс совершенно другой.

Это в русском языке есть своя машиностроительная терминология - просто потому что во времена СССР этим озаботились. К примеру, в русском языке есть «двутавровая балка» и «вертолёт»,а большинство остальных языков пользуются транслитерированным американским H-beam и helicopter. Даже в таких вобщем-то весьма развитых странах как Южная Корея например. Но и у нас, несмотря на все приложенные усилия, и в машиностроении хватает иностранных слов,которым удачных русских аналогов типа «вертолёта» найти так и не озаботились. Написать «аэроплан» русскими буквами как это делали в первую мировую войну - это не значит что слово станет русским,оно так и останется британским aeroplane. Русским словом стало «самолёт».

Вот бы чем заняться всяким филологам,а не спорить о том какого рода слово «кофе». Тем более что в мужском роде оно будет «кофий» как и говорили в те давние времена когда его сюда завезли.

watchcat382
()
Ответ на: комментарий от den73

не получается в Urxvt заставить работать шрифт. Не подхватывается. Поместил в директорию ~/.config/fonts/DrCyr,

fc-list |grep Dr говорит

.local/share/fonts/DrCyr/DrCyrMono-Regular.ttf: DrCyr Mono:style=Regular

Вот такое в .Xresources:

URxvt.font: xft:DrCyr Mono:style=Regular:size=12

anonymous
()
Ответ на: комментарий от watchcat382

Ну так и отлично, Россия (скорее СССР) более-менее плюс минус была в ряду ведущих мировых стран, раньше обладала суверенитетом, а по ИТ она пока ещё остаётся лидером, думаю, входит в десятку лидеров пока что, хотя с началом СВО и отъездом ряда компаний мирового уровня и просела. Чтобы продолжать входить в десятку, нужно завести себе степень свободы, в т.ч. степень свободы по терминологии, не бояться и не жмотсвовать, а продолжать её поддерживать, тем более, что задел есть.

Но и у нас, несмотря на все приложенные усилия, и в машиностроении хватает иностранных слов

Так и нет цели выкинуть все заимствования, и никогда не было. Новая область приходит со своими словами, но часть берётся своих. В итоге получается родная терминология. Но она как раз должна быть и на родном алфавите.

Вот бы чем заняться всяким филологам,а не спорить о том какого рода слово «кофе».

Был бы заказ от государства - они бы этим занялись. Но заказа нет.

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

основное препятствие для использования русского языка (в прошлом) связано именно с алфавитом.

Согласен. Причем не только русского,а любого с нелатинским алфавитом.

я стал делать шрифты, которые решают проблему алфавита.

На лично вашей машине ваши шрифты эту проблему решат. А на чужих машинах велика вероятность что шрифты будут дефолтные,в которых похожие буквы различаются плохо. Особенно те что совсем простые в начертании как «с» и «c». (вторая тут латинская - много ли у кого из присутствующих они визуально отличаются прямо сейчас?). А потом кто-нибудь использует идентификатор «CAT» который затруднительно отличить от «САТ». Если знаешь что обычно в исходнике нет кириллицы кроме строковых литералов и комментариев - то такого подвоха не ожидаешь.

Это я всё к тому,что чем больше визуальных объектов надо различать тем больше вероятность ошибок. И китайцам с их тысячами иероглифов можно только посочувствовать. Потому и официально признанный уровень неграмотности там около 3%,а у нас 0.3%.

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

На лично вашей машине ваши шрифты эту проблему решат.

Их надо поставить, это не так сложно. Я уже настроил у себя в терминале и в VS Code. Если совсем ничего не делать, то конечно, проблема не решится. Основная проблема с кодированием на русском языке на самом деле не в шрифтах, а в отсутствии навыка и традиций именования на русском. Просто нерешённость проблемы с шрифтами не даёт даже к этому приступить.

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

И китайцам с их тысячами иероглифов можно только посочувствовать. Потому и официально признанный уровень неграмотности там около 3%,а у нас 0.3%.

Я вот им завидую, т.к. их язык гораздо более плотный в единицах информации на страницу. Думаю, что я лично написал уже порядка нескольких тысяч строк кода на смеси русского и английского на Го, Питоне, Common Lisp, tcl, JS, Active Oberon. На самом деле нет особой проблемы читать этот код (мне). У некоторых, конечно, подгорает. До разработки этих шрифтов в ЯОС я использовал выделение вёрсткой по высоте - тоже реально проблемы и путаницы не было, всё достаточно чётко отличимо.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 2)
Ответ на: комментарий от den73

Вот сегодняшнее для примера:

  # удаляет из списка точек останова те, которые стёрли при редактировании
  # (только на клиентской стороне, серверная обновится после компиляции-загрузки или явной
  # командой)
  proc УбериМусорВДанныхЗакладок {clcon_text} {
    global $clcon_text.ДанныеЗакладок
    set d [set $clcon_text.ДанныеЗакладок]
    set i 0
    foreach запись $d {
      foreach {тег активность} ${запись} {break}
      set ranges [$clcon_text tag ranges ${тег}]
      if {[llength $ranges] == 0} { 
         set d [lreplace $d $i $i] 
      } else {
         incr i
      }
    }
    set $clcon_text.ДанныеЗакладок $d
  }
den73 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Не знаю, может проблема в пробеле? Я вручную конфиги не правил, именно командой fc-cache всё обновлял, параметры как в примере. Терминал у меня другой, там есть диалог выбора шрифта, всё выбралось.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от anonymous

URxvt.font: xft:DrCyr Mono:style=Regular:size=12

Попробую завтра посмотреть, если не забуду.

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

По сравнению с метрической системой футы - это большой шаг назад.

И чем же они объективно хуже метров? Ну не считая привычки к использованию того или другого. Так наши деды вполне еще аршинами и саженями оперировали. А американской экономике футы с милями не мешают делить 1-2 место с «метрическим» Китаем.

Вообще,имперская система мер явно более удобна людям в большинстве случаев повседневной жизни. Хотя и не отвечает каким-то там высоконаучным критериям. Чтобы компенсировать неудобство метрической системы, у нас(и не только) активно используются всякие внесистемные единицы типа киловатт-часов,децибел,калорий,гектаров,унций и каратов.

watchcat382
()
Ответ на: комментарий от den73

Добавить свои шрифты в Иксы помещением их в ~/.fonts действительно можно. У меня например так добавлен «трафаретный» шрифт для изготовления лодочных номеров,и шрифты для CP866 кодировки. Шрифт надо положить в этот каталог, потом создать в нем правильные файлы fonts.dir и fonts.scale (man mkfontdir,mkfontscale),потом выполнить команды

xset +fp ~/.fonts
xset fp rehash

И шрифт станет доступен в Иксах,прямо «на ходу». Можно засунуть эти команды в файл .xsession Удобно то,что если утащил свой домашний каталог на другую машину то свои шрифты там появятся без дополнительных усилий.

watchcat382
()
Ответ на: комментарий от den73

Их надо поставить, это не так сложно.

Оно-то не сложно,но большинство программистов не ожидают появления кириллических символов в идентификаторах и для них это явно станет весьма неприятным сюрпризом и проблемой,решение которой придется искать.

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

Ну переучившиеся из кладовщиков программисты 1С как-то же именуют и не первый год. Желающие программировать на русском - могут позаимствовать идеи именования у них.

watchcat382
()
Ответ на: комментарий от den73

Я вот им завидую, т.к. их язык гораздо более плотный в единицах информации на страницу.

Но и существенно более трудный для понимания из-за многозначности иероглифов. Если каждый иероглиф в слове имеет по несколько собственных значений то это явно затрудняет понимание значения слова в целом.

На самом деле нет особой проблемы читать этот код (мне). У некоторых, конечно, подгорает.

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

watchcat382
()
Ответ на: комментарий от anonymous

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

японский вообще проще китайского, а корейский – проще японского.

потому что корейский – это азбука; букв немного.

в японском есть кана и кандзи; кандзи из китайского в основном, а кана – слоговая в двух разновидностях (катакана и хирагана)

На сегодняшний день в японском языке используется сразу 3 основных системы письменности: хирагана, катакана и кандзи (иероглифы). Используются они одновременно, вперемешку, что вызывает ужас у тех, кто только начал изучать японский язык.

катакана выглядит как квадратные (в этом похожа на кандзи), хирагана как круглые (и в этом немного проще), но и там и там всего 46 буков (и несколько упразднённых), примерно 104 основных буквосочетаний.

в русском языке раньше было как минимум 49 буков, с юсами и гервами и прочими. в церковнославянском заимствованные из греческого, фита та же.

глаголица вот да, самобытная.

руница ещё. и черты и резы.

в целом, 46 букв не сильно сложнее 49. только иероглифы другие. и запомнить чуть сложнее. хотя азбука, если её мнемонически проговаривать – она да, смыслосодержащая.

с каной так с непривычки не получится – хотя интересно, может и там какая-то мнемоника наверняка существует.

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

ещё есть правила транслитерации заимствованных слов, например, ромадзи и киридзи.

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

то, что азбука слоговая означает что учить в общем-то проще.

например, по гласным aeoui разучить, а дальне похожие сочетания.

главное, не путать одну кану с другой – но они реально разные, катакана больше для скорописи, а хирагана нативная какая-то более округлая, что ли.

яндекс-браузер с нейросетями и YandexGPT кстати довольно сносно переводит и пересказывает, без очень уж существенных недостатков (если что, можно и оригинал посмотреть)

английские слова и термины они в основном напрямую заимствуют – кроме тех где уже есть свои более ранние, типа «пасакон отаку».

и не сильно напрягаются по этому поводу.

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

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

ну ещё есть каллиграфия где нужно понимать радикалы.

иначе хрен поймёшь смыслы, если их воспринимать тупо как картинку.

anonymous
()
Ответ на: комментарий от den73

Вот сегодняшнее для примера

Ну комментарий на русском - понятно и разумно если это локальный проект. А чем так уж улучшает понимание остальная кириллица в коде - для меня не очевидно. Всё равно минимальное знание английского требуется потому что ключевые слова языка английские. В отличие кстати от 1С где и они могут быть на русском. Вот там русские идентификаторы может быть и имели бы смысл если с этим будет работать программист «из кладовщиков».

watchcat382
()
Ответ на: комментарий от den73

Сколько футов в миле?

Тот,кто ежедневно пользуется футами и милями - это помнит точно также как мы помним сколько метров в километре.

В этом и разница.

Тем не менее авиаторы и моряки всего мира предпочитают футы,мили и узлы. Хотя мили у них разные,но и у тех и у других от точности измерений зависит жизнь. А они всё что-то на такие удобные километры переходить не хочут.

watchcat382
()
Ответ на: комментарий от den73

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

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

На роль универсального языка предлагался Эсперанто,но что-то не очень получилось.

на роль универсальных языков предлагалось несколько, и несколько из них придумал Шлеер.

волапюк, например. у него тоже две письменности: устаревшая и после реформы.

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

были ещё прочие конструируемые плановые: идо, логбан, ложбан, интерлингва, словио, межъславянский и т.п.

в википедии есть что-то на эсперанто и даже волапюке (вот наткнулся внезапно).

на клингонском там тоже что-то есть – но основная проблема та же самая: слишком мало текстов, слишком мало носителей языка.

даже на simple english в википедии статей больше.

хорошая популярная книга в целом про введение в конструируемые плановые языки: Конструирование_языков._От_эсперанто_до_дотракийского

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

ещё было такое как «трансцендентная алгебра» Якоба Линцбаха с иконками и смыслосодержащими иероглифами: там работа показывалась молотком, а дом = мужчина+женщина=семья.

Желая осведомить европейского читателя об этой новой проблеме, я попросил известного космоглоттиста[1 ]Космоглоттист — изобретатель всемирного языка (от греч. kosmos ‘мир’ и glōtta ‘язык’). г-на Э. де Валя перевести текст этой брошюры на изобретённый им универсальный вспомогательный язык «Окциденталь», который, основываясь на корнях и суффиксах, извлечённых из интернациональных слов и соединённых при помощи простейшей грамматики и словообразования, понятен без изучения всем людям западной цивилизации.

Сразу видно, что Линцбах не обращается ко всем людям вообще: он всё же ожидает от читателя принадлежности к западной цивилизации — некоторой группе людей, имеющих общие фоновые знания. Одним из таких фоновых знаний является знание алгебраической нотации, которая и легла в основу языка Линцбаха; впрочем, многие алгебраические обозначения у Линцбаха сильно переосмыслены.

В трансцендентной алгебре объекты обозначаются пиктограммами, похожими на них: например, i — это ‘человек’, ♡ — это ‘сердце’, и так далее. Базовые элементы соединяются при помощи простых математических операций: например, i — ♡ — ‘бессердечный человек’. Одного взгляда на эти значки достаточно, чтобы понять, почему книга издавалась с рукописи литографическим способом: ни в какой наборной кассе не было и не могло быть символов языка Линцбаха. Да и в наши дни их не так-то просто набирать на компьютере.

Сложные понятия в трансцендентной алгебре выражаются при помощи операции умножения. Вот несколько примеров, которые заодно дадут вам представление о том, как выглядит книга Линцбаха: [[tooltip word=«v» text=«Linzbach, Jacob. 1921. Transcendent algebra: Ideografiematematical. Experiment de unlinguefilosofic. Reval: LitografiaLantzky& Co. P. 9.»]]

Например, курение — это человек, помноженный на трубку. Астрономия — человек, помноженный на телескоп и на звезду. Вино — бутылка, помноженная на бокал, пиво — бутылка, помноженная на стакан, а вода — графин, помноженный на стакан. Особый интерес в этом списке представляют последние три строки: рот × ухо = разговор, (– рот) × ухо = молчание, рот × (– ухо) = монолог. А затем Линцбах приходит к парадоксальному выводу: (– рот) × (– ухо) = рот × ухо: другими словами, мысль сама по себе уже есть разговор.

Другие математические операции выражают менее тривиальные понятия. Так, мнимая единица √(-1)=i — это прекращение действия (важно ещё суметь отличить её от символов ‘ребёнок’ и ‘человек’), а следовательно, İ^((-iİ)+İ+iİ) переводится как ‘человек родится (т. е. с ним происходит нечто обратное прекращению действия), живёт и умирает’.

Как бы то ни было, очевидно, что набор значений, описанных в 40-страничной книжечке, довольно мал, и несмотря на всё изящество идеи трансцендентная алгебра является интересной игрой ума, но никак не полноценным универсальным пиктографическим языком.

пикча.1-8

пикча.13-16

письмо-работа

сложные

задача

пикча.1-8.задача1-2

семья-дети-родители

задача3

говорить-работать-писать-есть-торопиться

anonymous
()
Ответ на: комментарий от den73

а почему бы ключевые слова tcl не перевести на русский синонимами (возможно, в нескольких варианта, родах и падежах) ???

clcon наверное стал бы понятнее – или только лично для тебя?

в первом приближении, препроцессор можно написать на awk, perl, да хоть на том же tcl :)

русский -> английский

anonymous
()
Ответ на: комментарий от den73

по литературному грамотному программированию на русском языке есть вот такая любопытная, интересная и полезная работа с примерами:

http://ibzh.eko3.ru/tex/literate.htm

tl;dr: стандартный TeX не очень-то хорошо поддерживает кириллицу, да и довольно тяжеловесен.

сейчас по факту существует 3 основных дистрибутива TeX:

  • TeXlive на базе классического, хотя уже переделанный: основной TeX Д.Кнута на паскале и WEB переписан на Си и CWEB, частично полуавтоматизированно

это довольно огромный дистрибутив в 7-8Гб, минимально примерно 5-6.

  • ConTeX

  • LuaTeX

ну и новомодный

  • Tectonic переписанный на Rust.

в LuaTeX и ConTeX – XeteX, то есть, там всё хорошо с уникодом.

и они более компактны, но тоже примерно 10-20…50 Мб.

что сделал весьма интересный автор по ссылке выше.

взял оригинальный TeX под DOS Д.Кнута годов примерно 1999-2000 и доработал до нормальной поддержки DOS-кодировки CP866.

затем он доработал weave/tangle до русифицированных ruweave/rutangle (бинарники, не исходники которых он и выкладывает).

и набор стилей и макросов.

в WEB есть макрос @d который позволяет определять свои макросы.

таким образом, под WEB Д.Кнута который tange/weave в принципе возможно метапрограммировать в каком-то ограниченном виде (лучше конечно, лисп бы взяли)

что сделал этот автор потом? написал набор макросов для транслитерации русского в дос кодировке в транслит.

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

в таком духе он не только описал руководство по WEB с примерами литературного грамотного программирования, но и перевёл несколько глав TeX изначального TeX: the program and the book, пример одной главы есть где-то у него на сайте.

он потом правда фрустрировал от того что его работа никому не нужна.

вообще интересный мужик и его работа. поддержал бы его кто.

я это к чему. если транслитерировать можно и в паскаль, то tcl тем более.

tcl правда юникод нормально поддерживает, так что логичнее взять не старое под CP866 (хотя тот дистрибутив всего TeX под ДОС примерно 2..5 мегабайт, кажется) – а что-то поддерживающее unicode и utf8 в исходниках, например, ConTex, LuaTeX или Xetex.

xetex в целом нормально ttf шрифты типа тех же times new roman и проч поддерживает и выдаёт нормальный PDF c внедрёнными в него шрифтами.

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

Как писать программы на паскале по-русски

Лично мне всегда казалось, что писать программы на русском языке было бы гораздо приятнее, а главное — понятнее, чем на английском. Ведь, ключевые слова почти любого языка программирования взяты из английского, и для нас они чужие, мысль всегда о них спотыкается. И лучше заменить их на родную речь, привычную нам с детства. Если Вы разделяете мои взгляды, то этот раздел может показаться Вам любопытным.

Чтобы писать программы по-русски, можно переопределить стандартные ключевые слова, вставив в один из первых разделов программы на WEB следующие строки (здесь они набраны в две колонки).


    @d программа==@+program
    @d использует==@+uses
    @d функция==@+function
    @d процедура==@+procedure
    @d переменные==@+var
    @d переменная==@+var
    @d константа==@+const
    @d константы==@+const
    @d начало==@+begin
    @d конец==@+end
    @d если==@+if
    @d то==@+then
    @d иначе==@+else
    @d массив==@+array
    @d из==@+of
    @d при==@+case
    @d равном==@+of
    @d равной==@+of
    @d пока==@+while
    @d повторяй==@+repeat
    @d пока_не==@+until
    @d для==@+for
    @d от==@+for
    @d до==@+to
    @d уменьшать_до==@+downto
    @d вниз_до==downto
    @d делай==@+do
    @d метка==@+label
    @d метки==@+label
    @d ув==inc
    @d ум==dec
    @d иди==goto
    @d для_записи==@+with
    @d нет==@+false
    @d да==@+true
    @d строка==string
    @d строки==string
    @d байт==byte
    @d слово==word

                @f программа==program
                @f использует==uses
                @f переменные==var
                @f переменная==var
                @f константа==const
                @f константы==const
                @f начало==begin
                @f конец==end
                @f если==if
                @f то==then
                @f иначе==else
                @f массив==array
                @f из==of
                @f при==case
                @f равном==of
                @f равной==of
                @f пока==while
                @f повторяй==repeat
                @f пока_не==until
                @f для==for
                @f функция==function
                @f процедура==procedure
                @f до==to
                @f уменьшать_до==downto
                @f делай==do
                @f нет==false
                @f да==true
                @f строка==string
                @f строки==string
                @f слово==word
                @f вниз_до==downto
                @f от==for
                @f байт==byte
                @f ув==inc
                @f ум==dec
                @f метка==label
                @f метки==label
                @f иди==goto
                @f для_записи==with

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

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

anonymous
()
Ответ на: комментарий от den73

возможные применения ЯОС

переписать TeX под ЯОС на русском, например.

то есть, повторить нечто подобное по ссылке выше про ruweave/rutangle, только:

  • взять ConTeX, LuaTeX или tectonic

  • на худой конец, TeXlive в минималистичной установке но с уникодным XeteX

и переписать похожим образом, только не с ДОС кодировкой, а на уникоде или UTF8.

в целом, адаптация под CP866 не очень большая и трудоёмкая, но есть некоторые тонкие моменты связанные с тем, что tex изначальный не 8-bit free и использует старший бит в служебных целях (для токенов, потом cork encoding та же и т.п.)

поэтому возможно стоит брать не совсем уж tex изначальный а современный дистрибутив, где всё хорошо с уникодом.

ну и идея переписать TeX the program and the book на русский – как текстовую часть, так и на условном русском паскале (или ещё лучше: русской аде или русском активном обероне)

– лично у меня ничего кроме полного одобрения не вызывает.

anonymous
()
Ответ на: комментарий от watchcat382

Но и существенно более трудный для понимания из-за многозначности иероглифов.

ты так говоришь, будто в русском по-другому. Да на одних матах можно историю рассказать. Куда уж многозначнее. Это все отверточно-квадратно-технарское мышление, когда что-то незнакомое кажется сложнее обычного. В большинстве случаев это не так.

anonymous
()
Ответ на: комментарий от watchcat382

Тем не менее авиаторы и моряки всего мира предпочитают футы,мили и узлы. Хотя мили у них разные,но и у тех и у других от точности измерений зависит жизнь. А они всё что-то на такие удобные километры переходить не хочут.

да неужели? А вот это тогда что? https://informnapalm.org/ua/wp-content/uploads/sites/9/2023/04/Su-25-1.pdf

и

https://upload.wikimedia.org/wikipedia/commons/b/bd/%D0%9F%D1%80%D0%B8%D0%B1%D0%BE%D1%80%D0%BD%D0%B0%D1%8F_%D0%BF%D0%B0%D0%BD%D0%B5%D0%BB%D1%8C_%D1%88%D1%82%D1%83%D1%80%D0%BC%D0%BE%D0%B2%D0%B8%D0%BA%D0%B0_%D0%A1%D1%83-25.jpg

anonymous
()
Ответ на: комментарий от watchcat382

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

Ты всю ветку не догоняешь, что это именно наглы - нетакусики, у которых много чего своего, лишь бы не как во всем мире. А во всем мире - ISO, измерительная система СИ… и многоязычие.

И на фоне этого ещё смешнее выглядит утверждение про «транслитерированный из английского» геликоптер, который гр. → фр., и про «времена господства Британской империи», которые на самом деле длились несколько десятилетий XIX века.

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

да неужели? А вот это тогда что?

В самолётах советской разработки были метрические единицы. В современных используемых сейчас боингах и эйрбасах мили и футы как во всём остальном мире. И в общении с авиадиспетчерами с 2011 года в футах и милях - например обозначение эшелонов по высоте.

watchcat382
()
Ответ на: комментарий от anonymous

А во всем мире - ISO

Которое именно наглами и было создано и в Лондоне долго обитало пока в Швейцарию не переехало.

измерительная система СИ

На которую так окончательно и не перешли нигде,даже в весьма прогрессивном СССР,несмотря на очень усердное внедрение. Я даже лично помню как у нас в 80е годы в метеопрогнозах пытались гектопаскали внедрять вместо общеупотребительного ртутного столба.Кончилось тем что у оного столба стали миллиметры вместо классических дюймов,но и только. А киловатт-часы с калориями,литрами и прочими децибелами - вообще никуда не исчезали.

Кстати, всякие ядерные физики тоже СИ недолюбливают и пользуются своими некошерными единицами типа например электрон-вольтов.

и многоязычие

Однако наука примерно вся уже на английском,в смысле - все публикации в сколько-нибудь авторитетных изданиях. Также английский является официальным языком крупных международных научных проектов типа ITER и коллайдера.И вообще везде где хоть как-то взаимодействуют с иностранцами - везде понимают английский. Кстати, оригиналы текстов стандартов вышеупомянутого ISO - пишутся на нём же. Сохранению многоязычия и прочей национальной самобытности это никак не мешает.

транслитерированный из английского геликоптер, который гр. → фр.

Так оно на большинстве языков так и будет - геликоптер. Поэтому сложно сказать откуда оно к нам пришло - от французов или всё же от Сикорского из Америки где он впервые наладил серийный выпуск вертолётов и их рекламу. Там еще был и второй менее известный наш эмигрант,тоже занимавшийся вертолётами,фамилию увы не помню. Причем первый хорошо летающий образец построил как раз он еще в 20х годах,до успехов Сикорского. Французы кстати подключились к вертолётной теме позже.И если уж глубоко копать то слово составное греческое. В контексте этой беседы важно что вовсе не русское,в отличие от «вертолёта». И это как раз весьма удачный пример создания именно русскоязычной терминологии. Аналогично кстати превращению иностранного аэроплана в русский самолёт.

«времена господства Британской империи», которые на самом деле длились несколько десятилетий XIX века.

Однако этих нескольких десятилетий хватило чтобы мир заговорил на английском языке.

watchcat382
()
Последнее исправление: watchcat382 (всего исправлений: 2)
Ответ на: комментарий от anonymous

Я не пишу этот проект, а только дорабатываю его понемногу. Да в целом это не такая проблема, чтобы ради неё усложнять тулчейн. Если бы нужно было так сделать, я бы предпочёл форкнуть tcl/tk. Я уже делал форк tcl/tk под Windows из-за ошибки с вводом не-латинских букв с клавиатуры, которую лет 10 никто не собирался исправлять, и скорее всего она до сих пор не исправлена. Видимо, авторы tcl/tk тоже считают, что людям достаточно одной латиницы. Вот как пример:

https://chiselapp.com/user/sgolovan/repository/tkabber-wiki/doc/tip/wiki/ru/Tk_Windows_keysyms_bug_explained.md

Где-то на SO рекомендовали вообще не использовать из-за неё tcl/tk, равно как и её привязки к Питону. Так что авторы tcl/tk внесли неплохой вклад в развитие Qt и прочих альтернатив, прямо «большое спасибо».

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 3)
Ответ на: комментарий от watchcat382

В общем, тут какая-то пропаганда англосаксонского величия пошла уже:

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

Была на латыни, потом была на немецком, потом на английском, потом будет на китайском. Всё это временно, поэтому попытка сделать из английского языка и его алфавита какую-то мировую ось точно так же не пройдёт.

И имперские единицы у нас уже объявлены самыми лучшими, хотя там такая помойка, что страшно даже подумать. Даже внутри англоязычного мира не смогли договориться о единых единицах измерения (в США и Англии они различаются), существует множество версий, не согласованных между собой и т.п. Как было у Диккенса - всё это работает на «министерство волокиты» и помогает кого-нибудь обжуливать. Единственное хорошее, что я там смог найти - это 12-ричность между футом и дюймом, да и то, это не в имперских единицах, а в американских.

И весь мир уже разговаривает на английском, хотя этого нет, конечно же.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Есть как минимум Дизель-Паскаль с русскими ключевыми словами. В какой-то момент я сел и за несколько часов добавил поддержку русских ключевых слов в Pascal ABC, так что тут проблема не в реализации, а во внедрении. Кроме того, есть скратч и code.org с русскими ключевыми словами.

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

переписать TeX под ЯОС на русском, например.

Мне кажется, что тех очень большой. Если будешь это делать - буду консультировать. Как минимум, в ЯОС плохая отрисовка шрифтов вообще на данный момент, надо это решить. До решения этого вопроса вряд ли можно пользоваться ОС, не будучи человеком с особыми вкусами.

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от watchcat382

Я там немного порылся но не увидел иероглифов в исходниках кроме строковых литералов и комментариев.

Там просто язык не позволяет, я хотел больше оформление репозитория и документации показать.

Объективно очень труден в изучении поэтому плохо подходит на роль именно международного.

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

А на что его менять-то?

На русский.

Пользователи да. А вот программистам,осуществляющим местную техподдержку, возможность прочитать код удобна.

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

MOPKOBKA ★★★★
()
Последнее исправление: MOPKOBKA (всего исправлений: 1)
Ответ на: комментарий от damix9

Спасибо, добавил на свой форум, наверное, уже давал ссылку:

https://вече.программирование-по-русски.рф/viewtopic.php?f=2&t=722&p=4801#p4801

На этом форуме, кстати, большинство контента отображается с помощью „Dr Cyr Golos Text“, а программный код - с помощью „DrCyr Mono“

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

den73 ★★★★★
() автор топика
Последнее исправление: den73 (всего исправлений: 1)
Ответ на: комментарий от den73

Черточки эти (букве Т, например) вызывают ощущение, что обфусцируешь родную кириллицу ради отличаемости от чуждого. Как насчет обвести «излишними» черточками или глазами наоборот, латиницу?

anonymous
()
Ответ на: комментарий от MOPKOBKA

На русский.

Русский объективно менее удобен в роли международного языка из-за всех этих падежей,склонений,спряжений и сложного словообразования с приставками-суффиксами. Слишком велики затраты времени и сил на изучение всего этого. А для международного языка главным достоинством является простота. В абсолютном большинстве случае не требуются тонкие оттенки передачи смыслов. В результате попыток применения как международного - русский выродится в то на чем прямо сейчас разговаривают приезжающие к нам «иностранные специалисты» из бывших советских среднеазиатских республик. Да и речь(и письменная тоже) местного молодого поколения уже весьма далека от классических литературных норм ибо литературу-то они и не читают,заменив чтение просмотром видеороликов в смартфоне.

либо используют переводчик.

Переводчик не сможет переводить технические тексты на местный язык если в этом языке просто нет соответствующей технической терминологии. В русском эта проблема не так сильно выражена так как всё еще существенно сказывается результат советских усилий по созданию русскоязычной технической терминологии. Потому мы ее актуальность недооцениваем. И то в быстро развивающихся областях типа того же программирования речь специалистов при обсуждении технических вопросов на какой-то англо-русский суржик уже похожа. Вот в качестве иллюстрации: https://informatics.ru/blog/zhaba-kryakozyabry-i-kostyl-slovar-terminov-programmistov/ И это далеко не всё «словотворчество».

watchcat382
()
Ответ на: комментарий от anonymous

Черточки эти (букве Т, например) вызывают ощущение, что обфусцируешь родную кириллицу ради отличаемости от чуждого. Как насчет обвести «излишними» черточками или глазами наоборот, латиницу?

Для обфускации латиницы у меня нет никакой идеи, кроме готики. У кириллицы - вязь с узелками. Чёрточки - это и есть узелки.

den73 ★★★★★
() автор топика
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.