Quelles fonctions Emacs, packages, add-ons, etc. vous aident dans votre développement quotidien de Ruby On Rails?Quelles sont les fonctionnalités utiles d'Emacs pour le développement de Rails
Répondre
J'utilise emacs-rails
et quelques modes pour éditer css, js (espresso-mode), haml, sass, yaml et un mode snippet (yas-snippet). Pour un aperçu, regardez dans le emacs wiki pages on Ruby on Rails..
C'est YASnippet, pas yas-snippet –
Les versions précédentes des modes emacs-rails et Rinari (les deux modes les plus populaires pour le développement de Rails) étaient très riches en fonctionnalités, mais elles étaient gonflées et encombrantes. Pour maintenir un noyau petit, propre, fiable, fonctionnel et hackable, Rinari évite la plupart des fonctionnalités de type «cloches et sifflets». Cependant, cela ne veut pas dire que ces bonus supplémentaires pourraient ne pas être utiles.
Cette page devrait servir de point de marshaling pour les liens vers d'autres outils/paquets qui fonctionnent bien avec Rinari et Rails en général. Si vous avez des idées pour des ajouts à cette liste, ou pour de nouvelles fonctionnalités Rinari s'il vous plaît laissez-nous savoir au http://groups.google.com/group/emacs-on-rails.
essentielles Modes Majeurs pour travailler avec Rails
mode Ruby, et d'autres généraux goodies Ruby-Emacs se trouvent dans le répertoire/misc de votre distribution rubis et à http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/misc/ (il est également fourni par défaut avec Emacs 23,1)
mode CSS http://www.emacswiki.org/cgi-bin/emacs/css-mode-simple.el
- mode
JavaScript http://www.emacswiki.org/cgi-bin/wiki/JavaScriptMode#toc1 Autres outils
mode RHTML mode mineur pour l'édition fichiers RHTML (sans MMM-Mode) voir RHTML-mode
Snippets http://code.google.com/p/yasnippet/ et Rails snippets http://github.com/eschulte/yasnippets-rails/tree/master
soutien-debug rubis http://groups.google.com/group/emacs-on-rails/browse_thread/thread/dfaa224905b51487
Mode ido http://www.emacswiki.org/cgi-bin/wiki/InteractivelyDoThings
nxhtml-mode - le meilleur mode pour le développement web dans Emacs - une excellente alternative du RHTML mode pour l'édition de fichiers erb parmi d'autres autres choses.
La plupart de ces éléments sont copiés à partir de la documentation de Rinari. Comme vous avez pu le deviner, je préfère Rinary sur emacs-rails. En regardant l'activité des deux projets - emacs-rails n'a pas eu de changements depuis environ un an, alors que rinary est encore en cours de développement.
D'après sa description, Rinari ressemble exactement à ce que je cherche, mais la version actuelle hébergée sur Github est cassée, comme je l'ai noté dans [ce commentaire] (http://stackoverflow.com/questions/2713096/emacs-rails-vs-rinari#comment17458856_2736256). –
Personnellement, j'utilise [Emacs Prelude] (http://github.com/bbatsov/prelude) pour le développement de Rails. L'extension 'projectile' qui est fournie me donne les fonctionnalités de navigation du projet dont j'ai besoin et je ne me soucie pas vraiment du reste des fonctionnalités de Rinari. –
J'ai ajouté une réponse à propos de 'projectile'. Au fait, vous étiez trop modeste pour mentionner que c'est votre travail. :) –
J'ai essayé le Aptana Studio IDE (open-source), qui gère les projets Rails.J'ai trouvé que je l'utilisais surtout pour naviguer parmi les fichiers d'un projet Rails, et puisque je préfère utiliser Emacs pour éditer des fichiers de toute façon, j'ai mis Aptana de côté pour l'instant. (Mais il pourrait être utile plus tard lors du débogage, donc je ne le rejette pas complètement.)
J'ai récemment essayé différentes extensions Emacs pour aider au développement de Rails: ECB (Emacs Code Browser), Rinari, et quelque chose d'autre que j'oublie, dont je n'étais pas entièrement satisfait ou incapable de travailler. Cependant, je suis maintenant heureux d'utiliser projectile
, dont Bozhidar Batsov mentionné dans un commentaire ci-dessus. Cela ajoute de la commodité à la recherche de fichiers dans un projet et à leur intégration dans un projet. Ce n'est pas spécifique aux seuls projets Rails, non plus.
Un autre très utile Emacs add-on que j'ai récemment découvert est l'extension tabbar
, qui fonctionne un peu comme les barres de l'onglet d'un navigateur. J'ai lié la navigation entre les onglets ouverts à mes touches M-leftarrow et M-rightarrow, ce qui rend la commutation parmi les tampons beaucoup plus pratique qu'avant.
Poursuivant Emcas, il y a bubble-buffer
(code ci-dessous), avec lequel je peux appuyer sur une touche (F5 dans mon cas) pour changer le contenu du tampon dans un fichier récemment visité - même si tabbar
fait un peu superflu. J'inclus également du code pour tuer immédiatement un tampon avec C-DEL, plus quelques petites fonctions qui permettent de faire défiler un buffer tout en gardant le point constant, tant qu'il ne disparaît pas écran; le code les lie aux touches *
et /
du clavier numérique. (Aucun d'entre eux sont mon propre travail.)
;; Use F5 to switch between buffers. Use C-DEL to remove the current buffer
;; from the stack and retrieve the next buffer. The most-frequented buffers are
;; always on the top of the stack. (Copied, with changes and a bugfix, from
;; http://geosoft.no/development/emacs.html.)
(defvar LIMIT 1)
(defvar time 0)
(defvar mylist nil)
(defun time-now()
(car (cdr (current-time))))
(defun bubble-buffer()
(interactive)
(if (or (> (- (time-now) time) LIMIT) (null mylist))
(progn (setq mylist (copy-alist (buffer-list)))
(delq (get-buffer " *Minibuf-0*") mylist)
(delq (get-buffer " *Minibuf-1*") mylist)))
(bury-buffer (car mylist))
(setq mylist (cdr mylist))
(setq newtop (car mylist))
(switch-to-buffer (car mylist))
(setq rest (cdr (copy-alist mylist)))
(while rest
(bury-buffer (car rest))
(setq rest (cdr rest)))
(setq time (time-now)))
(global-set-key [f5] 'bubble-buffer)
(defun kill-buffer-without-questions()
;; Kill default buffer without the extra emacs questions
(interactive)
(kill-buffer (buffer-name)))
(global-set-key [C-delete] 'kill-buffer-without-questions)
;; Scroll up and down without moving the cursor by pressing the numeric keypad's
;; "/" and "*" keys.
(defun scroll-down-keep-cursor()
;; Scroll the text one line down while keeping the cursor
(interactive)
(scroll-down 1))
(defun scroll-up-keep-cursor()
;; Scroll the text one line up while keeping the cursor
(interactive)
(scroll-up 1))
(global-set-key [kp-divide] 'scroll-down-keep-cursor)
(global-set-key [kp-multiply] 'scroll-up-keep-cursor)
- 1. Quelles sont les fonctionnalités utiles qui vous permettent de passer outre le 'nouvel' opérateur?
- 2. Quels sont les bundles ou plugins TextMate les plus utiles pour le développement Rails?
- 3. Quelles sont les meilleures fonctionnalités de Scala?
- 4. Quelles sont les fonctionnalités cachées de Maven2?
- 5. Quelles sont les fonctions utiles pour dessiner du texte (MFC)?
- 6. Quelles sont les nouvelles fonctionnalités d'Eclipse Helios?
- 7. Édition collaborative pour le développement .NET - quelles sont les possibilités
- 8. Quelles sont les touches de raccourci utiles dans Visual Studio?
- 9. Dans quelles instances les arbres d'expressions sont-ils utiles?
- 10. Quelles sont les meilleures méthodologies de développement distribuées pour sharepoint?
- 11. Quelles bibliothèques tierces sont disponibles pour le développement de l'iPhone?
- 12. Conseils utiles pour le développement d'un module MS Word professionnel
- 13. Fonctionnalités des environnements de développement intégrés pour les services Web
- 14. Quelles sont les fonctionnalités de sécurité disponibles dans Struts?
- 15. Quelles sont toutes les nouvelles fonctionnalités de asp.net 4.0.?
- 16. Quelles sont les nouvelles fonctionnalités du navigateur disponibles aujourd'hui?
- 17. Quelles sont les bonnes références pour le développement .Net avec Office Communications Server?
- 18. Quelles sont les fonctionnalités majeures introduites par php5?
- 19. Les fonctionnalités de suivi de projet de TFS sont-elles utiles?
- 20. Quelles sont les ressources en ligne utiles pour les débutants Python?
- 21. Quelles sont les nouvelles langues utiles pour - trouver des cas d'utilisation pour offsider
- 22. Quelles sont les boîtes à outils Eclipse les plus suggérées pour le développement rapide de fenêtres?
- 23. Quelles sont les meilleures pratiques de développement GUI iPAD
- 24. Quelles sont les nouvelles fonctionnalités de .Net Framework 4.0 pour les développeurs d'applications C# et Windows?
- 25. Quelles sont les bonnes cartes de développement de microcontrôleur pour apprendre le micro framework .Net?
- 26. De quelles fonctionnalités de CMS avez-vous besoin dans Rails?
- 27. Liste des modules Apache utiles pour le développement PHP
- 28. Quelles sont toutes les "conventions" pour Ruby on Rails?
- 29. Fonctionnalités moins connues mais utiles dans Eclipse
- 30. Quelles sont les bonnes présentations et le matériel facile à comprendre pour comprendre le développement agile?
Ctrl-X, Ctrl-C? – Oded
la virgule est trop. c'est Cx Cc dans la bonne nomenclature –