Question

Situation: J'ai saisi plusieurs fonctions lorsque je travaillais avec REPL dans Emacs. Problème: Il y a du courrier indésirable comme " ;; Évaluation avortée " quand je sauve simplement le tampon. Ce que je veux: des descriptions claires de toutes les fonctions que j'ai entrées dans leur dernière révision.

Puis-je faire ça? Merci.

Était-ce utile?

La solution

Je conviens que la meilleure méthode de flux de travail consiste à écrire votre code dans un tampon séparé et à l'évaluer, plutôt que de saisir les fonctions dans la réplique.

En supposant que vous ayez opté pour la méthode de réplication, je suppose que la solution de C. Martin consistant à enregistrer le journal de réplication et à le parcourir manuellement constitue votre seule option.

Si vous avez saisi les fonctions et les vars dans un package séparé, vous pouvez parcourir les symboles du package pour vous aider à choisir ce que vous souhaitez conserver.

E.g. pour voir tous les symboles créés dans le package cl-user:

(let ((p (find-package :cl-user)))
  (loop
     for s being the symbols in p
     when (eq p (symbol-package s))
     do (format t "~a~%" s)))

Autres conseils

Je ne comprends pas. Entrez-vous des définitions dans le REPL et prévoyez les récupérer ultérieurement? Enregistrez simplement un fichier source comme vous le feriez dans une autre langue. Utilisez C-x 2 pour diviser votre fenêtre Emacs en deux. Ouvrez un fichier source dans l'un d'entre eux C-x C-f foo.lisp. Utilisez C-C C-K, C-C C-R et ses amis (voir le menu SLIME) pour compiler / évaluer des régions de votre code source dans le REPL.

J'ai déjà recherché quelque chose comme ça dans le passé et je n'ai pas réussi à le trouver. Vous feriez mieux d’écrire toutes vos définitions dans un tampon séparé et d’utiliser les nombreuses fonctions d’évaluation / compilation de SLIME (Cc Ck charge un fichier entier, Cx Ce évalue la dernière expression, Cc Cr évalue une région, etc.), en entrant directement dans les choses REPL que vous ne voulez pas sauvegarder.

Euh, Cx o ou Cx b pour accéder au tampon SLIME REPL, puis Cx w ou Cx Cs pour l'enregistrer dans un fichier. Tout le contenu de SLIME / CL est un commentaire du lecteur; Vous pouvez écrire un hack de lecteur pour recharger le fichier en traitant les invites comme des commentaires, ou parcourir le fichier vous-même pour capturer les éléments que vous souhaitez enregistrer.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top