Greboca  

Suport technique et veille technologique

Aujourd’hui, les grandes entreprises et administrations publiques hésitent entre continuer à utiliser des logiciels propriétaires ou basculer vers les Logiciels Libres. Pourtant, la plupart des logiciels libres sont capables de bien traiter les données issues des logiciels propriétaire, et parfois avec une meilleur compatibilité.

C’est alors la barrière de la prise en main qui fait peur, et pourtant...

Les logiciels libres

L’aspect « Logiciel Libre » permet une évolution rapide et une plus grande participation des utilisateurs. Les aides et tutoriels foisonnent sur Internet ou sont directement inclus dans le logiciel lui-même.

Enfin, les concepteurs sont plus proches des utilisateurs, ce qui rend les logiciels libres plus agréable à utiliser et conviviaux.

Grâce à la disponibilité des logiciels libres, vous trouverez facilement des services de support techniques et la licence n’est plus un frein à l’utilisation de ces logiciels par votre personnel.

Notre support technique concerne essentiellement les logiciels libres, que ce soit sous forme de services ponctuels ou de tutoriels.

Planet Libre  -  theClimber : Extraire les strings d'une application basée sur Hyla TPL ou sur PHP Lib

 -  Décembre 2010 - 

Une fois une application crée, une fois un thème réalisé, on est heureux de pouvoir en faire profiter tout le monde. Seulement voilà, tout le monde ne parle pas la même langue que nous. Donc si nous souhaitons distribuer notre thème à plus grande échelle il est évident qu'une internationalisation (i18n ou l10n) du thème sera nécessaire. Les développeurs d'applications web PHP connaissent bien ce problème et il est maintenant courant d'utiliser gettext pour gérer les différentes langues dans une application.

hylatpl.png

py.gif

Ceci dit, une fois le thème crée, ça n'est pas toujours évident d'en extraire le texte pour créer un support gettext qui permet une traduction facile dans plusieurs langues. C'est donc en travaillant sur le Bilboplanet que je me suis confronté à cette difficulté. Mon but était de rendre l'application la plus générique possible : et donc traduisible en fonction des besoins. Extraire les strings de mon application à la main aurait été impossible ... d'autant plus que je modifie souvent mon code et il serait impensable de garder ma liste de traductions à jour. J'avais donc besoin d'un outil automatique.

J'ai donc mis en place un petit script d'extraction de strings automatique pour le moteur de templates Hyla TPL (qui est compatible avec PHP Lib) pour générer les fichiers .po dont j'avais besoin. Le code est disponible ici :

export_tpl-v1.0.py

La fonction à appeler pour lancer la génération du fichier gettext est la fonction "extract_tpl(tpldir)" à laquelle vous devez passer en paramètre le chemin vers votre répertoire de thème. La fonction ira automatiquement chercher le fichier "index.tpl" et suivra les liens internes du type "include" pour que tous les fichiers inclus soient aussi traduits. Le résultat est un fichier .po que vous pouvez ensuite traduire à votre guise :

def extract_tpl(tpldir):
	translate = Translation(tpldir)

	if os.path.isfile(os.path.join(os.path.abspath(tpldir), 'index.tpl')):
		translate.extract_from_tpl('', 'index.tpl')
	else:
		translate.extract_tpl()
	
	potcontent = translate.gettext_code()

	print potcontent

Pour ceux qui n'y connaissent rien en python mais qui souhaiteraient quand même tester ce script. Je vous invite à installer python et ipython chez vous. Puis dans le répertoire dans lequel se trouve le fichier python ci-dessus, faites :

greg@gsat:~/Desktop$ ls export_tpl.py 
export_tpl.py
greg@gsat:~/Desktop$ ipython
Python 2.6.6 (r266:84292, Sep 15 2010, 16:22:56) 
Type "copyright", "credits" or "license" for more information.

IPython 0.10 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object'. ?object also works, ?? prints more.

In [1]: from export_tpl import *

In [2]: extract_tpl('/home/greg/Public/bilboplanet/themes/gil-galad/')

Gravatar de theClimber
Original post of theClimber.
Votez pour ce billet sur Planet Libre.

par theClimber

Planet Libre

Le Planet sur Linux et les Logiciels Libres

Comète : L’infrastructure technique de Framaspace - Fiat Tux

 -  17 janvier - 

— PermalienOriginal post of Comète.Votez pour ce billet sur Planet Libre.Articles similairesComète : Architecture technique Nextcloud de (...)


Comète : Frigate NVR

 -  Septembre 2024 - 

— PermalienOriginal post of Comète.Votez pour ce billet sur Planet Libre.Articles similairesNicolargo : Streaming depuis la Raspberry Camera (...)


Comète : Configurer un serveur mail sous OpenSMTPD - Vinishor's blog

 -  Août 2024 - 

— PermalienOriginal post of Comète.Votez pour ce billet sur Planet Libre.Articles similairesComète : Ray's Notebook: Computing — OpenSMTPD (...)


Comète : Vinishor sur DN42 - Partie 1 : création et déclaration d'un AS - Vinishor's blog

 -  Août 2024 - 

"DN42 est un réseau décentralisé qui est ouvert à tout le monde et qui a pour objectif de reproduire à petite échelle le fonctionnement d'Internet. Il (...)


Simon Vieille : Gestionnaire de fonds d'écrans pour i3

 -  Août 2024 - 

i3 est tiling window manager pour Linux. Je l'utilise depuis de nombreuses années et j'en suis extrêmement satisfait.Puisqu'il se cantonne à (...)