Невозможно ввести символы с диакритическими знаками в Sublime Text 3 (Ubuntu 14.10)

По какой-то причине я не могу вводить акцентированные символы, такие как á å, ä, в Sublime Text 3. Вместо этого я получаю только следующий вывод ´a ° a, ¨a. Символы шляпы набираются, когда я нажимаю их клавишу, вместо того, чтобы позволить мне вводить символы с диакритическими знаками, кстати, я использую исландскую клавиатуру.

Sublime text build 3065, Ubuntu 64 бит. Работает на Ubuntu 14.10.

Эта проблема не проявляется у меня в Ubuntu 14.04.


person Loknar    schedule 30.12.2014    source источник


Ответы (7)


У меня есть несколько дополнений для тех, кто использует клавиатуру ABNT2, отлично работает с бразильцами.

В Настройки> Привязки клавиш - Пользователь добавьте следующий фрагмент:

[
    // missing accented characters fix for ubuntu 14.10

    // a, [á, à, ã, â, å, ä]
    { "keys": ["´","a"], "command": "insert", "args": {"characters": "á"}},
    { "keys": ["`","a"], "command": "insert", "args": {"characters": "à"}},
    { "keys": ["~","a"], "command": "insert", "args": {"characters": "ã"}},
    { "keys": ["^","a"], "command": "insert", "args": {"characters": "â"}},
    { "keys": ["°","a"], "command": "insert", "args": {"characters": "å"}},
    { "keys": ["¨","a"], "command": "insert", "args": {"characters": "ä"}},

    // A, [Á, À, Ã, Â, Å, Ä]
    { "keys": ["´","A"], "command": "insert", "args": {"characters": "Á"}},
    { "keys": ["`","A"], "command": "insert", "args": {"characters": "À"}},
    { "keys": ["~","A"], "command": "insert", "args": {"characters": "Ã"}},
    { "keys": ["^","A"], "command": "insert", "args": {"characters": "Â"}},
    { "keys": ["°","A"], "command": "insert", "args": {"characters": "Å"}},
    { "keys": ["¨","A"], "command": "insert", "args": {"characters": "Ä"}},

    // e, [é, è, ê, ẽ, ë]
    { "keys": ["´","e"], "command": "insert", "args": {"characters": "é"}},
    { "keys": ["`","e"], "command": "insert", "args": {"characters": "è"}},
    { "keys": ["^","e"], "command": "insert", "args": {"characters": "ê"}},
    { "keys": ["~","e"], "command": "insert", "args": {"characters": "ẽ"}},
    { "keys": ["¨","e"], "command": "insert", "args": {"characters": "ë"}},

    // E, [É, È, Ê, Ẽ, Ë]
    { "keys": ["´","E"], "command": "insert", "args": {"characters": "É"}},
    { "keys": ["`","E"], "command": "insert", "args": {"characters": "È"}},
    { "keys": ["^","E"], "command": "insert", "args": {"characters": "Ê"}},
    { "keys": ["~","E"], "command": "insert", "args": {"characters": "Ẽ"}},
    { "keys": ["¨","E"], "command": "insert", "args": {"characters": "Ë"}},

    // i, [ì, í, ï]
    { "keys": ["`","i"], "command": "insert", "args": {"characters": "ì"}},
    { "keys": ["´","i"], "command": "insert", "args": {"characters": "í"}},
    { "keys": ["¨","i"], "command": "insert", "args": {"characters": "ï"}},

    // I, [Ì, Í, Ï]
    { "keys": ["`","I"], "command": "insert", "args": {"characters": "Ì"}},
    { "keys": ["´","I"], "command": "insert", "args": {"characters": "Í"}},
    { "keys": ["¨","I"], "command": "insert", "args": {"characters": "Ï"}},

    // o, [ó, õ, ô, ö]
    { "keys": ["´","o"], "command": "insert", "args": {"characters": "ó"}},
    { "keys": ["~","o"], "command": "insert", "args": {"characters": "õ"}},
    { "keys": ["^","o"], "command": "insert", "args": {"characters": "ô"}},
    { "keys": ["¨","o"], "command": "insert", "args": {"characters": "ö"}},

    // O, [Ó, Õ, Ô, Ö]
    { "keys": ["´","O"], "command": "insert", "args": {"characters": "Ó"}},
    { "keys": ["~","O"], "command": "insert", "args": {"characters": "Õ"}},
    { "keys": ["^","O"], "command": "insert", "args": {"characters": "Ô"}},
    { "keys": ["¨","O"], "command": "insert", "args": {"characters": "Ö"}},

    // u, [ú, ů, ü]
    { "keys": ["´","u"], "command": "insert", "args": {"characters": "ú"}},
    { "keys": ["°","u"], "command": "insert", "args": {"characters": "ů"}},
    { "keys": ["¨","u"], "command": "insert", "args": {"characters": "ü"}},

    // U, [Ú, Ů, Ü]
    { "keys": ["´","U"], "command": "insert", "args": {"characters": "Ú"}},
    { "keys": ["°","U"], "command": "insert", "args": {"characters": "Ů"}},
    { "keys": ["¨","U"], "command": "insert", "args": {"characters": "Ü"}},

    // y, [ý, ÿ]
    { "keys": ["´","y"], "command": "insert", "args": {"characters": "ý"}},
    { "keys": ["¨","y"], "command": "insert", "args": {"characters": "ÿ"}},

    // Y, [Ý, Ÿ]
    { "keys": ["´","Y"], "command": "insert", "args": {"characters": "Ý"}},
    { "keys": ["¨","Y"], "command": "insert", "args": {"characters": "Ÿ"}}
]
person Jonathan Martins    schedule 06.01.2015

