Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/08/2010, à 20:38

Compte anonymisé

Kate4 et regex

Une question toute bête, au moins en apparence.

Supposant que je veuille remplacer avec kate:
a
b
c

par abc , c'est-à-dire supprimer les retours lignes.
Dans Kate3, cette opération était immédiate puisque Kate3 reconnaît \n ou \r, ainsi que tout éditeur de texte le plus basique soit-il.

Le problème est que je ne trouve aucun mode d'emploi qui explique comment faire ça avec Kate4, en supposant qu'un mode d'emploi est maintenant nécessaire pour faire une opération aussi basique.

Si quelqu'un trouve où est planquée l'astuce, je suis preneur.
Merci.

#2 Le 22/08/2010, à 21:38

AGui

Re : Kate4 et regex

φlip a écrit :

Une question toute bête, au moins en apparence.

Supposant que je veuille remplacer avec kate:
a
b
c

par abc , c'est-à-dire supprimer les retours lignes.
Dans Kate3, cette opération était immédiate puisque Kate3 reconnaît \n ou \r, ainsi que tout éditeur de texte le plus basique soit-il.

Le problème est que je ne trouve aucun mode d'emploi qui explique comment faire ça avec Kate4, en supposant qu'un mode d'emploi est maintenant nécessaire pour faire une opération aussi basique.

Si quelqu'un trouve où est planquée l'astuce, je suis preneur.
Merci.

Dans la barre de recherche qui apparaît, tu as une liste déroulante "Mode". Tu sélectionne "Séquences d'échappement", et ça fonctionne.

Sinon, tu avais la solution de sélectionner une occurrence du texte à remplacer, tu le copies dans le champ rechercher et ça fonctionne. Mais en effet, ce n'est pas pratique de ne pas pouvoir taper directement le retour à la ligne.

Tu peux peut-être aussi utiliser le sélecteur de caractère de KDE (KCharSelect), et rechercher le bon caractère.

Hors ligne

#3 Le 22/08/2010, à 22:02

Compte anonymisé

Re : Kate4 et regex

AGui a écrit :

Tu sélectionne "Séquences d'échappement", et ça fonctionne..

Si je remplace \n par rien, ça me supprime tout.
Peux-tu préciser ce que tu as remplacé, et par quoi ?

Dernière modification par Compte anonymisé (Le 22/08/2010, à 22:04)

#4 Le 22/08/2010, à 22:41

AGui

Re : Kate4 et regex

φlip a écrit :

Si je remplace \n par rien, ça me supprime tout.
Peux-tu préciser ce que tu as remplacé, et par quoi ?

Dans un premier temps, j'ai tapé dans Kate :

a
b
c

Puis dans le champ 'Chercher', j'ai tapé "a\nb\nc" et dans 'Remplacer', j'ai tapé "abc". Là, tout fonctionne bien.

Maintenant, si je mets "\n" dans 'Chercher', que je laisse 'Remplacer' vide et que je clique sur 'Tout remplacer', en effet, tout est supprimé..... ça m'a l'air d'être un bon gros bug...

edit: il y a l'air d'avoir un problème avec le caractère "\n". Quand on ne fait que le rechercher, il trouve la première occurrence mais pas les suivantes.

Dernière modification par AGui (Le 22/08/2010, à 22:43)

Hors ligne

#5 Le 22/08/2010, à 22:45

Compte anonymisé

Re : Kate4 et regex

AGui a écrit :

j'ai tapé "a\nb\nc"

Ok pour abc, mais pour 3 lignes, je sais faire plus simplement.
Maintenant, supposons qu'il y ait 1000 lignes, tu fais comment ?
Kate3 n'avait aucun problème avec ça.

AGui a écrit :

si je mets "\n" dans 'Chercher', que je laisse 'Remplacer' vide et que je clique sur 'Tout remplacer', en effet, tout est supprimé......

C'est tout justement pour ça que je pose la question.

Un utilisateur de kate4 connait-il la solution ?

Dernière modification par Compte anonymisé (Le 22/08/2010, à 22:58)

#6 Le 22/08/2010, à 23:10

AGui

Re : Kate4 et regex

φlip a écrit :

Ok pour abc.
Maintenant, supposons qu'il y ait 1000 lignes, tu fais comment ?
Kate3 n'avait aucun problème avec ça.

Dans tout autre logiciel de ce type, cette manipulation fonctionne. Pas dans Kate. Donc même s'il y a une solution alternative (bien cachée), on peut considérer ça comme un bug. Je viens de le rapporter.

En espérant que quelqu'un d'autre puisse t'aider.

AGui

Hors ligne

#7 Le 23/08/2010, à 12:57

Compte anonymisé

Re : Kate4 et regex

AGui a écrit :

21:38
Tu sélectionne "Séquences d'échappement", et ça fonctionne.
Sinon, tu avais la solution de .../... et ça fonctionne

23:10
Dans tout autre logiciel de ce type, cette manipulation fonctionne. Pas dans Kate

Que de changements en quelques minutes.
Si tu avais pris 15 secondes pour essayer avant d'intervenir, ça t'aurait évité de proposer une solution proche du ridicule, et une prose qui ressemblait à un début de troll pour essayer de persuader que kate d'opensuse est moins buggé que celui d'ubuntu.
He bien non, raté.
Mais l'important est de participer comme on dit.

Dernière modification par Compte anonymisé (Le 23/08/2010, à 13:19)

#8 Le 23/08/2010, à 20:03

AGui

Re : Kate4 et regex

φlip a écrit :
AGui a écrit :

21:38
Tu sélectionne "Séquences d'échappement", et ça fonctionne.
Sinon, tu avais la solution de .../... et ça fonctionne

23:10
Dans tout autre logiciel de ce type, cette manipulation fonctionne. Pas dans Kate

Que de changements en quelques minutes.
Si tu avais pris 15 secondes pour essayer avant d'intervenir, ça t'aurait évité de proposer une solution proche du ridicule, et une prose qui ressemblait à un début de troll pour essayer de persuader que kate d'opensuse est moins buggé que celui d'ubuntu.
He bien non, raté.
Mais l'important est de participer comme on dit.

Mais de rien φlip, ravi de m'être intéressé à ton problème. Je cherchais à être constructif avec toi, je t'avoue avoir atteint ma limite. A l'avenir je ne répondrais plus à aucun de tes posts.

Encore une fois, tu t'imagines bien des choses. Celui de nous deux qui parle d'openSUSE, c'est toi. Que vient-il faire dans ce débat ?

Si tu veux tout savoir, je pensais simplement que tu n'avais pas vu la liste déroulante "Mode" puisque si tu recherches simplement "\n", par défaut ça ne trouve rien. Mais tu es bien trop intelligent pour voir raté ça... désolé d'en avoir douté. Enfin tu aurais pu être un peu plus explicite dans ton explication, je suis visiblement plus limité que toi, j'ai mal compris...

Par contre tu n'as pas l'air d'avoir pensé qu'au lieu de demander une solution à ce qui est visiblement un bug, tu aurais pu tout simplement participer à rendre le logiciel meilleur en reportant le bug. Comme quoi toi aussi tu est limité...

Hors ligne

#9 Le 23/08/2010, à 20:24

Compte anonymisé

Re : Kate4 et regex

lol:lol::lol:
Tu es surtout un grand comique et beaucoup trop "verbose".
Merci pour ta grande contribution.

#10 Le 23/08/2010, à 23:03

sylvainsjc

Re : Kate4 et regex

Salut,
Pour l'avoir testé avec Kate ou kwrite, chez moi ça marche

Je tape :

a
b
c

Quand je mets "\n" dans 'Chercher' et "vide" dans remplacer, j'obtiens

abc

Kate et Kwrite en version 4:4.4.5-0ubuntu1~lucid1~ppa1

wink


