Je vois beaucoup de gens poster des GIF animés présentant les fonctionnalités d'Emacs, mais je n'ai pas vu une belle promenade pour en créer une. Existe-t-il un code qui tente de lier les images clés du gif aux touches utilisées dans Emacs? Existe-t-il des packages ou des fonctions elisp pour automatiser le processus? J'adorerais pouvoir appuyer sur une touche pour commencer l'enregistrement, appuyez à nouveau dessus pour l'arrêter et demandez-lui un nom de fichier pour enregistrer le gif.
Question connexe, existe-t-il un package pour enregistrer des screencasts plus longs à partir d’Emacs?
images
screencast
dédoublé
la source
la source
Réponses:
Oui, il y a un paquet pour enregistrer des screencasts dans Emacs, ça s'appelle
camcorder.el
Je ne peux rien promettre pour l'instant, car je ne l'ai testé que sur mon ordinateur, mais je peux vous dire que cela fonctionne pour moi. :-)
M-x camcorder-record
.F12
et attendez la fin de la conversion.Les screencasts peuvent être générés dans n’importe quel format compris par
imagemagick
laconvert
commande de. Vous pouvez même mettre l'enregistrement en pause avecF11
!Si vous souhaitez enregistrer sans cadre contextuel, utilisez
M-x camcorder-mode
.Les dépendances
Pour l’enregistrement,
camcorder.el
utilise les utilitaires Linux suivants. Si vous en avez, cela devrait fonctionner en dehors de la boîte. Si vous utilisez autre chose, vous devriez toujours pouvoir le faire fonctionner en configurant lacamcorder-recording-command
variable.Dépannage
Sur ma machine, j’ai remarqué que l’identifiant de la fenêtre, Emacs, avait
diffère de l'id que le WM a rapporté avec l'
wminfo
utilitaire.J'ai ajouté la variable
camcorder-window-id-offset
pour corriger cela. La valeur par défaut est-4
, mais vous devrez peut-être augmenter ou diminuer cette valeur pour faire correspondre ces deux nombres.la source
xwininfo
de déterminer le bon ID à utiliser (je n'en ai paswminfo
sur mon système).outer-window-id
(au lieu dewindow-id
) et qu'un décalage n'était plus nécessaire, mais ce changement n'a pas encore abouti sur melpa-stable.J'ai posté une question similaire sur / r / Emacs .
Pour enregistrer des fichiers GIF, vos principales options sont les suivantes:
Pour afficher les séquences de touches, vous avez simplement besoin d’une application qui affiche les séquences de touches. key-mon fournit une application graphique pour cela. Il existe bien sûr un mode Emacs pour afficher les touches enfoncées: mode Journal de commandes .
la source
J'ai utilisé Byzanz pour générer tous mes GIF. J'enregistre avec un écran pour exécuter la
byzanz
commande, un pour l'enregistrement. Quelques exemples sont dans mon guide ici .la source
J'ai utilisé Byzanz pour enregistrer des gifs
Installez-le d'abord, mettez cet extrait dans rr (région d'enregistrement) dans votre $ PATH:
et cela dans rw (fenêtre d'enregistrement) dans votre $ PATH:
Vous pouvez maintenant utiliser rr et rw pour enregistrer une région / une fenêtre sur des gifs (vous pouvez modifier l'heure et la position en fonction de vos besoins).
la source
Une option supplémentaire avec le lecteur QuickTime (cela fonctionne sous OSX, je ne sais pas sous Windows). Les conditions requises sont:
ffmpeg
etgifsicle
ffmpeg -i yourscreen.mov -s 600x400 -pix_fmt rgb24 -r 10 -f gif - | gifsicle --optimize=3 --delay=3 > out.gif
la source