1. user930656 29.06.20 22:16 Сейчас в теме

Смягчить боль русско-английского программирования

Давно занимаюсь темой программирования на русском языке, хотя к 1С почти никакого отношения не имею.

Что наблюдаем? При программировании на смешанном русско-английском языке, таком, как 1С, есть ряд проблем:

1. Нужно часто переключать раскладку.
2. Некоторые буквы (с и c, А и A, Е и Е) легко перепутать.
3. Не везде можно использовать кириллицу вообще (например, нельзя в адресах E-mail)

Я собрал идеи о том, как облегчить эти проблемы, и у меня есть ответы на все эти вопросы. Конечно, всё равно два языка в любом случае доставляют неудобство, но его можно во многом сгладить. Вот эти ответы:

по проблеме 1. Задействовать клавишу-модификатор, чтобы её удерживать, как Shift, и при этом ракладка клавиатуры временно переключалась. Такая клавиша-модификатор вообще-то уже есть, это правая клавиша Alt, и она в такой роли применена в известной раскладке Чистов, но я предлагаю использовать в качестве такой клавиши пробел. Использование пробела позволяет печатать 10 пальцами без ущерба для удобства. Я сделал вариант раскладки с пробелом (назвал её "Яроклава") под AutoHotKeys и для Linux. Помимо возможности вбивать латиницу, она позволяет вбивать также все нужные виды скобок и кавычек без переключения - любому 1С-нику это должно быть приятно.

по проблеме 2. Нужно сделать такой шрифт, чтобы по виду буквы было сразу видно, кириллица это или латиница. Я провёл некоторые некоторые эксперименты, ищите "кириллица с глазами", но они пока далеки от успеха. Я пытаюсь сейчас заказать подобный шрифт у фрилансеров, но мой предел бюджета на это - 10 тыр. Давайте скинемся и закажем действительно профессиональную работу, или попросим у Бориса Георгиевича осчастливить нас, вложившись в такие шрифты. Пока что я решил эту проблему тем, что в моих средах разработки (в т.ч. в экспериментальной операционной системе Яос) есть режим, при включении которого подчёркивается вся латиница на экране. Я даже об этом писал здесь более года назад, но почему-то меня стали троллить и я перестал.

по проблеме 3. Нужно сделать обратимый транслит, т.е. такой, что русское слово по нему однозначно воспроизводится из транслита. Такой транслит существовал в СССР (правда, в нём не было твёрдого и мягкого знака), а я разработал версию транслита "Яролит", в которой любой текст может однозначно декодироваться, pri ehtom tekst ostajotsja vpolne chitabelqnym.

Ссылки на свой сайт я не размещаю, я здесь очень редкий гость, мало ли что... Но в теме достаточно ключевых слов для поиска.
Ответы
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
2. oleg-x 14 30.06.20 10:49 Сейчас в теме
А зачем писать сразу на двух языках?
В 1С за исключением обращения к внешним ресурсам, все можно писать на русском и не требуется переключение раскладки. Спец символы можно либо сделать отдельную клавиатуру, где запрограммировать клавиши, либо запомнить сочетания клавиш аль + 38 и прочее.

В 1С пишут на английском в случае, если разработка конфигурации идет для иностранцев, но там тогда просто все пишут на английском (по край не мере, где это возможно).

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

Определения совпадения переменных можно просто сделать выделением и если одна переменная будет с затисавшимся партизаном, то по выделению можно будет определить, если остальные подсветились, то проблема в другом, если не подсветились, то значит имя переменной отличается от остальных.
Также можно просто закинуть текст в стороннюю программу и определить язык раскладки, если очень надо.
8. user930656 11.07.20 10:58 Сейчас в теме
(2)
Писать по русски, но латиницей, это на мой взгляд извращение.

это то, что мы вынуждены делать из-за того, что в "международных стандартах" кириллица не в почёте. Данный форум называется не ИНФОСТАРТ.РУ, а infostart.ru, и Вы здесь называетесь oleg, хотя зовут Вас, наверное, Олегом. Т.е. вы уже использовали транслит, когда называли себя. Раз нам это приходится делать, то нужно сделать так, чтобы это порождало как можно меньше проблем. В большинстве транслитов есть неоднозначности, например, Паша может быть неотличим от Пасхи и т.п. Я всего лишь предлагаю придерживаться единого стандарта, и я придумал один из вариантов, в котором неоднозначностей нет. Паша = Pasha, Пасха = Paskha
3. user930656 10.07.20 19:54 Сейчас в теме
Я не понял, что Вы хотите сказать. Вы сначала говорите, что писать на двух языках не нужно, но потом сами приводите примеры, когда это нужно. Я об этих примерах и говорю. Я сам не 1С-ник, но когда я имел отношение к 1С, почему-то именно они мне и попались, т.к. нужно было обмениваться данными с моей системой, где всё было на латинице. Уверен, что таких случаев достаточно много.

