Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Impossible d'insérer certaines lettres accentuées. #120

Closed
roipoussiere opened this issue Jun 20, 2016 · 51 comments
Closed

Impossible d'insérer certaines lettres accentuées. #120

roipoussiere opened this issue Jun 20, 2016 · 51 comments

Comments

@roipoussiere
Copy link
Collaborator

Sous linux, les lettres accentuées nécessitant l'appui de 2 touches sur le clavier (ex : ô -> touche ^ puis o, mais pas é qui a sa touche dédiée) ne s'affichent pas.

@firm1
Copy link
Owner

firm1 commented Jun 20, 2016

Effectivement, ce bug a déjà été signalé, mais ne touche que les environnement Linux.

Pour le corriger il faudra passer à une version supérieure de RichTextFX (la dernière fois que j'ai essayé avec leur branche master, ça fixait le souci)

@firm1 firm1 added the bug label Jun 20, 2016
@WinXaito
Copy link
Collaborator

Et pourquoi tu n'as pas directement passer sur la version supérieur? Car ce n'est pas encore une version stable ?

@firm1
Copy link
Owner

firm1 commented Jun 21, 2016

Ce n'est pas encore stable et c'est assez lent pour l'avoir testé. Donc
j'attends un peu.

Le mar. 21 juin 2016 10:08, WinXaito notifications@github.com a écrit :

Et pourquoi tu n'as pas directement passer sur la version supérieur? Car
ce n'est pas encore une version stable ?


You are receiving this because you commented.

Reply to this email directly, view it on GitHub
#120 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/AFyPX9cGmzWNdC9oBZx3SESonHpz4bDZks5qN5v2gaJpZM4I5iAm
.

@roipoussiere
Copy link
Collaborator Author

Tu as réessayé depuis ? Il sont sorti une nouvelle release le 19 juillet.

@firm1
Copy link
Owner

firm1 commented Oct 13, 2016

J'avoue pas essayer depuis. Mais c'était une milestone, pas une stable.

Le jeu. 13 oct. 2016 15:41, Nathanaël Jourdane notifications@github.com a
écrit :

Tu as réessayé depuis ? Il sont sorti une nouvelle release
https://github.com/TomasMikula/RichTextFX/releases le 19 juillet.


You are receiving this because you commented.

Reply to this email directly, view it on GitHub
#120 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFyPXwAhuhiCic2Gk88iCYOLGp3_hBOTks5qzjUagaJpZM4I5iAm
.

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Oct 13, 2016

Ok. Bon je checkerais de temps en temps.

c'est assez lent pour l'avoir testé.

La différence se voit beaucoup ?

Je dois avouer que c'est super chiant quand on rédige de ne pas pouvoir taper les ê, ô, etc. :-P

@pierre-24
Copy link

pierre-24 commented Oct 19, 2016

Alors moi, c'est encore plus chiant que ça : je ne peux même pas insérer les accents tout seuls (pas de ^ et pas de "`" pour le code inline). Du coup, c'est réellement pénible pour rédiger du code LaTeX (et comme je fait un tuto sur la chimie, j'ai beaucoup d'exposants à mettre).

Le log dit rien de spécial, mais au moins il donne ma version de Java :

2016-10-19 16:33:46 INFO  MainApp:73 - Version Java de l'utilisateur: 1.8.0_101
2016-10-19 16:33:46 INFO  MainApp:74 - Architecture du système utilisateur: amd64
2016-10-19 16:33:46 INFO  MainApp:75 - Nom du système utilisateur: Linux
2016-10-19 16:33:46 INFO  MainApp:76 - Version du système utilisateur: 3.13.0-37-generic
2016-10-19 16:33:46 INFO  MainApp:89 - Répertoire Home par defaut : /home/pbeaujea
2016-10-19 16:33:46 INFO  Configuration:166 - Espace de travail chargé en mémoire
2016-10-19 16:33:53 INFO  ZdsHttp:344 - Utilisateur pierre_24 connecté
2016-10-19 16:33:53 INFO  ZdsHttp:427 - Initialisation des metadonnées contenus en ligne de type tutorial
2016-10-19 16:33:53 INFO  ZdsHttp:430 - Tentative de joindre l'url : https://zestedesavoir.com/contenus/tutoriels/144/
2016-10-19 16:33:53 INFO  ZdsHttp:441 - Tentative réussie
2016-10-19 16:33:53 INFO  ZdsHttp:458 - Contenu de type tutorial chargés en mémoire : [introduction-aux-notions-de-cristallographie, la-dualite-onde-corpuscule-une-introduction-a-la-mecanique-quantique, la-recherche-dinformations-sur-internet, le-guide-du-contributeur, the-chemistry-lab-travaux-pratique-de-chimie, tutoriel-de-test, un-zeste-de-chimie]
2016-10-19 16:33:53 INFO  ZdsHttp:427 - Initialisation des metadonnées contenus en ligne de type article
2016-10-19 16:33:53 INFO  ZdsHttp:434 - Tentative de joindre l'url : https://zestedesavoir.com/contenus/articles/144/
2016-10-19 16:33:53 DEBUG MdTextController:283 - Tentative d'ouverture du contenu stocké dans /home/pbeaujea/zwriter-workspace/offline/tutoriel-de-test
2016-10-19 16:33:53 INFO  Configuration:138 - Fichier d'actions enregistré
2016-10-19 16:33:53 INFO  MdTextController:372 - Contenu stocké dans /home/pbeaujea/zwriter-workspace/offline/tutoriel-de-test ouvert
2016-10-19 16:33:53 INFO  ZdsHttp:441 - Tentative réussie
2016-10-19 16:33:53 INFO  ZdsHttp:458 - Contenu de type article chargés en mémoire : [introduction-aux-notions-de-cristallographie, la-dualite-onde-corpuscule-une-introduction-a-la-mecanique-quantique, la-recherche-dinformations-sur-internet, le-guide-du-contributeur, the-chemistry-lab-travaux-pratique-de-chimie, tutoriel-de-test, un-zeste-de-chimie, cancer-entre-recherches-et-espoirs, gestion-des-tags-sur-zds, interview-rencontre-avec-pierre-24, philae-a-la-recherche-de-lorigine-de-la-chiralite-du-monde, test-4, tutoriels-et-articles-les-nouveautes-de-la-version-12]
2016-10-19 16:33:58 DEBUG MdTextController:220 - Tentative de création d'un nouvel onglet pour Test 2
2016-10-19 16:33:59 INFO  MdTextController:273 - Nouvel onglet crée pour Test 2
2016-10-19 16:34:09 INFO  MdTextController:80 - PYTHON STARTED

(Linux Mint 17.3)

@loriswit
Copy link

Même problème que @pierre-24 sous Ubuntu. La seule manière de contourner le problème est de copier-coller les accents ou d'utiliser un clavier américain, ce qui n'est pas idéal.

@firm1
Copy link
Owner

firm1 commented Oct 23, 2016

Merci pour le rapport. C'est un souci qui nous embête vraiment, je me le suis pris en priorité, mais on est sur un problème technique qui dépend un peu du composant que l'on utilise.

Dès que je trouve une bonne solution, je la pousse ASAP

@SpaceFox
Copy link
Contributor

Du coup ici qu'est-ce qui empêche d'utiliser la dernière version de RichTextFX ?

@WinXaito
Copy link
Collaborator

Comme dit dans l'issue que tu as ouverte, il faut désactiver la fonction Rechercher/Remplacer, mais c'est mieux ça que le bug des accents. Donc il faut juste quelqu'un qui fasse la migration.

@firm1
Copy link
Owner

firm1 commented Dec 14, 2016

Bon j'ai une mauvaise nouvelle concernant cette issue. En fait la dernière version de RichtextFX ne corrige pas le souci. En fait ce souci n'existe que pour les utilisateur de Linux. Sur Windows et OS X ça fonctionne.

Du coup je suis un peu embêté. Laisser tomber RichTextFX complètement c'est dire adieu à pas mal de trucs sympa (numérotation des lignes, styles dans le texte de rédaction, undo/redo, etc) qui ne seront probablement pas developpé aussi facilement.

J'ai envie d'attendre que RichtexFX corrige le problème chez eux, mais ça peut prendre du temps. Vous avez peut-être des avis ?

@SpaceFox
Copy link
Contributor

SpaceFox commented Dec 14, 2016 via email

@firm1
Copy link
Owner

firm1 commented Dec 14, 2016

Un peu extrême comme solution quand même

@SpaceFox
Copy link
Contributor

C'est moins catastrophique en terme d'image que de proposer une solution qui ne peut pas être utilisée. Les accents circonflexes (et dans une moindre mesure les trémas) sont fréquents en français. Par exemple ton dernier message :

Un peu extrême comme solution quand même

En contient deux.

@pierre-24
Copy link

Je suis d'accord avec @SpaceFox, malheureusement. Après, ça dépend de la version de Linux, car @roipoussiere a moins de problèmes que moi !

@WinXaito
Copy link
Collaborator

Ou alors, quelqu'un d'ici qui va corriger le problème chez RichTextFX (quitte à nous créer notre lib le temps qu'il la mette en version stable).

Encore faut il trouver le problème

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Dec 14, 2016

Ça ne viendrait pas de cette régression par hasard ? As-tu essayé avec la v. 0.6.10 ?

Sinon on peut toujours faire un PR sur RichTextFX. Ça viendrait d'ici à priori : les plupart des caractères non imprimables sont consumés sans traitement. Il n'y a pas de handler pour ^. Il suffit de d'ajouter une condition genre keypressed(CIRCUMFLEX).

Et d'autres touches éventuellement, je n'ai pas trouvé ¨ dans la javadoc mais elle devrait y être. Ensuite ajouter une variable qui stocke la touche morte et modifier le caractère qui suit si c'est un e, i, etc.

Edit : trouvé, ¨ -> keypressed(DEAD_DIAERESIS).

Je ne sais pas s'il y a d'autres touches à prendre en compte, du moins sur un clavier français.

@firm1
Copy link
Owner

firm1 commented Dec 14, 2016 via email

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Dec 14, 2016

Possible

C'est marrant je contribue à ZW principalement en faisant des PR sur d'autres repos :D

@roipoussiere
Copy link
Collaborator Author

Tu peux vérifier avec la v0.6 en attendant ?

@firm1
Copy link
Owner

firm1 commented Dec 14, 2016 via email

@roipoussiere
Copy link
Collaborator Author

Bon, j'ai regardé et il semble que le problème vienne de JavaFX et pas de RichTextFX. :/

Je vous tiens au jus si j'ai qqch.

@roipoussiere
Copy link
Collaborator Author

Yop,

Un utilisateur de Windows (genre @firm1) peut-il tester ce bout de code et me dire ce qu'il obtiens lors de l'appui sur ^, s'il peut insérer des lettres ê ou s'il y a d'éventuels comportements étranges ?

package sample;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;

public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception {
        BorderPane pane = new BorderPane();
        Label label = new Label("Type some text...");
        pane.setLeft(label);
        Scene scene = new Scene(pane, 200, 40);
        primaryStage.setScene(scene);
        primaryStage.show();
        scene.setOnKeyPressed(e -> label.setText("name: " + e.getCode().getName() + "\ntext: " + e.getText()));
    }

    public static void main(String[] args) {
        launch(args);
    }
}

Pour info sous Linux lorsqu'on tape ^ on a name = UNDEFINED et on peut pas afficher les lettres du genre ê.

@firm1
Copy link
Owner

firm1 commented Dec 14, 2016

Un utilisateur de Windows (genre @firm1)

Arf, ce n'est malheuresement pas mon OS du moment. Je vais check ça demain.

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Dec 15, 2016

Bon, c'est hélas officiellement un problème lié à JavaFX. :-(

Quand j'aurais un moment je ferai un ticket ici, mais bon c'est relou il faut s'inscrire et ils demandent pleins d'infos perso (genre nom, adresse, tél. etc.).

Edit : done

@WinXaito
Copy link
Collaborator

Ouais bon bah d'ici à ce que le problème soit résolu, on peut allez boire un certain nombre de pinte.

Non plus sérieusement, je ne sais pas si un jour les personnes sous Linux pourrons utiliser correctement Zw.

@roipoussiere est-il possible d'identifier les touches suivantes ^, etc. Sous Linux ? Ou elle je renvoie rien ? Car si oui, on peut tenter de faire un bricolage nous même.

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Dec 15, 2016

@roipoussiere est - il possible d'identifier les touches suivantes ^, etc. Sous Linux ?

Non, vu que c'est lié à JavaFX. JavaFX ne détecte pas l'appui sur ^.

Le seul truc qu'on peut faire en attendant c'est d'ajouter un raccourcis clavier pour les lettres ë, ô, genre ctr+maj+e, alt+o, etc.

Ou alors les utilisateurs Linux peuvent éventuellement modifier le layout de leur clavier, faut que j'essaie. Sous Ubuntu il faut ajouter un fichier dans /usr/share/X11/xkb/symbols/.

@SpaceFox
Copy link
Contributor

Aucune des deux solutions n'est utilisable, de mon point de vue…

@roipoussiere
Copy link
Collaborator Author

Aucune des deux solutions n'est utilisable, de mon point de vue…

Ben oui c'est pas pratique mais bon, c'est tout ce qu'on a pour le moment pour les Linuxiens. :/

@WinXaito
Copy link
Collaborator

Aucune des deux solutions n'est utilisable, de mon point de vue…

Certes, mais étant donné que c'est un problème lié au JVM Linux, on ne peut absolument rien y faire (si ce n'est migré le projet sur un autre langage, autant dire non tout de suite).

