Как установить Caps Lock для русского языка и Shift + Caps Lock для английского? Не только Ctrl + Shift для их переключения.
Код Python ниже предназначен, чтобы быть связанным с двумя различными ярлыками. Например, для английского языка, свяжите Ctrl+Alt+1 с
python /path/to/script us
И для русского языка, свяжите Ctrl+Alt+2 с
python /path/to/script ru
Для большего количества информации об установке ярлыков читайте на ответе Luis Alvarado
В то время как в действительности входной источник установки зависит от него исходный индекс в массиве gsettings, этот сценарий определяет индекс каждого источника автоматически и соответственно устанавливает его
from gi.repository import Gio
import sys
def gsettings_get(schema,path,key):
if path is None:
gsettings = Gio.Settings.new(schema)
else:
gsettings = Gio.Settings.new_with_path(schema,path)
return gsettings.get_value(key)
def gsettings_set(schema,path,key,value):
if path is None:
gsettings = Gio.Settings.new(schema)
else:
gsettings = Gio.Settings.new_with_path(schema,path)
return gsettings.set_uint(key,value)
sources = list(gsettings_get('org.gnome.desktop.input-sources', None ,'sources' ))
index = 0
for source in sources:
for item in source:
if sys.argv[1] == item:
index = sources.index(source)
gsettings_set( 'org.gnome.desktop.input-sources' , None, 'current',index )
Насколько я знаю все, что можно изменить, переключается на следующий язык. Можно сделать это путем нажатия на дисплей языка на панели задач и выбрать Настройки Ввода текста.
Там Вам дарят две опции:
Switch to next source using:
Switch to previous source using:
Путем изменения их можно переключиться между языками. Если у Вас есть только два языка, только необходимо установить первый (так как второе не добавит к функциональности).
В Вашем случае можно установить Caps Lock как переключатель к следующему источнику и shift+caps как переключатель к предыдущему источнику.
, Если бы я могу предложить что-то однако, что это должно было бы только установить переключатель на следующий источник как shift+caps. Тот путь при вводе документа, поражающего Caps Lock, не изменит язык, разрешающий Вам более легкому переключателю между непрописными символами и капиталом. Shift+Caps будет всегда изменяться с русского языка на английский и английский язык русскому языку каждый раз, когда Вы нажимаете его.