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

Есть ли инструмент для быстрого создания пользовательских раскладок клавиатуры?

Например, чтобы добиться этого: /questions/151114/kak-ya-mogu-dobavit-privilegii-root-v-paneli-zapuska-lxpanel/151126#151126

клавиатура

Создание символов Unicode во вторичных слоях, но на основе международных стандартов США (Alt GR-dead keys)

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

Может быть, есть уже подготовленный, довольно общий, если так, то как его установить?

Этот вопрос не о создании ярлыков в конкретном приложении, а об изменении раскладки клавиатуры системы.

4 ответа

Я думаю, что этот инструмент может работать для вас, хотя я никогда не использовал его. https://github.com/simos/keyboardlayouteditor

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

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

Если вы решите сделать это самостоятельно, единственное, что вам нужно сделать, это отредактировать файл, расположенный в /usr/share/x11/xkb/symbols.

Внутри папки "символы" вы найдете все файлы раскладки клавиатуры.

Сделайте резервную копию файла, который вы хотите использовать, в вашем случае файл "us".

Для резервного копирования файла откройте терминал и введите:

cp /usr/share/X11/xkb/symbols/us /usr/share/X11/xkb/symbols/us_backup

Теперь откройте файл "us":

sudo gedit /usr/share/X11/xkb/symbols/us

Вы увидите что-то вроде этого:

// Alphanumeric section
key <TLDE> {    [     grave,    asciitilde  ]   };
key <AE01> {    [     1,    exclam      ]   };
key <AE02> {    [     2,    at      ]   };
key <AE03> {    [     3,    numbersign  ]   };
key <AE04> {    [     4,    dollar      ]   };
key <AE05> {    [     5,    percent     ]   };
key <AE06> {    [     6,    asciicircum ]   };
key <AE07> {    [     7,    ampersand   ]   };
key <AE08> {    [     8,    asterisk    ]   };
key <AE09> {    [     9,    parenleft   ]   };
key <AE10> {    [     0,    parenright  ]   };
key <AE11> {    [     minus,    underscore  ]   };
key <AE12> {    [     equal,    plus        ]   };

key <xxxx> записи являются названиями ключей и {[]}; записи являются символами

Изображение ниже покажет вам коды клавиш:

введите описание изображения здесь

Теперь, чтобы создать собственную раскладку клавиатуры, вам нужно заменить содержимое {[]}; с именами символов, которые вы хотите.

Например, чтобы заменить восклицательный знак на символ доллара, измените следующую строку

key <AE01> {    [     1,    exclam      ]   };

к этому:

key <AE01> {    [     1,    dollar      ]   };

После завершения редактирования пользовательской клавиатуры сохраните файл и перезагрузите компьютер.

Если вы хотите вернуться к исходной раскладке клавиатуры "us", откройте терминал и введите следующее:

sudo cp /usr/share/X11/xkb/symbols/us_backup /usr/share/X11/xkb/symbols/us

Для дальнейшего чтения:

Недавно посмотрел на пакеты, которые я нашел mathwriter input,

Это, по-видимому, в Gnome3, позволяет вводить математические символы, как если бы это был специальный язык. Это позволяет вводить символы, набирая название символа, на экране появляется меню с опциями и пробел позволяет выбрать совпадение.

Соответствующие ссылки:

https://launchpad.net/ubuntu/+source/ibus-table-others/1.3.5-2

https://github.com/mike-fabian/ibus-table-others

https://code.google.com/p/ibus/

MathWriter

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

Получите это здесь: https://github.com/cuppajoeman/x11-keyboard-layout-generator

Подводя итог, вы можете создавать собственные макеты, подобные этому

      |∀∃|∈∉|⊆⊇|∪∩|≤≥|<>|({|)}|⌊⌈|⌋⌉|
 |∅∗|+∑|∣∖|fg|↦⤳|xy|=≠|+-|⋅\|~≟|
  |∨∧|⇒⇐|⇔⊕|⊦⊧|∞ℵ|′∂|ℕℤ|ℚℝ|∇∫|∎≡|

И он генерирует пользовательский файл макета, который вам просто нужно переместить в /usr/share/X11/xkb/symbols.

Прежде чем включить новый макет, убедитесь, что вы настроили несколько ярлыков для переключения между ними, например, я использую xfce, поэтому у меня есть:

Теперь мы можем легко переключаться между математической и стандартной раскладкой.

Это не ответ на мой собственный вопрос, а очень полезная альтернатива, которая заключается в настройке gedit с целью ввода юникод / ​​специальных символов.

Перепробовав некоторые из предложенных решений, я понял, что смена раскладки клавиатуры - это перебор. В конце концов, мне нужно было это только для кодирования (в основном это "строки" с юникодом и математикой в ​​LaTeX) Поэтому я решил, что для моей цели лучше каким-то образом сделать мой редактор способным конвертировать написанные слова в символы юникода.

Мой редактор gedit, который имеет стандартный плагин под названием Snippets, Я понял, что если я добавлю специальные символы в ~/.config/gedit/snippets/global.xml Я был бы в состоянии напечатать их в любом текстовом файле.

Я сделал программу, которая читает таблицу символов Юникода и их общих имен и создает файл фрагментов. Таким образом, я набираю имя персонажа, как _alpha и нажмите клавишу TAB и α появляется. Там нет комбинаций клавиш или слоев клавиатуры, чтобы запомнить.

После процесса мой ~/.config/gedit/snippets/global.xml файл выглядит так. Не забудьте активировать плагин Snippet.

<?xml version='1.0' encoding='utf-8'?>
<snippets>
  <snippet>
    <description>New snippet</description>
  </snippet>
  <snippet>
    <text><![CDATA[α]]></text>
    <tag>_alpha</tag>
    <description>alpha</description>
  </snippet>
  <snippet>
    <text><![CDATA[β]]></text>
    <tag>_beta</tag>
    <description>beta</description>
  </snippet>
  <snippet>
    <text><![CDATA[χ]]></text>
    <tag>_chi</tag>
    <description>chi</description>
  </snippet>
  <snippet>
    <text><![CDATA[ⅆ]]></text>
    <tag>_dd</tag>
    <description>dd</description>
  </snippet>
  <snippet>
    <text><![CDATA[γ]]></text>
    <tag>_gamma</tag>
    <description>gamma</description>
  </snippet>
  <snippet>
    <text><![CDATA[ℏ]]></text>
    <tag>_hbar</tag>
    <description>hbar</description>
  </snippet>
  <snippet>
    <text><![CDATA[μ]]></text>
    <tag>_mu</tag>
    <description>mu</description>
  </snippet>
  <snippet>
    <text><![CDATA[ω]]></text>
    <tag>_omega</tag>
    <description>omega</description>
  </snippet>
  <snippet>
    <text><![CDATA[Ω]]></text>
    <tag>_Omega</tag>
    <description>Omega</description>
  </snippet>
  <snippet>
    <text><![CDATA[π]]></text>
    <tag>_pi</tag>
    <description>pi</description>
  </snippet>
  <snippet>
    <text><![CDATA[ε]]></text>
    <tag>_varepsilon</tag>
    <description>varepsilon</description>
  </snippet>
  <snippet>
    <text><![CDATA[]]></text>
    <tag>_1</tag>
    <description>1</description>
  </snippet>
</snippets>

Заметки:

  1. Идея взята отсюда http://ubuntuforums.org/showthread.php?t=1892012, кроме того, что я написал программу для массового генерирования файла из таблицы.
  2. Почему подчеркивание (например, _pi)? Это связано с тем, что в противном случае многие фрагменты будут конфликтовать с функцией автозаполнения. Например pi+TAB не выдаст π но это даст picture если это слово упоминается в документе.
  3. Дополнительные символы могут быть добавлены вручную путем копирования и вставки из Gnome Character Map программа.
  4. Для активации Snippets плагин, сначала установите gedit plugins пакет. Затем перейдите к Preferences->Plugin-> нажмите на Snippets, Затем из Tools->Manage Snippets... убедитесь, что записи доступны в Global группа (вверху).
Другие вопросы по тегам