@SpaceFox
Copy link
Contributor

Ben, je ne vois pas pour quelle raison étrange j'utiliserait un logiciel qui m'obligerait à réapprendre à taper pour être utilisé. Mon point est « juste » là.

@pierre-24
Copy link

pierre-24 commented Dec 15, 2016 via email

@WinXaito
Copy link
Collaborator

WinXaito commented Dec 15, 2016

Je travaille sur quelque chose, j'ai de bonne moyenne espérances, je vous tiens au jus.

Edit: Rectification de ma phrase

@WinXaito
Copy link
Collaborator

J'ai un truc de fonctionnelle sur Windows, si un linuxien veut bien tester :D

@WinXaito
Copy link
Collaborator

Bon vous allez être content @roipoussiere et @SpaceFox -> #296 (comment)

@roipoussiere
Copy link
Collaborator Author

Pour info l'ID du bug Java reporté est 9046510. La page correspondante, lorsqu'ils auront pris en compte celui-ci est ici.

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Dec 29, 2016

Hop, ils l'ont pris en compte et c'est ici !

Je sais pas pourquoi c'est noté comme Windows alors que j'avais bien précisé Ubuntu par contre...

@firm1
Copy link
Owner

firm1 commented Dec 29, 2016

Hop, ils l'ont pris en compte et c'est ici !

