Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Update.

  • Loading branch information...
commit c202334849ab7435328ed30c6709eb2f375d2e6e 1 parent 72ca2cd
@Raynes authored
Showing with 26,952 additions and 7,779 deletions.
  1. +8 −0 auto-save-list/.saves-78332-penumbra.local~
  2. 0  auto-save-list/.saves-9114-penumbra.local~
  3. +0 −1  elpa/ac-nrepl-20130110.1018/ac-nrepl-pkg.el
  4. +4 −11 elpa/{ac-nrepl-20130110.1018 → ac-nrepl-20131031.346}/ac-nrepl-autoloads.el
  5. +1 −0  elpa/ac-nrepl-20131031.346/ac-nrepl-pkg.el
  6. +61 −62 elpa/{ac-nrepl-20130110.1018 → ac-nrepl-20131031.346}/ac-nrepl.el
  7. +0 −1  elpa/adoc-mode-20130118.2207/adoc-mode-pkg.el
  8. +2 −2 elpa/{adoc-mode-20130118.2207 → adoc-mode-20130917.0}/adoc-mode-autoloads.el
  9. +1 −0  elpa/adoc-mode-20130917.0/adoc-mode-pkg.el
  10. +4 −3 elpa/{adoc-mode-20130118.2207 → adoc-mode-20130917.0}/adoc-mode.el
  11. +241 −72 elpa/archives/gnu/archive-contents
  12. +1 −1  elpa/archives/marmalade/archive-contents
  13. +1 −2,606 elpa/archives/melpa/archive-contents
  14. +0 −3  elpa/auto-complete-20130209.651/auto-complete-pkg.el
  15. +2 −2 elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/auto-complete-autoloads.el
  16. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/auto-complete-config.el
  17. +2 −0  elpa/auto-complete-20131128.233/auto-complete-pkg.el
  18. +21 −11 elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/auto-complete.el
  19. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/ada-mode
  20. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/c++-mode
  21. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/c-mode
  22. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/caml-mode
  23. +105 −0 elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/clojure-mode
  24. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/clojurescript-mode
  25. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/coq-mode
  26. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/css-mode
  27. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/erlang-mode
  28. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/go-mode
  29. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/haskell-mode
  30. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/java-mode
  31. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/javascript-mode
  32. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/lua-mode
  33. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/php-mode
  34. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/python-mode
  35. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/ruby-mode
  36. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/scheme-mode
  37. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/sclang-mode
  38. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/sh-mode
  39. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/tcl-mode
  40. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/ts-mode
  41. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/tuareg-mode
  42. 0  elpa/{auto-complete-20130209.651 → auto-complete-20131128.233}/dict/verilog-mode
  43. +86 −0 elpa/cider-20131221.1231/cider-autoloads.el
  44. +172 −0 elpa/cider-20131221.1231/cider-client.el
  45. +119 −0 elpa/cider-20131221.1231/cider-eldoc.el
  46. +1,211 −0 elpa/cider-20131221.1231/cider-interaction.el
  47. +165 −0 elpa/cider-20131221.1231/cider-macroexpansion.el
  48. +123 −0 elpa/cider-20131221.1231/cider-mode.el
  49. +5 −0 elpa/cider-20131221.1231/cider-pkg.el
  50. +1,064 −0 elpa/cider-20131221.1231/cider-repl.el
  51. +155 −0 elpa/cider-20131221.1231/cider-selector.el
  52. +57 −0 elpa/cider-20131221.1231/cider-util.el
  53. +78 −0 elpa/cider-20131221.1231/cider-version.el
  54. +111 −0 elpa/cider-20131221.1231/cider.el
  55. +892 −0 elpa/cider-20131221.1231/nrepl-client.el
  56. +0 −51 elpa/clojure-mode-1.11.2/clojure-mode-autoloads.el
  57. +0 −1  elpa/clojure-mode-1.11.2/clojure-mode-pkg.el
  58. +0 −949 elpa/clojure-mode-1.11.2/clojure-mode.el
  59. +0 −51 elpa/clojure-mode-1.11.4/clojure-mode-autoloads.el
  60. +0 −1  elpa/clojure-mode-1.11.4/clojure-mode-pkg.el
  61. +0 −963 elpa/clojure-mode-1.11.4/clojure-mode.el
  62. +0 −51 elpa/clojure-mode-1.11.5/clojure-mode-autoloads.el
  63. +0 −1  elpa/clojure-mode-1.11.5/clojure-mode-pkg.el
  64. +0 −963 elpa/clojure-mode-1.11.5/clojure-mode.el
  65. +0 −46 elpa/clojure-mode-1.7.1/clojure-mode-autoloads.el
  66. +0 −13 elpa/clojure-mode-1.7.1/clojure-mode-autoloads.el~
  67. +0 −1  elpa/clojure-mode-1.7.1/clojure-mode-pkg.el
  68. +0 −733 elpa/clojure-mode-1.7.1/clojure-mode.el
  69. +0 −51 elpa/clojure-mode-1.9.1/clojure-mode-autoloads.el
  70. +0 −1  elpa/clojure-mode-1.9.1/clojure-mode-pkg.el
  71. +0 −920 elpa/clojure-mode-1.9.1/clojure-mode.el
  72. +0 −1  elpa/clojure-mode-2.0.0/clojure-mode-pkg.el
  73. +5 −5 elpa/{clojure-mode-2.0.0 → clojure-mode-20131227.1044}/clojure-mode-autoloads.el
  74. +1 −0  elpa/clojure-mode-20131227.1044/clojure-mode-pkg.el
  75. +352 −142 elpa/{clojure-mode-2.0.0 → clojure-mode-20131227.1044}/clojure-mode.el
  76. +0 −1  elpa/clojure-test-mode-2.0.0/clojure-test-mode-pkg.el
  77. +12 −6 elpa/{clojure-test-mode-2.0.0 → clojure-test-mode-20131227.805}/clojure-test-mode-autoloads.el
  78. +1 −0  elpa/clojure-test-mode-20131227.805/clojure-test-mode-pkg.el
  79. +161 −53 elpa/{clojure-test-mode-2.0.0 → clojure-test-mode-20131227.805}/clojure-test-mode.el
  80. +18 −0 elpa/dash-20131223.933/dash-autoloads.el
  81. +1 −0  elpa/dash-20131223.933/dash-pkg.el
  82. +1,351 −0 elpa/dash-20131223.933/dash.el
  83. +18 −0 elpa/epl-20131101.405/epl-autoloads.el
  84. +1 −0  elpa/epl-20131101.405/epl-pkg.el
  85. +553 −0 elpa/epl-20131101.405/epl.el
  86. +18 −0 elpa/evil-20131227.724/dir
  87. +27 −0 elpa/evil-20131227.724/evil-autoloads.el
  88. +3,841 −0 elpa/evil-20131227.724/evil-commands.el
  89. +3,354 −0 elpa/evil-20131227.724/evil-common.el
  90. +1,142 −0 elpa/evil-20131227.724/evil-core.el
  91. +1,729 −0 elpa/evil-20131227.724/evil-digraphs.el
  92. +1,112 −0 elpa/evil-20131227.724/evil-ex.el
  93. +425 −0 elpa/evil-20131227.724/evil-integration.el
  94. +752 −0 elpa/evil-20131227.724/evil-macros.el
  95. +506 −0 elpa/evil-20131227.724/evil-maps.el
  96. +3 −0  elpa/evil-20131227.724/evil-pkg.el
  97. +615 −0 elpa/evil-20131227.724/evil-repeat.el
  98. +1,187 −0 elpa/evil-20131227.724/evil-search.el
  99. +871 −0 elpa/evil-20131227.724/evil-states.el
  100. +375 −0 elpa/evil-20131227.724/evil-types.el
  101. +1,535 −0 elpa/evil-20131227.724/evil-vars.el
  102. +123 −0 elpa/evil-20131227.724/evil.el
  103. +1,224 −0 elpa/evil-20131227.724/evil.info
  104. +482 −0 elpa/evil-20131227.724/fdl-1.3.info
  105. 0  elpa/evil-20131227.724/macros.info
  106. 0  elpa/evil-20131227.724/version.info
  107. +18 −0 elpa/evil-paredit-20130408.47/evil-paredit-autoloads.el
  108. +1 −0  elpa/evil-paredit-20130408.47/evil-paredit-pkg.el
  109. +151 −0 elpa/evil-paredit-20130408.47/evil-paredit.el
  110. +52 −0 elpa/exec-path-from-shell-20131205.1210/exec-path-from-shell-autoloads.el
  111. +1 −0  elpa/exec-path-from-shell-20131205.1210/exec-path-from-shell-pkg.el
  112. +194 −0 elpa/exec-path-from-shell-20131205.1210/exec-path-from-shell.el
  113. +47 −0 elpa/flymake-0.4.16/flymake-autoloads.el
  114. +1 −0  elpa/flymake-0.4.16/flymake-pkg.el
