Wyświetl bieżący układ (kod języka / flaga kraju) na wskaźniku klawiatury

11

Właśnie uaktualniono z 10.04 do 10.10, a aplet wskaźnika klawiatury nie wyświetla już dwuliterowego kodu kraju dla aktywnego układu.

To okropne . Czy to jest domyślne zachowanie? Każdy, kto używa dwóch układów, nie może powiedzieć, w jakim języku jest.

Nie mogę znaleźć ustawienia tego, kiedyś było to w preferencjach dotyczących układu klawiatury.

Aktualizacja 1 : W przypadku, gdy nie było to oczywiste - mam dwa układy klawiatury - angielski i hebrajski. Właśnie zaktualizowałem wersję 10.04, na której wyświetlał się kod kraju (USA / IL), nałożony na flagę.

Teraz dostaję tylko niejasną ikonę klawiatury i nie mogę znaleźć ustawień dla tego.

Aktualizacja 2 : wydaje się, że jest to błąd, który ludzie zgłaszali od czasu Lucid , i teraz powrócił do Maverick

Jono
źródło
Dzięki Jono za ostatni post. Przypadkowo usunąłem aplikację Indicator. Dodanie go rozwiązało brakujący trzyliterowy wskaźnik zastosowanego układu. Pozdrawiam, Gideon
Wygląda na to, że 13.10 zaktualizowało wskaźnik klawiatury. Rozwiązania w tym wątku nie działają. Jakieś wskazówki?
Hamid
Nie korzystam z Ubuntu od 2011 roku. Czy nadal występuje problem ze wskaźnikiem klawiatury?
Jono

Odpowiedzi:

8

10.10

Tak, ikona nie odzwierciedla wybranego języka. Myślę, że może to mieć związek z tym, że pokazywanie „flag” często byłoby niewłaściwe. (Przykłady: flaga Wielkiej Brytanii w Indiach, flaga Niemiec w Austrii, flaga Francji w Senegalu).

Obecna metafora, tj. KLAWIATURA → Langauge jest bardzo zgodna z wytycznymi dotyczącymi doświadczenia użytkownika.

Opisane zachowanie zostało usunięte jakiś czas temu. Była to kolejna aplikacja (nie pamiętam nazwy), która zajmowała się wtedy układami klawiatury. (Przynajmniej pamiętam coś takiego, nie jestem pewien, czy teraz o tym pomyślę)

To, co zrobiłem, aby uzyskać powyższy zrzut ekranu, to przejdź do układów klawiatury, wybierz dodaj, hebrajski / Izrael i dodaj go do listy. Mój system został zaktualizowany od wersji 9.10, więc powinien być taki sam w prawie każdej instalacji Ubuntu.


alternatywny tekst

Stare zachowanie wciąż czai się w systemie. Jeśli chcesz, aby wskaźnik wyświetlał flagi, możesz otworzyć gconf-editor, przejść /desktop/peripherals/keyboard/indicatori włączyć „showFlags”. Jednak potrzebne będą odpowiednie flagi /home/<username>/.icons/flags(naciśnij CTRL+, Haby wyświetlić katalogi rozpoczynające się kropką). Flaga Izraela powinna zostać nazwana il.png(która jest kodem izraela ISO 3166-1 alfa-2 kod kraju ).

Stefano Palazzo
źródło
Dzięki, postaram się usunąć hebrajski układ i dodać go ponownie, aby sprawdzić, czy to zadziała.
Jono
1
W każdym razie, dla jasności - nie szukam flag.
Jono
Stefano - to chyba nie pomogło. Zastanawiam się, czy jest to problem z wersją Netbook, gdzie nie wyświetla nazwy języka obok ikony klawiatury?
Jono
5

12.10

Domyślnie wskaźnik klawiatury w 12.10 pokazuje ikonę klawiatury i 2-literowy skrót układu.

