;; URL: https://github.com/Malabarba/speed-of-thought-lisp
;; Keywords: convenience, lisp
;; Package-Requires: ((emacs "24.1"))
-;; Version: 1.5
+;; Version: 1.5.1
;; 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
"Non-nil if point is at the start of a sexp.
Specially, avoids matching inside argument lists."
(and (eq (char-before) ?\()
- (not (sotlisp--looking-back "(\\(defun\\s-+.*\\|lambda\\s-+\\)("))
+ (not (sotlisp--looking-back "(\\(defun\\s-+.*\\|\\(lambda\\|dolist\\|dotimes\\)\\s-+\\)("))
(save-excursion
(forward-char -1)
- (backward-up-list)
- (forward-sexp -1)
- (not
- (looking-at-p (rx (* (or (syntax word) (syntax symbol) "-"))
- "let" symbol-end))))
+ (condition-case er
+ (progn
+ (backward-up-list)
+ (forward-sexp -1)
+ (not
+ (looking-at-p (rx (* (or (syntax word) (syntax symbol) "-"))
+ "let" symbol-end))))
+ (error t)))
(not (string-match (rx (syntax symbol)) (string last-command-event)))))
(defun sotlisp--function-quote-p ()
("dr" . "delete-region ")
("dv" . "defvar $ t\n \"\"")
("e" . "error \"$\"")
+ ("ef" . "executable-find ")
("efn" . "expand-file-name ")
("eol" . "end-of-line")
("f" . "format \"$\"")
("sw" . "selected-window$")
("syp" . "symbolp ")
("tap" . "thing-at-point 'symbol")
+ ("tf" . "thread-first ")
+ ("tl" . "thread-last ")
("u" . "unless ")
("ul" . "up-list")
("up" . "unwind-protect\n(progn $)")