Parfait. Bon après c'est en priorité 3, mais c'est déjà ça.

Je sais pas pourquoi c'est noté comme Windows alors que j'avais bien précisé Ubuntu par contre

Dans les tests effectués, ils disent que le bug touche aussi les windows 7 (c'est peut-être pour ça)

@roipoussiere
Copy link
Collaborator Author

Mais tu n'as pas de soucis sur Windows toi il me semble.

@firm1
Copy link
Owner

firm1 commented Dec 30, 2016 via email

@WinXaito
Copy link
Collaborator

Et moi Windows 10 donc je crois que personne n'a essayé sur W7

@pierre-24
Copy link

Je peux, si ça vous amuse, j'ai W7 sur une VM :-°

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Feb 27, 2017

Looks like following patch solves the issue:

diff -r 9acf98773cdc modules/graphics/src/main/native-glass/gtk/glass_window.cpp
--- a/modules/graphics/src/main/native-glass/gtk/glass_window.cpp
+++ b/modules/graphics/src/main/native-glass/gtk/glass_window.cpp
@@ -132,6 +132,15 @@ void WindowContextBase::process_focus(Gd
     if (!event->in && WindowContextBase::sm_grab_window == this) {
         ungrab_focus();
     }
+
+    if (xim.enabled && xim.ic) {
+        if (event->in) {
+            XSetICFocus(xim.ic);
+        } else {
+            XUnsetICFocus(xim.ic);
+        }
+    }
+
     if (jwindow) {
         if (!event->in || isEnabled()) {
             mainEnv->CallVoidMethod(jwindow, jWindowNotifyFocus,
@@ -603,9 +612,11 @@ void WindowContextBase::set_background(f
 WindowContextBase::~WindowContextBase() {
     if (xim.ic) {
         XDestroyIC(xim.ic);
+        xim.ic = NULL;
     }
     if (xim.im) {
         XCloseIM(xim.im);
+        xim.im = NULL;
     }
 
     gtk_widget_destroy(gtk_widget);

Source : bug 8094327

https://www.youtube.com/watch?v=cQG7dZUnNLs

Du coup on patch les sources de JavaFX, on met ça sur un dépôt GH et on update le build gradle ?

@WinXaito
Copy link
Collaborator

Dans ce cas là on devient dépendant de notre JVM et non de celle installer chez l'utilisateur c'est bien ça ?

@roipoussiere
Copy link
Collaborator Author

roipoussiere commented Feb 27, 2017

Oui

Fin avant toute chose faut vérifier que le patch corrige bien le problème. :)

Cette semaine je suis pas trop dispo, quelqu'un se sent de le faire ?

@firm1
Copy link
Owner

firm1 commented Feb 28, 2017

@roipoussiere J'ai envie de dire ... you are awesome ... je vais tenter de vérifier que le patch fonctionne. Je vous tiens au courant

@roipoussiere
Copy link
Collaborator Author

Vous avez testé le patch du coup ?

Et sinon pour info j'ai eu quelques nouvelles réponses sur la discussion de RichTextFX

@SpaceFox
Copy link
Contributor

Je ne sais pas si c'est normal mais la 1.8 a encore ce problème avec Java 8 sous Ubuntu 18.04, et je n'ai pas réussi à la lancer avec une version plus récente de Java. Ce serait vraiment très agréable de ne pas fournir de version inutilisable de l'application sans au moins un gros avertissement.

@firm1
Copy link
Owner

firm1 commented Apr 30, 2018

La bonne nouvelle c'est que la prochaine version de Zest Writer n'aura plus ce problème. Vu que je pense me débarrasser de la dépendance à RichtextFX.

@firm1
Copy link
Owner

firm1 commented Aug 2, 2020

Ticket corrigé par #320

@firm1 firm1 closed this as completed Aug 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants