Sure.
1. Setup MELPA:
(package-initialize)
(add-to-list 'package-archives
'("melpa" . "http://melpa.milkbox.net/packages/"))
2. Install `lispy` from MELPA:
M-x package-install lispy
3. Get `clojure-semantic` from git:
cd ~/git
git clone https://github.com/kototama/clojure-semantic
4. Add to your ~/.emacs:
(add-to-list 'load-path "~/git/clojure-semantic")
(load "~/git/clojure-semantic/clojure.el")
5. Optionally, if you don't want to enable `lispy-mode` manually for each
file,
you can set it to be on automatically:
(mapc (lambda(h) (add-hook h (lambda() (lispy-mode 1))))
'(emacs-lisp-mode-hook
lisp-interaction-mode-hook
clojure-mode-hook
scheme-mode-hook
lisp-mode-hook))
6. Restart Emacs or load manually all the stuff from above and open
some Clojure project. You can call `lispy-goto` with "g" when
the point is in special position and `lispy-mode` is active or you can do
M-x lispy-goto.
Special position means the point is before ([{ or after )]} or the region
is active,
you can read more about it at
https://github.com/abo-abo/lispy#special-positions-and-key-bindings .
You can call `lispy-goto-local` with "G". It will offer the tags just in
current file, not
in whole directory.
7. Write back to me if this works so I can put up these steps as a tutorial
somewhere.
If it doesn't work, write anyway and I'll give more details.
Oleh
On Sunday, February 16, 2014 4:28:27 PM UTC+1, Olli Piepponen wrote:
>
> This looks very neat, but I was unable to figure out how to use
> lispy/clojure-semantic the way you were doing in your screencast. Could you
> give a breakdown of how this works?
>
> On Saturday, February 15, 2014 4:46:48 AM UTC+7, Oleh wrote:
>>
>> Hi all,
>>
>> As a follow-up to this post -
>> https://groups.google.com/forum/#!topic/clojure/B7dTW5PDcPM,
>> it's now possible to jump to any Clojure tag in current directory.
>> No project definitions required: CEDET will parse every source file in
>> current directory.
>> The tags are completed with helm plugin, so it's quite fast to find a
>> candidate to jump to.
>>
>> As a showcase, I've took this popular Clojure statistics package:
>> https://github.com/liebke/incanter
>>
>> The screencast is here: https://vimeo.com/86727658.
>>
>> lispy is here: https://github.com/abo-abo/lispy
>> clojure-semantic is here: https://github.com/kototama/clojure-semantic
>>
>> There's currently a bug in clojure-semantic the prevents permanent
>> storage of parsed tags,
>> maybe someone with some expertise could look into that.
>> Also, it's generated by a bison-like grammar, so if you know bison (I
>> don't unfortunately),
>> you could extend clojure-semantic to distinguish stuff like defmacro,
>> defmulti, defmethod etc.
>>
>> Same functionality is also available for Emacs Lisp, Scheme and Common
>> Lisp, if you like using
>> anything else besides Clojure:)
>>
>> regards,
>> Oleh
>>
>
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
---
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.