branch: elpa/evil-nerd-commenter
commit a074fed7905dcf3723736fb3b384a03e2db9c4cf
Author: lalopmak <[email protected]>
Commit: lalopmak <[email protected]>
Added check for evil-define-operator
---
evil-nerd-commenter.el | 51 +++++++++++++++++++++++++-------------------------
1 file changed, 26 insertions(+), 25 deletions(-)
diff --git a/evil-nerd-commenter.el b/evil-nerd-commenter.el
index 39f19dc095..696349e77c 100644
--- a/evil-nerd-commenter.el
+++ b/evil-nerd-commenter.el
@@ -265,32 +265,33 @@ Paragraphs are separated by empty lines."
'(define-key evil-normal-state-map "," 'evilnc-comment-operator))
)
-(evil-define-operator evilnc-comment-operator (beg end type register
yank-handler)
- "Comments text from BEG to END with TYPE.
+(when (fboundp 'evil-define-operator)
+ (evil-define-operator evilnc-comment-operator (beg end type register
yank-handler)
+ "Comments text from BEG to END with TYPE.
Save in REGISTER or in the kill-ring with YANK-HANDLER."
- (interactive "<R><x><y>")
- (unless register
- (let ((text (filter-buffer-substring beg end)))
- (unless (string-match-p "\n" text)
- ;; set the small delete register
- (evil-set-register ?- text))))
- (evil-yank beg end type register yank-handler)
- (cond
- ((eq type 'block)
- (evil-apply-on-block #'comment-or-uncomment-region beg end nil))
- ((and (eq type 'line)
- (= end (point-max))
- (or (= beg end)
- (/= (char-before end) ?\n))
- (/= beg (point-min))
- (= (char-before beg) ?\n))
- (comment-or-uncomment-region (1- beg) end))
- (t
- (comment-or-uncomment-region beg end)))
- ;; place cursor on beginning of line
- (when (and (evil-called-interactively-p)
- (eq type 'line))
- (evil-first-non-blank)))
+ (interactive "<R><x><y>")
+ (unless register
+ (let ((text (filter-buffer-substring beg end)))
+ (unless (string-match-p "\n" text)
+ ;; set the small delete register
+ (evil-set-register ?- text))))
+ (evil-yank beg end type register yank-handler)
+ (cond
+ ((eq type 'block)
+ (evil-apply-on-block #'comment-or-uncomment-region beg end nil))
+ ((and (eq type 'line)
+ (= end (point-max))
+ (or (= beg end)
+ (/= (char-before end) ?\n))
+ (/= beg (point-min))
+ (= (char-before beg) ?\n))
+ (comment-or-uncomment-region (1- beg) end))
+ (t
+ (comment-or-uncomment-region beg end)))
+ ;; place cursor on beginning of line
+ (when (and (evil-called-interactively-p)
+ (eq type 'line))
+ (evil-first-non-blank))))
(provide 'evil-nerd-commenter)