Я нашел способ исправить это. В Sublime Text перейдите в Настройки> Привязки клавиш - Пользователь, добавьте приведенный ниже код в файл, который открывает Default (Linux).sublime-keymap, и сохраните его.

Обратите внимание, что это хакерское исправление, которое может содержать не все буквы с диакритическими знаками, которые вам нужны / нужны, в этом случае вы можете легко добавить эти пропущенные буквы. Также обратите внимание, что это исправление не затрагивает корень проблемы, которая, как мне кажется, как-то связана с Ubuntu 14.10.

[
    // missing accented characters fix for ubuntu 14.10

    // a, [á, å, ä]
    { "keys": ["´","a"], "command": "insert", "args": {"characters": "á"}},
    { "keys": ["°","a"], "command": "insert", "args": {"characters": "å"}},
    { "keys": ["¨","a"], "command": "insert", "args": {"characters": "ä"}},

    // A, [Á, Å, Ä]
    { "keys": ["´","A"], "command": "insert", "args": {"characters": "Á"}},
    { "keys": ["°","A"], "command": "insert", "args": {"characters": "Å"}},
    { "keys": ["¨","A"], "command": "insert", "args": {"characters": "Ä"}},

    // e, [é, ë]
    { "keys": ["´","e"], "command": "insert", "args": {"characters": "é"}},
    { "keys": ["¨","e"], "command": "insert", "args": {"characters": "ë"}},

    // E, [É, Ë]
    { "keys": ["´","E"], "command": "insert", "args": {"characters": "É"}},
    { "keys": ["¨","E"], "command": "insert", "args": {"characters": "Ë"}},

    // i, [í, ï]
    { "keys": ["´","i"], "command": "insert", "args": {"characters": "í"}},
    { "keys": ["¨","i"], "command": "insert", "args": {"characters": "ï"}},

    // I, [Í, Ï]
    { "keys": ["´","I"], "command": "insert", "args": {"characters": "Í"}},
    { "keys": ["¨","I"], "command": "insert", "args": {"characters": "Ï"}},

    // o, [ó, ö]
    { "keys": ["´","o"], "command": "insert", "args": {"characters": "ó"}},
    { "keys": ["¨","o"], "command": "insert", "args": {"characters": "ö"}},

    // O, [Ó, Ö]
    { "keys": ["´","O"], "command": "insert", "args": {"characters": "Ó"}},
    { "keys": ["¨","O"], "command": "insert", "args": {"characters": "Ö"}},

    // u, [ú, ů, ü]
    { "keys": ["´","u"], "command": "insert", "args": {"characters": "ú"}},
    { "keys": ["°","u"], "command": "insert", "args": {"characters": "ů"}},
    { "keys": ["¨","u"], "command": "insert", "args": {"characters": "ü"}},

    // U, [Ú, Ů, Ü]
    { "keys": ["´","U"], "command": "insert", "args": {"characters": "Ú"}},
    { "keys": ["°","U"], "command": "insert", "args": {"characters": "Ů"}},
    { "keys": ["¨","U"], "command": "insert", "args": {"characters": "Ü"}},

    // y, [ý, ÿ]
    { "keys": ["´","y"], "command": "insert", "args": {"characters": "ý"}},
    { "keys": ["¨","y"], "command": "insert", "args": {"characters": "ÿ"}},

    // Y, [Ý, Ÿ]
    { "keys": ["´","Y"], "command": "insert", "args": {"characters": "Ý"}},
    { "keys": ["¨","Y"], "command": "insert", "args": {"characters": "Ÿ"}}
]
person Loknar    schedule 30.12.2014
comment
У меня возникла такая же проблема после обновления до 14.10. Решено удалением и повторным добавлением раскладки EN_US international с мертвыми ключами. Он был автоматически изменен на объединение EN_US с международным AltGr Unicode, что было неверно. - person Fernando Kosh; 13.02.2015
comment
Круто, если вы добавите ответ с более подробной информацией о том, как вы исправили эту проблему (детские шаги для тупого) без вышеуказанного взлома, я попробую, и если он сработает, я приму ваш ответ :) - person Loknar; 13.02.2015
comment
Выполнено. Надеюсь, это поможет вам и другим. Но, извините, если это не та же проблема. - person Fernando Kosh; 14.02.2015

Sublime Text - отличный редактор, а XCompose очень удобен для быстрого набора странных символов Unicode. Однако эти два понятия несовместимы: в Sublime Text есть досадная ошибка, которая мешает работе метода ввода xim, который обрабатывает файлы XCompose.

