Ack in Project, le plugin qui rend Textmate (presque) parfait

Le choix d’un éditeur de texte relève quasiment de la mystique religieuse. Pour être honnête, je comprends difficilement ceux qui peuvent en choisir un différent du mien. J’ai changé de matériel et de système d’exploitation après 8 ans sous Linux pour adopter Textmate, je ne me revois pas changer de crémerie de sitôt.

Textmate a pourtant un gros point faible : la recherche, et principalement la recherche dans un projet qui est atrocement lente. Heureusement, Ack in project, un nouveau plugin développé depuis le mois d’août autour de la librairie Ack permet désormais de résoudre ce problème. Ack a déjà été utilisée avec succès sur d’autres projets comme NetBeans et IntelliJ avec des résultats en termes de pertinence et de rapidité plus que significatifs.

L’installation de Ack in Project est très simple :

$ cd ~/Library/Application\ Support/TextMate/Bundles/
$ git clone git://github.com/protocool/ack-tmbundle.git Ack.tmbundle

Si vous n’avez pas installé git sur votre machine, vous pouvez vous rendre sur la page du projet et en télécharger une archive.

Vous pouvez ensuite utiliser Ack in project à l’aide de la combinaison de touches Cmd + Shift + A. C’est là le seul défaut du plugin : non seulement il ne surcharge pas la commande de recherche par défaut Cmd + Shift + f, mais en plus de cela, il prend la place des raccourcis clavier dédiés à SVN.

[Edit] : pour bypasser le find in project inclus dans textmate, il suffit d’éditer le fichier Commands/Ack\ in\ Project.tmCommand et de remplacer la ligne 16 par <string>@F</string>

Le musée d'Orsay la nuit

Publié le 09 octobre 2008 à 11h35 Publié sous et Labels textmate, ruby, code, svn, rubyonrails, plugin, emacs

À propos

Frédéric de Villamil

Je m'appelle Frédéric de Villamil, et quand je ne déploie pas ma mauvaise humeur et ma mauvaise foi sur le Web, je suis un super héros chargé de sauver le monde. Vous pouvez me suivre sur Twitter.

  1. Guillaume le 09 octobre 2008 à 11h49

    Merci pour cette info, la recherche est effectivement un défaut du Textmate natif, je vais essayer ça. En ce qui me concerne, j’utilise également le bundle ProjectPlus http://ciaranwal.sh/2008/08/05/textmate-plug-in-projectplus qui permet d’avoir le statut SVN du fichier dans son icone, une arborescence de projet dans le panneau latéral qui ne se referme pas tout le temps plus quelques autres petits goodies.

  2. Frédéric de Villamil le 09 octobre 2008 à 12h55

    @Guillaume : et merci pour ce plugin qui vient de me changer la vie du tout au tout, fabuleux.

  3. Samuel Martin le 09 octobre 2008 à 21h23

    Frederic > Edites-tu tes articles de blog avec textmate ?

  4. Frédéric de Villamil le 09 octobre 2008 à 22h04

    @Samuel : en fait, je fais tout ce qu’il est possible de faire sous Textmate avec, dont l’écriture de mes billets de blog. Et pour le reste, je pleure.

  5. Guillaume le 10 octobre 2008 à 11h30

    En ce qui me concerne, ma conversion est récente (j’ai acheté ma licence en août), mais je fais de plus en plus de choses avec : plus on s’en sert, moins on peut s’en passer.

  6. Mehdi Kabab le 12 octobre 2008 à 16h45

    Merci pour la découverte, je pense l’utiliser dorénavant en place de la commande « Grep in Project »[1] d’Henrik Nyh. Cette dernière offrait l’avantage d’être bien plus rapide que la recherche de base de TextMate mais, contrairement à « Ack In Project », ne permettait pas de faire remonter le contexte.

    Pour remplacer le raccourci clavier associé à la commande, faire un petit tour du côté du menu Bundles > Bundle Editor > Edit Commands (ou ⌃⌥⌘C) puis dans Ack In Project > Ack In Project modifier le bind du champ Activation est une manipulation plus simple ;-)

    1. http://henrik.nyh.se/2007/06/grep-in-project-command-for-textmate
  7. MoOx le 19 mai 2011 à 10h26

    Merci pour cette article. Perso j’ai du me faire un petit $ mkdir ~/Library/Application\ Support/TextMate/Bundles/

    :)

Réagir à Ack in Project, le plugin qui rend Textmate (presque) parfait

Afin de maintenir le niveau global de ce site, les commentaires font l'objet d'une politique de modération qualitative basée sur des critères non écrits et totalement subjectifs, donc injustes.

Les commentaires écrits en langage SMS, inutiles, déplacés, injurieux ou relevant du spam seront systématiquement supprimés sans avertissement préalable.

Les trackbacks sont fermés pour cause de spam.