Last active
August 24, 2022 13:07
-
-
Save anachronic/7af88c62db136727cd1fed17ee0a662f to your computer and use it in GitHub Desktop.
A hydra for js2-refactor in emacs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(defhydra js2-refactor-hydra (:color blue :hint nil) | |
" | |
^Functions^ ^Variables^ ^Buffer^ ^sexp^ ^Debugging^ | |
------------------------------------------------------------------------------------------------------------------------------ | |
[_lp_] Localize Parameter [_ev_] Extract variable [_wi_] Wrap buffer in IIFE [_k_] js2 kill [_lt_] log this | |
[_ef_] Extract function [_iv_] Inline variable [_ig_] Inject global in IIFE [_ss_] split string [_dt_] debug this | |
[_ip_] Introduce parameter [_rv_] Rename variable [_ee_] Expand node at point [_sl_] forward slurp | |
[_em_] Extract method [_vt_] Var to this [_cc_] Contract node at point [_ba_] forward barf | |
[_ao_] Arguments to object [_sv_] Split var decl. [_uw_] unwrap | |
[_tf_] Toggle fun exp and decl [_ag_] Add var to globals | |
[_ta_] Toggle fun expr and => [_ti_] Ternary to if | |
[_q_] quit" | |
("ee" js2r-expand-node-at-point) | |
("cc" js2r-contract-node-at-point) | |
("ef" js2r-extract-function) | |
("em" js2r-extract-method) | |
("tf" js2r-toggle-function-expression-and-declaration) | |
("ta" js2r-toggle-arrow-function-and-expression) | |
("ip" js2r-introduce-parameter) | |
("lp" js2r-localize-parameter) | |
("wi" js2r-wrap-buffer-in-iife) | |
("ig" js2r-inject-global-in-iife) | |
("ag" js2r-add-to-globals-annotation) | |
("ev" js2r-extract-var) | |
("iv" js2r-inline-var) | |
("rv" js2r-rename-var) | |
("vt" js2r-var-to-this) | |
("ao" js2r-arguments-to-object) | |
("ti" js2r-ternary-to-if) | |
("sv" js2r-split-var-declaration) | |
("ss" js2r-split-string) | |
("uw" js2r-unwrap) | |
("lt" js2r-log-this) | |
("dt" js2r-debug-this) | |
("sl" js2r-forward-slurp) | |
("ba" js2r-forward-barf) | |
("k" js2r-kill) | |
("q" nil) | |
) |
Sure, I'm just not sure about where I should include it. I'll do it over the weekend
Imho including it in the README is best.. We probably don't want hydra
as an added dependency?!
What's the issue with Hydra? Its solid code from a prominent member of this community. Also I can't imagine how a solution that involves leaving emacs could be consider the best.
@NicholasPetton need it be any more complicated than this? js-emacs/js2-refactor.el#115
Thanks for this hydra
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
@anachronic would you like to submit a PR with this hydra to js2-refactor?