Skip to content

Instantly share code, notes, and snippets.

@frnz
Created February 1, 2011 05:36
Show Gist options
  • Select an option

  • Save frnz/805468 to your computer and use it in GitHub Desktop.

Select an option

Save frnz/805468 to your computer and use it in GitHub Desktop.
Run, Lola! Run!
;; La idea es poder hacer algo como yasnippets (fácil de configurar, independiente de un modo) para comandos.
;; Entonces poder hacer algo como:
(lola-runs-on 'rails-minor-mode
("Run rake db:migrate"
:shortcut "C-c D"
:run "rake db:migrate"
;; project folder funciona como en textmate.el, busca el .git mas cercano. Tambien esta current-buffer-folder. De hecho project-folder es por default
:on project-folder)
;; Ya se que hay cucumber mode que hace esto, es solo un ejemplo
("Run cucumber feature"
:shortcut "C-c C"
:run "cucumber $buffer-file-name") ;; Se le pueden poner cosas en run como "$buffer-file-name" que se cambia por la variable adecuada
("Create a new model")
:shortcut "C-x M"
;; Le puede preguntar algo...
:prompt "Enter name and fields for new model"
:run "rails g model $prompt") ;; ...y luego lo pone en el run command
("Some function"
:shortcut "C-c F"
:run some-elisp-function)
("Deploy to server"
:shortcut "C-x C-D"
:run "cap deploy")) ;; Esto es lo único que necesitaría para Capistrano. Ningún cap-mode me haría falta.
;; Ahora, es muy bonito tener un cap deploy para rails-minor-mode. Pero que pasa cuando tengo un proyecto que usa heroku?
;; Bueno, puedo colocar runs por projecto
;; En la raiz del proyecto hago un archivo que se llama .lola.el y pongo:
("Deploy to server"
:shortcut "C-x C-d"
:run "git push heroku master")
;; Asi automaticamente se le hace un override al comando 'general'
;; También podría hacer:
("Go to production console"
:shortcut "C-x C-C"
:run "ssh [email protected] -- cd /home/app/myapp && rails console production") ;; Oh, yeah!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment