aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSohom Bhattacharjee <soham.bhattacharjee15@gmail.com>2018-04-12 12:11:03 +0530
committerArun Isaac <arunisaac@systemreboot.net>2018-05-03 22:59:39 +0530
commit51eda974b2f353aac3a31bf9804a364b3f3a0337 (patch)
tree6af2d48e69e9a2c7ef719911ec10dc0b256731a6
parent90ec79fb2933a4d33ab3861d72e1b4382c8d39f2 (diff)
downloadpatches-51eda974b2f353aac3a31bf9804a364b3f3a0337.tar
patches-51eda974b2f353aac3a31bf9804a364b3f3a0337.tar.gz
gnu: Add emacs-noflet.
* gnu/packages/emacs.scm (emacs-noflet): New variable. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
-rw-r--r--gnu/packages/emacs.scm37
1 files changed, 37 insertions, 0 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 186b87fec6..ffd7316cd9 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -10343,3 +10343,40 @@ It provides auto-completion for HTTP methods and headers in
@code{restclient-mode}. Completion source is given by
@code{know-your-http-well}.")
(license license:gpl3+)))
+
+(define-public emacs-noflet
+ (let ((version "20170629")
+ (revision "1")
+ (commit "7ae84dc3257637af7334101456dafe1759c6b68a"))
+ (package
+ (name "emacs-noflet")
+ (version (git-version version revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nicferrier/emacs-noflet")
+ (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+ (base32
+ "0g70gnmfi8n24jzfci9nrj0n9bn1qig7b8f9f325rin8h7x32ypf"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'require-dash
+ ;; noflet.el uses -map from dash, but (require 'dash) is
+ ;; missing. So, add it.
+ (lambda _
+ (substitute* "noflet.el"
+ ((";;; Code:") ";;; Code:\n(require 'dash)"))
+ #t)))))
+ (propagated-inputs
+ `(("emacs-dash" ,emacs-dash)))
+ (home-page "https://github.com/nicferrier/emacs-noflet")
+ (synopsis "Locally override functions")
+ (description "@code{emacs-noflet} let's you locally override functions,
+in the manner of @command{flet}, but with access to the original function
+through the symbol: @command{this-fn}.")
+ (license license:gpl3+))))