Как я включаю ключ международного символа, отображающийся в системе режима киоска?

Мы создаем встроенные системы на основе человечности 14.04, в которой мы реализовали поведение типа режима киоска при помощи пользовательского X сессий. Вот является рабочий стол ffile определением сессии:

[Desktop Entry]
Encoding=UTF-8
Name=Kiosk Mode
Comment=AppName Kiosk Mode
Exec=/usr/share/xsessions/appNameKiosk.sh
Type=Application

И вот сценарий сессии (appNameKiosk.sh);

#!/bin/bash

# Undefining the QT_QPA_PLATFORMTHEME environment variable disables the appmenu-qt5 package. That package is for putting
# the app menu up in the global bar rather than on the app. It has a bug and results in no menu anywhere. We want the
# menu on the app anyway.
export QT_QPA_PLATFORMTHEME=

metacity --replace &

# Set audio volume to max - user can reduce with physical knob if needed.
amixer set 'Master' 100%

# This sets the window decoration theme to our theme, which removes the title bar on maximized windows - hence on
# our main window.
gsettings set org.gnome.desktop.wm.preferences theme AppName

while true; do
    ~/AppName/bin/AppName.sh --kioskMode
    result=$?
    if [ $result -eq 125 ]; then
      poweroff
    fi
    if [ $result -eq 122 ]; then
      reboot
    fi
    sleep 3s
    # Any exit code that does not specify a specific behavior, just causes the loop to restart the app.
done

Конечный результат этого состоит в том, что никакой рабочий стол GUI не запущен. Из-за этого мы не можем ввести неанглийские символы в диалоговые окна в нашем приложении.

Я могу выполнить систему в нормальном настольном режиме и использовать конфигурацию Ввода текста для конфигурирования переключения через различные языки. Я могу затем ввести символ для немецкого языка, иврита, русского языка и т.д. на основе клавиатуры, отображающейся, который включен через специальное нажатие клавиши (значение по умолчанию является 'Суперпространством'). Однако при выполнении в режиме киоска, я просто получаю английские символы.

Мой вывод - то, что ключевое отображение выполняется некоторым компонентом, который запускается/устанавливается нормальным настольным запуском сессии (сессия гнома, кажется, вещь, которая делает это).

Как я могу запустить тот же самый компонент в своем сценарии?

Править: Для разъяснения вопрос не состоит в том, как добраться, несколько контурных карт включили. Я могу использовать настольный режим, чтобы сделать это в случае необходимости. Вопрос состоит в том, как на самом деле переключиться между ними однажды в режиме киоска. Специальное нажатие клавиши, настроенное в объекте настроек Text Entry, не имеет никакого эффекта в режиме киоска.

2
задан 2 August 2016 в 16:29

1 ответ

Можно установить несколько разметок в /etc/default/keyboard файл. Например, если Вы открываете тот файл для редактирования и устанавливаете

XKBLAYOUT="us,de,ru"

, необходимо смочь переключиться между английским (США), немецкий язык и русским языком без потребности сначала добавить те разметки через Ввод текста .

1
ответ дан 2 December 2019 в 04:54

Другие вопросы по тегам:

Похожие вопросы: