J'ai demandé la même question lorsque j'ai utilisé Maverick Meerkat mais je n'arrive pas à faire fonctionner cette solution sur Unity. Je veux utiliser les touches ´ suivi de c et la sortie devrait être "ç". Cela fonctionne de cette manière sous Windows, et cela a fonctionné sous Ubuntu 10.10 en suivant les solutions données dans la question ci-dessus. Mais dans la version 11.04, la sortie est "c". Comment changer cela ?
Réponses
Trop de publicités?Dans Xfce 12.10, j'ai résolu le problème en procédant comme suit en installant ibus
et ses dépendances .
Il s'agit de un bogue signalé ici (et les La solution est mentionnée dans un commentaire - plus précisément これ .)
Dans Kubuntu 15.04, après avoir remplacé cedillas par /usr/share/X11/locale/en_US.UTF-8/Compose comme décrit par d'autres ci-dessus, seules les applications basées sur qt étaient correctes. Après cela, j'ai installé ibus-gtk et ibus-gtk3 et cela a corrigé mon problème avec firefox et d'autres applications basées sur gtk.
Même réponse sur SuperUser . Répété ci-dessous par souci de commodité.
J'ai créé un simple script bash script en suivant la réponse de @ThoriumBR. De cette façon, à chaque fois qu'il y a une mise à jour de votre système et que vous perdez cette configuration, vous pouvez simplement lancer le script à nouveau.
Le script est idempotent, vous pouvez donc l'exécuter autant de fois que vous le souhaitez, le résultat ne changera pas.
#!/usr/bin/env bash
# Setting vars up
COMPOSE_FILE='/usr/share/X11/locale/en_US.UTF-8/Compose'
GTK2_FILE='/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache'
GTK3_FILE='/usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache'
ENV_FILE='/etc/environment'
# Backing up files
sudo cp ${COMPOSE_FILE} ${COMPOSE_FILE}.bak
sudo cp ${GTK2_FILE} ${GTK2_FILE}.bak
sudo cp ${GTK3_FILE} ${GTK3_FILE}.bak
# Fixing cedilla in Compose
sudo sed --in-place -e 's/c/ç/g' ${COMPOSE_FILE}
sudo sed --in-place -e 's/C/Ç/g' ${COMPOSE_FILE}
# Fixing cedilla in GTK files
GTK_FILE_SEARCH_FOR='^"cedilla".*:en'
GTK_FILE_SED_EXP='s/^\(\"cedilla\".*:wa\)/\1:en/g'
grep -q ${GTK_FILE_SEARCH_FOR} ${GTK2_FILE}
[ $? -eq 1 ] && sudo sed --in-place -e ${GTK_FILE_SED_EXP} ${GTK2_FILE}
grep -q ${GTK_FILE_SEARCH_FOR} ${GTK3_FILE}
[ $? -eq 1 ] && sudo sed --in-place -e ${GTK_FILE_SED_EXP} ${GTK3_FILE}
# Fixing cedilla in environment file
ENV_FILE_GTK_LINE='GTK_IM_MODULE=cedilla'
ENV_FILE_QT_LINE='QT_IM_MODULE=cedilla'
grep -q ${ENV_FILE_GTK_LINE} ${ENV_FILE}
[ $? -eq 1 ] && echo ${ENV_FILE_GTK_LINE} | sudo tee -a ${ENV_FILE} > /dev/null
grep -q ${ENV_FILE_QT_LINE} ${ENV_FILE}
[ $? -eq 1 ] && echo ${ENV_FILE_QT_LINE} | sudo tee -a ${ENV_FILE} > /dev/null
Vous pouvez ensuite l'enregistrer dans un fichier tel que fix-cedilla.sh
et l'exécuter avec bash fix-cedilla.sh
. Ou vous pouvez marquer ce fichier comme exécutable avec chmod +x fix-cedilla.sh
et l'exécuter avec ./fix-cedilla.sh
.
Vous pouvez/devez également l'ajouter à votre répertoire dotfiles ( exemple de la mienne ) afin que la prochaine fois que vous (ré)installez votre système d'exploitation, il soit à portée de main dans un endroit connu ;-)