2010-06-13 8 views
11

Je voulais juste un avis sur un bon flux de travail en utilisant l'environnement emacs avec clojure + swank + slime. Je me retrouve souvent à faire des commandes de clavier très répétitives et je me demande s'il existe une meilleure façon de procéder. J'inclus swank avec lein et commence mon projet en utilisant lein swank de shell. Ensuite, je me connecte avec emacs et fais les commandes d'utilisation correctes pour que je puisse commencer à utiliser (run-tests). Ensuite, je fais un peu de codage, puis je veux tester. Pour exécuter le test, j'ai besoin de changer le tampon dans emacs en swx-repl Cx o, puis je dois aller à l'invite M->, puis répéter la commande Mp, puis entrer, peut-être avec une exception, alors retour à la mémoire tampon de code et continuez encore une fois avec toutes les commandes emacs. Je trouve cela un peu répétitif.Bon flux de travail avec emacs + swank + slime + clojure?

Je suppose que la solution serait de commencer hack sur emacs et peut-être ajouter un raccourci pour faire cette tâche répétitive, mais j'aimerais entendre quelques suggestions parce que je ne peux pas être le seul à trouver cela fastidieux?

+1

Cette question a été posée à plusieurs reprises - voici le plus récent duplicate - http://stackoverflow.com/questions/2984146/efficient-clojure-workflow –

+1

Merci, trouvé quelques conseils intéressants là-bas. – grm

Répondre

12

Le mode test clojure permet presque instantanée test edit-test:

  • Cc t: va troquer entre le code de test et le code de mise en œuvre
  • Cc C,: exécute les tests et met en évidence la ligne avec l'erreur ne
  • Cc Cl: le fichier en cours de recharger après une édition

pour que cela fonctionne, vos tests doivent suivre une convention:

src/nom/espace/file_under_test.clj

et les testcases dans

test/nom/espace/test/file_under_test.clj

+0

Merci Peter. Je vais essayer celui-là. – grm

+0

Géré pour le mettre en marche et c'était définitif un pas en avant. Encore une fois merci! – grm

+0

Pour moi c'est C-c C-t. – rightfold

Questions connexes