„Ctrl + spacja” zostało zmuszone do wywołania metody wprowadzania danych i nie działa w autouzupełnianiu Emacsa lub Eclipse

80

W Emacsie uruchomionym w terminalu ctrl+ spaceto standardowy klawisz skrótu do wyboru regionu. Ale w Ubuntu 12.04 będzie wywoływał metodę wprowadzania w języku innym niż angielski. Zastanawiałem się, czy mogę zarezerwować to tylko dla Emacsa?

Poniżej System Settings -> Keyboard -> Shortcutsnie mogłem znaleźć tego, co ctrl+ spacezostało powiązane. Dziwne.

Inne programy, szczególnie automatyczne uzupełnianie w Eclipse, również wydają się mieć problem z obsługą ctrl+ space.

Tim
źródło

Odpowiedzi:

119

Wygląda na to, że masz uruchomiony Ibus, który domyślnie używa Ctrl+ Space, aby włączyć / wyłączyć edytor wprowadzania.

Możesz zmienić przypisany do niego klawisz skrótu w Preferencjach Ibus.

wprowadź opis zdjęcia tutaj

Jeśli Ibus działa w pasku menu, możesz kliknąć prawym przyciskiem myszy, aby wybrać Preferencje z menu. Jeśli Ibus nie działa w pasku menu, możesz uruchomić okno dialogowe Preferencji z poziomu Dash, uruchamiając Metody wprowadzania z klawiatury lub z terminala za pomocą ibus-setup.

Aktualizacja do 14.04

ibus-setupnie jest już dostępny dla 14.04. Funkcje z tego pierwszego ibus-setupsą zamiast tego zintegrowane z Ustawieniami systemu >> Wprowadzanie tekstu .

Przełączanie wejść jest teraz domyślnie ustawione na Super+ Space, ale Ibus może nadal wykradać ostrość od przypisania klawiszy Control+ Spacei powodować inne problemy systemowe, w szczególności automatyczne uzupełnianie w Eclipse.

Integracja przełączania wejścia Ibus z nowymi ustawieniami wprowadzania tekstu jest wciąż w toku, a to powoduje problem, ponieważ starsze ustawienie wciąż istnieje za kulisami.

Jeśli zaktualizowałeś wersję 12.04, ibus-settingspowinna być nadal dostępna.

W 14.04 możesz bezpośrednio edytować ustawienia dconf-editor.

Jeśli nie jest zainstalowany:

sudo apt install dconf-editor

Następnie przejdź do Pulpit >> ibus >> ogólne >> skrót klawiszowy . Ustawienie triggeri triggersnadal pokaże „control + spacja”. Edytować te ustawienia na zewnątrz, uważając, aby nie pozostawiać pustych nawiasów []w triggers.

kolby
źródło
3
To również naprawiło autouzupełnianie nie działające w Eclipse po aktualizacji do Xubuntu 14.04
Brian Laframboise
Mój ibus-setupna 14.04 jest nieco inny i nie ma tej opcji.
BoppreH
@BoppreH 14.04 zmienił nieco konfigurację ibus. Przyjrzę się temu. Dzięki.
chaskes
4
dconf-editornaprawiono mój problem, dziękuję bardzo @chaskes.
BoppreH
2
@BoppreH Cieszę się, że się udało. Upvote (jeśli jeszcze tego nie zrobiłeś). ;)
chaskes
10

Wyłącz wyzwalacz IBUS za pomocą wiersza polecenia:

gsettings set org.freedesktop.ibus.general.hotkey triggers @as []

Lub jeśli to nie zadziała, spróbuj, jeśli pierwszy spowoduje błąd:

gsettings set org.freedesktop.ibus.general.hotkey triggers []
aba
źródło
1
Drugie polecenie działało dla mnie na niestandardowej wersji korporacyjnej Ubuntu 14.04 (goobuntu), która naprawiła mój problem z emacsem kopiuj / yank lub kopiuj / wklej.
rrenaud
Drugie polecenie naprawiło to dla mnie i jest teraz w moim skrypcie instalacyjnym do konfigurowania nowo zainstalowanych pulpitów Ubuntu. Dzięki, askubuntu!
Mnebuerquo,
5

