Clojure의 REPL에서 자주 사용하는 var 단축

6102 단어 LeiningenClojure
REPL상에서, 파일의 변경을 반영하는데 매회↓하는 것, 길네요.
(use '[clojure.tools.namespace.repl :only (refresh)])
(refresh)

lein-shorthand 플러그인을 사용하면 이렇게 ↓됩니다. 편하네요.
(./r)

lein-shorthand



모든 완전한 기호 이름에 대해 별명을 지정할 수 있습니다.
위의 예에서 말하면, clojure.tools.namespace.repl/refresh 라고 하는 완전 수식 심볼명에 ./r 라고 하는 별명을 붙이고 있습니다.
더 분해하면 clojure.tools.namespace.repl 네임스페이스의 refresh 라는 기호에 . 1 라는 네임스페이스의 r 라는 기호를 붙입니다.

구성


  • project.clj 2:plugins 키에 com.palletops/lein-shorthand 를 추가합니다.
  • 또한 :shorthand 라는 키에 {<名前空間> [完全修飾シンボル名...]} 를 씁니다.

  • Example



    자신의 profiles.clj 는 ↓와 같이 해 보았습니다.
    {:user {:plugins [
              ; ....
              [com.palletops/lein-shorthand "0.4.0"] ; こいつが今回のテーマ
              ; ....
            ]
            :dependencies [
              ; ....
              [alembic "0.3.2"]
              [org.clojure/tools.namespace "0.2.11"]
              ; ....
            ]
            :shorthand {. [[r clojure.tools.namespace.repl/refresh]     ; clojure.tools.namespace.repl/refresh -> ./r
                           [pp clojure.pprint/pprint]                   ; clojure.pprint/pprint                -> ./pp
                           clojure.repl/doc                             ; clojure.repl/doc                     -> ./doc
                           clojure.repl/find-doc                        ; clojure.repl/find-doc                -> ./find-doc
                           clojure.repl/source                          ; clojure.repl/source                  -> ./source
                           alembic.still/distill                        ; alembic.still/distill                -> ./distill
                           alembic.still/lein]}}}                       ; alembic.still/lein                   -> ./lein
    

    Usage



    제대로 보완됩니다. 좋은 느낌이네요!



    계기



    얼마 전의 서-진주-cぉ 줄레 #0고속! Clojure 웹 개발 시작 라는 발표 속에서 alembic 3

    aleimbic은 팔레트 , lein-shorthand는 PalletOps 의 GitHubOrganization에 놓여 있으며 개발자는 같은 쪽에서와 같습니다.


    lein-shorthand 아니고도 물론 OK입니다.

    물론 . 등에서도 OK입니다.

    alembic은 오류가 발생했는지 궁극적으로 움직일 수 없었습니다. . 편리할 것 같은데. .

    좋은 웹페이지 즐겨찾기