QtBlogger : QtAmbassador et futur du projet

Posté par seiyar81 le 5 février 2012 | Laisser un commentaire (0)

Qt Ambassador

Logo QtBlogger

Cela fait plusieurs mois que le projet n’a pas avancé, on peut même dire qu’il était en pause.
Il faut dire que beaucoup d’évènements se sont enchaînés et qu’il n’a pas été facile pour moi de poursuivre les développements : déménagement, mémoire de fin d’études, entrée dans la vie active etc…

Toutefois le projet n’est pas mort ! Je compte bien poursuivre les développements et fournir un jour une première version de QtBlogger au téléchargement.

Pour rappel QtBlogger permet de gérer via une seule et même interface tous vos Blogs et CMS en s’interfaçant avec les différentes plates-formes existantes telles WordPress, Joomla, Drupal etc…
Ajoutez à cela une API permettant le développement de plugins, de nombreuses fonctionnalités présentes de base comme l’édition ou la recherche directe d’images sur le Web et vous obtenez un logiciel polyvalent.

De plus QtBlogger a eu l’honneur de rejoindre le programme QtAmbassador offert par Nokia ce qui est d’ores et déjà une première reconnaissance du travail effectué jusqu’à présent.

J’espère être en mesure de pouvoir fournir une première Beta très rapidement cela dépendra toutefois du temps que je pourrai consacrer au projet !

Catégorie: Geek, Qt, Yriase | Laisser un commentaire (0)

Plugin pour Prestashop : Google Advanced Sitemap

Posté par seiyar81 le 17 février 2011 | Laisser un commentaire (26)

EDIT 23/11 : Pas de nouveaux articles depuis un moment, le temps libre me manque, toutefois j’ai reçu beaucoup de demandes concernant des mises à jour où des évolutions pour le module. Il faut savoir que le module de base de Prestashop 1.4 (Google Sitemap) intègre de base le support des images, d’une manière plus stable que mon module ce qui le rend obsolète.
Si je trouve un jour le temps, je le mettrai peut-être à jour pour la version 1.4 avec le ping des autres moteurs et sûrement d’autres fonctionnalités.
Merci à tous pour vos retours et suggestions.

EDIT 17/02 : Mise à jour du module : ajout du ping des moteurs Bing et Yahoo.

Ayant travaillé récemment sur la solution e-commerce Prestashop, proposé par la société éponyme, j’ai cherché à mettre en place le classique fichier sitemap.

Il existe un module, intégré de base à la solution qui permet de générer un fichier avec tous les liens du sites : produits, catégories, CMS etc…
Mais bizarrement, ce module appelé Google Sitemap ne gère pas les images, pourtant partie intégrante d’une boutique en ligne.

Qu’à cela ne tienne, j’ai modifié le module afin d’ajouter :

  • le support des balises <image:image>
  • quelques statistiques en plus lors de la génération du fichier
  • la possibilité de pinger Google directement

et ainsi est né Google Advanced Sitemap !

L’archive zip du module est téléchargeable via le lien ci-dessous. Il est bien évidemment distribué sous la licence GPL.

  Google Advanced Sitemap (14,6 KiB, 754 hits)

Je le mettrai peut-être à jour avec quelques fonctionnalités en plus d’ici quelques temps.

Catégorie: Développement Web, Internet, PHP | Laisser un commentaire (26)

QtBlogger : quelques nouvelles

Posté par seiyar81 le 15 octobre 2010 | Laisser un commentaire (0)

Logo QtBlogger

Pas de news depuis un moment, essentiellement à cause du temps que prend le développement de QtBlogger et aussi mon activité professionnelle.
La moindre des choses est donc de donner des news de l’avancement du projet !

Plusieurs fonctionnalités sont maintenant pleinement opérationnelles :

  • Gestions des articles et des pages
  • Gestion des commentaires (par articles ou bien tous)
  • Gestion des mots-clefs/catégories
  • Gestion des médias : partie très importante de QtBlogger
    • l’éditeur d’image possède un système de plugin pour lui ajouter des fonctionnalités
    • filtrages des médias par mots-clefs
  • Gestion des paramètres : tous les paramètres du blog peuvent être gérés via QtBlogger

Voilà pour une liste succinte des fonctionnalités présentes, les principales à venir sont :

  • Gestion des plugins du blog : activation/désactivation, mises à jour, et prise en charge des options
  • Suggestion d’image pendant la rédaction des articles/pages
  • Gestion des liens, des templates, des widgets et enfin un éditeur pour modifier les fichiers (coloration syntaxique etc)

Maintenant on retourne travailler avant de revenir donner d’autres nouvelles !

Catégorie: Qt, Wordpress, Yriase | Laisser un commentaire (0)

QtBlogger : Gérer son blog à distance

Posté par seiyar81 le 1 septembre 2010 | Laisser un commentaire (0)

La fin de l’été signifie pour beaucoup de monde la fin des vacances, la reprise du travail (souvent pénible) ou bien des études, le retour à nos bonnes vieilles habitudes et au train-train quotidien.

Pour d’autres (comme moi ^^) cela signifie qu’il reste encore un peu de temps avant la reprise des études pour se consacrer à nos projets personnels.

Ainsi, depuis quelques temps déjà en développement, j’annonce officiellement le logiciel QtBlogger !

Logo QtBlogger

Comme son nom l’indique, le logiciel a pour but de vous aider dans la gestion de votre blog avec plusieurs modules comme la gestion des articles et des pages, des tags et des catégories, mais aussi des médias (avec des possibilités de retouche d’image) des plugins etc.

Le logiciel utilisera l’API XML-RPC de WordPress et possèdera des fonctionnalités avancées. Couplé à un plugin WordPress ajoutant les fonctions permettant de gérer, entre autres, les médias, les possibilités sont immenses.

Côté technique, le logiciel est développé avec la version 4.7 de Qt et la librairie Qxt.

J’espère pouvoir donner d’autres nouvelles sur l’avancement du développement d’ici très bientôt.

PS : cet article a été rédigé avec une première version du logiciel !

EDIT : Plus d’informations seront mises en ligne sur la page du logiciel disponible ici ou sur la page du projet chez Sourceforge.

Catégorie: Qt, Wordpress, Yriase | Laisser un commentaire (0)

Ajouter un splashscreen à son application Qt

Posté par seiyar81 le 3 mai 2010 | Laisser un commentaire (0)

Qu’est-ce qu’un splashscreen ?

Sous ce nom un peu barbare se cache tout simplement cette image (ou écran) qui s’affiche au lancement d’un logiciel. Affichant dans la plupart des cas des informations sur les créateurs du logiciels ou sur le chargement en cours.
C’est là que le splashscreen prend tout son intérêt, car on peut ainsi « cacher » à l’utilisateur un temps de chargement très ou trop long ou bien le tenir au courant de l’avancement du chargement (plugins, modules etc…).

Comment ajouter un splashscreen à son application Qt ?

Qt, ce framework que nous aimons tous, possède une classe pour gérer les splashscreen : QSplashScreen.
Partons du principe que vous possédez déjà une application GUI, et que vous souhaitez rajouter un QSplashScreen. Vous devez donc avoir un code dans votre fichier main.cpp qui ressemble à peu près à ceci :

#include <QtGui/QApplication>
#include "mainwindow.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;

    /*
     Une opération longue ...
    */

    w.show();
    return a.exec();
}

C’est ici le code de base généré par QtCreator à la création d’un projet GUI. Voici le code très similaire avec l’ajout du QSplashScreen :

#include <QtGui/QApplication>
#include <QtGui/QSplashScreen>
#include "mainwindow.h"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;

    QSplashScreen screen;
    screen.setPixmap(QPixmap("images/splash.png"));
    screen.show();

    /*
    On simule une opération longue pour l'exemple
    */
    sleep(10);

    screen.hide();

    w.show();
    return a.exec();
}

On a juste inclus le header « #include <QtGui/QSplashScreen> » et ensuite ajouté une image à afficher.
L’opération longue est ici simulée par un sleep de 10 secondes, mais je mettrai un jour cet exemple en application avec un système de plugins.
Car oui on peut aussi créer des plugins pour son application avec Qt, mais ce sera pour une autre fois !

Catégorie: Qt | Laisser un commentaire (0)

Firebug en version 1.5 et ses extensions

Posté par seiyar81 le 22 janvier 2010 | Laisser un commentaire (0)

Tout bon développeur Web utilise, ou tout du moins, connaît Firebug ! C’est l’extension Firefox la plus utilisée par les développeurs Web !
Pour ceux qui ne la connaissent pas, elle permet d’analyser la page en temps réel, le CSS, le Javascript/AJAX, le code HTML, DOM etc… réellement indispensable elle vient de passer en version 1.5.
Parmi les changements annoncés, amélioration des panneaux CSS, Javascript et Réseau, une meilleur gestion des points d’arrêt etc, le détails des fonctionnalités mises est disponible ici.

Mais ce qui ajoute encore plus de ‘charme’ à cette extension ce sont ses divers extensions. Voici une petite liste des extensions vraiment indispensables :

  • FireCookie : permet de manager vos cookies directement
  • FirePHP : permet d’analyser sa page PHP en rajoutant seulement un petit bout de code
  • FireQuery : pour débugger les codes jQuery
  • Pixel Perfect : permet de contôler le positionnement an ajoutant une image au dessus de la page
  • FireRainbow : colore le code Javascript dans Firebug
  • YSlow : analyse le contenu de la page et propose des solutions pour améliorer son chargement
  • SenSEO : donne des informations sur l’optimisation du référencement de la page
  • FirePicker : ajoute un color picker pour le CSS
  • Plus d’extensions ici