ibus powoduje mi tylko bóle głowy. Za każdym razem, gdy próbuję zmienić ustawienia, po ponownym uruchomieniu, Ctrl + Space wraca. Oto moje rozwiązanie:

sudo apt-get purge ibus
sudo killall ibus

Teraz wszystko działa, dopóki Ubuntu nie zdecyduje o kolejnej głupocie. Może litera „o” będzie oznaczać wyłączenie komputera?

Eyal
źródło
Właśnie tego spróbowałem (Ubuntu 14.04.3 LTS). To nie pomogło.
Keith Thompson,
KOREKTA: Albo to, albo zmieniając preferencje Ibus, czy działa dconf-editor, nie praca. Testowałem, wpisując Ctrl-V Ctrl-Space w bash; z jakiegoś powodu bash tego nie zaakceptował. Ale Ctrl-Space generuje znak zerowy.
Keith Thompson,
2

Po aktualizacji do Ubuntu 14.04 miałem ten sam problem. Co ja zrobiłem.
W preferencjach Ibus: System > Preferences > Keyboard Input Methods.
Istnieje opcja: Next input methodustawiono na ctrl + spację, usunąłem to, a następnie wszystko zaczęło działać ponownie.

wmlynarski
źródło
1

Ubuntu Studio 14.04 (XFCE) tutaj. Nie miałem problemu z Autouzupełnianiem ( Ctrl + Space), ale z Copy Line ( Ctrl + Alt + Down).

To działało dla mnie:

  • Otwórz Menedżera systemu Windows: xfwm4-settings
  • Przejdź do zakładki Klawiatura
  • Przewiń w dół do konfliktu Akcja
  • Naciśnij przycisk Wyczyść lub zmień akcję na inny skrót
luboskrnac
źródło
Dzięki! Można to również zrobić w wierszu poleceń xfconf-query -c xfce4-keyboard-shortcuts -r -p " /xfwm4/custom/<Primary><Alt>Up" ; xfconf-query -c xfce4-keyboard-shortcuts -r -p " /xfwm4/custom/<Primary><Alt>Down" ; xfconf-query -c xfce4-keyboard-shortcuts -r -p " /xfwm4/custom/<Primary><Alt>Left" ; xfconf-query -c xfce4-keyboard-shortcuts -r -p " /xfwm4/custom/<Primary><Alt>Right".
Stéphane Gourichon
0

Mam Ubuntu 14.04 GNOME z LXDE. Najwyraźniej ten pulpit ma konfigurację ibus. Tak więc dla mnie zmiana ustawienia ibus była właściwą poprawką. Być może tylko Unity wyeliminowało aplikację ibus-setup.

JamesH
źródło
1
Tak, to kwestia Jedności.
Gunnar Hjalmarsson
0

dconf-editorZmiana nie była wystarczająca dla mnie. Mam zainstalowane źródło wejściowe Mozc (japoński).

W systemie Ubuntu 16.04 musiałem również:

  1. Przejdź do Ustawienia systemu -> Wprowadzanie tekstu
  2. Kliknij Mozc, aby podświetlić
  3. Kliknij ikonę klucza / śrubokręta poniżej
  4. Karta Global Config
  5. Pierwszym ustawieniem „Trigger Input Method” była CTRL_SPACE. Kliknąłem go, a następnie nacisnąłem, Escapeaby wyłączyć przypisanie klawiszy.
TalkLittle
źródło
0

Dla niektórych osób korzystających z japońskiego wejścia z fcitx, sprawdź Fcitx Configuration. Jest menu do globalnej konfiguracji, a poniżej Trigger Input Methoddomyślnym skrótem będzie Ctrl+ Space.

Alvin Radeka
źródło