# Changelog ## 0.2.0 ### New features * C-c M-d will display current nREPL connection details. * C-c M-r will rotate and display the current nREPL connection. * Setting the variable `nrepl-buffer-name-show-port` will display the port on which the nREPL server is running. * The REPL buffer name uses project directory name; `*nrepl*` will appear as `*nrepl project-directory-name*`. * The nREPL connection buffer name uses project directory name; `*nrepl-connection*` will appear as `*nrepl-connection project-directory-name*`. * nREPL server buffer name uses project directory name; `*nrepl-server*` will appear as `*nrepl-server project-directory-name*`. * C-c C-Z will select the nrepl buffer based on the current namespace. * C-u C-c C-Z will select the nrepl buffer based on a user project directory prompt. * Bind C-c C-q to `nrepl-quit` * Added an option to auto-select error popups (`nrepl-auto-select-error-buffer`) * Made the display of the REPL buffer on connect optional ### Changes * Renamed `nrepl-mode` to `nrepl-repl-mode` ### Bugs fixed * C-c M-s (`nrepl-selector`) was bound to non-existing symbol. * Fix indentation in REPL buffers. * Fix `nrepl-doc` on Clojure 1.5 ## 0.1.8 / 2013-08-08 ### New features * Evaluate all namespace forms `(ns ...)` in the user namespace. * Add highlighting of compilation warnings in addition to existing highlighting of errors * Add support for selecting last Clojure source buffer with keybinding C-c C-z (the same as `nrepl-switch-to-repl-buffer`). * The content of `target/repl-port`, if present, will be used as the default port for M-x nrepl * Added an extendable slime-style selector command and binding C-c M-s ### Bugs fixed * M-. (`nrepl-jump`) on remote nrepl connection (across OS hosts) has been fixed. ## 0.1.7 / 2013-03-13 ### New features * Add support for multiple nrepl sessions. A single session is closed with `M-x nrepl-close`. A repl session is made default with `M-x nrepl-make-repl-connection-default`. * Added support for pretty-printing in the REPL buffer. * Added a check for the presence of an existing `*nrepl*` buffer before creating a new one with `nrepl-jack-in` or `nrepl`. * `M-.` learned about namespaces. * Added new customization variable `nrepl-popup-stacktraces-in-repl`. * Added some convenience keybindings to `clojure-mode` - `nrepl-jack-in` is now bound to C-c M-j and `nrepl` is bound to C-c M-c. * Added `nrepl-hide-special-buffers` setting to control the display of special buffers like `*nrepl-server*` and `*nrepl-connection*`. * Apply ANSI color codes to output sent to nrepl buffers. * Add a connection browser `nrepl-connection-browser` to allow control of multiple connections. * Add macroexpand key bindings to `nrepl-mode-map`. * Don't suppress namespaces in macroexpansion. * Add explicit require of expected namespaces in the repl buffer. * Add command `nrepl-pprint-eval-last-expression`. * Add an event buffer for debugging. * Allow connections without repl buffers. * Add hook `nrepl-file-loaded-hook` which runs on load-file completion. * Expand ido-completion to include "used" variables in addition to "interned" variables. ### Bugs fixed * More accurate matching of filenames in stacktraces. * Fix #290 - Macroexpand buffer truncates long expansions ## 0.1.6 / 2013-01-29 ### New features * Ported SLIME macroexpansion mode (see README for full documentation) * Updated macroexpansion to use pprint with code-dispatch * Eldoc argument highlighting * Simplify popup buffer quit/restore using `quit-window'. * Add nrepl-disconnected-hook and disable nrepl when disconnected. * Get key bindings documentation into the minor mode descriptions (Ivan Necas) * made the TAB command in the nrepl-mode buffers configurable (Bozhidar Batsov) * Added convenience function to report the version of nREPL in use. (fogus) * Shift-Home and Shift-Ctrl-a in repl, which select just the user input when on the input line. (Ivan Kozik) ### Bugs fixed * Emit server log output at bottom of `*nrepl-server*` buffer. (Brian Rowe) * Reset nrepl-buffer-ns on nrepl-restart. Fixes issue #187. * Implement nrepl-mode as a derived mode. (Bozhidar Batsov) * fix #194 - stacktrace buffer was not respecting nrepl-popup-stacktraces (Bozhidar Batsov) * Fix message formatting for results containing "%" (fixes issue #195). * Fix NPE in nrepl-jump (issue #124). (cola-zero) * Fix nrepl to work with fish shell (issue #192). (Dario Bertini) * Adjusted the javadoc keybinding and mentioned it in the README. (Bozhidar Batsov) * Fix issue #163 - exclude ns from nrepl-load-file. * Ignore "killed" and "hangup" events in sentinel (Chris Bilson) * Clear the correct region when replacing the input line. (Ivan Kozik) * Fix issue #146. Include "@" in nrepl-input-complete-p. * Handle stdout messages that arrive after status "done" ## 0.1.5 / 2012-10-22 ### New features * Support for describe op to determine which server ops are available at startup * Support for the following server ops (if available): load-file, complete, and javadoc (available in ritz) * Added nrepl-host and nrepl-port custom variables M-x nrepl default hostname/port * Ported over the following repl buffer functions from slime: History regexp filtering - M-s nrepl-next-matching-input, M-r nrepl-previous-matching-input C-c C-u nrepl-kill-input C-c C-n nrepl-next-prompt/C-c C-p nrepl-previous-prompt * Added nrepl-quit and nrepl-restart commands * Added menus for nrepl-mode and nrepl-interaction-mode * Add nrepl-eval-print-last-expression ### Bugs fixed * Ensure nrepl-eval-sync waits for :done when response is chunked ## 0.1.4 / 2012-09-18 ### New features * Improvements and simplifications for completion (Tassilo Horn) * Documentation additions and fixes (Ryan Fowler, Nikita Beloglazov, Bozhidar Batsov, Juha Syrjl, Philipp Meier) * Make completion back-end and error handler configurable (Hugo Duncan) * Accept host as well as port on connect (Ken Restivo) * Enable nrepl-interaction-mode in clojurescript-mode (Nelson Morris) * Emit stdout from interactive evaluations into the repl buffer ### Bugs fixed * Fix paredit .. don't make clojure-mode-map parent of nrepl-interaction-mode-map (Tassilo Horn) * Fixes for ECB interop (Matthew Willson) * Namespace qualify tooling calls (Justin Kramer) * Eldoc fixes (Jack Moffitt) * Fix path quoting in load file for Windows (Philipp Meier) * Fix nREPL / Emacs error "Unable to resolve symbol: if-let" ## 0.1.3 / 2012-08-19 ### New features * eldoc support for displaying arglists in the minibuffer (Stefan Kamphausen) * persistent repl history (Stefan Kamphausen) * fix for jumbled stacktraces (Ryan Fowler) * add a doc keybinding for the repl buffer (Ken Restivo) * plumbing to support ac-nrepl [https://github.com/purcell/ac-nrepl] (Steve Purcell) * stdin support (which also provides support for debug-repl [https://github.com/GeorgeJahad/debug-repl] and limit-break [https://github.com/technomancy/limit-break]) ## 0.1.2 / 2012-07-24 ### New features * convert nrepl-interaction-mode into a major mode * display stacktrace on eval-error * change lein command to `lein` * add fn to eval current buffer's ns * handle filter messages spanning multiple chunks of output * Let nrepl-jack-in accept project dir when given a prefix arg. * C-c C-b nrepl-interrupt * client session management * added words of inspiration + version at startup * Add M-n and M-p to nrepl-mode-map. * Implement M-.: nrepl-jump-to-def. * Implement basic completion. * Implement nrepl-doc. * Prevent M-p at top of history from pushing position one step further. * M-n after end of history should blank out input. * Add M-n and M-p to nrepl-mode-map. * Implement M-.: nrepl-jump-to-def. ## 0.1.1 / 2012-07-11 * Initial version