@@ -1391,16 +1391,20 @@ If POSITION is not provided, then default to be the current position."
1391
1391
sis-inline-mode
1392
1392
sis-inline-mode)
1393
1393
1394
+ (defsubst sis--evil-not-insert-state-p ()
1395
+ " In Evil but not at insert state."
1396
+ (and (featurep 'evil )
1397
+ (or (evil-normal-state-p)
1398
+ (evil-visual-state-p)
1399
+ (evil-motion-state-p)
1400
+ (evil-operator-state-p))))
1401
+
1394
1402
(defsubst sis--inline-effect-space-inserted-p ()
1395
- " A effective space is inserted."
1403
+ " An effective space is inserted."
1396
1404
(and sis-inline-mode
1397
1405
(not (overlayp sis--inline-overlay))
1398
1406
(not (button-at (point )))
1399
- (not (and (featurep 'evil )
1400
- (or (evil-normal-state-p)
1401
- (evil-visual-state-p)
1402
- (evil-motion-state-p)
1403
- (evil-operator-state-p))))
1407
+ (not (sis--evil-not-insert-state-p))
1404
1408
; ; around char is <spc> <DBC spc>
1405
1409
(memq (preceding-char ) (list ?\s 12288 ))))
1406
1410
@@ -1524,9 +1528,13 @@ START: start position of the inline region."
1524
1528
(let* ((back-detect (sis--back-detect-chars))
1525
1529
(back-to (sis-back-detect-to back-detect))
1526
1530
(back-char (sis-back-detect-char back-detect)))
1527
-
1528
-
1529
1531
(cond
1532
+ (; if in evil but not insert state
1533
+ (sis--evil-not-insert-state-p)
1534
+ (sis-set-english))
1535
+ (; if cursor is not at the end of the overlay
1536
+ (/= (point ) (sis--inline-overlay-end)
1537
+ (sis-context))
1530
1538
(; inline english region
1531
1539
(eq sis--inline-lang 'english )
1532
1540
(sis-set-other))
0 commit comments