Пользовательский составить последовательности клавиш без xim (например, в Sublime Text 2)

15

У меня есть довольно много пользовательских комбинаций клавиш. Я знаю, что могу заставить их работать с ~/.XComposeи переключая метод ввода на xim. Тем не менее, Sublime Text 2 не принимает какие-либо последовательности клавиш, когда я использую xim. Он принимает их, когда я использую метод ввода по умолчанию. Я думаю, что сообщил об этой ошибке для Sublime Text 2 некоторое время назад.

Используя метод ввода по умолчанию, я добавил содержание моего ~/.XComposeк /usr/share/X11/locale/en_US.UTF-8/Composeчему , но это не изменит. Есть ли какой-нибудь способ заставить сочетания клавиш в моей ~/.XComposeработе работать, не полагаясь на это xim?

Echogene
источник

Ответы:

10

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

sudo apt-get install uim
export "GTK_IM_MODULE=uim"
(log out and in again)

uim - это метод ввода, который учитывает добавления в составляемый файл, но также включает функции, недоступные в xim, например, Ctrl+Shift+Uввод шестнадцатеричного идентификатора Unicode.

Это может сработать для ситуации ОП, если он все еще нуждается в решении, я не знаю.


источник
1
В заключение! После многих проблем с xim и ibus это наконец решило мою проблему. Вы также можете включить uim только для Sublime Text, используя export GTK_IM_MODULE=uim subl.
Ги Амброс
4

То, что говорит @coteyr , на самом деле не правильно. Sublime Text использует стандартный метод ввода GTK API, однако это происходит неправильно.


Я сделал пакет, который исправляет Sublime Text. Вы можете найти все подробности об ошибке и моем решении в моем блоге, но вот краткий обзор установки:

  1. Добавьте sublime-imethod-fix-PPA к вашим источникам APT, выполнив следующую команду:

    sudo add-apt-repository ppa:whitequark/sublime-imethod-fix
    
  2. Установите пакет исправлений, соответствующий вашей версии Sublime Text:

    • для поддержки XCompose в ST2:

      sudo apt-get install libsublime-text-2-xim-xcompose
      
    • для поддержки XCompose в ST3:

      sudo apt-get install libsublime-text-3-xim-xcompose
      
  3. Перезапустите Sublime Text (если он запущен). Составьте последовательности теперь должны работать нормально.
whitequark
источник
Не работает с Sublime 3064, dev channel. ST3 даже не запускается.
Ги Амброс
@GuiAmbros Используйте стабильную версию ST3. Я посмотрю на это чуть позже
Уайткварк
1
Я исправил, изменив UIM вместо XIM. Я написал об опыте здесь wrgms.com/using-xcompose-with-chrome-and-sublime-text
Ги Амброс,
У меня все работало нормально
открывается как
2

Это очень случайное предположение, но я думаю, это потому, что Sublime Text использует другую библиотеку виджетов, и она не настроена для ввода в XIM.

Вы можете попробовать (если вы этого еще не сделали) настроить постоянную конфигурацию по этой ссылке

Если это не сработает, вы всегда можете взломать IM поддержку.

Этот пост должен помочь с этим.

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

coteyr
источник
Я попробовал решение cjacker по вашей второй ссылке, но не смог заставить его работать. Если кому-то повезет больше с этим, я был бы очень признателен, если бы вы могли изложить свои шаги.
Glutanimate
0

Вот обходной путь для Sublime Text 2 специально. Установите этот пакет , либо через управление пакетами , либо вручную:

cd ~/.config/sublime-text-2/Packages

git clone https://github.com/xgenvn/InputHelper.git

После перезапуска Sublime вы можете получить доступ к окну ввода для составленных последовательностей клавиш с помощью Ctrl+ Shift+ Z. Нажмите, Enterчтобы вставить последовательность в позиции курсора.

Glutanimate
источник