web-dev-qa-db-fra.com

Comment saisir du caractère chinois dans la console bash?

Mon système est lubuntu, tous les caractères chinois peuvent être affichés correctement, et ils peuvent être saisis correctement sur gedit, leaf, firefox.
Il ne peut pas être entré sur ma console bash, comment y remédier?

locale
LANG=zh_CN.UTF-8
LANGUAGE=
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=

Voici mon fichier /etc/bash.bashrc.

[ -z "$PS1" ] && return
shopt -s checkwinsize
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi
PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then
    function command_not_found_handle {
            # check because c-n-f could've been removed in the meantime
                if [ -x /usr/lib/command-not-found ]; then
           /usr/lib/command-not-found -- "$1"
                   return $?
                Elif [ -x /usr/share/command-not-found/command-not-found ]; then
           /usr/share/command-not-found/command-not-found -- "$1"
                   return $?
        else
           printf "%s: command not found\n" "$1" >&2
           return 127
        fi
    }
fi

Voici mon fichier /root/.bashrc.

export PYTHONPATH=%PYTHONPATH%:/usr/local/python3.4/lib/python3.4/site-packages
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

Voici mon fichier de configuration bashrc normal.

if ! shopt -oq posix; then
  if [ -f /usr/share/bash-completion/bash_completion ]; then
    . /usr/share/bash-completion/bash_completion
  Elif [ -f /etc/bash_completion ]; then
    . /etc/bash_completion
  fi
fi
export PYTHONPATH=%PYTHONPATH%:/usr/local/python3.4/lib/python3.4/site-packages

Et je peux copier le caractère chinois dans le presse-papiers et le coller dans la console du terminal, le caractère chinois peut être affiché à partir de ma pâte.
Mon terminal est lxterminal.
La méthode d'entrée est fcitx.
Le caractère chinois peut être saisi dans XTerm.
Maintenant, pour vous connecter avec le nom d'utilisateur root, voici mon bureau. enter image description here

Pour appuyer sur ctrl + alt + F1, pour saisir root et son mot de passe, connectez-vous à l'interface de texte pur et entrez la commande startx, un autre bureau apparaît. enter image description here

Le caractère chinois peut être entré dans son terminal. des questions:
Pourquoi il y a deux photos de bureau pour le même utilisateur root?
Pourquoi le caractère chinois peut-il être saisi dans le prochain terminal?
Maintenant, pour appuyer sur ctrl + alt + F7, revenez au bureau précédent,
enter image description here
le caractère chinois ne peut pas être entré dans son lxterminal.

1
it_is_a_literature

Il existe un programme d'émulation de terminal intégré au noyau Linux. Il est construit sur le tampon de trame et les périphériques d'événements d'entrée, en interne, et se présente aux systèmes en mode application comme une série de périphériques terminaux virtuels du noyau , /dev/tty1 et ainsi de suite. À proprement parler, ce n'est pas nécessairement votre console , qui pourrait être une série terminal. Mais sautons cela, car répondre à cela impliquerait de savoir quel était le matériel du terminal à l'autre extrémité de la liaison série.

Le programme d'émulateur de terminal intégré au noyau Linux ne prend pas en charge les méthodes d'entrée.

Donc, pour avoir un terminal non X11 avec des méthodes d'entrée, vous devez exécuter un terminal virtuel de l'espace utilisateur qui utilise le tampon de trame et les périphériques d'événements d'entrée. Ils déconnectent l'émulateur de terminal dans le noyau de ces périphériques, alors qu'ils les utilisent eux-mêmes.

Les émulateurs de terminaux virtuels de l'espace utilisateur qui prennent en charge les méthodes d'entrée incluent

Lectures complémentaires

2
JdeBP

enter image description here Pour vous connecter avec un nom normal.

enter image description here Pour vous connecter avec root.

Pour supprimer les trois lignes dans/etc/profile et /etc/bash.bashrc et /root/.bashrc et ~/.bashrc.

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"

vim /etc/X11/Xsession.d/25xchinput

export LAGN=zh_CN.utf8
export LC_CTYPE=zh_CN.utf8
export XMODIFIERS=@im=fcitx
fcitx & 
0
it_is_a_literature