К счастью, кто-то сделал патч. Если вы хотите узнать больше, вы можете прочитать об этом здесь: http://whitequark.org/blog/2014/04/14/xcompose-support-in-sublime-text/

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

  1. Сначала добавьте репозиторий

    sudo add-apt-repository ppa:whitequark/sublime-imethod-fix
    
  2. а во-вторых установить патч

    sudo apt-get install libsublime-text-3-xim-xcompose
    

Все заслуги Петра Зотова за создание патча.

person Jurgen Treep    schedule 07.03.2015
comment
Вы должны добавить более подробную информацию и пояснения к своему ответу. Ответы только по ссылкам бесполезны, если контент, на который вы ссылаетесь, изменяется или исчезает. - person G. Cito; 07.03.2015
comment
Это отлично сработало для меня и позволило мне закрыть этот вопрос на askubuntu: askubuntu.com/questions/595079/ - person opensas; 11.03.2015

У меня возникла такая же проблема после обновления до 14.10. Решено путем удаления и повторного добавления раскладки клавиатуры EN_US international с мертвыми ключами. Он был автоматически изменен на EN_US, объединение международного AltGr Unicode, что было неверно.

Детские шаги:

1) Нажмите, чтобы открыть правое меню на верхней панели, и нажмите значок настроек:

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

2) В разделе "Все настройки" нажмите Регион и язык:

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

3) Внизу окна в разделе Источники ввода нажмите кнопку «Добавить» (+):

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

4) В Добавить источник ввода выберите Английский (США):

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

5) Теперь выберите EN_US international с мертвыми ключами и нажмите кнопку Добавить:

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

6) Вернувшись к региону и языку, выберите EN_US international AltGr Unicode combining, нажмите кнопку удаления (-) и закройте окно.

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

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

person Fernando Kosh    schedule 13.02.2015

То же исправление, что и выше, на этот раз для чешских диакритических знаков (излишне полное, но, черт возьми, я сделал это с помощью скрипта xD). Добавьте в Настройки> Привязки клавиш - Пользователь.

//missing composite characters for Czech alphabet
{ "keys": ["´","A"], "command": "insert", "args": {"characters": "Á"}},
{ "keys": ["´","a"], "command": "insert", "args": {"characters": "á"}},
{ "keys": ["ˇ","C"], "command": "insert", "args": {"characters": "Č"}},
{ "keys": ["ˇ","c"], "command": "insert", "args": {"characters": "č"}},
{ "keys": ["ˇ","D"], "command": "insert", "args": {"characters": "Ď"}},
{ "keys": ["ˇ","d"], "command": "insert", "args": {"characters": "ď"}},
{ "keys": ["´","E"], "command": "insert", "args": {"characters": "É"}},
{ "keys": ["´","e"], "command": "insert", "args": {"characters": "é"}},
{ "keys": ["ˇ","E"], "command": "insert", "args": {"characters": "Ě"}},
{ "keys": ["ˇ","e"], "command": "insert", "args": {"characters": "ě"}},
{ "keys": ["´","I"], "command": "insert", "args": {"characters": "Í"}},
{ "keys": ["´","i"], "command": "insert", "args": {"characters": "í"}},
{ "keys": ["ˇ","N"], "command": "insert", "args": {"characters": "Ň"}},
{ "keys": ["ˇ","n"], "command": "insert", "args": {"characters": "ň"}},
{ "keys": ["´","O"], "command": "insert", "args": {"characters": "Ó"}},
{ "keys": ["´","o"], "command": "insert", "args": {"characters": "ó"}},
{ "keys": ["ˇ","R"], "command": "insert", "args": {"characters": "Ř"}},
{ "keys": ["ˇ","r"], "command": "insert", "args": {"characters": "ř"}},
{ "keys": ["ˇ","S"], "command": "insert", "args": {"characters": "Š"}},
{ "keys": ["ˇ","s"], "command": "insert", "args": {"characters": "š"}},
{ "keys": ["ˇ","T"], "command": "insert", "args": {"characters": "Ť"}},
{ "keys": ["ˇ","t"], "command": "insert", "args": {"characters": "ť"}},
{ "keys": ["´","U"], "command": "insert", "args": {"characters": "Ú"}},
{ "keys": ["´","u"], "command": "insert", "args": {"characters": "ú"}},
{ "keys": ["´","Y"], "command": "insert", "args": {"characters": "Ý"}},
{ "keys": ["´","y"], "command": "insert", "args": {"characters": "ý"}},
{ "keys": ["ˇ","Z"], "command": "insert", "args": {"characters": "Ž"}},
{ "keys": ["ˇ","z"], "command": "insert", "args": {"characters": "ž"}}
person edison23    schedule 17.05.2016

Я решил эту проблему, изменив «Система ввода с клавиатуры» на «IBus». Вам потребуется перезагрузить компьютер.

Системные настройки> Языковая поддержка> Метод ввода с клавиатуры Система

person Marcos Nunes    schedule 22.08.2016

Вот быстрое исправление Sublime Text:

Добавьте это в начало своего кода:

# coding=utf-8

or

-- coding: utf-8 --

Оба работают.

person Antonio Santos    schedule 18.06.2016