In bestimmten Textfeldern kann ich überhaupt keine nicht-englischen Zeichen eingeben (ich gebe ein Zeichen ein, nichts passiert). Beispiele sind:
- Suchfeld für Unity Dash
- Chrom-Adressleiste
- Pidgin-Meldungsfeld
- Gajim-Nachrichtenbox
An anderen Stellen (z. B. Terminal, Firefox-Adressleiste, Eingabefelder auf Websites usw.) funktioniert die Eingabe dieser Zeichen.
Bearbeiten:
$ locale
LANG=sr_RS.utf8@latin
LANGUAGE=sr_RS@latin:sr_RS:sr:en_US:en
LC_CTYPE="sr_RS.utf8@latin"
LC_NUMERIC=sr_RS
LC_TIME=sr_RS
LC_COLLATE="sr_RS.utf8@latin"
LC_MONETARY=sr_RS
LC_MESSAGES=sr_RS.UTF-8
LC_PAPER=sr_RS
LC_NAME=sr_RS
LC_ADDRESS=sr_RS
LC_TELEPHONE=sr_RS
LC_MEASUREMENT=sr_RS
LC_IDENTIFICATION=sr_RS
LC_ALL=
$ gsettings list-recursively org.gnome.desktop.input-sources
org.gnome.desktop.input-sources current uint32 0
org.gnome.desktop.input-sources per-window false
org.gnome.desktop.input-sources show-all-sources false
org.gnome.desktop.input-sources sources [('xkb', 'us'), ('xkb', 'rs+latin'), ('xkb', 'rs')]
org.gnome.desktop.input-sources xkb-options @as []
$ setxkbmap -query -v
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+us+inet(evdev)
geometry: pc(pc105)
rules: evdev
model: pc105
layout: us
Und wenn ich zu einem meiner Layouts außerhalb der USA wechsle, erhalte ich:
$ setxkbmap -query -v
Trying to build keymap using the following components:
keycodes: evdev+aliases(qwerty)
types: complete
compat: complete
symbols: pc+rs(latin)+us:2+inet(evdev)
geometry: pc(pc105)
rules: evdev
model: pc105
layout: rs,us
variant: latin,
env:
$ env | grep -i im
CLUTTER_IM_MODULE=xim
XMODIFIERS=@im=ibus
EDITOR=/usr/bin/vim
IM_CONFIG_PHASE=1
QT4_IM_MODULE=xim
TEXTDOMAIN=im-config
XDG_RUNTIME_DIR=/run/user/1000
GTK_IM_MODULE=xim
LC_TIME=sr_RS
13.10
input
special-characters
Mladen Jablanović
quelle
quelle
locale
Antworten:
Ich habe bestätigt, dass ich dasselbe Problem in Unity und Chromium mit demselben Setup hatte, das Sie gerade anzeigen, es jedoch mit der folgenden Problemumgehung behoben habe.
Das Problem besteht darin, dass
S1
Unity auch dann reagiert , wenn die Menüleiste korrekt anzeigt, dass Sie das Layout beispielsweise auf Englisch umgestellt haben .Das heißt, es wird nur eine englische Ausgabe erstellt, obwohl der Indikator dies anzeigt
S1
. Wenn Sie in Unity eine Taste drücken, wird nur die englische Taste angezeigt, oder es wird nichts angezeigt, wenn keine Taste der serbischen Combo entspricht, oder ein anderer Teil der Benutzeroberfläche wird ausgelöst, wenn die Combo diese auslöst. Andere Anwendungen verwenden jedoch beispielsweisegedit
das in der Menüleiste angezeigte serbische Layout. Unity reagiert aber immer noch nur so, als wäre das Layout auf Englisch eingestellt. Darüber hinaus wird dies durch das Ändern der Schriftart nicht beeinflusst.Es gibt zwei Probleme:
Bitte beachten Sie auch, dass:
ibus
,fcitx
odernone
.Dies ist auch nicht auf Einstellungen im Zusammenhang mit
xkb-options
, wie derCompose Key
oder den3rd level chooser
(bezeichnet alsAlternative Characters Key
in Tastatur >> Tippen .(Sie haben keines dieser Sets; dieser Punkt dient nur der Vollständigkeit.)
Die Schlüsseleinstellung finden Sie in den Systemeinstellungen >> TextEntry .
Die Standardeinstellung ist
Use the same source for all windows
. Leider scheint die Standardeinstellung immer das Problem zu verursachen.Die Problemumgehung besteht darin, dies zu ändern
Allow different sources for each window
.Die
New windows
Einstellung funktioniert mit beiden Optionen,use the default choice
scheint jedoch weniger schrullig zu sein und korrekter und konsistenter zu funktionieren.Sie sollten sich nicht aus- und einloggen müssen, aber es tut nicht weh. Zu diesem Zeitpunkt funktioniert die Eingabe mit den serbischen Tastaturen sowohl in der Chromium- als auch in der Unity-Suche. Na ja, die meiste Zeit. Ich entdeckte, dass Unity manchmal noch etwas schrullig ist, aber das lässt sich auch leicht umgehen.
Mit
New windows use the default source
haben die Dinge fast die ganze Zeit wie erwartet funktioniert:Wenn Sie also Unity öffnen, wechselt die Quelle zu Englisch, und Sie verwenden Ctrl+ Space, um die Quelle zu wechseln. Jetzt ist die Quelle
S1 (latin)
. Wenn Sie [ richtigš
tippen, funktionieren auch Schlüssel, die von einer Kombination abhängen, in Unity ordnungsgemäß. Zum Beispiel erzeugt Right-Alt+ .aæ
Das Problem ist, dass die Eingabequelle von Unity und die auf der Tastatur angezeigte Eingabequelle manchmal nicht synchron zu sein scheinen und das oben beschriebene Problem auftritt oder weiterhin auftritt.
Die Lösung für diese Eigenart besteht darin, durch die Eingabequellen zu blättern. Drücken Sie Ctrl+, Spacebis Sie zur gewünschten Quelle zurückkehren.
Dadurch werden die Eingangsquellen die meiste Zeit neu synchronisiert . Einige Male musste ich zweimal durchfahren. Ein anderes Mal musste ich die Quellen durchlaufen, Unity beenden und Unity neu starten.
Die gute Nachricht ist, dass die Quellen, sobald sie neu synchronisiert wurden, den Rest der Sitzung über korrekt zu bleiben scheinen.
Besser noch, wie oben erwähnt,
new windows use default source
scheint die Verwendung der Einstellung fast die ganze Zeit zu verhindern, dass die Eigenart auftritt.Die Häufigkeit dieser Eigenart scheint zu sein:
Use the same source for all windows
: Immer. Es wird niemals funktionieren.Allow different sources -- new use current source
: Frequent. Ein Durchlaufen der Eingangsquellen und manchmal ein Beenden / Neustarten von Unity ist häufig erforderlich.Allow different sources -- new use default source
: Selten. Funktioniert die meiste Zeit wie vorgesehen. Durch die Eingangsquellen blättern und manchmal Unity beenden / neu starten, ab und zu erforderlich, aber nicht oft.Ich konnte diesen Fehler im Launchpad nicht finden, daher möchten Sie möglicherweise einen neuen Fehler bei der Umschaltung der Eingangsquelle melden. (Ich bin mir nicht sicher, welches Paket genau gemeldet werden soll.) Es gibt ähnliche Fehler im Launchpad, aber alle, die ich gesehen habe, waren älter und nicht aktiv.
quelle
š
([
befindet sich in einem US-Layout) ) erscheint nichts. Weder werdenš
noch[
ausgegeben.š
noch versucht[
und es funktioniert immer noch gut. Das ist die Sache mit den Käfern. Manchmal ist es schwer zu wissen, wann genau die richtigen Dinge zusammenkommen. Mein Computer hatte das gleiche Problem wie Ihr, bevor ich die Problemumgehung angewendet habe. Danach wird Serbisch in Unity korrekt eingegeben.Ich würde vorschlagen, dass das Problem darin besteht, dass die verwendeten Schriftarten an einigen Stellen nicht die erforderlichen nicht-lateinischen Zeichen enthalten. Stellen Sie sicher, dass die verwendeten Schriftarten auf dem gesamten Desktop und in den von Ihnen verwendeten Apps über eine Vielzahl von verdeckten Zeichen verfügen, z. B. die
Liberation
oder dieDejaVu
Schriftfamilie.quelle