File tree Expand file tree Collapse file tree 5 files changed +8
-3
lines changed Expand file tree Collapse file tree 5 files changed +8
-3
lines changed Original file line number Diff line number Diff line change 127
127
(setf (current-state) state)))
128
128
129
129
(defun vi-enable-hook ()
130
+ (setf *region-end-offset* -1 )
130
131
(setf (current-state) (or (buffer-state (current-buffer)) (ensure-state ' normal)))
131
132
(add-hook *switch-to-buffer-hook* ' vi-switch-to-buffer)
132
133
(add-hook *switch-to-window-hook* ' vi-switch-to-window)
133
134
(add-hook *prompt-after-activate-hook* ' enter-prompt)
134
135
(add-hook *prompt-deactivate-hook* ' exit-prompt))
135
136
136
137
(defun vi-disable-hook ()
138
+ (setf *region-end-offset* 0 )
137
139
(remove-hook *switch-to-buffer-hook* ' vi-switch-to-buffer)
138
140
(remove-hook *switch-to-window-hook* ' vi-switch-to-window)
139
141
(remove-hook *prompt-after-activate-hook* ' enter-prompt)
Original file line number Diff line number Diff line change 66
66
(form-offset (mark-point (cursor-mark (current-point))) 1 ))
67
67
(t
68
68
(save-excursion
69
- (form-offset (current-point) 1 )
69
+ (character-offset ( form-offset (current-point) 1 ) *region-end-offset* )
70
70
(set-cursor-mark (current-point) (current-point))))))
71
71
72
72
(define-command (kill-sexp (:advice-classes editable-advice)) (&optional (n 1 )) (:universal )
Original file line number Diff line number Diff line change 644
644
:background-color )
645
645
; ; region.lisp
646
646
(:export
647
+ :*region-end-offset*
647
648
:check-marked-using-global-mode
648
649
:region-beginning-using-global-mode
649
650
:region-end-using-global-mode
Original file line number Diff line number Diff line change 331
331
(get-select-expression-points (current-point))
332
332
(when start
333
333
(set-current-mark start)
334
- (move-point (current-point) end))))
334
+ (move-point (current-point) (character-offset end *region-end-offset* ) ))))
335
335
336
336
(defun select-form-at-current-point ()
337
337
(with-point ((start (current-point))
341
341
(move-point end start)
342
342
(form-offset end 1 )
343
343
(set-current-mark start)
344
- (move-point (current-point) end))))
344
+ (move-point (current-point) (character-offset end *region-end-offset* ) ))))
345
345
346
346
347
347
(define-command <mouse-event> () ()
Original file line number Diff line number Diff line change 1
1
(in-package :lem-core )
2
2
3
+ (defvar *region-end-offset* 0 )
4
+
3
5
(defgeneric check-marked-using-global-mode (global-mode buffer))
4
6
(defgeneric region-beginning-using-global-mode (global-mode &optional buffer))
5
7
(defgeneric region-end-using-global-mode (global-mode &optional buffer))
You can’t perform that action at this time.
0 commit comments