Emacs clojure: go to definition

clojure, emacs

Solution

I believe the shortcut you're looking for is `M-.`

https://github.com/clojure-emacs/cider#keyboard-shortcuts

Problem

I use ergoemacs-mode, clojuremode and autocomplete Autocomplete works very well. What should I press to go to definition of a function? I get used to Cursive, but I want to use free Emacs and I needed go to definition feature. Here is my `init.el` file: ``` (global-set-key [f8] 'neotree-toggle) ;; Set bigger fonts (set-default-font "Ubuntu Mono-16") (add-hook 'clojure-mode-hook 'turn-on-eldoc-mode) (setq nrepl-popup-stacktraces nil) (add-to-list 'same-window-buffer-names "<em>nrepl</em>") ;; General Auto-Complete (require 'auto-complete-config) (setq ac-delay 0.0) (setq ac-quick-help-delay 0.5) (ac-config-default) ;; ac-nrepl (Auto-complete for the nREPL) (require 'ac-nrepl) (add-hook 'cider-mode-hook 'ac-nrepl-setup) (add-hook 'cider-repl-mode-hook 'ac-nrepl-setup) (add-to-list 'ac-modes 'cider-mode) (add-to-list 'ac-modes 'cider-repl-mode) (add-hook 'clojure-mode-hook 'paredit-mode) (require 'package) (add-to-list 'package-archives '("melpa-stable" . "http://melpa-stable.milkbox.net/packages/")) (add-to-list 'package-archives '("melpa" . "http://melpa.milkbox.net/packages/")) (add-to-list 'package-archives '("marmalade" . "http://marmalade-repo.org/packages/")) ;; Initialize all the ELPA packages (what is installed using the packages commands) (package-initialize) ;;(package-initialize) (require 'ergoemacs-mode) (setq ergoemacs-theme nil) ;; Uses Standard Ergoemacs keyboard theme (setq ergoemacs-keyboard-layout "us") ;; Assumes QWERTY keyboard layout (ergoemacs-mode 1) (add-to-list 'load-path "~/.emacs.d/elpa/neotree-20150102.427") (require 'neotree) (global-set-key [f8] 'neotree-toggle) ;; Set bigger fonts (set-default-font "Ubuntu Mono-16") (add-hook 'clojure-mode-hook 'turn-on-eldoc-mode) (setq nrepl-popup-stacktraces nil) (add-to-list 'same-window-buffer-names "<em>nrepl</em>") ;; General Auto-Complete (require 'auto-complete-config) (setq ac-delay 0.0) (setq ac-quick-help-delay 0.5) (ac-config-default) ;; ac-nrepl (Auto-complete for the nREPL) (require 'ac-nrepl) (add-hook 'cider-mode-hook 'ac-nrepl-setup) (add-hook 'cider-repl-mode-hook 'ac-nrepl-setup) (add-to-list 'ac-modes 'cider-mode) (add-to-list 'ac-modes 'cider-repl-mode) (add-hook 'clojure-mode-hook 'paredit-mode) (global-set-key [f8] 'neotree-toggle) ;; Set bigger fonts (set-default-font "Ubuntu Mono-16") (add-hook 'clojure-mode-hook 'turn-on-eldoc-mode) (setq nrepl-popup-stacktraces nil) (add-to-list 'same-window-buffer-names "<em>nrepl</em>") ;; General Auto-Complete (require 'auto-complete-config) (setq ac-delay 0.0) (setq ac-quick-help-delay 0.5) (ac-config-default) ;; ac-nrepl (Auto-complete for the nREPL) (require 'ac-nrepl) (add-hook 'cider-mode-hook 'ac-nrepl-setup) (add-hook 'cider-repl-mode-hook 'ac-nrepl-setup) (add-to-list 'ac-modes 'cider-mode) (add-to-list 'ac-modes 'cider-repl-mode) (add-hook 'clojure-mode-hook 'paredit-mode) ;; Show parenthesis mode (show-paren-mode 1) (custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(custom-enabled-themes (quote (whiteboard))) '(delete-selection-mode t) '(org-CUA-compatible nil) '(org-replace-disputed-keys nil) '(recentf-mode t) '(shift-select-mode nil)) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. ) ```

Original source