Voilà avec ça vous êtes parés pour développer sous Firefox si ce n’était pas déjà le cas !

Catégorie: Internet | Laisser un commentaire (0)

Qt 4.6 est sortie

Posté par seiyar81 le 9 décembre 2009 | Laisser un commentaire (0)


Sortie le 1er Décembre,  cette version 4.6 du framework maintenu maintenant par Nokia, apporte son lot de nouveautés intéressantes.

- Un support de Symbian OS
- Un meilleur support de Windows 7 et Mac OS 10.6
- Le support des interfaces tactiles
- Une meilleure gestion des animations grâce au projet Kinetic
- Manipulation du DOM des pages Web
- …

A télécharger d’urgence ici.

Catégorie: Qt | Laisser un commentaire (0)

Configuration et Utilisation de Vim 5/5

Posté par seiyar81 le 7 décembre 2009 | Laisser un commentaire (0)
news-vim

Déjà la fin de ce tutoriel snif :’( Peut être pas aussi complet que d’autres, j’ai surtout voulu parler de ce qui me semblait essentiel pour un développeur travaillant avec Vim.

On va commencer cette dernière partie par l’auto-complétion, comment l’activer, comment ajouter des mots-clés etc…
Pour l’activer c’est très simple, comme partout ailleurs vous devez avoir commencé un mot et ensuite taper Ctrl+n pour accéder à la liste de mots-clés correspondants. Vim vous indiquera alors soit ‘Motif introuvable‘ soit vous proposera de ‘parcourir’ les correspondances à l’aide des combinaisons de touches Ctrl+n pour avancer et Ctrl+p pour revenir en arrière.

A savoir que par défaut Vim recherche dans le document courant les occurences.

Il est possible de lui rajouter des listes de mots-clés pour la coloration syntaxique. On utilise pour cela une commande simple :

:syntax keyword {group} {keyword} ...
// ou :syn keyword {group} {keyword} ...

{group} correspond à un nom de groupe de syntaxe. Par exemple si vous ouvrez le fichier ‘~/.vim/syntax/php.vim’ vous pourrez y voir des groupes de syntaxe comme phpFunctions, phpMethods, phpStatement ou encore phpType.
Qu’à cela ne tienne on va rajouter nos fonctions persos :

:syn keyword phpFunctions ma_fonction_qui_roxx ma_fonction_qui_suxx

Mais il est plus intéressant d’ajouter tous nos mots-clés, nos fonctions etc dans un seul fichier et de l’inclure :

:runtime! syntax/fichier.vim

:runtime! effectue une recherche dans le ‘runtimepath’ ($HOME/.vim ou $VIM/vimfiles) du fichier syntax/fichier.vim. Il est donc préférable que vous placiez votre fichier dans ce dossier.

Maintenant une astuce que je trouve tout bonnement indispensable, binder la commande php5 afin de vérifier la syntaxe du document et éventuellement l’exécuter.

Rajoutez ceci à votre fichier de configuration de Vim :

// Ctrl+M pour exécuter le fichier
autocmd FileType php noremap :w!:!/usr/bin/php5 %

// Ctrl+L pour vérifier la syntaxe
autocmd FileType php noremap :!/usr/bin/php5 -l %

Extrêmement pratique et fait gagner beaucoup de temps !

Pour finir je link un article sur l’utilisation de ctags avec Vim. L’auteur y explique comment ajouter une librairie, ici le Zend Framework : Article (en anglais)

J’espère que ce tutoriel a été utile, bientôt la présentation de quelques plugins très utiles pour Vim !

Catégorie: Linux | Laisser un commentaire (0)

Créer un éditeur de texte avec Qt 4 et QScintilla

Posté par seiyar81 le 23 novembre 2009 | Laisser un commentaire (0)
Qt

QScintilla est un portage de la librairie Scintilla vers le framework Qt permettant l’édition de texte, la coloration syntaxique, repliage du code etc…

Pour l’utiliser il vous faudra installer, si ce n’est déjà fait, le framework Qt : ici.
Puis une fois Qt installé, il faudra télécharger Qscintilla : ici.
Pour l’installer, ouvrez l’invité de commande de Qt (Qt Command Prompt), placez-vous dans le répertoire extrait et allez ensuite dans le répertoire Qt4 :

cd Qt4
qmake
make
make install
Ou sous Windows : qmake & make & make install puis
copy %QTDIR%\lib\qscintilla2.dll %QTDIR%\bin

Ceci fait, vous pouvez commencer à créer votre première application. Voici un exemple créant simplement une fenêtre avec un éditeur :

#include 
#include 
#include 

int main(int argc, char *argv[])
{
QApplication app(argc, argv);

QsciScintilla *scintilla = new QsciScintilla;
QsciLexerHTML *lexer = new QsciLexerHTML;
scintilla->setLexer(lexer);
scintilla->show();
return app.exec();
}

Compilez ce bout de code (n’oubliez pas de rajouter LIBS += -lqscintilla2 à votre .pro) et admirez le résutat^^
Pour colorier le texte QScintilla utilise des lexers, ici nous avons utilisé un QsciLexerHTML qui colore le Cobol HTML et avec le PHP, XML, ASP, Python, VBScript, Javascript et SGML.
QScintilla rassemble ainsi 29 QsciLexer pout tous les langages courants : C++, Java, C#, Perl, SQL, Fortran, D etc…

Mais le fait de seulement colorier du code n’est pas intéressant ni vraiment utile.
Heureusement pour nous QScintilla possède tout un tas de propriétés et de fonctions qui vont nous aider à mettre un place un éditeur de texte complet :

// Définit une couleur spécifique pour un élément :
// ici red pour les tags PHPStart ('; ?>)
lexer->setColor(Qt::red, QsciLexerHTML::PHPStart);   

// Active la marge à gauche pour la numérotation des lignes
// et lui assigne une largeur de 4
scintilla->setMarginLineNumbers (1, true);
scintilla->setMarginWidth(1, "----");

// ‘Repliage’ du code (parentheses, crochets,
, etc…) scintilla ->setFolding(QsciScintilla::BoxedFoldStyle); // Mise en surbrillance des parenthèses, crochets correspondants scintilla->setBraceMatching(QsciScintilla::SloppyBraceMatch); // Active l'auto-indentation scintilla->setAutoIndent(true); // Charge le contenu du fichier (ligne par ligne) comme source d'auto-complétion // Et assigne cette source à l'éditeur qui déclenchera l'auto-complétion dès que 3 caractères seront tapés QsciAPIs *api = new QSciAPIs(lexer); api->load("fichier.txt"); scintilla->setAutoCompletionSource(QsciScintilla::AcsAPIs); scintilla->setAutoCompletionThreshold(3); Etc... etc...