ROSA Desktop Fresh KDE 4.13.3
Mon blog sur Linux : http://linuxadvantage.blogspot.com/

Hors ligne

#11 Le 23/08/2010, à 23:47

Compte anonymisé

Re : Kate4 et regex

Je te crois, mais suis un peu surpris.
J'avais ce bug depuis le début de Kate4, bug parfaitement identifié par KDE.
J'ai donc attendu patiemment, mais 2 ans, ça fait long pour ce genre de bug, surtout que certains développeurs KDE utiliseraient kate semble-t-il.
Bug confirmé avec 4:4.5.0b-0ubuntu1~lucid1~ppa1.
J'aurais raté la 4:4.4.5 ? Et déjà une régression ? Bizarre bizarre....

#12 Le 24/08/2010, à 10:28

bruno

Re : Kate4 et regex

Tout ceci est bien compliqué smile
Tu sélectionnes les trois lignes et tu fait Ctrl+J

Hors ligne

#13 Le 24/08/2010, à 11:07

Compte anonymisé

Re : Kate4 et regex

bruno a écrit :

Tout ceci est bien compliqué

Je dirais plutôt "étrange" que "compliqué", mais je crois avoir trouvé l'explication.
Ctrl+J correspond à la fonction "Tools > Join lines" de kate.
Pourquoi inventer cette fonction spécifique et extrêmement limitée ?
Parce-que le regex est bien pévu pour kate4, mais pas encore implémenté (ou pas correctement).
Seul le menu regex est préparé

gr7cciienuwah5y6gs-kate_regex.png

Exemple: transformer

aa 11
bb 22
cc 33

en

aa 11 ; bb 22 ; cc 33

Immédiat avec kate3, impossible dans kate4 avec un regex limité à "Ctrl+J".
C'est quand-même un peu bidouille tout ça.
Difficile de comprendre pourquoi il faut autant d'années pour implémenter correctement et tester des fonctions aussi basiques, qu'un simple notepad bâtard sait faire.

Un point à clarifier quand-même: sylvainsjc qui dit que son regex fonctionne.....

Reste à comprendre ce qui foire et où:

