Давно полюбил формат Markdown за простоту и легкость его использования при документировании исходного кода и за возможность его применения при оформлении статей для Хабра. Потом добавился Obsidian для ведения заметок. И формат Markdown стал по сути основным способом форматирования набираемого текста.
Единственной, но весьма большой ложкой дегтя, оставалась проблема ввода символа решетки «#» при использовании русской клавиатуры. А так как знак решётки (октото́рп, хеш, знак номера, дие́з, sharp), в русской раскладке клавиатуры отсутствует, то каждый раз переключаться на английскую раскладку, меня немного утомляло. И «немного утомляло» еще мягко сказано, так как символ решетки, кроме указания заголовков в Markdown и тегов в Obsidian, еще часто используется как начало комментария до конца строки (в Bash, Python, NewLang).
А так как предлагаемые на просторах интернета способы ввода символа решетки в русской раскладке клавиатуры меня совсем не вдохновляли (и если Alt+35 на Numpad под виндой еще сойдет, но этот способ не работает под Linux, а занимать буфер обмена ради вставки одного символа, вообще не вариант), то пришлось потратить некоторое время на эксперименты, результатами которых я и хочу поделиться.
Вариантов тюнинга клавиатуры под Linux великое множество, но это не помогает, а скорее отпугивает. Поэтому я сразу отказался от правки и любой «тонкой настройки» конфигурационных файлов или сочинения собственных комбинаций клавиш, чтобы можно было максимально просто настроить удобное поведение без головной боли и поиска когда-то давно сделанных правок в конфигурационных файлах.
И по результатам тестирования нескольких способов, остановился на изменении раскладки клавиатуры при нажатии на одну клавишу, выбрав в качестве таковой правый Alt. (Одна кнопка Alt для удержания удобнее, чем комбинация клавиш. Кнопка Shift нужна для изменения регистра символов, а Ctrl часто использую для перемещения курсора по словам и абзацам).
Эта настройка делается установкой единственного чекбокса в gnome-tweaks и решает все проблемы с вводом символа решетки при русской раскладке клавиатуры (правый Alt+Shift+3).
Самое удивительное, что этот способ ввода оказался удобен и не только для символов, отсутствующих в русской раскладке (разные варианты скобок []{}<>, да и ":" с ";" можно набирать одной рукой), но и для ввода отдельных слов в раскладке, отличной от используемой. А такое, как оказалось, бывает довольно часто. Особенно, когда набираешь статью и по ходу дела требуется ввести англоязычное название приложения или английскую аббревиатуру. Просто раньше на подобные мелочи я не обращал внимания и необходимость переключения раскладки клавиатуры на другой язык воспринималась как само собой разумеющееся.
А сейчас при наборе текста, часто замечаю у себя чувство удовольствия от использования более простых действий, которые раньше требовали большей суеты или использования двух рук одновременного. Из-за этого и решил поделиться данным простым приемом. Может это простое решение кому-то еще облегчит жизнь и принесет чуточку удовольствия :-).
Комментарии (44)
edo1h
00.00.0000 00:00+2у меня всё проще: я обнаружил, что совершенно не помню ряд 123… в русской раскладке, плюс меня раздражала запятая на цифровом блоке.
прописал в xkb keymap:include "pc+us+ru:2+inet(evdev)" # на цифровом блоке всегда точка, никакой запятой! key <KPDL> { symbols[group2]=[ KP_Delete, KP_Decimal ] }; # на верхнем ряду цифр используем то же самые символы, что и в us key <AE02> { symbols[group2]=[ 2, at ] }; key <AE03> { symbols[group2]=[ 3, numbersign ] }; key <AE04> { symbols[group2]=[ 4, dollar ] }; key <AE06> { symbols[group2]=[ 6, asciicircum ] }; key <AE07> { symbols[group2]=[ 7, ampersand ] }; # на немногочисленных кнопках без русских букв тоже key <AB10> { symbols[group2]=[ slash, question ] }; key <BKSL> { symbols[group2]=[ backslash, bar ] };
и теперь при наборе # и прочих символов не надо задумываться на какой ты сейчас раскладке.
И по результатам тестирования нескольких способов, остановился на изменении раскладки клавиатуры при нажатии на одну клавишу, выбрав качестве таковой правый Alt.
это я тоже у себя сделал, использую в основном для ввода знаков на буквах БЮЖЭХЪ. опять же работает независимо от текущей раскладки.
но и для ввода отдельных слов в раскладке, отличной от используемой
это технически у меня работает, но оказалось невостребванным, так как я сделал переключение раскладок ненапряжным (на правом shift у меня висит включение русской раскладки, на правом alt — английской).
rsashka Автор
00.00.0000 00:00Я тоже пробовал задействовать правый Shift, но как оказалось привык использовать их оба, потому и выбрал Alt.
edo1h
00.00.0000 00:00так правый шифт совместно с кнопкой у меня работает как шифт тоже. а вот короткое отдельное нажатие — как переключение на русскую раскладку.
пришлось ради этого xcape поставить, штатными средствами иксов, похоже, этого не добиться.rsashka Автор
00.00.0000 00:00пришлось ради этого xcape поставить, штатными средствами иксов, похоже, этого не добиться.
Так в этом и засада, что xcape нужно настраивать отнюдь не щелчком мышки. А лишних телодвижений очень не хотелось (хотелось по KISS, сделать как можно проще :-) )
edo1h
00.00.0000 00:00так у меня цель была сделать ациклическое переключение раскладок так, как я это посчитал удобным. и я считаю, что оно того стоило.
P. S. у нас разное представление о KISS, для меня KISS — это в первую очередь то, в устройстве чего просто разобраться.
rsashka Автор
00.00.0000 00:00так у меня цель была сделать ациклическое переключение раскладок
Возможно в этом случае ваше решение действительно более удобное.
falconandy
00.00.0000 00:00+1В Kubuntu/KDE тоже достаточно галочки в настройках. Сначала я использовал CapsLock/Shift+CapsLock чтобы переключаться между русской/английской раскладкой, но всё равно было не удобно, т.к. в основном мне нужен один язык (как правило, английский). Я выбрал Left Win, т.к. никогда этой клавишей не пользовался, но пока ещё не совсем привык и иногда промахиваюсь по Left Alt.
rsashka Автор
00.00.0000 00:00Я тоже пробовал использовать Left Win, но Win+Пробел настроен как переключатель раскладок, поэтому и пришлось искать другой вариант.
Nasreddin_Hodja
00.00.0000 00:00+2А я просто CapsLock использую, без сочетаний. А режим капслока при этом включается сочетанием Shift+CapsLock, но этим не пользуюсь почти никогда.
rsashka Автор
00.00.0000 00:00Я тоже пробовал CapsLock для переключения раскладки, но мне это не очень понравилось, так как его нажимать можно только левой рукой (и ставить пальцы в раскоряку для нажатия на CapsLock + Shift + 3).
А Alt можно нажимать как угодно: Alt + (Shift + 3) или (Alt + Shift) + 3.
Nasreddin_Hodja
00.00.0000 00:00так как его нажимать можно только левой рукой
Ну это не особо проблема, большинство клавиш по задумке нажимаются только левой или только правой рукой в десятипальцевой слепой печати, а CapsLock всегда рядом с мизинцем, так что для его нажатия получается меньше телодвижений и ближе чем тянуть палец к Shift, например.
и ставить пальцы в раскоряку для нажатия на CapsLock + Shift + 3
А что это за комбинация?
rsashka Автор
00.00.0000 00:00Так изначально весь сыр бор из-за того, что в русской раскладке нет символа # (который на Shift + 3 в английской раскладке), но и постоянно переключаться между двумя раскладками из-за ввода одного символа тоже не хочется.
falconandy
00.00.0000 00:00+1Сначала я тоже использовал только CapsLock для постоянного переключения между раскладками. Потом перешел на CapsLock/Shift+CapsLock, чтобы не задумываться о текущей раскладке. Потом пытался (пытаюсь) приобщиться к neovim и для этого перебиндил CapsLock на Esc (галочка
Make Caps Lock an additional Esc
). Стал выбирать, на что заменить CapsLock для переключения раскладки и решил попробовать временное переключение на другую раскладку по Left Win. Пока на этом варианте и остановился.rsashka Автор
00.00.0000 00:00В любом случае будет, сколько людей, столько и мнений, а на вкус и цвет фломастеры разные ;-)
О, кстати, оказывается и смайлики проще стало набирать :-)
edo1h
00.00.0000 00:00+1left win у меня задействован в управлении wm, тут как раз важно, чтобы было удобно пользоваться комбинациями кнопок и когда правая рука на мышке.
а переключение раскладки требуется когда обе руки на клавиатуре, тут и правые кнопки вполне удобны (даже удобнее, чем левые; речь про правшей, разумеется)
delvin-fil
00.00.0000 00:00+2Ну не знаю, не знаю, такие замороки...
Почти не пользуюсь символом "№"cat .Xmodmap
keysym 0x6b0 = 0x23В автозагрузке(я загружаюсь через startx и поэтому сия команда прописана в $USER/.xinitrc)
xmodmap .Xmodmap
Там что угодно на что угодно назначить можно. Теперь Shift+
delvin-fil
00.00.0000 00:00+1Но лучше так не делать. Мне уже написали, что в некоторых системах keysym 0x6b0 = 0x23 замещает и простую тройку.
Альтернатива, которая не будет косячить нигде:cat $USER/.XCompose
<Multi_key> <3> <3> : "#" numbersign # NUMBER SIGN
roqin
00.00.0000 00:00+1Странно, а я уже много лет так делаю (на левый Alt другую раскладку установил)
vtb_k
00.00.0000 00:00+1После возникновения болей в запястье я решил радикально поменять свое окружение и больше не пользоваться клавиатурой ноута. Долго искал разные варианты, пока не наткнулся на реддите на раздел механических клавиатур. И тогда мне захотелось собрать полностью кастомную разделенную клавиатуру.
Теперь у меня нету проблем с разными символами, ведь они у меня на отдельном слое не зависимо от раскладки, которую я использую. Также перешел на колмак для инглиша, пальцы перестали болеть вообще. Единственная проблема - переучиваться придеться около месяца, но оно того стоит.Мой новый сетап: corne/rev1 + Kensington Expert
Hidden text
Nasreddin_Hodja
00.00.0000 00:00и если Alt+35 на Numpad под виндой еще сойдет
Я тогда не вижу проблем с переключением раскладки, тем более она у меня переключается капслоком (без сочетаний с другими клавишами).
mondzucker
00.00.0000 00:00Описанный способ скорее не для Linux, а для Gnome. Кстати, в Gnome не добавили возможность переключения раскладки caps lock?
rsashka Автор
00.00.0000 00:00Кстати, в Gnome не добавили возможность переключения раскладки caps lock?
Не знаю, если честно
nonameforme
00.00.0000 00:00Что то у меня не выходит. Клавишу назначил, но решетка не вводится. Что я делаю не так?
rsashka Автор
00.00.0000 00:00А какой символ вводится вместо него?
Раскладка на другой язык переключается во время нажатия на Alt?
nonameforme
00.00.0000 00:00цифра 3
нет
rsashka Автор
00.00.0000 00:00Нужно еще Shift удерживать, т.е. Alt + Shift + 3.
Тогда и будет решетка, а без шифта вводятся естественно цифры.
bozman
Как вариант, можно в Compose добавить.
petropavel
уже там:
rsashka Автор
Можно, и это один из самых часты советов. Но очень не нравится править конфигурационный файлы, так как через 2-3 года уже не вспомнишь, что и где изменял, если потребуется повторить эти настройки.
edo1h
по-моему как раз наоборот, текстовые конфиги положил в гит и раскатываешь в пару команд всю привычную среду на новом компьютере.
rsashka Автор
Мне же это не для команды. И всю среду хранить в гит тоже так себе вариант, а лишних телодвижений очень не хотелось (хотелось по KISS, сделать как можно проще :-) )
edo1h
а причём тут команда? у вас одно устройство?
у меня минимум три более-менее регулярно используемых (рабочий комп, домашний комп, личный ноутбук), плюс периодически список меняется
rsashka Автор
Устройство не одно, но версии операционок на них разные, как и установленные приложения. Поэтому хранить единые конфиги для всех рабочих мест мне не подходит.
oficsu
А в чём проблема? Если операционки — это линуксы, а даты их релизов не отличаются на года, то держать под системой контроля версий единый набор конфигов для них — это обычно не проблема. Ну, допустим, будет ли вам невыносимо плохо от осознания того факта, что у вас среди конфигов лежит что-то под неустановленную программу?
Другое дело, что я не выбрал VCS по одной простой причине. Переезжая, я не люблю тащить за собой всё окружение, включая дефолты, которые могут отличаться между версиями софта или разными дистрибутивами. Интереснее переносить лишь тот его сабсет конфигов, который настраивался сознательно и здесь автоматизация выглядит намного удобнее
rsashka Автор
Дело не в сложности решения, а в том, что в подобном решении нет ни необходимости, ни потребности.
alexkuzko
Возможно тут лучше будет держать патч файл, который можно накатить на готовую папку (ту же etc).
Он и сам по себе документация и небольшой.
Дополнив это полным бекапом конфигураций каждый из систем переезжать будет довольно легко и просто.
petropavel
Хотя я так и делаю, ещё проще не менять системные файлы, а держать все в
$HOME
:~/.Xmodmap
,~/.XCompose
, и.т.д. К сожалению, не всё так можно менять, кое-что приходится патчитьnihi1ist
Для такого дела есть notion ему им подобные.
rsashka Автор
Как вариант, но мне кажется это будет как из пушки по воробьям.
petropavel
так не надо же ничего править, это уже есть из коробки
oficsu
Поэтому я не правлю конфигурационные файлы, а автоматизирую их правку. Переезд на другую систему сокращается с нескольких дней адаптации до минут настройки скриптом, даже если это переезд между дистрибутивами