[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/objed bea49a2 051/166: Fix word object at eob, too.
From: |
Clemens Radermacher |
Subject: |
[elpa] externals/objed bea49a2 051/166: Fix word object at eob, too. |
Date: |
Sun, 29 Dec 2019 08:20:59 -0500 (EST) |
branch: externals/objed
commit bea49a2dd385f0b2d342c0207ce9cb774c504bf5
Author: Clemens Radermacher <address@hidden>
Commit: Clemens Radermacher <address@hidden>
Fix word object at eob, too.
---
objed-objects.el | 41 ++++++++++++++++++++++++-----------------
1 file changed, 24 insertions(+), 17 deletions(-)
diff --git a/objed-objects.el b/objed-objects.el
index 7a1b191..9ca6a7b 100644
--- a/objed-objects.el
+++ b/objed-objects.el
@@ -812,6 +812,12 @@ Position POS defaults to point."
;; * Object creation/manipulation
+(defun objed-make-empty-object (&optional pos)
+ "Return an empty object at POS which default to point."
+ (let ((pos (or pos (point))))
+ (list (list pos pos)
+ (list pos pos))))
+
(cl-defun objed-make-object (&key obounds beg end ibounds ibeg iend)
"Helper to create internal used object format from positions.
@@ -1457,10 +1463,10 @@ comments."
:atp
(looking-at ".")
:get-obj
- (list (list (point)
- (if (eobp) (point) (1+ (point))))
- (list (point)
- (if (eobp) (point) (1+ (point)))))
+ (if (eobp)
+ (objed-make-empty-object)
+ (objed-make-object :beg (point)
+ :end (1+ (point))))
:try-next
;; current one is skipped, for chars this means we are already at
;; the next..
@@ -1537,17 +1543,19 @@ comments."
(bounds-of-thing-at-point 'symbol))
'identifier)
:get-obj
- (objed-make-object
- :obounds (bounds-of-thing-at-point 'word)
- :ibounds (let* ((subword-mode t)
- (superword-mode nil)
- (find-word-boundary-function-table
- subword-find-word-boundary-function-table))
- (if (eq this-command 'forward-word)
- (save-excursion
- (forward-word -1)
- (bounds-of-thing-at-point 'word))
- (bounds-of-thing-at-point 'word))))
+ (if (eobp)
+ (objed-make-empty-object)
+ (objed-make-object
+ :obounds (bounds-of-thing-at-point 'word)
+ :ibounds (let* ((subword-mode t)
+ (superword-mode nil)
+ (find-word-boundary-function-table
+ subword-find-word-boundary-function-table))
+ (if (eq this-command 'forward-word)
+ (save-excursion
+ (forward-word -1)
+ (bounds-of-thing-at-point 'word))
+ (bounds-of-thing-at-point 'word)))))
:try-next
(if (objed--inner-p)
(let* ((subword-mode t)
@@ -1773,8 +1781,7 @@ comments."
(looking-back "^ *" (line-beginning-position)))
:get-obj
(if (eobp)
- (list (list (point) (point))
- (list (point) (point)))
+ (objed-make-empty-object)
(objed-make-object :beg (line-beginning-position)
:end (save-excursion
;; include hidden parts...
- [elpa] externals/objed ceeff84 057/166: Allow defining objects by regex, (continued)
- [elpa] externals/objed ceeff84 057/166: Allow defining objects by regex, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 72592a9 062/166: Change bindings for barf/slurp sexps, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed c086dce 069/166: Make [/] context independent by default, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed a7b8c48 070/166: Update docs, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 890b8b7 044/166: Add init function for hooks, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 963841d 025/166: Improve continuation object, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 09cca2c 028/166: Allow numeric prefix arg for kill/delete op, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 6f06795 034/166: Add commands which move to prev/next object, ignoring context, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 73b99ed 036/166: Improve objed-ace, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 7930c68 038/166: Make word movement aware of object state, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed bea49a2 051/166: Fix word object at eob, too.,
Clemens Radermacher <=
- [elpa] externals/objed 58669ec 049/166: Fix backward/forward until context, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 6eb0fd5 052/166: Adjust objed-append-mode, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 1846dd8 053/166: Deactivate append mode on yank, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed b978583 055/166: add (require 'hl-line), Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 6c34f45 059/166: Change binding for objed-occur, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 6096696 063/166: Add alternate bindings for barf/slurp, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 7e25c50 061/166: Add forward slurp/barf sexp commands, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed 4d0503c 067/166: Allow using rx for regex objects, too, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed e6bed2e 065/166: Further improve regex object, Clemens Radermacher, 2019/12/29
- [elpa] externals/objed c666cea 076/166: Fix some sexp issues, Clemens Radermacher, 2019/12/29