Pour la liste complète des méthodes et des classes de QScintilla direction la Doc.

Sachez également qu’une liste de fonctions propres aux éditeurs de texte existe. Vous pouvez donc aussi bien utiliser undo() / redo(), que indent()/ unindent(), cut() / copy() / paste(), insert() / insertAt() etc…

Bon codage !

Catégorie: Qt | Laisser un commentaire (0)

Configuration et Utilisation de Vim 4/5

Posté par seiyar81 le 17 novembre 2009 | Laisser un commentaire (0)
news-vim

Avant-dernière partie du tutoriel consacré à l’éditeur Vim. Aujourd’hui c’est à l’encodage que nous nous intéresserons. Source de bien des soucis, lequel choisir, et comment, entre l’UTF-8 et les différentes normes ISO ?

Tout d’abord il faut régler 2 paramètres impotants :

  • fileencoding : encodage des caractères à l’enregistrement du fichier
  • fileencodings : liste des encodages à tester pour initialiser fileencoding

L’idéal est de fixer le second paramètre dans votre fichier de configuration (‘/etc/vim/vimrc’ ou bien ‘/home/username/.vimrc’ comme vu dans la seconde partie) :

set fileencodings=ucs-bom,utf-8,latin1

Ainsi le fichier commence par une marque d’encodage BOM, ensuite si un caractère non valide UTF-8 est trouvé dans le document, Vim passe alors en latin1 (ISO8859-1).

Un petit exemple de configuration pour l’encodage :

if has("multi_byte")
set encoding=utf-8
setglobal fileencoding=utf-8
set bomb
set termencoding=iso-8859-15
set fileencodings=utf-8,ucs-bom,iso-8859-15,iso-8859-3
else
echoerr "Sorry, this version of (g)vim was not compiled with +multi_byte"
endif

Notez que set bomb force le BOM (nobomb pour l’enlever).
Ainsi à moins qu’un caractère défectueux ne soit trouvé, l’encodage est fixé en UTF-8.

Il est également possible de forcer l’encodage à l’ouverture du fichier :

:e ++enc=utf-8 file // Force l'encodage en UTF-8 même en cas de mauvais caractère

vim -c ':e ++enc=utf-8 file' // Pareil mais de la ligne de commande

Libre à vous ensuite de régler vos paramètres à l’encodage qui vous convient le mieux !

Prochain et dernier chapitre : l’utilisation de Vim pour développer. Auto-complétion, coloration du code et différents réglages.

Catégorie: Linux | Laisser un commentaire (0)