ldd /usr/bin/kate
        linux-gate.so.1 =>  (0x0083d000)
        libkdeinit4_kate.so => /usr/lib/kde4/libkdeinit/libkdeinit4_kate.so (0x00fd3000)
        libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00419000)
        libQtGui.so.4 => /usr/lib/libQtGui.so.4 (0x00fde000)
        libkdecore.so.5 => /usr/lib/libkdecore.so.5 (0x00a77000)
        libkateinterfaces.so.4 => /usr/lib/libkateinterfaces.so.4 (0x00110000)
        libkdeui.so.5 => /usr/lib/libkdeui.so.5 (0x1e038000)
        libQtDBus.so.4 => /usr/lib/libQtDBus.so.4 (0x0019d000)
        libQtCore.so.4 => /usr/lib/libQtCore.so.4 (0x00573000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00219000)
        /lib/ld-linux.so.2 (0x003db000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x0030f000)
        libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0033f000)
        libaudio.so.2 => /usr/lib/libaudio.so.2 (0x00358000)
        libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x0083e000)
        libpng12.so.0 => /lib/libpng12.so.0 (0x0036f000)
        libz.so.1 => /lib/libz.so.1 (0x00394000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x0094b000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00908000)
        libSM.so.6 => /usr/lib/libSM.so.6 (0x003a9000)
        libICE.so.6 => /usr/lib/libICE.so.6 (0x003b2000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00f58000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x00f65000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x00d06000)
        libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x0080f000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x003f8000)
        libQtNetwork.so.4 => /usr/lib/libQtNetwork.so.4 (0x17d10000)
        libQtXml.so.4 => /usr/lib/libQtXml.so.4 (0x009c1000)
        libbz2.so.1.0 => /lib/libbz2.so.1.0 (0x00a06000)
        liblzma.so.1 => /usr/lib/liblzma.so.1 (0x00a18000)
        libresolv.so.2 => /lib/tls/i686/cmov/libresolv.so.2 (0x00a3a000)
        libktexteditor.so.4 => /usr/lib/libktexteditor.so.4 (0x00e23000)
        libkparts.so.4 => /usr/lib/libkparts.so.4 (0x00e5a000)
        libQt3Support.so.4 => /usr/lib/libQt3Support.so.4 (0x11a7d000)
        libkio.so.5 => /usr/lib/libkio.so.5 (0x1ec97000)
        libQtSvg.so.4 => /usr/lib/libQtSvg.so.4 (0x00eaa000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x003cb000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x003cf000)
        libdbusmenu-qt.so.2 => /usr/lib/libdbusmenu-qt.so.2 (0x00a4e000)
        libXtst.so.6 => /usr/lib/libXtst.so.6 (0x003d5000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00f02000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00835000)
        libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00947000)
        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00f0c000)
        librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x00f12000)
        libexpat.so.1 => /lib/libexpat.so.1 (0x00f1b000)
        libXt.so.6 => /usr/lib/libXt.so.6 (0x00f75000)
        libpcre.so.3 => /lib/libpcre.so.3 (0x0a0f1000)
        libuuid.so.1 => /lib/libuuid.so.1 (0x00f42000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0x15b83000)
        libnepomuk.so.4 => /usr/lib/libnepomuk.so.4 (0x1f7ad000)
        libsoprano.so.4 => /usr/lib/libsoprano.so.4 (0x0a8c6000)
        libQtSql.so.4 => /usr/lib/libQtSql.so.4 (0x02c41000)
        libstreamanalyzer.so.0 => /usr/lib/libstreamanalyzer.so.0 (0x04534000)
        libstreams.so.0 => /usr/lib/libstreams.so.0 (0x1daa1000)
        libsolid.so.4 => /usr/lib/libsolid.so.4 (0x09239000)
        libacl.so.1 => /lib/libacl.so.1 (0x00f47000)
        libattr.so.1 => /lib/libattr.so.1 (0x00f4f000)
        libXi.so.6 => /usr/lib/libXi.so.6 (0x0722e000)
        libsopranoclient.so.1 => /usr/lib/libsopranoclient.so.1 (0x095b1000)
        libxml2.so.2 => /usr/lib/libxml2.so.2 (0x19da0000)

En espérant que kate n'ait pas besoin de nepomuk/akonadi/soprano, puisque je n'utilise pas ces animaux exotiques.

libnepomuk.so.4
libsoprano.so.4
libsopranoclient.so.1

Dernière modification par Compte anonymisé (Le 24/08/2010, à 11:14)

#14 Le 24/08/2010, à 11:33

sylvainsjc

Re : Kate4 et regex

Je donnerais plus de détails ce soir après le boulot wink


ROSA Desktop Fresh KDE 4.13.3
Mon blog sur Linux : http://linuxadvantage.blogspot.com/

Hors ligne

#15 Le 24/08/2010, à 11:39

bruno

Re : Kate4 et regex

Je viens de tester dans Kate. Effectivement l'utilisation des expressions régulières ne fonctionne pas sur Kubuntu / KDE 4.5.0 (je suppose que cela devrait être géré par la bibliothèque Qt : http://doc.qt.nokia.com/4.6/qregexp.html). Est-ce lié à la version 4.7 de Qt qui est en bêta ?
Je ne trouve pas de rapport de bogue correspondant à cela sur https://bugs.kde.org/buglist.cgi?quicksearch=kate+regexp

Hors ligne

#17 Le 24/08/2010, à 12:10

bruno

Re : Kate4 et regex

Oui j'ai vu mais je pense qu'il vaudrait mieux ouvrir un nouveau bug sur bugs.kde.org

Hors ligne

#18 Le 24/08/2010, à 12:24

Compte anonymisé

Re : Kate4 et regex

