Je m’appelle Cédric Bozzi, je crée des sites et des applications, et ceci est mon blog dédié à la technologie : vous y trouverez des news, des opinions et des tests, le tout écrit par un Mac-head aux opinions tranchées.
There’s an English version here, mais la majeure partie du contenu est tirée de mon flux Twitter, et donc disponible en une seule langue (qui change au hasard des humeurs).
Le seul vrai inconvénient d’OS X pour développer des sites web, c’est qu’il est basé sur Unix et cache donc les mêmes fichiers que votre serveur web. Si vous travaillez sur des copies locales de vos sites web (et vous devriez, comme je l’ai déjà écrit plusieurs fois), vous avez un problème : vous devez créer et modifier des fichiers .htaccess, mais le Finder les cache.
Il y a plusieurs solutions, mais aucune n’est satisfaisante. Vous pourriez configurer votre serveur Apache pour chercher des htaccess.txt au lieu de .htaccess — mais ça implique d’avoir le contrôle total sur votre serveur, et aussi de modifier tous les sites existants. Vous pourriez configurer les options secrètes du Finder pour afficher les fichiers cachés — mais ensuite ce serait le bordel sur tout votre système, à commencer par le bureau. Vous pourriez utiliser Path Finder au lieu du Finder pour gérer votre arborescence de développement, comme je l’ai fait pendant un moment — mais Path Finder est une daube. Vous pourriez utiliser votre client FTP pour naviguer dans votre arborescence et afficher les fichiers cachés — mais, malgré ses défauts, le Finder a des fonctionnalités très intéressantes et ce serait dommage de se limiter à un client FTP. Idéalement, on pourrait demander à Transmit de renommer automatiquement les fichiers locaux htaccess.txt en .htaccess lors de l’upload, mais ils n’ont pas encore pensé à cette option.
Alors que je me demandais si Panic avait pensé à gérer ce problème dans Coda (avant de réaliser que Coda a son propre gestionnaire de fichiers, donc la question ne se pose pas), j’ai eu l’illumination : il doit y avoir une solution en AppleScript ou Automator ! Et voici aujourd’hui, après une bonne nuit de sommeil, un miracle d’Automator : Open Htaccess Here.workflow.
Comment l’utiliser : téléchargez-le, ouvrez-le, et utilisez la fonction “Save As Plug-in” d’Automator pour créer une option de menu contextuel pour le Finder. Vous pouvez maintenant droit-cliquer sur n’importe quel fichier ou dossier, choisir l’option que vous venez de créer dans le sous-menu Automator, et TextEdit ouvrira u fichier .htaccess dans le dossier sélectionné (si vous avez un éditeur favori, cherchez “TextEdit” vers la fin de l’action AppleScript et remplacez-le). S’il n’y a pas de fichier .htaccess existant, il sera créé.
Si vous voulez en savoir plus, voilà le workflow (oui, c’est tout simple… une fois qu’on s’est dépatouillé de toutes les complications pour travailler avec le Finder en AppleScript) :

Et l’AppleScript (je ne poste pas souvent de code, donc je n’ai pas de règles CSS appropriées, désolé) :
on run {input, parameters}
if input is {} then tell application "Finder" to set input to the target of Finder window 1 as alias
set input to input as alias
set thePath to POSIX path of input
—http://bbs.applescript.net/viewtopic.php?pid=69731
set {folder:isFolder} to (info for input)
if not (isFolder) then
—http://www.fischer-bayern.de/applescript/html/parent_f.html
set AppleScript’s text item delimiters to "/"
set itemCount to (count text items of thePath)
set lastItem to the last text item of thePath
if lastItem = "" then
set itemCount to itemCount - 2
else
set itemCount to itemCount - 1
end if
set thePath to text 1 thru text item itemCount of thePath & "/"
end if
set thePath to thePath & ".htaccess"
do shell script "touch \"" & thePath & "\""
do shell script "open -a TextEdit \"" & thePath & "\""
return thePath
end run
2001 01 02 03 04 05 06 07 08 09 10 11 12
2002 01 02 03 04 05 06 07 08 09 10 11 12
2003 01 02 03 04 05 06 07 08 09 10 11 12
2004 01 02 03 04 05 06 07 08 09 10 11 12
2005 01 02 03 04 05 06 07 08 09 10 11 12
2006 01 02 03 04 05 06 07 08 09 10 11 12
2007 01 02 03 04 05 06 07 08 09 10 11 12
2008 01 02 03 04 05 06 07 08 09 10 11 12
2009 01 02 03 04 05 06 07 08 09 10 11 12
2010 01 02 03 04 05 06 07 08 09 10 11 12