Jeśli zamiast tego chcesz pokazać flagi kraju, musisz zrobić dwie rzeczy

  1. Ustaw opcję konfiguracji dla dconf:

    dconf write / org / gnome / libgnomekbd / Indicator / show-flags true

  2. Zainstaluj ikony flag w folderze ~/.icons(nie ~/.icons/flags). Łatwym sposobem na to jest zainstalowanie famfamfam-flag-pngi połączenie ikon z folderem

    ln -s /usr/share/flags/countries/16x11/*.png ~ / .icons /

Nick Andrik
źródło
3

12.04

Wskaźnik klawiatury pojawia się, gdy zdefiniowano więcej niż jeden układ klawiatury.

wprowadź opis zdjęcia tutaj

Kraj jest wyświetlany przy użyciu dwuliterowego kodu

na przykład - francja:

wprowadź opis zdjęcia tutaj

jak

Wyszukaj układ klawiatury w Dash

Uwaga:

W przeciwieństwie do wersji 10.10 - chociaż istnieje klawiatura gconf, nie ma podobnego klawisza show-flags.


Jeśli chcesz, aby zamiast wskaźnika klawiatury wyświetlała się flaga kraju, możesz użyć małego apletu o nazwie gxneur.

wprowadź opis zdjęcia tutaj

gxneur Zainstaluj gxneur

Aby to zrobić, musimy umieścić na białej liście gxneur. Użyj dconf-editor:

narzędzia dconf Zainstaluj narzędzia dconf

wprowadź opis zdjęcia tutaj

  • Dodaj gxneur, jak pokazano.
  • Wyloguj się i zaloguj.
  • Uruchom gxNeur z Dash.
  • Spowoduje to wyświetlenie apletu.
  • Kliknij wyświetlony aplet prawym przyciskiem myszy, wybierz Właściwości klawiatury i wybierz kartę Właściwości . Upewnij się, że Auto Startuppole wyboru jest zaznaczone.
  • Następnie musisz wyłączyć standardowy wskaźnik klawiatury. Postępuj zgodnie z instrukcjami zawartymi w niniejszym pytaniu i odpowiedziach.

Jak usunąć wskaźnik klawiatury?

fossfreedom
źródło
2

10.04

Okazuje się, że jest to błąd, który był w Lucid Beta i teraz pojawia się ponownie (patrz tutaj: https://bugs.launchpad.net/gnome-settings-daemon/+bug/531173 ).

Oto obejście:

  1. Kliknij obszar powiadomień prawym przyciskiem myszy i wybierz Dodaj aplet ...
  2. Dodaj aplet o nazwie „Applet wskaźnika”.

To powinno zastąpić (zastąpić) bieżącą grupę wskaźników, ale może trochę popsuć.

Jono
źródło
1

10.10

Domyślnie wskaźnik klawiatury w 10.10 pokazuje ikonę klawiatury i 3-literowy skrót układu.

Może także wyświetlać ikonę, gdy /desktop/gnome/peripherals/keyboard/indicator/showFlagsklucz w GConf jest ustawiony, a gdzieś masz zainstalowane wymagane ikony.

Pamiętaj, że pomimo nazwy klucza GConf flagi kraju nie są tutaj najlepszym rozwiązaniem, ponieważ niektóre układy klawiatury nie są powiązane z jednym krajem, a niektóre kraje mogą mieć wiele zupełnie różnych układów). Zatem nazwy flag (plików) niekodami krajów alfa-2, ale kodami układu klawiatury XKB, które w wielu przypadkach są oparte na kodach krajów (ale nie zawsze poprawnie wyrażają wszystkie miejsca, w których używany jest określony układ klawiatury), ale w innych przypadkach nie są ( ara= „arabski”, latam= „ameryka łacińska”, mao= „maoryski”, brai= „brajl”, epo= „esperanto”). Możesz znaleźć listę wszystkich kodów układ w /usr/share/X11/xkb/rules/base.lstramach ! layoutsekcji.

O ile mi wiadomo, dla Natty planowane jest posiadanie ikon SVG (lub opartych na SVG), które wyrażają układ klawiatury (IIRC użyją 3-literowego skrótu, jak wymieniono w base.xml, który można znaleźć w tym samym katalogu, o którym wspominam powyżej), abyśmy nie potrzebowali już ikony klawiatury + tekstu (wskaźniki nie mogą być obecnie tylko tekstem ...).

I jak mówi Richard, pokazuje to tylko wtedy, gdy masz skonfigurowany więcej niż 1 układ.

JanC
źródło
Dodałem notatkę do mojego pytania - zakładałem, że będzie oczywiste, że używam wielu układów, w przeciwnym razie nie musiałbym wiedzieć, którego używam.
Jono
Cóż, założyłem, że masz wiele układów, po prostu dodałem, że to kompletne. Ale jeśli dobrze rozumiem, widzisz tylko ikonę klawiatury, ale nie 3-literowy skrót układu? (Zobacz pierwszy zrzut ekranu Stefano, jak powinien on wyglądać.)
JanC
1

10.10

Wyświetla się tylko wtedy, gdy skonfigurowano więcej niż jeden układ klawiatury.

Przejdź do System> Preferencje> Klawiatura

Na karcie Układy dodaj inny układ klawiatury, a następnie zauważ, jak ikona pojawia się w obszarze powiadomień.

Innymi słowy, aplet nie zostanie pobrany, jeśli masz tylko jeden układ klawiatury do wyboru.

Richard Holloway
źródło
ale ikona nie odzwierciedla których układ używam - to jest mój problem.
Jono
0

Znalazłem tutaj skrypt Pythona: deweloper aplikacji ubuntu: Wskaźniki aplikacji, aby zrobić aplikację wskaźnika, poprawiłem ją trochę i zrobiłem mały wskaźnik flagi Lang.

wprowadź opis zdjęcia tutaj

country-indicator.py

#!/usr/bin/env python
# Copyright 2009 Canonical Ltd.
#
# Authors: Neil Jagdish Patel <[email protected]>
#          Jono Bacon <[email protected]>
#
# This program is free software: you can redistribute it and/or modify it 
# under the terms of either or both of the following licenses:
#
# 1) the GNU Lesser General Public License version 3, as published by the 
# Free Software Foundation; and/or
# 2) the GNU Lesser General Public License version 2.1, as published by 
# the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful, but 
# WITHOUT ANY WARRANTY; without even the implied warranties of 
# MERCHANTABILITY, SATISFACTORY QUALITY or FITNESS FOR A PARTICULAR 
# PURPOSE.  See the applicable version of the GNU Lesser General Public 
# License for more details.
#
# You should have received a copy of both the GNU Lesser General Public 
# License version 3 and version 2.1 along with this program.  If not, see 
# <http://www.gnu.org/licenses/>
#
import gtk
import appindicator
import getpass
import locale

lang = locale.getdefaultlocale()
user = getpass.getuser()

png = '/home/' + user + '/.icons/flags/' + lang[0] + '.png'

def menuitem_response(w):
  gtk.main_quit()

if __name__ == "__main__":
  ind = appindicator.Indicator ("lang-flag-indicator", png, appindicator.CATEGORY_APPLICATION_STATUS)
  ind.set_status (appindicator.STATUS_ACTIVE)

  print "your current language is: %s, so it load the ~/.icons/flags/%s.png" % (lang[0], lang[0])

  # create a menu
  menu = gtk.Menu()
  mnuQuit = gtk.MenuItem("Exit")
  menu.append(mnuQuit)
  mnuQuit.connect("activate", menuitem_response)
  mnuQuit.show()

  ind.set_menu(menu)

  gtk.main()

może być łatwo uruchomiony jako skrypt Python lub skompilowany za pomocą pyinstaller

mam nadzieję że to pomoże

aaaaaaaaaaaaaaa
źródło
0

14.04

W tym przypadku bardziej przypomina odpowiedź user53768 . Wszystko, co musisz zrobić, to:

1- Aby przekonwertować wybrane obrazy na *.svgtekst za pomocą Inskscape.

2- Utwórz kopię zapasową starych ikon w katalogach /usr/share/icons/ubuntu-mono-dark/status/22/i /usr/share/icons/ubuntu-mono-light/status/22/(w moim przykładzie używam języka angielskiego i greckiego).

cd usr/share/icons/ubuntu-mono-dark/status/22/
sudo mv indicator-keyboard-En.svg indicator-keyboard-En.svg.bak    
sudo mv indicator-keyboard-Gr.svg indicator-keyboard-Gr.svg.bak
cd /usr/share/icons/ubuntu-mono-light/status/22/
sudo mv indicator-keyboard-En.svg indicator-keyboard-En.svg.bak
sudo mv indicator-keyboard-Gr.svg indicator-keyboard-Gr.svg.bak

3- Twórz symboliczne linki do swoich zdjęć.

sudo ln -s /home/myUser/.icons/us.svg /usr/share/icons/ubuntu-mono-dark/status/22/indicator-keyboard-En.svg
sudo ln -s /home/myUser/.icons/gr.svg /usr/share/icons/ubuntu-mono-dark/status/22/indicator-keyboard-Gr.svg
sudo ln -s /home/myUser/.icons/us.svg /usr/share/icons/ubuntu-mono-light/status/22/indicator-keyboard-En.svg
sudo ln -s /home/myUser/.icons/gr.svg /usr/share/icons/ubuntu-mono-light/status/22/indicator-keyboard-Gr.svg

To wszystko !!

ioaniatr
źródło
0

W Saucy 13.10:

Język klawiatury jest oznaczony dwiema literami na szarym tle (przykład: En dla angielskiego, Fr dla francuskiego itp.). Możesz edytować te obrazy, które są plikami svg, pamiętając, że obrazy svg to nie więcej niż pliki xml. Możesz to zrobić w edytorze tekstów, ale najpierw musisz przenieść obraz (y) flagi (flag) do pliku (ów) svg. W tym celu musisz użyć Inskscape.

  1. Otwórz obraz flagi (png, jpg, cokolwiek) w Inkscape i zapisz go jako plik svg. Ostrzeżenie - obraz flagi nie powinien być zbyt duży, bajtowo, nie więcej niż kilkaset Kb lub mniej.

  2. Zrób kopię zapasową obrazu, który chcesz edytować. Obrazy (te przedstawiające dwuliterowy kod na szarym tle) znajdują się w:

/ usr / share / icons / ubuntu-mono-dark / status / 22 / AND / usr / share / icons / ubuntu-mono-light / status / 22 /

Nazywają się: wskaźnik-klawiatura-En.svg dla języka angielskiego wskaźnik-klawiatura-Fr.svg dla języka francuskiego wskaźnik-klawiatura-Es.svg dla języka hiszpańskiego ... masz pomysł.

  1. PO utworzeniu kopii zapasowej tych, które chcesz zmodyfikować, otwórz obraz svg w tym katalogu w edytorze tekstu z uprawnieniami administratora, ponieważ będziesz go edytować. W tym samym edytorze tekstów otwórz obraz svg oznaczony flagą, który przekonwertowałeś w Inkscape.

  2. Zasadniczo końcowy obraz svg powinien zawierać wszystkie poprawnie sformatowane tagi pliku xml, ale można usunąć prawie wszystko między tagami i zastąpić je danymi z

    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <svg width="30" xmlns="http://www.w3.org/2000/svg" version="1.1" height="18">
        <image
            width="30"
            height="18"
            xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAArCA
            YAAADIWo5HAAAABHNCSVQICAgIfAhkiAAAAKdJREFUaIHt0LEJwmAYBuHvD1joEhYZxD
            qdC7iA+ziDG2SBFBkoYGGKuMQPD8J7AxzHtRpfR/Xks9f8vtd0
            u3bVfpe1tsez2uXc1Tt0tf0hGaADNBmgAzQZoAM0GaADNBmgAzQZoAM0GaADNBmgAzQZ
            oAM0GaADNBmgAzQZoAM0GaADNBmgAzQZoAM0GaADNBmgAzQZoAM0GaADNBlQR9MNlKHq
            pBsoPwoXC6lf4YbfAAAAAElFTkSuQmCC"
            id="image3028"
            x="0"
            y="0"
        />
    </svg>
    

    Wszystko między tagiem obrazu a zamykającym „/>” pochodziło z pliku svg flag-image wyprodukowanego przez Inkscape, w tym długiego łańcucha alfanumerycznego, który jest „mięsem” obrazu. Wszystko powyżej i poniżej pochodzi z oryginalnego pliku svg.

W powyższym przykładzie podałem obrazowi szerokość 30 pikseli i wysokość 18 pikseli, dobrze pasuje do innych ikon / wskaźników na panelu.

Więcej informacji na: http://ubuntuforums.org/showthread.php?t=2193789

użytkownik53768
źródło
Teraz problem polega na tym, że ustawiłem ikony na Oxygen (używając Unity Tweak Tool) i wygląda na to, że używa ogólnej ikony wskaźnika języka, która nie znajduje się w odpowiednim katalogu (jak w / usr / share / icons / ubuntu-mono- ciemny / status / 22 /). Jakieś wskazówki, skąd bierze się ten ogólny?
Hamid
0

Uniwersalne rozwiązanie dla Ubuntu 14.04 LTS, 16.04 LTS, 18.04 LTS z wykorzystaniem Unity i GNOME FlashBack (z gnome-panel). Działa również na ekranie logowania LightDM.
Ale nie będzie działać na Ubuntu 18.04 LTS z powłoką GNOME ze względu na inny mechanizm wskazywania układu klawiatury.

Kroki, aby wyświetlić flagi dla układów klawiatury:

  1. Przede wszystkim musimy pobrać flagi państw. W poniższym przykładzie używamy Rosji ( ru) i Stanów Zjednoczonych ( us):

    cd ~/Downloads
    wget https://raw.githubusercontent.com/linuxmint/flags/master/usr/share/iso-flag-png/{ru,us}.png
    

    Uwaga: użyłem rui usmożesz wybrać inne z repozytorium GitHub LinuxMint .

  2. Następnie musimy przekonwertować te flagi PNG na kanał alfa zapisujący SVG za pomocą ImageMagick:

    sudo apt-get install imagemagick
    
    convert -alpha activate -resize x22 ru.png png:- > indicator-keyboard-Ru.svg
    convert -alpha activate -resize x22 us.png png:- > indicator-keyboard-En.svg
    
    sudo cp indicator-keyboard-*.svg /usr/share/icons/ubuntu-mono-dark/status/22/
    sudo cp indicator-keyboard-*.svg /usr/share/icons/ubuntu-mono-light/status/22/
    sudo cp indicator-keyboard-*.svg /usr/share/icons/Radiant-MATE/status/22/
    sudo cp indicator-keyboard-*.svg /usr/share/icons/Ambiant-MATE/status/22/
    

Jeśli chcesz cofnąć zmiany - zainstaluj ponownie następujące pakiety.

  • W dniu 14.04 LTS:

    sudo apt-get install --reinstall ubuntu-mono
    
  • W dniu 16.04 LTS i 18.04 LTS

    sudo apt-get install --reinstall ubuntu-mono ubuntu-mate-icon-themes
    

Uwaga: w przypadku Ubuntu MATE (w tym 18.04 LTS) zobacz inną odpowiedź . Nie używa indicator-keyboard, więc jest to inna historia.

N0rbert
źródło