Sorry, we could not display the entire diff because too many files (696) changed.
View
8 auto-save-list/.saves-78332-penumbra.local~
@@ -0,0 +1,8 @@
+/Users/Raynes/code/cegdown/project.clj
+/Users/Raynes/code/cegdown/#project.clj#
+/Users/Raynes/code/treepath/src/treepath/core.clj
+/Users/Raynes/code/treepath/src/treepath/#core.clj#
+/Users/Raynes/code/treepath/test/treepath/core_test.clj
+/Users/Raynes/code/treepath/test/treepath/#core_test.clj#
+/Users/Raynes/code/treepath/README.md
+/Users/Raynes/code/treepath/#README.md#
View
0  auto-save-list/.saves-9114-penumbra.local~
No changes.
View
1  elpa/ac-nrepl-20130110.1018/ac-nrepl-pkg.el
@@ -1 +0,0 @@
-(define-package "ac-nrepl" "20130110.1018" "auto-complete sources for Clojure using nrepl completions [source: github]" (quote ((nrepl "0.1") (auto-complete "1.4"))))
View
15 elpa/ac-nrepl-20130110.1018/ac-nrepl-autoloads.el → elpa/ac-nrepl-20131031.346/ac-nrepl-autoloads.el
@@ -3,17 +3,10 @@
;;; Code:
-;;;### (autoloads (ac-nrepl-popup-doc ac-nrepl-setup ac-nrepl-clear-class-cache)
-;;;;;; "ac-nrepl" "ac-nrepl.el" (20786 27521 0 0))
+;;;### (autoloads (ac-nrepl-popup-doc ac-nrepl-setup) "ac-nrepl"
+;;;;;; "ac-nrepl.el" (21183 4559 0 0))
;;; Generated autoloads from ac-nrepl.el
-(autoload 'ac-nrepl-clear-class-cache "ac-nrepl" "\
-Clear the class cache to prevent stale results.
-
-\(fn)" nil nil)
-
-(add-hook 'nrepl-connected-hook 'ac-nrepl-refresh-class-cache t)
-
(defface ac-nrepl-candidate-face '((t (:inherit ac-candidate-face))) "\
Face for nrepl candidates." :group (quote auto-complete))
@@ -35,7 +28,7 @@ Auto-complete source for nrepl ns-specific class completion.")
(defvar ac-source-nrepl-all-classes (append '((candidates . ac-nrepl-candidates-all-classes) (symbol . "c")) ac-nrepl-source-defaults) "\
Auto-complete source for nrepl all class completion.")
-(defvar ac-source-nrepl-java-methods (append '((candidates . ac-nrepl-candidates-java-methods) (symbol . "m") (action . ac-nrepl-delete-java-class-hint)) ac-nrepl-source-defaults) "\
+(defvar ac-source-nrepl-java-methods (append '((candidates . ac-nrepl-candidates-java-methods) (symbol . "m")) ac-nrepl-source-defaults) "\
Auto-complete source for nrepl java method completion.")
(defvar ac-source-nrepl-static-methods (append '((candidates . ac-nrepl-candidates-static-methods) (symbol . "s")) ac-nrepl-source-defaults) "\
@@ -54,7 +47,7 @@ A popup alternative to `nrepl-doc'.
;;;***
-;;;### (autoloads nil nil ("ac-nrepl-pkg.el") (20786 27521 759624
+;;;### (autoloads nil nil ("ac-nrepl-pkg.el") (21183 4559 829954
;;;;;; 0))
;;;***
View
1  elpa/ac-nrepl-20131031.346/ac-nrepl-pkg.el
@@ -0,0 +1 @@
+(define-package "ac-nrepl" "20131031.346" "auto-complete sources for Clojure using nrepl completions" (quote ((cider "0.1") (auto-complete "1.4"))))
View
123 elpa/ac-nrepl-20130110.1018/ac-nrepl.el → elpa/ac-nrepl-20131031.346/ac-nrepl.el
@@ -6,8 +6,9 @@
;; Sam Aaron <samaaron@gmail.com>
;; URL: https://github.com/purcell/ac-nrepl
;; Keywords: languages, clojure, nrepl
-;; Version: DEV
-;; Package-Requires: ((nrepl "0.1") (auto-complete "1.4"))
+;; Version: 20131031.346
+;; X-Original-Version: DEV
+;; Package-Requires: ((cider "0.1") (auto-complete "1.4"))
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU General Public License
@@ -36,10 +37,10 @@
;;; Usage:
;; (require 'ac-nrepl)
-;; (add-hook 'nrepl-mode-hook 'ac-nrepl-setup)
-;; (add-hook 'nrepl-interaction-mode-hook 'ac-nrepl-setup)
+;; (add-hook 'cider-repl-mode-hook 'ac-nrepl-setup)
+;; (add-hook 'cider-mode-hook 'ac-nrepl-setup)
;; (eval-after-load "auto-complete"
-;; '(add-to-list 'ac-modes 'nrepl-mode))
+;; '(add-to-list 'ac-modes 'cider-repl-mode))
;; If you want to trigger auto-complete using TAB in nrepl buffers, you may
;; want to use auto-complete in your `completion-at-point-functions':
@@ -48,16 +49,18 @@
;; (setq completion-at-point-functions '(auto-complete)))
;; (add-hook 'auto-complete-mode-hook 'set-auto-complete-as-completion-at-point-function)
;;
-;; (add-hook 'nrepl-mode-hook 'set-auto-complete-as-completion-at-point-function)
-;; (add-hook 'nrepl-interaction-mode-hook 'set-auto-complete-as-completion-at-point-function)
+;; (add-hook 'cider-repl-mode-hook 'set-auto-complete-as-completion-at-point-function)
+;; (add-hook 'cider-mode-hook 'set-auto-complete-as-completion-at-point-function)
;;
;; You might consider using ac-nrepl's popup documentation in place of `nrepl-doc':
;;
-;; (define-key nrepl-interaction-mode-map (kbd "C-c C-d") 'ac-nrepl-popup-doc)
+;; (eval-after-load 'cider
+;; '(define-key cider-mode-map (kbd "C-c C-d") 'ac-nrepl-popup-doc))
;;; Code:
-(require 'nrepl)
+(require 'nrepl-client)
+(require 'cider-interaction)
(require 'auto-complete)
(defun ac-nrepl-available-p ()
@@ -69,7 +72,7 @@
(defun ac-nrepl-sync-eval (clj)
"Synchronously evaluate CLJ.
Result is a plist, as returned from `nrepl-send-string-sync'."
- (nrepl-send-string-sync clj (nrepl-current-ns) (nrepl-current-tooling-session)))
+ (nrepl-send-string-sync clj (cider-current-ns) (nrepl-current-tooling-session)))
(defun ac-nrepl-candidates* (clj)
"Return completion candidates produced by evaluating CLJ."
@@ -114,32 +117,25 @@ Result is a plist, as returned from `nrepl-send-string-sync'."
(ac-nrepl-candidates*
(ac-nrepl-filtered-clj "(complete.core/ns-classes *ns*)")))
-(defun ac-nrepl-fetch-all-classes ()
- "Return all class candidates."
- (ac-nrepl-candidates*
- (ac-nrepl-unfiltered-clj "(concat @complete.core/nested-classes
- @complete.core/top-level-classes)")))
-
(defvar ac-nrepl-all-classes-cache nil
"Cached list of all classes loaded in the JVM backend.")
-;;;###autoload
-(defun ac-nrepl-clear-class-cache ()
- "Clear the class cache to prevent stale results."
- (setq ac-nrepl-all-classes-cache nil))
-
-(defun ac-nrepl-cache-all-classes ()
- "Return a cached list of all class names loaded in the JVM backend."
- (setq ac-nrepl-all-classes-cache (ac-nrepl-fetch-all-classes)))
-
(defun ac-nrepl-refresh-class-cache ()
- "Refresh class cache"
- (ac-nrepl-clear-class-cache)
- (message "Caching JVM class names...")
- (ac-nrepl-cache-all-classes)
- (message ""))
+ "Clear `ac-nrepl-all-classes-cache' and then refill it asynchronously."
+ (setq ac-nrepl-all-classes-cache nil)
+ (nrepl-send-string
+ (concat "(require 'complete.core)"
+ (ac-nrepl-unfiltered-clj "(concat @complete.core/nested-classes
+ @complete.core/top-level-classes)"))
+ (nrepl-make-response-handler
+ (nrepl-current-connection-buffer)
+ (lambda (buffer value)
+ (setq ac-nrepl-all-classes-cache (car (read-from-string value))))
+ nil nil nil)
+ (cider-current-ns)
+ (nrepl-current-tooling-session)))
+
-;;;###autoload
(add-hook 'nrepl-connected-hook 'ac-nrepl-refresh-class-cache t)
(defun ac-nrepl-candidates-all-classes ()
@@ -149,12 +145,17 @@ Result is a plist, as returned from `nrepl-send-string-sync'."
(defun ac-nrepl-candidates-java-methods ()
"Return java method candidates."
- (ac-nrepl-candidates*
- (ac-nrepl-filtered-clj
- "(for [class (vals (ns-imports *ns*))
- method (.getMethods class)
- :when (not (java.lang.reflect.Modifier/isStatic (.getModifiers method)))]
- (str \".\" (.getName method) \" [\"(.getName class)\"]\"))")))
+ (mapcar (lambda (hit)
+ (let* ((parts (split-string hit "#"))
+ (meth (nth 0 parts))
+ (classname (nth 1 parts)))
+ (propertize meth 'summary classname)))
+ (ac-nrepl-candidates*
+ (ac-nrepl-filtered-clj
+ "(for [class (vals (ns-imports *ns*))
+ method (.getMethods class)
+ :when (not (java.lang.reflect.Modifier/isStatic (.getModifiers method)))]
+ (str \".\" (.getName method) \"#\" (.getName class)))"))))
(defun ac-nrepl-candidates-static-methods ()
"Return static method candidates."
@@ -172,18 +173,21 @@ Result is a plist, as returned from `nrepl-send-string-sync'."
(defun ac-nrepl-documentation (symbol)
"Return documentation for the given SYMBOL, if available."
- (let ((doc
- (substring-no-properties
- (replace-regexp-in-string
- "\r" ""
- (replace-regexp-in-string
- "^\\( \\|-------------------------\r?\n\\)" ""
- (plist-get (ac-nrepl-sync-eval
- (format "(try (eval '(clojure.repl/doc %s))
- (catch Exception e (println \"\")))" symbol))
- :stdout))))))
- (unless (string-match "\\`[ \t\n]*\\'" doc)
- doc)))
+ (let ((raw-doc (plist-get (ac-nrepl-sync-eval
+ (format "(try (eval '(clojure.repl/doc %s))
+ (catch Exception e nil))"
+ symbol))
+ :stdout)))
+ (when raw-doc
+ (let ((doc
+ (substring-no-properties
+ (replace-regexp-in-string
+ "\r" ""
+ (replace-regexp-in-string
+ "^\\( \\|-------------------------\r?\n\\)" ""
+ raw-doc)))))
+ (unless (string-match "\\`[ \t\n]*\\'" doc)
+ doc)))))
(defun ac-nrepl-symbol-start-pos ()
"Find the starting position of the symbol at point, unless inside a string."
@@ -244,18 +248,11 @@ Result is a plist, as returned from `nrepl-send-string-sync'."
ac-nrepl-source-defaults)
"Auto-complete source for nrepl all class completion.")
-(defun ac-nrepl-delete-java-class-hint ()
- "Remove the java class hint at point."
- (let ((beg (point)))
- (search-backward " [")
- (delete-region beg (point))))
-
;;;###autoload
(defvar ac-source-nrepl-java-methods
(append
'((candidates . ac-nrepl-candidates-java-methods)
- (symbol . "m")
- (action . ac-nrepl-delete-java-class-hint))
+ (symbol . "m"))
ac-nrepl-source-defaults)
"Auto-complete source for nrepl java method completion.")
@@ -283,11 +280,13 @@ This affects only the current buffer."
(defun ac-nrepl-popup-doc ()
"A popup alternative to `nrepl-doc'."
(interactive)
- (popup-tip (ac-nrepl-documentation (symbol-at-point))
- :point (ac-nrepl-symbol-start-pos)
- :around t
- :scroll-bar t
- :margin t))
+ (let ((doc (ac-nrepl-documentation (symbol-at-point))))
+ (when doc
+ (popup-tip doc
+ :point (ac-nrepl-symbol-start-pos)
+ :around t
+ :scroll-bar t
+ :margin t))))
(provide 'ac-nrepl)
View
1  elpa/adoc-mode-20130118.2207/adoc-mode-pkg.el
@@ -1 +0,0 @@
-(define-package "adoc-mode" "20130118.2207" "a major-mode for editing AsciiDoc files in Emacs [source: github]" (quote ((markup-faces "1.0.0"))))
View
4 elpa/adoc-mode-20130118.2207/adoc-mode-autoloads.el → elpa/adoc-mode-20130917.0/adoc-mode-autoloads.el
@@ -3,7 +3,7 @@
;;; Code:
-;;;### (autoloads (adoc-mode) "adoc-mode" "adoc-mode.el" (20775 8390
+;;;### (autoloads (adoc-mode) "adoc-mode" "adoc-mode.el" (21183 4558
;;;;;; 0 0))
;;; Generated autoloads from adoc-mode.el
@@ -15,7 +15,7 @@ Turning on Adoc mode runs the normal hook `adoc-mode-hook'.
;;;***
-;;;### (autoloads nil nil ("adoc-mode-pkg.el") (20775 8390 975746
+;;;### (autoloads nil nil ("adoc-mode-pkg.el") (21183 4558 459334
;;;;;; 0))
;;;***
View
1  elpa/adoc-mode-20130917.0/adoc-mode-pkg.el
@@ -0,0 +1 @@
+(define-package "adoc-mode" "20130917.0" "a major-mode for editing AsciiDoc files in Emacs" (quote ((markup-faces "1.0.0"))))
View
7 elpa/adoc-mode-20130118.2207/adoc-mode.el → elpa/adoc-mode-20130917.0/adoc-mode.el
@@ -5,7 +5,8 @@
;; Author: Florian Kaufmann <sensorflo@gmail.com>
;; URL: https://github.com/sensorflo/adoc-mode/wiki
;; Created: 2009
-;; Version: 0.6.2
+;; Version: 20130917.0
+;; X-Original-Version: 0.6.2
;; Package-Requires: ((markup-faces "1.0.0"))
;; Keywords: wp AsciiDoc
;;
@@ -2242,8 +2243,8 @@ new customization demands."
:help ,adoc-help-ruler-line])
("Text formatting - replacements"
["Copyright: (C) \u2192 \u00A9" tempo-template-adoc-copyright]
- ["Trademark: (TM) \u2192 \u00AE" tempo-template-adoc-trademark]
- ["Registered trademark: (R) \u2192 \u2122" tempo-template-adoc-registered-trademark]
+ ["Trademark: (TM) \u2192 \u2122" tempo-template-adoc-trademark]
+ ["Registered trademark: (R) \u2192 \u00AE" tempo-template-adoc-registered-trademark]
["Dash: -- \u2192 \u2014" tempo-template-adoc-dash]
["Ellipsis: ... \u2192 \u2026" tempo-template-adoc-ellipsis]
["Right arrow: -> \u2192 \u2192" tempo-template-adoc-right-arrow]
View
313 elpa/archives/gnu/archive-contents
@@ -1,31 +1,58 @@
(1
(ack .
- [(0 9)
- nil "Interface to ack, a source code search tool" tar])
+ [(1 3)
+ nil "Interface to ack-like source code search tools" tar
+ ((:keywords "tools" "processes" "convenience")
+ (:url . "https://github.com/leoliu/ack-el"))])
+ (ada-mode .
+ [(5 0)
+ ((wisi
+ (1 0)))
+ "major-mode for editing Ada sources" tar
+ ((:url . "http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html"))])
(adaptive-wrap .
- [(0 2)
- nil "Smart line-wrapping with wrap-prefix" single])
+ [(0 5)
+ nil "Smart line-wrapping with wrap-prefix" single
+ ((:url . "http://elpa.gnu.org/packages/adaptive-wrap.html")
+ (:keywords))])
+ (adjust-parens .
+ [(3 0)
+ nil "Indent and dedent Lisp code, automatically adjust close parens" tar
+ ((:url . "http://elpa.gnu.org/packages/adjust-parens.html"))])
(all .
[(1 0)
- nil "Edit all lines matching a given regexp" single])
+ nil "Edit all lines matching a given regexp" single
+ ((:url . "http://elpa.gnu.org/packages/all.html")
+ (:keywords "matching"))])
(auctex .
- [(11 86)
- nil "Integrated environment for *TeX*" tar])
+ [(11 87 2)
+ nil "Integrated environment for *TeX*" tar
+ ((:url . "http://www.gnu.org/software/auctex/"))])
(cl-lib .
- [(0 2)
- nil "Properly prefixed CL functions and macros" single])
+ [(0 3)
+ nil "Properly prefixed CL functions and macros" single
+ ((:url . "http://elpa.gnu.org/packages/cl-lib.html")
+ (:keywords))])
(coffee-mode .
- [(0 4 1)
- nil "Major mode for CoffeeScript files" tar])
+ [(0 4 1 1)
+ nil "Major mode for CoffeeScript files" single
+ ((:url . "http://github.com/defunkt/coffee-mode")
+ (:keywords "CoffeeScript major mode"))])
(company .
- [(0 5)
- nil "Flexible inline text and code completion" tar])
+ [(0 6 12)
+ nil "Modular in-buffer completion framework" tar
+ ((:keywords "abbrev" "convenience" "matching")
+ (:url . "http://company-mode.github.io/"))])
(csv-mode .
- [(1 1)
- nil "Major mode for editing comma/char separated values" single])
+ [(1 2)
+ nil "Major mode for editing comma/char separated values" single
+ ((:url . "http://centaur.maths.qmul.ac.uk/Emacs/")
+ (:keywords "convenience"))])
(debbugs .
- [(0 4)
- nil "SOAP library to access debbugs servers" tar])
+ [(0 5)
+ nil "SOAP library to access debbugs servers" tar
+ ((:keywords "comm" "hypermedia")
+ (:url . "http://elpa.gnu.org/packages/debbugs.html"))])
(dict-tree .
[(0 12 8)
((trie
@@ -34,135 +61,277 @@
(0 1 1))
(heap
(0 3)))
- "Dictionary data structure" single])
+ "Dictionary data structure" single
+ ((:url . "http://www.dr-qubit.org/emacs.php")
+ (:keywords "extensions" "matching" "data structures"))])
+ (diff-hl .
+ [(1 5 1)
+ ((cl-lib
+ (0 2)))
+ "Highlight uncommitted changes" tar
+ ((:keywords "vc" "diff")
+ (:url . "https://github.com/dgutov/diff-hl"))])
+ (dismal .
+ [(1 5)
+ ((cl-lib
+ (0)))
+ "Dis Mode Ain't Lotus: Spreadsheet program Emacs" tar
+ ((:url . "http://elpa.gnu.org/packages/dismal.html"))])
(djvu .
[(0 5)
- nil "Edit and view Djvu files via djvused" single])
+ nil "Edit and view Djvu files via djvused" single
+ ((:url . "http://elpa.gnu.org/packages/djvu.html")
+ (:keywords "files" "wp"))])
(docbook .
[(0 1)
- nil "Info-like viewer for DocBook" single])
+ nil "Info-like viewer for DocBook" single
+ ((:url . "http://elpa.gnu.org/packages/docbook.html")
+ (:keywords "docs" "help"))])
(ediprolog .
[(1 0)
- nil "Emacs Does Interactive Prolog" single])
+ nil "Emacs Does Interactive Prolog" single
+ ((:url . "http://elpa.gnu.org/packages/ediprolog.html")
+ (:keywords "languages" "processes"))])
(eldoc-eval .
[(0 1)
- nil "Enable eldoc support when minibuffer is in use." single])
+ nil "Enable eldoc support when minibuffer is in use." single
+ ((:url . "http://elpa.gnu.org/packages/eldoc-eval.html")
+ (:keywords))])
+ (enwc .
+ [(1 0)
+ nil "The Emacs Network Client" tar
+ ((:keywords "enwc" "network" "wicd" "manager" "nm")
+ (:url . "http://elpa.gnu.org/packages/enwc.html"))])
(epoch-view .
[(0 0 1)
- nil "Minor mode to visualize epoch timestamps" single])
+ nil "Minor mode to visualize epoch timestamps" single
+ ((:url . "http://elpa.gnu.org/packages/epoch-view.html")
+ (:keywords "data" "timestamp" "epoch" "unix"))])
(f90-interface-browser .
[(1 1)
- nil "Parse and browse f90 interfaces" single])
+ nil "Parse and browse f90 interfaces" single
+ ((:url . "http://github.com/wence-/f90-iface/")
+ (:keywords))])
+ (flylisp .
+ [(0 2)
+ nil "Color unbalanced parentheses and parentheses inconsistent with indentation" single
+ ((:url . "http://elpa.gnu.org/packages/flylisp.html")
+ (:keywords))])
(ggtags .
- [(0 6)
- nil "GNU Global source code tagging system" single])
+ [(0 7 8)
+ ((emacs
+ (24)))
+ "emacs frontend to GNU Global source code tagging system" single
+ ((:url . "https://github.com/leoliu/ggtags")
+ (:keywords "tools" "convenience"))])
(heap .
[(0 3)
- nil "Heap (a.k.a. priority queue) data structure" single])
+ nil "Heap (a.k.a. priority queue) data structure" single
+ ((:url . "http://www.dr-qubit.org/emacs.php")
+ (:keywords "extensions" "data structures" "heap" "priority queue"))])
(ioccur .
[(2 4)
- nil "Incremental occur" single])
+ nil "Incremental occur" single
+ ((:url . "http://elpa.gnu.org/packages/ioccur.html")
+ (:keywords))])
(jgraph-mode .
[(1 0)
- nil "Major mode for Jgraph files" single])
+ nil "Major mode for Jgraph files" single
+ ((:url . "http://elpa.gnu.org/packages/jgraph-mode.html")
+ (:keywords "tex" "wp"))])
(js2-mode .
- [(20130219)
+ [(20131106)
((emacs
(24 1)))
- "Improved JavaScript editing mode" single])
+ "Improved JavaScript editing mode" tar
+ ((:keywords "languages" "javascript")
+ (:url . "https://github.com/mooz/js2-mode/"))])
+ (jumpc .
+ [(3 0)
+ nil "jump to previous insertion points" single
+ ((:url . "http://elpa.gnu.org/packages/jumpc.html")
+ (:keywords))])
(lex .
- [(1 0)
- nil "Lexical analyser construction" single])
+ [(1 1)
+ nil "Lexical analyser construction" tar
+ ((:url . "http://elpa.gnu.org/packages/lex.html"))])
(lmc .
- [(1 0)
- nil "Little Man Computer in Elisp" single])
+ [(1 2)
+ nil "Little Man Computer in Elisp" single
+ ((:url . "http://elpa.gnu.org/packages/lmc.html")
+ (:keywords))])
(load-dir .
[(0 0 3)
- nil "Load all Emacs Lisp files in a given directory" single])
+ nil "Load all Emacs Lisp files in a given directory" single
+ ((:url . "http://elpa.gnu.org/packages/load-dir.html")
+ (:keywords "lisp" "files" "convenience"))])
(markchars .
[(0 2 0)
- nil "Mark chars fitting certain characteristics" single])
+ nil "Mark chars fitting certain characteristics" single
+ ((:url . "http://elpa.gnu.org/packages/markchars.html")
+ (:keywords))])
(memory-usage .
[(0 2)
- nil "Analyze the memory usage of Emacs in various ways" single])
+ nil "Analyze the memory usage of Emacs in various ways" single
+ ((:url . "http://elpa.gnu.org/packages/memory-usage.html")
+ (:keywords "maint"))])
(minimap .
[(1 0)
- nil "Sidebar showing a \"mini-map\" of a buffer" single])
+ nil "Sidebar showing a \"mini-map\" of a buffer" single
+ ((:url . "http://elpa.gnu.org/packages/minimap.html")
+ (:keywords))])
(muse .
[(3 20)
- nil "Authoring and publishing tool" tar])
+ nil "Authoring and publishing tool for Emacs" tar
+ ((:keywords "hypermedia")
+ (:url . "http://mwolson.org/projects/EmacsMuse.html"))])
(nhexl-mode .
[(0 1)
- nil "Minor mode to edit files via hex-dump format" single])
+ nil "Minor mode to edit files via hex-dump format" single
+ ((:url . "http://elpa.gnu.org/packages/nhexl-mode.html")
+ (:keywords "data"))])
(nlinum .
- [(1 1)
- nil "Show line numbers in the margin" single])
+ [(1 2)
+ nil "Show line numbers in the margin" single
+ ((:url . "http://elpa.gnu.org/packages/nlinum.html")
+ (:keywords "convenience"))])
(notes-mode .
[(1 30)
- nil "Organizing on-line note-taking" tar])
+ nil "Indexing system for on-line note-taking" tar
+ ((:url . "http://elpa.gnu.org/packages/notes-mode.html"))])
(num3-mode .
[(1 1)
- nil "highlight groups of digits in long numbers" single])
+ nil "highlight groups of digits in long numbers" single
+ ((:url . "http://elpa.gnu.org/packages/num3-mode.html")
+ (:keywords))])
(oauth2 .
- [(0 8)
- nil "OAuth 2.0 Authorization Protocol" single])
+ [(0 9)
+ nil "OAuth 2.0 Authorization Protocol" single
+ ((:url . "http://elpa.gnu.org/packages/oauth2.html")
+ (:keywords "comm"))])
+ (omn-mode .
+ [(1 0)
+ nil "Support for OWL Manchester Notation" single
+ ((:url . "http://elpa.gnu.org/packages/omn-mode.html")
+ (:keywords))])
(org .
- [(20130218)
- nil "Outline-based notes management and organizer" tar])
+ [(20140107)
+ nil "Outline-based notes management and organizer" tar nil])
(quarter-plane .
[(0 1)
- nil "Minor mode for quarter-plane style editing" single])
+ nil "Minor mode for quarter-plane style editing" single
+ ((:url . "http://elpa.gnu.org/packages/quarter-plane.html")
+ (:keywords "convenience wp"))])
(queue .
[(0 1)
- nil "Queue data structure" single])
+ nil "Queue data structure" single
+ ((:url . "http://www.dr-qubit.org/emacs.php")
+ (:keywords "extensions" "data structures" "queue"))])
(rainbow-mode .
- [(0 6)
- nil "Colorize color names in buffers" single])
+ [(0 9)
+ nil "Colorize color names in buffers" single
+ ((:url . "http://elpa.gnu.org/packages/rainbow-mode.html")
+ (:keywords "faces"))])
(register-list .
[(0 1)
- nil "Interactively list/edit registers" single])
+ nil "Interactively list/edit registers" single
+ ((:url . "http://elpa.gnu.org/packages/register-list.html")
+ (:keywords "register"))])
(shen-mode .
[(0 1)
- nil "Utilities for working with Shen code." tar])
+ nil "A major mode for editing shen source code" tar
+ ((:keywords "languages" "shen")
+ (:url . "http://elpa.gnu.org/packages/shen-mode.html"))])
(sisu-mode .
[(3 0 3)
- nil "Major mode for SiSU markup text" single])
+ nil "Major mode for SiSU markup text" single
+ ((:url . "http://elpa.gnu.org/packages/sisu-mode.html")
+ (:keywords "text" "processes" "tools"))])
(smart-operator .
[(4 0)
- nil "Insert operators with surrounding spaces smartly" single])
+ nil "Insert operators with surrounding spaces smartly" single
+ ((:url . "http://xwl.appspot.com/ref/smart-operator.el")
+ (:keywords))])
(sml-mode .
- [(6 3)
- nil "Major mode for editing (Standard) ML" single])
+ [(6 4)
+ nil "Major mode for editing (Standard) ML" single
+ ((:url . "http://elpa.gnu.org/packages/sml-mode.html")
+ (:keywords "SML"))])
+ (sokoban .
+ [(1 0 4)
+ nil "Sokoban game for emacs" tar nil])
(svg-clock .
- [(0 4)
- nil "Analog clock using Scalable Vector Graphics" single])
+ [(0 5)
+ nil "Analog clock using Scalable Vector Graphics" single
+ ((:url . "http://elpa.gnu.org/packages/svg-clock.html")
+ (:keywords "demo" "svg" "clock"))])
(tNFA .
[(0 1 1)
((queue
(0 1)))
- "Tagged non-deterministic finite-state automata" single])
+ "Tagged non-deterministic finite-state automata" single
+ ((:url . "http://www.dr-qubit.org/emacs.php")
+ (:keywords "extensions" "matching" "data structures"))])
+ (temp-buffer-browse .
+ [(1 1)
+ nil "temp buffer browse mode" single
+ ((:url . "http://elpa.gnu.org/packages/temp-buffer-browse.html")
+ (:keywords "convenience"))])
(trie .
[(0 2 6)
((tNFA
(0 1 1))
(heap
(0 3)))
- "Trie data structure" single])
+ "Trie data structure" single
+ ((:url . "http://www.dr-qubit.org/emacs.php")
+ (:keywords "extensions" "matching" "data structures"))])
(undo-tree .
- [(0 6 3)
- nil "Treat undo history as a tree" single])
+ [(0 6 5)
+ nil "Treat undo history as a tree" single
+ ((:url . "http://www.dr-qubit.org/emacs.php")
+ (:keywords "convenience" "files" "undo" "redo" "history" "tree"))])
(uni-confusables .
[(0 1)
- nil "Unicode confusables table" tar])
+ nil "Unicode confusables table" tar nil])
(vlf .
- [(0 2)
- nil "View Large Files" single])
+ [(1 2)
+ nil "View Large Files" single
+ ((:url . "https://github.com/m00natic/vlfi")
+ (:keywords "large files" "utilities"))])
+ (w3 .
+ [(4 0 49)
+ nil "Fully customizable, largely undocumented web browser for Emacs" tar
+ ((:keywords "faces" "help" "comm" "news" "mail" "processes" "mouse" "hypermedia")
+ (:url . "http://elpa.gnu.org/packages/w3.html"))])
+ (websocket .
+ [(1 1)
+ nil "Emacs WebSocket client and server" tar
+ ((:keywords "Communication" "Websocket" "Server")
+ (:url . "http://elpa.gnu.org/packages/websocket.html"))])
(windresize .
[(0 1)
- nil "Resize windows interactively" single])
+ nil "Resize windows interactively" single
+ ((:url . "http://elpa.gnu.org/packages/windresize.html")
+ (:keywords "window"))])
+ (wisi .
+ [(1 0)
+ ((cl-lib
+ (0)))
+ "Utilities for implementing an indentation/navigation engine using a generalized LALR parser" tar
+ ((:url . "http://stephe-leake.org/emacs/ada-mode/emacs-ada-mode.html"))])
+ (wpuzzle .
+ [(1 0)
+ nil "find as many word in a given time" single
+ ((:url . "http://elpa.gnu.org/packages/wpuzzle.html")
+ (:keywords))])
(xclip .
- [(1 0)
- nil "Emacs Interface to XClip" single])
+ [(1 3)
+ nil "use xclip to copy&paste" single
+ ((:url . "http://elpa.gnu.org/packages/xclip.html")
+ (:keywords "convenience" "tools"))])
(yasnippet .
[(0 8 0)
- nil "A template system for Emacs" tar]))
+ nil "Yet another snippet extension for Emacs." tar
+ ((:keywords "convenience" "emulation")
+ (:url . "http://github.com/capitaomorte/yasnippet"))]))
View
2  elpa/archives/marmalade/archive-contents
1 addition, 1 deletion not shown
View
2,607 elpa/archives/melpa/archive-contents
1 addition, 2,606 deletions not shown
View
3  elpa/auto-complete-20130209.651/auto-complete-pkg.el
@@ -1,3 +0,0 @@
-(define-package "auto-complete" "20130209.651" "Auto Completion for GNU Emacs [source: github]"
- '((popup "0.5")))
-
View
4 ...-complete-20130209.651/auto-complete-autoloads.el → ...-complete-20131128.233/auto-complete-autoloads.el
@@ -4,7 +4,7 @@
;;;### (autoloads (auto-complete) "auto-complete" "auto-complete.el"
-;;;;;; (20786 27516 0 0))
+;;;;;; (21183 4554 0 0))
;;; Generated autoloads from auto-complete.el
(autoload 'auto-complete "auto-complete" "\
@@ -15,7 +15,7 @@ Start auto-completion at current point.
;;;***
;;;### (autoloads nil nil ("auto-complete-config.el" "auto-complete-pkg.el")
-;;;;;; (20786 27517 855502 0))
+;;;;;; (21183 4554 582108 0))
;;;***
View
0  ...uto-complete-20130209.651/auto-complete-config.el → ...uto-complete-20131128.233/auto-complete-config.el
File renamed without changes
View
2  elpa/auto-complete-20131128.233/auto-complete-pkg.el
@@ -0,0 +1,2 @@
+(define-package "auto-complete" "20131128.233" "Auto Completion for GNU Emacs"
+ '((popup "0.5.0")))
View
32 elpa/auto-complete-20130209.651/auto-complete.el → elpa/auto-complete-20131128.233/auto-complete.el
@@ -1,11 +1,11 @@
;;; auto-complete.el --- Auto Completion for GNU Emacs
-;; Copyright (C) 2008, 2009, 2010, 2011, 2012 Tomohiro Matsuyama
+;; Copyright (C) 2008, 2009, 2010, 2011, 2012, 2013 Tomohiro Matsuyama
;; Author: Tomohiro Matsuyama <m2ym.pub@gmail.com>
;; URL: http://cx4a.org/software/auto-complete
;; Keywords: completion, convenience
-;; Version: 1.4
+;; Version: 1.4.0
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
@@ -43,6 +43,8 @@
+(defconst ac-version "1.4.0")
+
(eval-when-compile
(require 'cl))
@@ -208,7 +210,8 @@
:group 'auto-complete)
(defcustom ac-non-trigger-commands
- '(*table--cell-self-insert-command)
+ '(*table--cell-self-insert-command
+ electric-buffer-list)
"Commands that can't be used as triggers of `auto-complete'."
:type '(repeat symbol)
:group 'auto-complete)
@@ -286,7 +289,7 @@ a prefix doen't contain any upper case letters."
:group 'auto-complete)
(defcustom ac-use-overriding-local-map nil
- "Non-nil means `overriding-local-map' will be used to hack for overriding key events on auto-copletion."
+ "Non-nil means `overriding-local-map' will be used to hack for overriding key events on auto-completion."
:type 'boolean
:group 'auto-complete)
@@ -432,7 +435,7 @@ If there is no common part, this will be nil.")
(define-key map "\C-\M-p" 'ac-quick-help-scroll-up)
(dotimes (i 9)
- (let ((symbol (intern (format "ac-complete-%d" (1+ i)))))
+ (let ((symbol (intern (format "ac-complete-select-%d" (1+ i)))))
(fset symbol
`(lambda ()
(interactive)
@@ -900,8 +903,7 @@ You can not use it in source definition like (prefix . `NAME')."
(unless ac-prefix-overlay
(let (newline)
;; Insert newline to make sure that cursor always on the overlay
- (when (and (eq ac-point (point-max))
- (eq ac-point (point)))
+ (when (eobp)
(popup-save-buffer-state
(insert "\n"))
(setq newline t))
@@ -1172,7 +1174,7 @@ that have been made before in this function. When `buffer-undo-list' is
(setq buffer-undo-list
(nthcdr 2 buffer-undo-list)))
(delete-region ac-point (point)))
- (insert string)
+ (insert (substring-no-properties string))
;; Sometimes, possible when omni-completion used, (insert) added
;; to buffer-undo-list strange record about position changes.
;; Delete it here:
@@ -1381,9 +1383,16 @@ that have been made before in this function. When `buffer-undo-list' is
(interactive)
(when (ac-menu-live-p)
(ac-cancel-show-menu-timer)
- (ac-cancel-quick-help-timer)
(ac-show-menu)
- (popup-isearch ac-menu :callback 'ac-isearch-callback)))
+ (if ac-use-quick-help
+ (let ((popup-menu-show-quick-help-function
+ (if (ac-quick-help-use-pos-tip-p)
+ 'ac-pos-tip-show-quick-help
+ 'popup-menu-show-quick-help)))
+ (popup-isearch ac-menu
+ :callback 'ac-isearch-callback
+ :help-delay ac-quick-help-delay))
+ (popup-isearch ac-menu :callback 'ac-isearch-callback))))
@@ -1423,7 +1432,8 @@ that have been made before in this function. When `buffer-undo-list' is
(defun ac-fuzzy-complete ()
"Start fuzzy completion at current point."
(interactive)
- (when (require 'fuzzy nil t)
+ (if (not (require 'fuzzy nil t))
+ (message "Please install fuzzy.el if you use fuzzy completion")
(unless (ac-menu-live-p)
(ac-start))
(let ((ac-match-function 'fuzzy-all-completions))
View
0  elpa/auto-complete-20130209.651/dict/ada-mode → elpa/auto-complete-20131128.233/dict/ada-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/c++-mode → elpa/auto-complete-20131128.233/dict/c++-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/c-mode → elpa/auto-complete-20131128.233/dict/c-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/caml-mode → elpa/auto-complete-20131128.233/dict/caml-mode
File renamed without changes
View
105 elpa/auto-complete-20130209.651/dict/clojure-mode → elpa/auto-complete-20131128.233/dict/clojure-mode
@@ -1,12 +1,19 @@
*agent*
+*allow-unresolved-vars*
+*assert*
*clojure-version*
*command-line-args*
*compile-files*
*compile-path*
+*compiler-options*
+*data-readers*
+*default-data-reader-fn*
*err*
*file*
*flush-on-newline*
+*fn-loader*
*in*
+*math-context*
*ns*
*out*
*print-dup*
@@ -15,7 +22,17 @@
*print-meta*
*print-readably*
*read-eval*
+*source-path*
+*unchecked-math*
+*use-context-classloader*
+*verbose-defrecords*
*warn-on-reflection*
+->ArrayChunk
+->Vec
+->VecNode
+->VecSeq
+-cache-protocol-fn
+-reset-methods
accessor
aclone
add-classpath
@@ -36,6 +53,7 @@ and
apply
areduce
array-map
+as->
aset
aset-boolean
aset-byte
@@ -53,10 +71,12 @@ associative?
atom
await
await-for
+await1
bases
bean
bigdec
bigint
+biginteger
binding
bit-and
bit-and-not
@@ -74,6 +94,7 @@ boolean-array
booleans
bound-fn
bound-fn*
+bound?
butlast
byte
byte-array
@@ -86,6 +107,14 @@ char-escape-string
char-name-string
char?
chars
+chunk
+chunk-append
+chunk-buffer
+chunk-cons
+chunk-first
+chunk-next
+chunk-rest
+chunked-seq?
class
class?
clear-agent-errors
@@ -101,6 +130,8 @@ compile
complement
concat
cond
+cond->
+cond->>
condp
conj
conj!
@@ -114,9 +145,12 @@ create-ns
create-struct
cycle
dec
+dec'
decimal?
declare
+default-data-readers
definline
+definterface
defmacro
defmethod
defmulti
@@ -124,14 +158,17 @@ defn
defn-
defonce
defprotocol
+defrecord
defstruct
deftype
delay
delay?
deliver
+denominator
deref
derive
descendants
+destructure
disj
disj!
dissoc
@@ -160,7 +197,10 @@ error-handler
error-mode
eval
even?
+every-pred
every?
+ex-data
+ex-info
extend
extend-class
extend-protocol
@@ -171,11 +211,16 @@ false?
ffirst
file-seq
filter
+filterv
find
find-doc
+find-keyword
find-ns
+find-protocol-impl
+find-protocol-method
find-var
first
+flatten
float
float-array
float?
@@ -184,9 +229,11 @@ flush
fn
fn?
fnext
+fnil
for
force
format
+frequencies
future
future-call
future-cancel
@@ -202,7 +249,9 @@ get-method
get-proxy-class
get-thread-bindings
get-validator
+group-by
hash
+hash-combine
hash-map
hash-set
identical?
@@ -213,6 +262,7 @@ ifn?
import
in-ns
inc
+inc'
init-proxy
instance?
int
@@ -229,6 +279,8 @@ isa?
iterate
iterator-seq
juxt
+keep
+keep-indexed
key
keys
keyword
@@ -257,8 +309,10 @@ macroexpand-1
make-array
make-hierarchy
map
+map-indexed
map?
mapcat
+mapv
max
max-key
memfn
@@ -266,12 +320,15 @@ memoize
merge
merge-with
meta
+method-sig
methods
min
min-key
mod
+munge
name
namespace
+namespace-munge
neg?
newline
next
@@ -296,14 +353,18 @@ ns-unalias
ns-unmap
nth
nthnext
+nthrest
num
number?
+numerator
object-array
odd?
or
parents
partial
partition
+partition-all
+partition-by
pcalls
peek
persistent!
@@ -316,8 +377,13 @@ pr
pr-str
prefer-method
prefers
+primitives-classnames
print
+print-ctor
+print-dup
+print-method
print-namespace-doc
+print-simple
print-str
printf
println
@@ -326,15 +392,19 @@ prn
prn-str
promise
proxy
+proxy-call-with-super
proxy-mappings
+proxy-name
proxy-super
push-thread-bindings
pvalues
quot
rand
rand-int
+rand-nth
range
ratio?
+rational?
rationalize
re-find
re-groups
@@ -345,7 +415,12 @@ re-seq
read
read-line
read-string
+realized?
reduce
+reduce-kv
+reduced
+reduced?
+reductions
ref
ref-history-count
ref-max-history
@@ -357,6 +432,7 @@ reify
release-pending-sends
rem
remove
+remove-all-methods
remove-method
remove-ns
remove-watch
@@ -380,12 +456,15 @@ second
select-keys
send
send-off
+send-via
seq
seq?
seque
sequence
sequential?
set
+set-agent-send-executor!
+set-agent-send-off-executor!
set-error-handler!
set-error-mode!
set-validator!
@@ -393,9 +472,13 @@ set?
short
short-array
shorts
+shuffle
shutdown-agents
slurp
some
+some->
+some->>
+some-fn
sort
sort-by
sorted-map
@@ -405,6 +488,7 @@ sorted-set-by
sorted?
special-form-anchor
special-symbol?
+spit
split-at
split-with
str
@@ -427,6 +511,7 @@ take-nth
take-while
test
the-ns
+thread-bound?
time
to-array
to-array-2d
@@ -436,14 +521,31 @@ tree-seq
true?
type
unchecked-add
+unchecked-add-int
+unchecked-byte
+unchecked-char
unchecked-dec
+unchecked-dec-int
unchecked-divide
+unchecked-divide-int
+unchecked-double
+unchecked-float
unchecked-inc
+unchecked-inc-int
+unchecked-int
+unchecked-long
unchecked-multiply
+unchecked-multiply-int
unchecked-negate
+unchecked-negate-int
unchecked-remainder
+unchecked-remainder-int
+unchecked-short
unchecked-subtract
+unchecked-subtract-int
underive
+unquote
+unquote-splicing
update-in
update-proxy
use
@@ -465,11 +567,14 @@ while
with-bindings
with-bindings*
with-in-str
+with-loading-context
with-local-vars
with-meta
with-open
with-out-str
with-precision
+with-redefs
+with-redefs-fn
xml-seq
zero?
zipmap
View
0  ...uto-complete-20130209.651/dict/clojurescript-mode → ...uto-complete-20131128.233/dict/clojurescript-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/coq-mode → elpa/auto-complete-20131128.233/dict/coq-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/css-mode → elpa/auto-complete-20131128.233/dict/css-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/erlang-mode → elpa/auto-complete-20131128.233/dict/erlang-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/go-mode → elpa/auto-complete-20131128.233/dict/go-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/haskell-mode → elpa/auto-complete-20131128.233/dict/haskell-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/java-mode → elpa/auto-complete-20131128.233/dict/java-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/javascript-mode → elpa/auto-complete-20131128.233/dict/javascript-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/lua-mode → elpa/auto-complete-20131128.233/dict/lua-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/php-mode → elpa/auto-complete-20131128.233/dict/php-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/python-mode → elpa/auto-complete-20131128.233/dict/python-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/ruby-mode → elpa/auto-complete-20131128.233/dict/ruby-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/scheme-mode → elpa/auto-complete-20131128.233/dict/scheme-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/sclang-mode → elpa/auto-complete-20131128.233/dict/sclang-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/sh-mode → elpa/auto-complete-20131128.233/dict/sh-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/tcl-mode → elpa/auto-complete-20131128.233/dict/tcl-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/ts-mode → elpa/auto-complete-20131128.233/dict/ts-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/tuareg-mode → elpa/auto-complete-20131128.233/dict/tuareg-mode
File renamed without changes
View
0  elpa/auto-complete-20130209.651/dict/verilog-mode → elpa/auto-complete-20131128.233/dict/verilog-mode
File renamed without changes
View
86 elpa/cider-20131221.1231/cider-autoloads.el
@@ -0,0 +1,86 @@
+;;; cider-autoloads.el --- automatically extracted autoloads
+;;
+;;; Code:
+
+
+;;;### (autoloads (cider cider-jack-in) "cider" "cider.el" (21183
+;;;;;; 4545 0 0))
+;;; Generated autoloads from cider.el
+
+(autoload 'cider-jack-in "cider" "\
+Start a nREPL server for the current project and connect to it.
+If PROMPT-PROJECT is t, then prompt for the project for which to
+start the server.
+
+\(fn &optional PROMPT-PROJECT)" t nil)
+
+(autoload 'cider "cider" "\
+Connect to an nREPL server identified by HOST and PORT.
+
+\(fn HOST PORT)" t nil)
+
+(eval-after-load 'clojure-mode '(progn (define-key clojure-mode-map (kbd "C-c M-j") 'cider-jack-in) (define-key clojure-mode-map (kbd "C-c M-c") 'cider)))
+
+;;;***
+
+;;;### (autoloads (cider-macroexpand-all cider-macroexpand-1) "cider-macroexpansion"
+;;;;;; "cider-macroexpansion.el" (21183 4545 0 0))
+;;; Generated autoloads from cider-macroexpansion.el
+
+(autoload 'cider-macroexpand-1 "cider-macroexpansion" "\
+Invoke 'macroexpand-1' on the expression at point.
+If invoked with a PREFIX argument, use 'macroexpand' instead of
+'macroexpand-1'.
+
+\(fn &optional PREFIX)" t nil)
+
+(autoload 'cider-macroexpand-all "cider-macroexpansion" "\
+Invoke 'clojure.walk/macroexpand-all' on the expression at point.
+
+\(fn)" t nil)
+
+;;;***
+
+;;;### (autoloads (cider-mode) "cider-mode" "cider-mode.el" (21183
+;;;;;; 4545 0 0))
+;;; Generated autoloads from cider-mode.el
+
+(autoload 'cider-mode "cider-mode" "\
+Minor mode for REPL interaction from a Clojure buffer.
+
+\\{cider-mode-map}
+
+\(fn &optional ARG)" t nil)
+
+;;;***
+
+;;;### (autoloads (cider-selector) "cider-selector" "cider-selector.el"
+;;;;;; (21183 4545 0 0))
+;;; Generated autoloads from cider-selector.el
+
+(autoload 'cider-selector "cider-selector" "\
+Select a new buffer by type, indicated by a single character.
+The user is prompted for a single character indicating the method by
+which to choose a new buffer. The `?' character describes then
+available methods. OTHER-WINDOW provides an optional target.
+
+See `def-cider-selector-method' for defining new methods.
+
+\(fn &optional OTHER-WINDOW)" t nil)
+
+;;;***
+
+;;;### (autoloads nil nil ("cider-client.el" "cider-eldoc.el" "cider-interaction.el"
+;;;;;; "cider-pkg.el" "cider-repl.el" "cider-util.el" "cider-version.el"
+;;;;;; "nrepl-client.el") (21183 4545 386083 0))
+
+;;;***
+
+(provide 'cider-autoloads)
+;; Local Variables:
+;; version-control: never
+;; no-byte-compile: t
+;; no-update-autoloads: t
+;; coding: utf-8
+;; End:
+;;; cider-autoloads.el ends here
View
172 elpa/cider-20131221.1231/cider-client.el
@@ -0,0 +1,172 @@
+;;; cider-client.el --- A layer of abstraction above the actual client code.
+
+;; Copyright © 2013 Bozhidar Batsov
+;;
+;; Author: Bozhidar Batsov <bozhidar@batsov.com>
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+;; This file is not part of GNU Emacs.
+
+;;; Commentary:
+
+;; A layer of abstraction above the actual client code.
+
+;;; Code:
+
+(require 'nrepl-client)
+
+;;; Words of inspiration
+(defun cider-user-first-name ()
+ "Find the current user's first name."
+ (let ((name (if (string= (user-full-name) "")
+ (user-login-name)
+ (user-full-name))))
+ (string-match "^[^ ]*" name)
+ (capitalize (match-string 0 name))))
+
+(defvar cider-words-of-inspiration
+ `("The best way to predict the future is to invent it. -Alan Kay"
+ "A point of view is worth 80 IQ points. -Alan Kay"
+ "Lisp isn't a language, it's a building material. -Alan Kay"
+ "Simple things should be simple, complex things should be possible. -Alan Kay"
+ "Measuring programming progress by lines of code is like measuring aircraft building progress by weight. -Bill Gates"
+ "Controlling complexity is the essence of computer programming. -Brian Kernighan"
+ "The unavoidable price of reliability is simplicity. -C.A.R. Hoare"
+ "You're bound to be unhappy if you optimize everything. -Donald Knuth"
+ "Simplicity is prerequisite for reliability. -Edsger W. Dijkstra"
+ "Deleted code is debugged code. -Jeff Sickel"
+ "The key to performance is elegance, not battalions of special cases. -Jon Bentley and Doug McIlroy"
+ "First, solve the problem. Then, write the code. -John Johnson"
+ "Simplicity is the ultimate sophistication. -Leonardo da Vinci"
+ "Programming is not about typing... it's about thinking. -Rich Hickey"
+ "Design is about pulling things apart. -Rich Hickey"
+ "Programmers know the benefits of everything and the tradeoffs of nothing. -Rich Hickey"
+ "Code never lies, comments sometimes do. -Ron Jeffries"
+ "The true delight is in the finding out rather than in the knowing. -Isaac Asimov"
+ "Take this REPL, fellow hacker, and may it serve you well."
+ "Let the hacking commence!"
+ "Hacks and glory await!"
+ "Hack and be merry!"
+ "Your hacking starts... NOW!"
+ "May the Source be with you!"
+ "May the Source shine upon thy REPL!"
+ "Code long and prosper!"
+ "Happy hacking!"
+ "Backend is up, REPL is operational!"
+ "Your imagination is the only limit to what you can do with this REPL!"
+ "This REPL is yours to command!"
+ "Fame is but a hack away!"
+ ,(format "%s, this could be the start of a beautiful program."
+ (cider-user-first-name)))
+ "Scientifically-proven optimal words of hackerish encouragement.")
+
+(defun cider-random-words-of-inspiration ()
+ "Select a random entry from `cider-words-of-inspiration'."
+ (eval (nth (random (length cider-words-of-inspiration))
+ cider-words-of-inspiration)))
+
+(defun cider-display-connected-message ()
+ "Message displayed on successful connection."
+ (message "Connected. %s" (cider-random-words-of-inspiration)))
+
+(add-hook 'nrepl-connected-hook 'cider-display-connected-message)
+
+;;; Evaluation helpers
+(defun cider-ns-form-p (form)
+ "Check if FORM is an ns form."
+ (string-match "^[[:space:]]*\(ns\\([[:space:]]*$\\|[[:space:]]+\\)" form))
+
+(defun cider-eval (input callback &optional ns session)
+ "Send the request INPUT and register the CALLBACK as the response handler.
+NS & SESSION specify the context in which to evaluate the request."
+ ;; namespace forms are always evaluated in the "user" namespace
+ (let ((ns (if (cider-ns-form-p input)
+ "user"
+ ns)))
+ ;; prevent forms from being evaluated in the wrong or a non-existing namespace
+ (when (and ns
+ (derived-mode-p 'clojure-mode)
+ (not (string= ns nrepl-buffer-ns))
+ (not (cider-ns-form-p input)))
+ (cider-eval-ns-form))
+ (nrepl-send-string input callback ns session)))
+
+(defun cider-tooling-eval (input callback &optional ns)
+ "Send the request INPUT and register the CALLBACK as the response handler.
+NS specifies the namespace in which to evaluate the request."
+ ;; namespace forms are always evaluated in the "user" namespace
+ (cider-eval input callback ns (nrepl-current-tooling-session)))
+
+(defun cider-eval-sync (input &optional ns session)
+ "Send the INPUT to the backend synchronously.
+NS & SESSION specify the evaluation context."
+ (nrepl-send-string-sync input ns session))
+
+(defun cider-eval-and-get-value (input &optional ns session)
+ "Send the INPUT to the backend synchronously and return the value.
+NS & SESSION specify the evaluation context."
+ (cider-get-value (cider-eval-sync input ns session)))
+
+(defun cider-tooling-eval-sync (input &optional ns)
+ "Send the INPUT to the backend using a tooling session synchronously.
+NS specifies the namespace in which to evaluate the request."
+ (cider-eval-sync input ns (nrepl-current-tooling-session)))
+
+(defun cider-get-raw-value (eval-result)
+ "Get the raw value (as string) from EVAL-RESULT."
+ (plist-get eval-result :value))
+
+(defun cider-get-value (eval-result)
+ "Get the value from EVAL-RESULT."
+ (read (cider-get-raw-value eval-result)))
+
+(defun cider-send-op (op attributes handler)
+ "Send the specified OP with ATTRIBUTES and response HANDLER."
+ (let ((buffer (current-buffer)))
+ (nrepl-send-request (append
+ (list "op" op
+ "session" (nrepl-current-session)
+ "ns" nrepl-buffer-ns)
+ attributes)
+ handler)))
+
+(defun cider-send-load-file (file-contents file-path file-name)
+ "Perform the nREPL \"load-file\" op.
+FILE-CONTENTS, FILE-PATH and FILE-NAME are details of the file to be
+loaded."
+ (let ((buffer (current-buffer)))
+ (nrepl-send-request (list "op" "load-file"
+ "session" (nrepl-current-session)
+ "file" file-contents
+ "file-path" file-path
+ "file-name" file-name)
+ (cider-load-file-handler buffer))))
+
+(defun cider-interrupt ()
+ "Interrupt any pending evaluations."
+ (interactive)
+ (let ((pending-request-ids (cider-util--hash-keys nrepl-pending-requests)))
+ (dolist (request-id pending-request-ids)
+ (nrepl-send-interrupt request-id (cider-interrupt-handler (current-buffer))))))
+
+(defun cider-current-repl-buffer ()
+ "The current REPL buffer."
+ (when (nrepl-current-connection-buffer)
+ (buffer-local-value 'nrepl-repl-buffer
+ (get-buffer (nrepl-current-connection-buffer)))))
+
+(provide 'cider-client)
+
+;;; cider-client.el ends here
View
119 elpa/cider-20131221.1231/cider-eldoc.el
@@ -0,0 +1,119 @@
+;;; cider-eldoc.el --- eldoc support for Clojure
+
+;; Copyright © 2012-2013 Tim King, Phil Hagelberg
+;; Copyright © 2013 Bozhidar Batsov, Hugo Duncan, Steve Purcell
+;;
+;; Author: Tim King <kingtim@gmail.com>
+;; Phil Hagelberg <technomancy@gmail.com>
+;; Bozhidar Batsov <bozhidar@batsov.com>
+;; Hugo Duncan <hugo@hugoduncan.org>
+;; Steve Purcell <steve@sanityinc.com>
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+;; This file is not part of GNU Emacs.
+
+;;; Commentary:
+
+;; eldoc support for Clojure.
+
+;;; Code:
+
+(require 'cider-client)
+(require 'cider-interaction) ; for cider-symbol-at-point
+
+(require 'eldoc)
+(require 'dash)
+
+(defvar cider-extra-eldoc-commands '("cider-complete" "yas/expand")
+ "Extra commands to be added to eldoc's safe commands list.")
+
+(defun cider-eldoc-format-thing (thing)
+ "Format the eldoc THING."
+ (propertize thing 'face 'font-lock-function-name-face))
+
+(defun cider-highlight-args (arglist pos)
+ "Format the the function ARGLIST for eldoc.
+POS is the index of the currently highlighted argument."
+ (let* ((rest-pos (cider--find-rest-args-position arglist))
+ (i 0))
+ (mapconcat
+ (lambda (arg)
+ (let ((argstr (format "%s" arg)))
+ (if (eq arg '&)
+ argstr
+ (prog1
+ (if (or (= (1+ i) pos)
+ (and rest-pos (> (+ 1 i) rest-pos)
+ (> pos rest-pos)))
+ (propertize argstr 'face
+ 'eldoc-highlight-function-argument)
+ argstr)
+ (setq i (1+ i)))))) arglist " ")))
+
+(defun cider--find-rest-args-position (arglist)
+ "Find the position of & in the ARGLIST vector."
+ (-elem-index '& (append arglist ())))
+
+(defun cider-highlight-arglist (arglist pos)
+ "Format the ARGLIST for eldoc.
+POS is the index of the argument to highlight."
+ (concat "[" (cider-highlight-args arglist pos) "]"))
+
+(defun cider-eldoc-format-arglist (arglist pos)
+ "Format all the ARGLIST for eldoc.
+POS is the index of current argument."
+ (concat "("
+ (mapconcat (lambda (args) (cider-highlight-arglist args pos))
+ (read arglist) " ") ")"))
+
+(defun cider-eldoc-info-in-current-sexp ()
+ "Return a list of the current sexp and the current argument index."
+ (save-excursion
+ (let ((argument-index (1- (eldoc-beginning-of-sexp))))
+ ;; If we are at the beginning of function name, this will be -1.
+ (when (< argument-index 0)
+ (setq argument-index 0))
+ ;; Don't do anything if current word is inside a string.
+ (if (= (or (char-after (1- (point))) 0) ?\")
+ nil
+ (list (cider-symbol-at-point) argument-index)))))
+
+(defun cider-eldoc ()
+ "Backend function for eldoc to show argument list in the echo area."
+ (when (cider-connected-p)
+ (let* ((info (cider-eldoc-info-in-current-sexp))
+ (thing (car info))
+ (pos (cadr info))
+ (form (format "(try
+ (:arglists
+ (clojure.core/meta
+ (clojure.core/resolve
+ (clojure.core/read-string \"%s\"))))
+ (catch Throwable t nil))" thing))
+ (value (when thing
+ (cider-get-raw-value (cider-tooling-eval-sync form nrepl-buffer-ns)))))
+ (unless (string= value "nil")
+ (format "%s: %s"
+ (cider-eldoc-format-thing thing)
+ (cider-eldoc-format-arglist value pos))))))
+
+(defun cider-turn-on-eldoc-mode ()
+ "Turn on eldoc mode in the current buffer."
+ (setq-local eldoc-documentation-function 'cider-eldoc)
+ (apply 'eldoc-add-command cider-extra-eldoc-commands)
+ (turn-on-eldoc-mode))
+
+(provide 'cider-eldoc)
+;;; cider-eldoc ends here
View
1,211 elpa/cider-20131221.1231/cider-interaction.el
@@ -0,0 +1,1211 @@
+;;; cider-interaction.el --- IDE for Clojure
+
+;; Copyright © 2012-2013 Tim King, Phil Hagelberg
+;; Copyright © 2013 Bozhidar Batsov, Hugo Duncan, Steve Purcell
+;;
+;; Author: Tim King <kingtim@gmail.com>
+;; Phil Hagelberg <technomancy@gmail.com>
+;; Bozhidar Batsov <bozhidar@batsov.com>
+;; Hugo Duncan <hugo@hugoduncan.org>
+;; Steve Purcell <steve@sanityinc.com>
+
+;; This program is free software: you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+;; This file is not part of GNU Emacs.
+
+;;; Commentary:
+
+;; Provides an Emacs Lisp client to connect to Clojure nREPL servers.
+
+;;; Code:
+
+(require 'cider-client)
+(require 'cider-util)
+
+(require 'clojure-mode)
+(require 'dash)
+(require 'thingatpt)
+(require 'etags)
+(require 'arc-mode)
+(require 'ansi-color)
+(require 'cl-lib)
+(require 'compile)
+(require 'tramp)
+
+(defconst cider-error-buffer "*cider-error*")
+(defconst cider-doc-buffer "*cider-doc*")
+(defconst cider-src-buffer "*cider-src*")
+(defconst cider-result-buffer "*cider-result*")
+
+(defcustom cider-use-local-resources t
+ "Use local resources under HOME if possible."
+ :type 'boolean
+ :group 'cider)
+
+(defcustom cider-popup-stacktraces t
+ "Non-nil means pop-up error stacktraces for evaluation errors.
+Nil means show only an error message in the minibuffer. See also
+`cider-repl-popup-stacktraces', which overrides this setting
+for REPL buffers."
+ :type 'boolean
+ :group 'cider)
+
+(defcustom cider-popup-on-error t
+ "When `cider-popup-on-error' is set to t, stacktraces will be displayed.
+When set to nil, stactraces will not be displayed, but will be available
+in the `cider-error-buffer', which defaults to *cider-error*."
+ :type 'boolean
+ :group 'cider)
+
+(defcustom cider-auto-select-error-buffer nil
+ "Controls whether to auto-select the error popup buffer."
+ :type 'boolean
+ :group 'cider)
+
+(defface cider-error-highlight-face
+ '((((supports :underline (:style wave)))
+ (:underline (:style wave :color "red") :inherit unspecified))
+ (t (:inherit font-lock-warning-face :underline t)))
+ "Face used to highlight compilation errors in Clojure buffers."
+ :group 'cider)
+
+(defface cider-warning-highlight-face
+ '((((supports :underline (:style wave)))
+ (:underline (:style wave :color "yellow") :inherit unspecified))
+ (t (:inherit font-lock-warning-face :underline (:color "yellow"))))
+ "Face used to highlight compilation warnings in Clojure buffers."
+ :group 'cider)
+
+;;; Connection info
+(defun cider--clojure-version ()
+ "Retrieve the underlying connection's Clojure version."
+ (cider-eval-and-get-value "(clojure-version)"))
+
+(defun cider--backend-version ()
+ "Retrieve the underlying connection's nREPL version."
+ (cider-eval-and-get-value "(:version-string clojure.tools.nrepl/version)"))
+
+(defun cider--connection-info (nrepl-connection-buffer)
+ "Return info about NREPL-CONNECTION-BUFFER.
+
+Info contains project name, current REPL namespace, host:port endpoint and Clojure version."
+ (with-current-buffer (get-buffer nrepl-connection-buffer)
+ (format "Active nREPL connection: %s:%s, %s:%s (Clojure %s, nREPL %s)"
+ (or (nrepl--project-name nrepl-project-dir) "<no project>")
+ nrepl-buffer-ns
+ (car nrepl-endpoint)
+ (cadr nrepl-endpoint)
+ (cider--clojure-version)
+ (cider--backend-version))))
+
+(defun cider-display-current-connection-info ()
+ "Display information about the current connection."
+ (interactive)
+ (message (cider--connection-info (nrepl-current-connection-buffer))))
+
+(defun cider-rotate-connection ()
+ "Rotate and display the current nREPL connection."
+ (interactive)
+ (setq nrepl-connection-list
+ (append (cdr nrepl-connection-list)
+ (list (car nrepl-connection-list))))
+ (message (cider--connection-info (car nrepl-connection-list))))
+
+;;; Switching between REPL & source buffers
+(make-variable-buffer-local
+ (defvar cider-last-clojure-buffer nil
+ "A buffer-local variable holding the last Clojure source buffer.
+`cider-switch-to-last-clojure-buffer' uses this variable to jump
+back to last Clojure source buffer."))
+
+(defvar cider-current-clojure-buffer nil
+ "This variable holds current buffer temporarily when connecting to a REPL.
+It is set to current buffer when `nrepl' or `cider-jack-in' is called.
+After the REPL buffer is created, the value of this variable is used
+to call `cider-remember-clojure-buffer'.")
+
+(defun cider-remember-clojure-buffer (buffer)
+ "Try to remember the BUFFER from which the user jumps.
+The BUFFER needs to be a Clojure buffer and current major mode needs
+to be `cider-repl-mode'. The user can use `cider-switch-to-last-clojure-buffer'
+to jump back to the last Clojure source buffer."
+ (when (and buffer
+ (with-current-buffer buffer
+ (derived-mode-p 'clojure-mode))
+ (derived-mode-p 'cider-repl-mode))
+ (setq cider-last-clojure-buffer buffer)))
+
+(defun cider-switch-to-repl-buffer (&optional arg)
+ "Select the REPL buffer, when possible in an existing window.
+
+Hint: You can use `display-buffer-reuse-frames' and
+`special-display-buffer-names' to customize the frame in which
+the buffer should appear.
+
+With a prefix ARG sets the name of the REPL buffer to the one
+of the current source file."
+ (interactive "P")
+ (if (not (cider-connected-p))
+ (message "No active nREPL connection.")
+ (let ((buffer (current-buffer)))
+ (when arg
+ (cider-repl-set-ns (cider-current-ns)))
+ (pop-to-buffer (cider-find-or-create-repl-buffer))
+ (cider-remember-clojure-buffer buffer)
+ (goto-char (point-max)))))
+
+(defun cider-switch-to-relevant-repl-buffer (arg)
+ "Select the REPL buffer, when possible in an existing window.
+The buffer chosen is based on the file open in the current buffer.
+
+Hint: You can use `display-buffer-reuse-frames' and
+`special-display-buffer-names' to customize the frame in which
+the buffer should appear.
+
+With a prefix ARG sets the name of the REPL buffer to the one
+of the current source file.
+
+With a second prefix ARG the chosen REPL buffer is based on a
+supplied project directory."
+ (interactive "P")
+ (if (not (cider-connected-p))
+ (message "No active nREPL connection.")
+ (let ((project-directory
+ (or (when arg
+ (ido-read-directory-name "Project: "))
+ (nrepl-project-directory-for (nrepl-current-dir)))))
+ (if project-directory
+ (let ((buf (car (-filter
+ (lambda (conn)
+ (let ((conn-proj-dir (with-current-buffer (get-buffer conn)
+ nrepl-project-dir)))
+ (when conn-proj-dir
+ (equal (file-truename project-directory)
+ (file-truename conn-proj-dir)))))
+ nrepl-connection-list))))
+ (if buf
+ (setq nrepl-connection-list
+ (cons buf (delq buf nrepl-connection-list)))
+ (message "No relevant nREPL connection found. Switching to default connection.")))
+ (message "No project directory found. Switching to default nREPL connection.")))
+ (cider-switch-to-repl-buffer '())))
+
+(defun cider-switch-to-last-clojure-buffer ()
+ "Switch to the last Clojure buffer.
+The default keybinding for this command is
+the same as `cider-switch-to-repl-buffer',
+so that it is very convenient to jump between a
+Clojure buffer and the REPL buffer."
+ (interactive)
+ (if (and (derived-mode-p 'cider-repl-mode)
+ (buffer-live-p cider-last-clojure-buffer))
+ (pop-to-buffer cider-last-clojure-buffer)
+ (message "Don't know the original Clojure buffer")))
+
+(defun cider-find-and-clear-repl-buffer ()
+ "Find the current REPL buffer and clear it.
+Returns to the buffer in which the command was invoked."
+ (interactive)
+ (let ((origin-buffer (current-buffer)))
+ (switch-to-buffer (cider-current-repl-buffer))
+ (cider-repl-clear-buffer)
+ (switch-to-buffer origin-buffer)))
+
+;;; Minibuffer eval
+(defvar cider-minibuffer-history '()
+ "History list of expressions read from the minibuffer.")
+
+(defvar cider-minibuffer-map
+ (let ((map (make-sparse-keymap)))
+ (set-keymap-parent map minibuffer-local-map)
+ (define-key map "TAB" 'complete-symbol)
+ (define-key map "M-TAB" 'complete-symbol)
+ map)
+ "Minibuffer keymap used for reading Clojure expressions.")
+
+(defun cider-read-from-minibuffer (prompt &optional initial-value history)
+ "Read a string from the minibuffer, prompting with PROMPT.
+If INITIAL-VALUE is non-nil, it is inserted into the minibuffer before
+reading input."
+ (minibuffer-with-setup-hook
+ (lambda ()
+ (add-hook 'completion-at-point-functions
+ #'cider-complete-at-point nil t)
+ (run-hooks 'eval-expression-minibuffer-setup-hook))
+ (read-from-minibuffer prompt initial-value
+ cider-minibuffer-map nil
+ 'cider-minibuffer-history)))
+
+(defun cider-read-and-eval ()
+ "Read a sexp from the minibuffer and output its result to the echo area."
+ (interactive)
+ (cider-interactive-eval (cider-read-from-minibuffer "CIDER Eval: ")))
+
+;;; Eval
+(defun cider-eval-region (start end)
+ "Evaluate the region.
+The two arguments START and END are character positions;
+they can be in either order."
+ (interactive "r")
+ (cider-interactive-eval (buffer-substring-no-properties start end)))
+
+(defun cider-eval-buffer ()
+ "Evaluate the current buffer."
+ (interactive)
+ (cider-eval-region (point-min) (point-max)))
+
+(defun cider-defun-at-point ()
+ "Return the text of the top-level sexp at point."
+ (apply #'buffer-substring-no-properties
+ (cider--region-for-defun-at-point)))
+
+(defun cider--region-for-defun-at-point ()
+ "Return the start and end position of defun at point."
+ (save-excursion
+ (save-match-data
+ (end-of-defun)
+ (let ((end (point)))
+ (beginning-of-defun)
+ (list (point) end)))))
+
+(defun cider-eval-defun-at-point (&optional prefix)
+ "Evaluate the current toplevel form, and print result in the minibuffer.
+With a PREFIX argument, print the result in the current buffer."
+ (interactive "P")
+ (let ((form (cider-defun-at-point)))
+ (if prefix
+ (cider-interactive-eval-print form)
+ (cider-interactive-eval form))))
+
+(define-obsolete-function-alias
+ 'cider-eval-expression-at-point
+ 'cider-eval-defun-at-point)
+
+(defun cider-eval-ns-form ()
+ "Evaluate the current buffer's namespace form."
+ (interactive)
+ (when (clojure-find-ns)
+ (save-excursion
+ (goto-char (match-beginning 0))
+ (cider-eval-defun-at-point))))
+
+(defun cider-bounds-of-sexp-at-point ()
+ "Return the bounds sexp at point as a pair (or nil)."
+ (or (and (equal (char-after) ?\()
+ (member (char-before) '(?\' ?\, ?\@))
+ ;; hide stuff before ( to avoid quirks with '( etc.
+ (save-restriction
+ (narrow-to-region (point) (point-max))
+ (bounds-of-thing-at-point 'sexp)))
+ (bounds-of-thing-at-point 'sexp)))
+
+(defun cider-symbol-at-point ()
+ "Return the name of the symbol at point, otherwise nil."
+ (let ((str (substring-no-properties (or (thing-at-point 'symbol) ""))))
+ (and str
+ (not (equal str (concat (cider-find-ns) "> ")))
+ (not (equal str ""))
+ (substring-no-properties str))))
+
+(defun cider-sexp-at-point ()
+ "Return the sexp at point as a string, otherwise nil."
+ (let ((bounds (cider-bounds-of-sexp-at-point)))
+ (if bounds
+ (buffer-substring-no-properties (car bounds)
+ (cdr bounds)))))
+
+(defun cider-sexp-at-point-with-bounds ()
+ "Return a list containing the sexp at point and its bounds."
+ (let ((bounds (cider-bounds-of-sexp-at-point)))
+ (if bounds
+ (let ((start (car bounds))
+ (end (cdr bounds)))
+ (list (buffer-substring-no-properties start end)
+ (cons (set-marker (make-marker) start)
+ (set-marker (make-marker) end)))))))
+
+(defun cider-last-sexp ()
+ "Return the last sexp."
+ (buffer-substring-no-properties
+ (save-excursion (backward-sexp) (point))
+ (point)))
+
+;;;
+(defun cider-tramp-prefix ()
+ "Top element on `find-tag-marker-ring' used to determine Clojure host."
+ (let ((jump-origin (buffer-file-name
+ (marker-buffer
+ (ring-ref find-tag-marker-ring 0)))))
+ (when (tramp-tramp-file-p jump-origin)
+ (let ((vec (tramp-dissect-file-name jump-origin)))
+ (tramp-make-tramp-file-name (tramp-file-name-method vec)
+ (tramp-file-name-user vec)
+ (tramp-file-name-host vec)
+ nil)))))
+
+(defun cider-home-prefix-adjustment (resource)
+ "System-dependent HOME location will be adjusted in RESOURCE.
+Removes any leading slash if on Windows."
+ (save-match-data
+ (cond ((string-match "^\\/\\(Users\\|home\\)\\/\\w+\\(\\/.+\\)" resource)
+ (concat (getenv "HOME") (match-string 2 resource)))
+ ((and (eq system-type 'windows-nt)
+ (string-match "^/" resource)
+ (not (tramp-tramp-file-p resource)))
+ (substring resource 1))
+ (t
+ resource))))
+
+(defun cider-emacs-or-clojure-side-adjustment (resource)
+ "Fix the RESOURCE path depending on `cider-use-local-resources`."
+ (let ((resource (cider-home-prefix-adjustment resource))
+ (clojure-side-res (concat (cider-tramp-prefix) resource))
+ (emacs-side-res resource))
+ (cond ((equal resource "") resource)
+ ((and cider-use-local-resources
+ (file-exists-p emacs-side-res))
+ emacs-side-res)
+ ((file-exists-p clojure-side-res)
+ clojure-side-res)
+ (t
+ resource))))
+
+(defun cider-find-file (filename)
+ "Switch to a buffer visiting FILENAME.
+Adjusts for HOME location using `cider-home-prefix-adjustment'.
+Uses `find-file'."
+ (find-file (cider-emacs-or-clojure-side-adjustment filename)))
+
+(defun cider-find-resource (resource)
+ "Find and display RESOURCE."
+ (cond ((string-match "^file:\\(.+\\)" resource)
+ (cider-find-file (match-string 1 resource)))
+ ((string-match "^\\(jar\\|zip\\):file:\\(.+\\)!/\\(.+\\)" resource)
+ (let* ((jar (match-string 2 resource))
+ (path (match-string 3 resource))
+ (buffer-already-open (get-buffer (file-name-nondirectory jar))))
+ (cider-find-file jar)
+ (goto-char (point-min))
+ (search-forward path)
+ (let ((opened-buffer (current-buffer)))
+ (archive-extract)
+ (unless buffer-already-open
+ (kill-buffer opened-buffer)))))
+ (t (error "Unknown resource path %s" resource))))
+
+(defun cider-jump-to-def-for (location)
+ "Jump to LOCATION's definition in the source code."
+ ;; ugh; elisp destructuring doesn't work for vectors
+ (let ((resource (aref location 0))
+ (path (aref location 1))
+ (line (aref location 2)))
+ (if (and path (file-exists-p path))
+ (find-file path)
+ (cider-find-resource resource))
+ (goto-char (point-min))
+ (forward-line (1- line))))
+
+(defun cider-jump-to-def-handler (buffer)
+ "Create a handler for jump-to-def in BUFFER."
+ ;; TODO: got to be a simpler way to do this
+ (nrepl-make-response-handler buffer
+ (lambda (buffer value)
+ (with-current-buffer buffer
+ (ring-insert find-tag-marker-ring (point-marker)))
+ (cider-jump-to-def-for
+ (car (read-from-string value))))
+ (lambda (buffer out) (message out))
+ (lambda (buffer err) (message err))
+ nil))
+
+(defun cider-jump-to-def (var)
+ "Jump to the definition of the VAR at point."
+ (let ((form (format "(let [ns-symbol '%s
+ ns-var '%s
+ ns-file (clojure.core/comp :file
+ clojure.core/meta
+ clojure.core/second
+ clojure.core/first
+ clojure.core/ns-publics)
+ resource-str (clojure.core/comp clojure.core/str
+ clojure.java.io/resource
+ ns-file)
+ file-str (clojure.core/comp clojure.core/str
+ clojure.java.io/file
+ ns-file)]
+ (cond ((clojure.core/ns-aliases ns-symbol) ns-var)
+ (let [resolved-ns ((clojure.core/ns-aliases ns-symbol) ns-var)]
+ [(resource-str resolved-ns)
+ (file-str resolved-ns)
+ 1])
+
+ (find-ns ns-var)
+ [(resource-str ns-var)
+ (file-str ns-var)
+ 1]
+
+ (clojure.core/ns-resolve ns-symbol ns-var)
+ ((clojure.core/juxt
+ (clojure.core/comp clojure.core/str
+ clojure.java.io/resource
+ :file)
+ (clojure.core/comp clojure.core/str
+ clojure.java.io/file
+ :file)
+ :line)
+ (clojure.core/meta (clojure.core/ns-resolve ns-symbol ns-var)))))"
+ (cider-current-ns) var)))
+ (cider-tooling-eval form
+ (cider-jump-to-def-handler (current-buffer))
+ nrepl-buffer-ns)))
+