2016-05-15 72 views
2

Diese CIDER Funktion scheint erst nach Ausführung Cidre-Jack-in arbeiten:In CIDER ist es möglich, M- zu verwenden. um zur Definition zu springen, ohne dass die REPL läuft?

M-. Springe zur Definition eines Symbols. Wenn ein Argument mit dem Präfix aufgerufen wird oder kein Symbol am Punkt gefunden wird, werden Sie aufgefordert, ein Symbol einzugeben.

Wenn ich öffnen Sie eine neue CLJ-Datei, und es sagt nur Cidre [nicht angeschlossen] die M-. Tastenkombination gibt mir Wrong type argument: stringp, nil

Ist es möglich, diese Funktion zu nutzen, ohne das Starten und zu einem REPL verbinden? Gibt es eine andere Möglichkeit, dasselbe Verhalten ohne CIDER zu erreichen?

Antwort

2

CIDER keine solche Fähigkeit, weil sie Metadaten-Lookups von Symboldefinitionen führt zu Vars befestigt mit:

> (defn x [] 0) 
#'user/x 
> (meta #'x) 
{... :line <line_nuber>, :file <file_path> ...} 

Offensichtlich Metadaten angebracht zu haben, müssen Sie die REPL starten und Symboldefinitionen bewerten .

Ohne REPL können Sie versuchen, rgrep mit (nach dem Einschalten benötigt Symbol Cursor platzieren):

M-x rgrep <RET> 

Doch diese Suche nur eine textliche ist. Es gibt Ihnen alle Vorkommen von Symbolen im angegebenen Verzeichnis (auch keine Namensraumauflösung).

+1

[dumb-jump] (https://github.com/jacktasia/dumb-jump) scheint auf Clojure zu funktionieren – kevincasey