Pull to refresh

Comments 10

Я как раз этим летом размышлял на тему коррекции кириллической раскладки, но элегантного решения не нашёл.

Дело в том, что у меня основная раскладка немецкая (к которой я очень привык), а кириллическая используется эпизодически и вот если их сравнить, то все знаки типа ? ( ) + * - _ и так далее перескакивают на другие клавиши при смене раскладки:

Особенно скобки достают, которые "съезжают" на одну клавишу.

Я было вооружился редактором клавиатуры и озадачился универсальной раскладкой, в которой все знаки препинания, скобки и т.д. оставались бы на своих местах, независимо от языка. И всё бы ничего, но вот буквы "Б", "Ю" и "Ъ" явно не вписываются в эту концепцию, поскольку на этих клавишах запятая, точка и плюс. Я пробовал было их в верхний ряд поместить, либо знаки через AltGr вводить, но как-то не прижилось.

Да, это одна из основных проблем, даже между раскладками одной письменности, не говоря уже о разных, где базовое количество буквенных символов разнится на 20%+ (в случае сравнения кириллица-латиница), из-за чего "нужно" или освобождать позиции в одной, или заполнять пустующие места во второй.

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

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

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

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

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

Спасибо за наводку, очень интересная вещь.

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

Было бы интересно совместить подобные свитчи с разными эргономическими клавиатурами. Ну и, конечно, нужно пробовать, как это ощущается. Хотя звучит отлично.

Я использую три раскладки: английскую, русскую и чешскую.
Первые две переключаю по капслоку, постоянно.

А вот с чешской раскладкой всё немного сложнее. По умолчанию она как стандартная QWERTZ, но с дополнительным рядом букв вместо цифр.

Добавлять ещё одну раскладку в систему и переключать мне очень не хотелось. Поэтому решил замапить чешские символы на английскую раскладку. Таким образом Caps Lock стал для меня своего рода вторым шифтом для ввода чешских символов:

https://github.com/kvaps/dotfiles/blob/24b6407e90aedd1a762c98485d95a2fd981b94b2/skhd/.config/skhd/skhdrc#L8-L38

О, знакомая история. Я, правда, наоборот оставил чешскую раскладку qwerty, но допилил ее до совместимости с английской. Также сделал alt-связки, но основной набор оставил на цифровой, для слепой печати гораздо удобнее. Сейчас думаю, чтобы режимы чешская vs цифровая сделать переключаемыми по §, сделав субрежимы в раскладке.

Неплохая идея!

Скажите, а вы как-то решили проблему словарей? Ведь проверка правописания, как правило, работает только для одной раскладки - текущей.

Хм, интересный вопрос, я об этом серьезно не задумывался. Для английской у меня в фоне висит Grammarly, а раскладка как раз доработанная чешская, т.е. оно тоже включено, по идее. Как граммарли с чешским не ссорится — не знаю, it just works.

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

Базовый набор – ł đ ı ß ø æ œ.

Два раза перечитал и все равно не понял. Кем составлен? По какому принципу составлен?

Окей, у нас есть символ ł — перечеркнутое L. Используется только в польском языке. Сможем ли мы набирать тексты на польском? Нет, не сможем, т.к. так еще используются другие диакритики (ą ę ń и т. д.).
Или вот у нас есть символ I ı — «i без точки». Используется в тюркских языках. Сможем ли мы набирать тексты, скажем. на турецком? Нет, не сможем: к символу ı идет парный символ İ i (и с точкой), который отличается от стандартного I i в латинице.
Почему в вашем «базовом наборе» есть I ı, но нет парного ему İ i — абсолютно непонятно.

Всё перечисленное вами доступно. Моё упущение, что не смог правильно описать.

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

  • уникальные символы, доступные ко вводу только посредством специального символа;

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

Раздел описывается в два этапа, в которых рассматриваются две ступени поддержки:

  • базовая возможность ввода;

  • упрощённая возможность ввода.

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

Уточнение:
Уникальные символы, относящиеся к языкам на более низких позициях, пришлось вынести в отдельные языковые наборы, которые я честно обозначил как "позволяющие", т.к. только они, в рамках проекта, предоставляют доступ к полноценному набору текста на данных языках.
К этой категории поддержки относятся только лишь азербайджанский, исландский (в наборе с древнеанглийским) и некоторые африканские языки. В посте я также причислял к этой категории текущий пересмотр казахской латиницы, но сейчас обнаружил, что в апреле текущего года ŋ была заменена на ñ, что меняет категорию поддержки данного языка на "упрощающую", а сам набор требует пересмотра.

–––

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

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

Но даже на текущий момент польский язык доступен к базовому вводу на 24/31 наборах, благодаря łŁ в "основе", а также имеет собственный частично-упрощающий набор с ąężó, оставляющий на комбинированный ввод только наименее используемые символы, с единственным комбинируемым акутом – ćńśź.

–––

ıİ, также относящийся к "основе", поддерживается во всех наборах, и в базовом виде присутствует именно в виде, противоположном ISO basic Latin. На базовой письменности у нас iI, в языковом блоке ıİ, что покрывает базовую возможность ввода.
Дополнительные языковые наборы, относящиеся к языкам, основанным на турецком варианте латиницы, помимо возможностей упрощённого ввода также содержат опциональный переключатель, доступный на данных наборах, который выполняет небольшое перепозиционирование – iİ в буквенной части клавиатуры, ıI в языковом блоке. Работает для наборов турецкого, азербайджанского и казахской латиницы. Таким образом "основа" предоставляет базовую возможность ввода из любого набора, а специальный упрощающий набор оптимизирует ввод, с дополнительным перепозиционированием для большего удобства и согласованности символов разных регистров.

Надеюсь, смог корректно прояснить эти моменты.

Sign up to leave a comment.

Articles