Astuces diverses pour le développement, l'administration
Environnement Unix like pour développer
sous Windows
Cygwin
MinGW
sous Mac OS X
Fink
DarwinPorts (
MacPorts?)
Compiler sous Linux des applications Win32 avec WineLib
Encodage des caracteres
EncodageDesCaracteres
Imprimer un code source avec coloration syntaxique (ou sans)
coloration syntaxique / syntax highlighting
http://fr.wikipedia.org/wiki/Coloration_syntaxique
Pour imprimer un code source on peut utiliser la commande
a2ps.
Exporter un code source en HTML avec coloration syntaxique (syntax highlight)
Emacs / Xemacs
htmlize.el (emacs-goodies-el)
http://fly.srk.fer.hr/~hniksic/emacs/htmlize.el
emacs CMonApplet.java
M-x htmlize-buffer
C-x C-s
vim / gvim
voir vim
http://www.vim.org
code2html
http://www.vim.org/scripts/script.php?script_id=330
copie de code2html-... .vim dans /usr/share/vim/
Utilisation de 2html.vim
vi CMonApplet.java
ECHAP (pour passer en mode commande)
:runtime syntax/2html.vim (ça s'écrit en bas)
ENTREE
Le buffer se sépare en deux (en haut le fichier html)
ECHAP
:w (pour sauver le résultat)
ECHAP :q (pour quitter le premier buffer)
ECHAP :q (pour quitter le second)
Utilisation de code2html.vim
ToDo
vi MySourceCode?.java
ESC :runtime syntax/2html.vim RETURN
(A second buffer with html code appear)
ESC :w (pour sauver le fichier html)
ESC :q (pour quitter un buffer)
ESC :q (pour quitter le dernier buffer)
On obtient le fichier
MySourceCode?.java.html
Export en une ligne de commande
Voir la documentation suivante
:help vim-arguments
:help clientserver
vim -c ":runtime syntax/2html.vim" -c ":w" -c ":q" -c ":q" CMonApplet.java
voir aussi ":TOhtml"
On peut utiliser
gvim à la place de
vim, les couleurs sont plus jolies !
Export avec Cascading Style Sheet css
vim -c ":let html_use_css = 1" -c ":runtime syntax/2html.vim" -c ":w" -c ":q" -c ":q" CMonApplet.java
Aide vi
:help vim-arguments
:help clientserver
:help highlight
:help
Couleurs (Noir & Blanc)...
http://www.vim.org/scripts/script.php?script_id=233
http://www-2.cs.cmu.edu/~maverick/VimColorSchemeTest/
Autre
GNU Source-highlight
http://www.gnu.org/software/src-highlite
Des bibliothèques en PHP permettant de gérer la coloration syntaxique d'un code source dans une page web :
PhpLib
GeSHi
http://qbnz.com/highlighter
Exporter un code source en PS
Emacs / Xemacs
M-x ps-print
C-u M-x ps-print-buffer-with-faces <entrer un nom de fichier>
Autres solutions
Paste-it!
http://paste.tgl0be.org/index.php
Pastebin
http://pastebin.com collaborative debugging tool
Nopaste
http://rafb.net/paste/
Gnopaste
http://sourceforge.net/projects/gnopaste
Yet Another Nopaste !
http://yanopaste.jujunie.com/
Editeurs de texte avec impression avec coloration syntaxique : Notepad++
Bibliothèques permettant la coloration syntaxique
Modules Perl
Mettre en forme un code
Ces outils permettent de rendre le code source plus uniforme au niveau de la présentation (indentation, formatage...)
GNU/
Emacs
Sélectionner l'ensemble du code soit à la souris soit en tapant CTRL-x h
Appliquer l'indentation automatique en tapant ALT-x indent-region
Artistic Style astyle
http://astyle.sourceforge.net (
C,
C++,
C#, and
Java)
GNU Indent
http://mysite.wanadoo-members.co.uk/indent/beautify.html
CheckStyle http://checkstyle.sourceforge.net (
Java)
Beautify
PHP
Analyse syntaxique / analyse lexicale
Rechercher "flex bison lex yacc grammaire" sur Google.fr
lex/yacc flex/bison
Compresser simplement le répertoire d'un projet
Copier ceci dans le fichier
zip.sh
#!/usr/bin/env sh
rm *.zip
zip -r nom_fichier.zip *
Rendre ce fichier executable :
chmod u+x zip.sh
Exécuter le fichier :
./zip.sh
Envoyer les fichiers d'un projet par FTP
Copier ceci dans le fichier
ftp.sh
#!/usr/bin/env sh
ncftpput -u s.cls ftpperso.free.fr repertoire_site *.zip
Rendre ce fichier executable :
chmod u+x ftp.sh
Exécuter le fichier :
./ftp.sh
voir aussi
GestionDeVersion :
CVS SVN ...
Trouver d'autres codes sources
Voir des projets libres similaires (attention au respect des licences !!!)
Moteurs de recherche spécialisés pour le développement
voir aussi les
ForgesLogiciels
Couverture de code
http://fr.wikipedia.org/wiki/Couverture_de_code
http://en.wikipedia.org/wiki/Code_coverage
EMMA
http://emma.sourceforge.net (Java)
Tests unitaires
http://fr.wikipedia.org/wiki/Test_unitaire
http://fr.wikipedia.org/wiki/Cat%C3%A9gorie:Test_logiciel
http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks
http://en.wikipedia.org/wiki/Category:Software_testing
http://junit.org (Java)
Etude d'un fichier binaire
Hachoir
http://www.hachoir.org
Test de programme en environnement limité
Fusil
http://fusil.hachoir.org
http://www.haypocalc.com/blog/index.php/2008/03/10/136-comment-raliser-un-fuzzer