Вот Вы опять же упоминаете про клавиатуру, а при этом не упомянули даже про раскладку Чистова, которая специально сделана для решения проблемы со скобочками и которая, в общем-то её решает для знаков <> {} [] и т.п. Пустились в какое-то изобретение клавиатур. Это значит, что скорее всего, Вы вводите каждый знак "<" с помощью двухкратного переключения раскладки. Т.е. проблема есть, и Вы заработаете насколько-то меньше денег, пока будете каждый раз переключаться, собъётесь с мысли, когда опечатаетесь и начнёте писать не в той раскладке, вставите не ту букву "с" куда-нибудь в строковое имя внешнего ресурса, которое компилятор не проверяет и потом будете долго искать, почему программа не работает. Желания работать над повышением производительности труда почему-то нет. Странно, но дело Ваше.

Я же не говорю, что я придумал какую-то панацею, которая будет просто печатать деньги. Проблема двухъязычности существует, она насколько-то снижает производительность труда и приводит к снижению Вашего заработка. Если Вам больше денег не нужно, то ок. Так вообще-то когда людей спрашиваешь, почему плохо программировать на русском языке, одно из самых частых не-идейных возражений - это как раз необходимость переключать раскладку слишком часто.

Но самое удивительное то, что больше вообще никто не ответил. Значит, действительно, ни для кого такая проблема ощутимой болью не является. Ну и ладно :)
4. Xershi 981 10.07.20 22:30 Сейчас в теме
Мало разработчиков, у которых 80 % времени занимает переключение языка.
Насколько знаю есть спец клавы для решения подобного рода.
Я использую альт+шифт дальше пишу на латинице. В чем тут особая боль не понятно.
У меня 80% времени уходит на анализ алгоритма и отладку, которые не требуют переключения клавиатуры.
По поводу путаницы языков, так не мешайте их это плохой тон программирования.
Возможно по не знанию так делаете?
Такую проблему лишь не заметит новичек или при беглом анализе г.-кода от прошлых разработчиков, когда его нужно исправить, но стоит скопировать, а не набирать на клавиатуре и вопрос решен.
Я бы мог посоветовать не шрифты выдумывать, а просто раскрасить текст в подходящий цвет. Русский черный, латиницу серой, красно или любым другим цветом.
user930656; +1 Ответить
6. user930656 11.07.20 10:54 Сейчас в теме
> Я бы мог посоветовать не шрифты выдумывать, а просто раскрасить текст в подходящий цвет. Русский черный, латиницу серой, красно или любым другим цветом.

Так это не мне надо советовать, а просить разработчиков платформы 1С, чтобы они это сделали. Я не занимаюсь 1С-ом.

> Я использую альт+шифт дальше пишу на латинице. В чем тут особая боль не понятно.
Поставьте раскладку Чистова. Ссылку, видимо, так просто разместить нельзя. Это не клавиатура (не железка), а файл раскладки для Windows, который скачивается и за несколько кликов устанавливается. Как минимум &насервере будете писать быстрее.
7. user930656 11.07.20 10:55 Сейчас в теме
> По поводу путаницы языков, так не мешайте их это плохой тон программирования.
Уже написал два раза и третий не поленюсь написать, что есть внешние ресурсы, внешние форматы данных, которые в латинице. Значит, хотя бы иногда переключать раскладку придётся, и все проблемы с раскладкой в любом случае будут.
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Разработчик 1С
Санкт-Петербург
зарплата от 140 000 руб.
Полный день

Консультант-аналитик 1С
Санкт-Петербург
зарплата от 90 000 руб.
Полный день

Программист 1С
Москва
зарплата от 150 000 руб. до 200 000 руб.
Полный день

Аналитик 1С
Москва
зарплата от 120 000 руб. до 200 000 руб.
Полный день