[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/sweeprolog c1cf491c11 5/5: Narrow to current query for top
|
From: |
ELPA Syncer |
|
Subject: |
[nongnu] elpa/sweeprolog c1cf491c11 5/5: Narrow to current query for top-level completion at point |
|
Date: |
Tue, 14 Nov 2023 07:00:25 -0500 (EST) |
branch: elpa/sweeprolog
commit c1cf491c117c84230b1761a3d78ef98fe6273072
Author: Eshel Yaron <me@eshelyaron.com>
Commit: Eshel Yaron <me@eshelyaron.com>
Narrow to current query for top-level completion at point
* sweeprolog.el (sweeprolog-top-level-completion-at-point): New function.
(sweeprolog-top-level-mode): Use it.
---
sweeprolog.el | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/sweeprolog.el b/sweeprolog.el
index 73dbb0d43d..00822e31c0 100644
--- a/sweeprolog.el
+++ b/sweeprolog.el
@@ -3596,6 +3596,12 @@ GOAL. Otherwise, GOAL is set to a default value
specified by
sweeprolog-top-level-signal-default-goal)))
(sweeprolog-signal-thread sweeprolog-top-level-thread-id goal))
+(defun sweeprolog-top-level-completion-at-point ()
+ "Call `sweeprolog-completion-at-point' while narrowing to current query."
+ (when-let ((prompt-beg (car comint-last-prompt)))
+ (with-restriction prompt-beg (point-max)
+ (sweeprolog-completion-at-point))))
+
;;;###autoload
(define-derived-mode sweeprolog-top-level-mode comint-mode "Sweep Top-level"
"Major mode for interacting with an inferior Prolog interpreter."
@@ -3610,7 +3616,7 @@ GOAL. Otherwise, GOAL is set to a default value
specified by
comint-highlight-input nil
comment-start "%")
(add-hook 'post-self-insert-hook
#'sweeprolog-top-level--post-self-insert-function nil t)
- (add-hook 'completion-at-point-functions #'sweeprolog-completion-at-point
nil t)
+ (add-hook 'completion-at-point-functions
#'sweeprolog-top-level-completion-at-point nil t)
(add-hook 'after-change-functions #'sweeprolog-colourise-query nil t)
(add-hook 'xref-backend-functions #'sweeprolog--xref-backend nil t)
(when (and (member sweeprolog-faces-style '(light dark))