bugs.kde.org fonctionne avec un système de votes.
Même si un bug énorme et évident est rapporté, le développeur attendra un certain nombre de votes pour décider de corriger.
C'est pour ça que des bugs KDE restent ouverts pendant plus de deux ans sans correction et sans suivi.
Si tu veux tenter ta chance, vas-y, mais le mieux est de connaître le développeur.

Ça a quand même un sacré mal à mûrir KDE4, sans compter kmail et kontacts qui vont exploser en vol au passage KDE4.5.1 (pourtant simple petit changement d'indice secondaire....).
Il y a des moments où on aimerait devenir simple utilisateur, et non pas rester perpétuel débugger, testeur et rapporteur de bugs.
C'est une faiblesse de l'open source qui confond trop souvent utilisateur et alpha-testeur.
Ça démange même des fois de ... réinstaller KDE3.5 pour retrouver un kate et quanta parfaitement fonctionnels.

Dernière modification par Compte anonymisé (Le 24/08/2010, à 12:28)

#19 Le 24/08/2010, à 17:52

Compte anonymisé

Re : Kate4 et regex

Confirmation après boot sur une Debian/KDE4.4

• Kate 4:4.4-1 => le regex fonctionne / il me semblait pourtant bien avoir souvenir de regex fonctionnel assez récemment
• Kate 4:4.5.0b-0ubuntu1~lucid1~ppa1 => régression de regex.

C'est le signe pour moi qu'il faut que j'arrête de trop faire confiance aux releases officielles de KDE.
Je vais me refaire une installation propre de KDE 4.4, et on laissera KDE développer tranquillement pour laisser le temps de tester avant de faire des annonces de presse.
Les releases non testées vont tuer l'open-source.

#20 Le 24/08/2010, à 19:01

sylvainsjc

Re : Kate4 et regex

Donc après test sur Linux Mint 9 64Bits Kde 4.4.5, ça fonctionne bien wink

a1y_xqi.jpg


ROSA Desktop Fresh KDE 4.13.3
Mon blog sur Linux : http://linuxadvantage.blogspot.com/

Hors ligne

#21 Le 24/08/2010, à 20:37

gerarmentor

Re : Kate4 et regex

Avec Kubuntu 10.04, ça fonctionne bien.

Par contre, je ne sais pas où en est Kate maintenant, mais je me souviens qu'à l'époque de KDE3, il ne connaissait pas les références arrières.
C'est quand même quelque chose de relativement basique et extrêmement utile dès qu'on fait du remplacement avec des regex.

Hors ligne

#22 Le 24/08/2010, à 20:41

Compte anonymisé

Re : Kate4 et regex

La version Kate/QT4.7 de Lucid-ppa/Maverick est désignée "3.5.0"

j4hl9xkois7tmp1wl8-kate350.png

#23 Le 25/08/2010, à 09:00

bruno

Re : Kate4 et regex

φlip a écrit :

C'est le signe pour moi qu'il faut que j'arrête de trop faire confiance aux releases officielles de KDE.

Les releases non testées vont tuer l'open-source.

Oui, enfin les développeurs de KDE déconseillent au distributions "stables" de fournir les versions x.x.0 de KDE SC et d'attendre la x.x.1 qui généralement corrige de nombreux bogues. (Le pire a été la distribution de KDE 4.0.0 par ubuntu alors que c'était censé être réservé aux développeurs d'applications...)

En tout cas cela a permis d'identifier une régression. Si j'ai un moment je regarde si cela vient de KDE ou des patchs ubuntu et je signale le bogue.

Hors ligne

#24 Le 03/09/2010, à 18:20

Compte anonymisé

Re : Kate4 et regex

Après essaie de Maverick KDE4.5.1 avec cette méthode: ► Le LiveCD ... sans CD !

=> régression de kate/regex non corrigée semble-t-il.
Il faudra probablement attendre KDE4.6.

#25 Le 06/10/2010, à 17:08

Compte anonymisé

Re : Kate4 et regex

Ce bug est toujours présent dans KDE4.5.1 de Maverick.
Est-il corrigé dans KDE4.5.2 ?