-
Setup & Mise à jour de CakePHP en un clic
Ayant plusieurs serveurs à gérer avec CakePHP, avoir un système de mise à jour rapide peut se révéler très utile ! C’est la vocation de ce petit script bash (fonctionne sous windows via cygwin).Placez ce script dans votre application, par exemple dans
app/libs/mg_scripts, puis lancez le script de la racine de votre application (la où se trouve le dossiercake). Il suffit alors de lancer./app/lib/mg_scripts/setup_cakephp.sh.#!/bin/bash # reset console if [ "$2" != "false" ] then echo -e "\033c" else echo -e "\n" fi # work directory if [ ! -z "$1" ] then mkdir -p $1; cd $1; dir=$1 else dir=$PWD fi echo -e "Executing $0\n" # variables tmpFolder="_tmp" # clean echo "Cleaning ..." rm -rf "${tmpFolder}" mkdir "${tmpFolder}" # version retreive echo "Retreiving version number ..." wget --quiet --no-check-certificate "https://github.com/cakephp/cakephp/raw/master/cake/VERSION.txt" -O "_tmp/version.txt" ver=`awk '/./' "_tmp/version.txt" | tail -1` if [ -z "$ver" ] then echo "Unable to retreive version number" echo "Cleaning ..." rm -rf "${tmpFolder}" exit fi echo "Last version appears to be ${ver}" # variables appName="cakephp-${ver}" destFolder="cake" url="https://github.com/cakephp/cakephp/tarball/${ver}" # setup confirm echo -e "\nSetup started:" echo -e "- app : ${appName}" echo -e "- from : ${url}" echo -e "- to : ${dir}/cake\n" read -p "Proceed ? [Y/n]:" s if [ "$s" = "n" ] then echo "Cleaning ..." rm -rf "${tmpFolder}" exit fi # download echo -e "\nDownloading ..." wget --quiet --no-check-certificate "${url}" -O "${tmpFolder}/${appName}.tar.gz" # install echo "Installing ..." tar -C "${tmpFolder}" -xzf "${tmpFolder}/${appName}.tar.gz" rm -rf "${dir}/${destFolder}" && mv "${tmpFolder}/`ls ${tmpFolder} | grep -i cakephp-cakephp`/cake" "${dir}/${destFolder}" # clean echo "Cleaning ..." rm -rf "${tmpFolder}" # exit echo -e "\nSetup of ${appName} ended." exitRetrouvez, commentez, éditez ce bout de code sur github.
-
Utiliser une police personnalisée avec Tumblr
Après SyntaxHighlighter, regardons comment intégrer une fonte originale à Tumblr. Pour cela, la meilleure option semble d’utiliser le nouveau service GoogleWebFonts, il suffit de placer la balise suivante dans votre
</head>pour charger la police Android Sans par example :<link href='http://fonts.googleapis.com/css?family=Droid+Sans:regular,bold' rel='stylesheet' type='text/css'>
Il suffit ensuite de surcharger les css (dans l’onglet avancé par exemple), en ajoutant :
body { font-family: 'Droid Sans', helvetica, sans; } -
New programming jargon →
A question recently posted on Stack Overflow asked for people to submit programming terms that they or their team have coined and have come into regular use in their own circles.
Je suis assez fan du Canard personnellement… !
-
Utiliser SyntaxHighlighter 3.0 sur Tumblr
Voici ci-dessous la manière la plus efficace d’intégrer SyntaxHighlighter à Tumblr, en utilisant l’autoloader dynamique de brushes, qui permet d’économiser de très nombreuses/précieuses requêtes lors du chargement de la page.
1. Ajoutez le chargement des styles de SyntaxHighlighter accompagné de la librairie javascript jQuery (si vous ne l’avez pas déjà) juste avant la balise
</head>:<!-- SyntaxHighlighter --> <link rel="stylesheet" type="text/css" href="http://alexgorbatchev.com/pub/sh/current/styles/shCore.css"> <link rel="stylesheet" type="text/css" href="http://alexgorbatchev.com/pub/sh/current/styles/shThemeDefault.css"> <!-- jQuery --> <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
2. Enfin, ajoutez le javascript de SyntaxHighlighter & son script d’autoload juste avant la balise
</body>:<!-- SyntaxHighlighter --> <script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/current/scripts/shCore.js"></script> <script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/current/scripts/shAutoloader.js"></script> <script type="text/javascript"> function path(){ var args = arguments, result = [] ; for(var i = 0; i < args.length; i++) result.push(args[i].replace('@', 'http://alexgorbatchev.com/pub/sh/current/scripts/')); return result }; SyntaxHighlighter.autoloader.apply(null, path( 'applescript @shBrushAppleScript.js', 'actionscript3 as3 @shBrushAS3.js', 'bash shell @shBrushBash.js', 'coldfusion cf @shBrushColdFusion.js', 'cpp c @shBrushCpp.js', 'c# c-sharp csharp @shBrushCSharp.js', 'css @shBrushCss.js', 'delphi pascal @shBrushDelphi.js', 'diff patch pas @shBrushDiff.js', 'erl erlang @shBrushErlang.js', 'groovy @shBrushGroovy.js', 'java @shBrushJava.js', 'jfx javafx @shBrushJavaFX.js', 'js jscript javascript @shBrushJScript.js', 'perl pl @shBrushPerl.js', 'php @shBrushPhp.js', 'text plain @shBrushPlain.js', 'py python @shBrushPython.js', 'ruby rails ror rb @shBrushRuby.js', 'sass scss @shBrushSass.js', 'scala @shBrushScala.js', 'sql @shBrushSql.js', 'vb vbnet @shBrushVb.js', 'xml xhtml xslt html @shBrushXml.js' )); SyntaxHighlighter.all(); </script>3. C’est fini, il vous suffit désormais d’ajouter du code wrappé dans une balise
<pre class="brush: js;">: pour charger le parser javascript par exemple.
