[SPIP Zone] [Spip-zone-commit] r31430 - /_outils_/chercher_lang

Ca a l'air vraiment bien ! Merci :slight_smile:
Le 9 sept. 2009 à 11:53, rastapopoulos@spip.org a écrit :

Author: rastapopoulos@spip.org
Date: Wed Sep 9 11:53:11 2009
New Revision: 31430

Log:
Un script shell pour les développeurs SPIP (plugin et squelette).

Il permet de chercher une demande dans TOUTES les chaines de langue de SPIP **ET** des plugins installés.

Utilisation :
- mettre l'exécutable dans un /bin du PATH
- se placer dans une installation de SPIP

chercher_lang truc
=> cherche la chaine, dans l'identifiant de chaine ou dans les textes générés

chercher_lang truc fr
=> pour filtrer sur une langue précise

Added:
   _outils_/chercher_lang (with props)

Added: _outils_/chercher_lang

--- _outils_/chercher_lang (added)
+++ _outils_/chercher_lang Wed Sep 9 11:53:11 2009
@@ -0,0 +1,17 @@
+#!/bin/bash
+
+# mettre l'executable dans un dossier /bin du PATH
+#
+# utilisation dans un dossier SPIP (à priori à la racine) :
+# chercher_lang truc
+# chercher_lang truc en => uniquement dans l'anglais
+
+dans_quoi=""
+if [ -n "$2" ]
+then
+ dans_quoi="--include *$2.php"
+fi
+
+transformations=''
+
+find -L . -name lang -type d | xargs grep -ri --exclude-dir .svn $1 $dans_quoi | sed -r 's!^.*/([^/]*)_([a-z_]*)\.php[[:space:]]*:[[:space:]]*("|'\'')(.*)\3[[:space:]]*=>[[:space:]]*("|'\'')(.*)\5.*!<:\1:\4:> : \2 => \6!' | sed -r 's!<:(spip|ecrire|local):!<:!' | sort -u

Propchange: _outils_/chercher_lang
------------------------------------------------------------------------------
   svn:executable = *

_______________________________________________
Spip-zone-commit@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone-commit

Le 09/09/2009 12:53, Yohann Prigent a écrit :

Ca a l'air vraiment bien ! Merci :slight_smile:

Et merci à davux de m'avoir aider sur sed à 4h du mat, parce que mon collègue très fort en shell n'était pas encore levé. :slight_smile:

On peut toujours compter sur davux, la nuit.

--
RastaPopoulos

Juste une petite remarque après mes essais : les accents
comme les chaines sont avec des &eacute; ... les chaines qu'on recherche avec accents ne retourne rien.

A+
Le 9 sept. 2009 à 15:09, RastaPopoulos a écrit :

Le 09/09/2009 12:53, Yohann Prigent a écrit :

Ca a l'air vraiment bien ! Merci :slight_smile:

Et merci à davux de m'avoir aider sur sed à 4h du mat, parce que mon collègue très fort en shell n'était pas encore levé. :slight_smile:

On peut toujours compter sur davux, la nuit.

--
RastaPopoulos

_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

Le 09/09/2009 15:13, Yohann Prigent a écrit :

Juste une petite remarque après mes essais : les accents
comme les chaines sont avec des &eacute; ... les chaines qu'on recherche
avec accents ne retourne rien.

Ce qui est logique non ?
J'y peux rien si les chaines de langue sont écrites uniquement en entités...

Donc il faut chercher avec une entité aussi.

chercher_lang "connect&eacute;"

--
RastaPopoulos

Le 9 sept. 2009 à 15:40, RastaPopoulos a écrit :

Ce qui est logique non ?
J'y peux rien si les chaines de langue sont écrites uniquement en entités...

Donc il faut chercher avec une entité aussi.

Moi qui connait rien au bash, par hasard, on pourrait pas traduire les accents en entités ?

chercher_lang "connect&eacute;"

--
RastaPopoulos

_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

Le 09/09/2009 15:49, Yohann Prigent a écrit :

Moi qui connait rien au bash, par hasard, on pourrait pas traduire les
accents en entités ?

Avec «recode» oui :
sudo aptitude install recode

echo 'hé hé hé' | recode ..html

--
MM.

Le 9 sept. 09 à 15:49, Yohann Prigent a écrit :

Moi qui connait rien au bash, par hasard, on pourrait pas traduire les accents en entités ?

chercher_lang "connect&eacute;"

En rusant avec "connect" ou connect*
peut-être...

pierre

Et ça marche, ça aussi ?
SPIP | recode …drupal

Le 9 septembre 2009 15:55, Matthieu Marcillaud <marcimat@free.fr> a écrit :

Le 09/09/2009 15:49, Yohann Prigent a écrit :

Moi qui connait rien au bash, par hasard, on pourrait pas traduire les
accents en entités ?

Avec «recode» oui :
sudo aptitude install recode

echo ‹ hé hé hé › | recode …html


MM.


spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone

Le 09/09/2009 15:55, Matthieu Marcillaud a écrit :

Le 09/09/2009 15:49, Yohann Prigent a écrit :

Moi qui connait rien au bash, par hasard, on pourrait pas traduire les
accents en entités ?

Avec «recode» oui :
sudo aptitude install recode

Oui, je l'utilise déjà dans mon éditeur de texte pour convertir ce que je tape lorsque j'écris des fichiers de langue.

Mais ce n'est pas une commande installée par défaut. C'est pourquoi je ne l'ai pas utilisé dans le script.

--
RastaPopoulos

Moi qui connait rien au bash, par hasard, on pourrait pas traduire les
accents en entités ?

J'ai maintenant ajouté un test pour savoir si "recode" est présent, et si c'est le cas ça transforme directement tes accents en entités.

Normalement c'est dans les dépôts de base de la plupart des distributions.

--
RastaPopoulos