[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/sweeprolog c0d8189056 06/12: FIXED: top-level buffer to th
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/sweeprolog c0d8189056 06/12: FIXED: top-level buffer to thread synchronization |
Date: |
Thu, 6 Oct 2022 02:59:33 -0400 (EDT) |
branch: elpa/sweeprolog
commit c0d818905667f7f66922f41322f61cdf572a59bd
Author: Eshel Yaron <me@eshelyaron.com>
Commit: Eshel Yaron <me@eshelyaron.com>
FIXED: top-level buffer to thread synchronization
---
sweep.pl | 8 ++++----
sweeprolog.el | 15 +++++++++------
2 files changed, 13 insertions(+), 10 deletions(-)
diff --git a/sweep.pl b/sweep.pl
index 4a1d376101..fd2dc0200a 100644
--- a/sweep.pl
+++ b/sweep.pl
@@ -829,12 +829,12 @@ sweep_top_level_client(InStream, OutStream,
ip(127,0,0,1)) :-
set_stream(user_input, newline(detect)),
set_stream(user_output, newline(dos)),
set_stream(user_error, newline(dos)),
+ thread_self(Self),
+ thread_property(Self, id(Id)),
+ thread_at_exit(retractall(sweep_top_level_thread_buffer(Id, _))),
call_cleanup(prolog,
( close(InStream, [force(true)]),
- close(OutStream, [force(true)]),
- thread_self(Self),
- thread_property(Self, id(Id)),
- retractall(sweep_top_level_thread_buffer(Id, _))
+ close(OutStream, [force(true)])
)).
sweep_top_level_client(InStream, OutStream, _) :-
close(InStream),
diff --git a/sweeprolog.el b/sweeprolog.el
index bd9a9b78fc..51e7522100 100644
--- a/sweeprolog.el
+++ b/sweeprolog.el
@@ -1521,10 +1521,14 @@ Interactively, a prefix arg means to prompt for BUFFER."
(sweeprolog-close-query)
(unless (sweeprolog-true-p sol)
(error "Failed to create new top-level!")))
- (make-comint-in-buffer "sweeprolog-top-level"
- buf
- (cons "localhost"
- sweeprolog-prolog-server-port))
+ (with-current-buffer buf
+ (make-comint-in-buffer "sweeprolog-top-level"
+ buf
+ (cons "localhost"
+ sweeprolog-prolog-server-port))
+ (unless comint-last-prompt
+ (accept-process-output (get-buffer-process (current-buffer)) 1))
+ (sweeprolog-top-level--populate-thread-id))
(pop-to-buffer buf sweeprolog-top-level-display-action)))
(defun sweeprolog-top-level--post-self-insert-function ()
@@ -1578,7 +1582,7 @@ Interactively, a prefix arg means to prompt for BUFFER."
(buffer-local-value 'major-mode b))))
(read-string "Signal goal: ?- ")))
(sweeprolog-signal-thread (buffer-local-value 'sweeprolog-top-level-thread-id
- buffer)
+ (get-buffer buffer))
goal))
;;;###autoload
@@ -1593,7 +1597,6 @@ Interactively, a prefix arg means to prompt for BUFFER."
(length s)))
comint-delimiter-argument-list '(?,)
comment-start "%")
- (add-hook 'comint-exec-hook #'sweeprolog-top-level--populate-thread-id nil t)
(add-hook 'post-self-insert-hook
#'sweeprolog-top-level--post-self-insert-function nil t)
(setq sweeprolog-buffer-module "user")
(add-hook 'completion-at-point-functions
#'sweeprolog-completion-at-point-function nil t)
- [nongnu] elpa/sweeprolog updated (c1eac3d1ac -> 47cec7fd85), ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 5fda5e16bd 02/12: NEWS.org: announce sweeprolog-document-predicate-at-point, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 6d8659a1ff 03/12: ADDED: sweep Top-level Menu for listing Prolog top-levels, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 5913f010b6 07/12: ADDED: new command for signaling the current top-level, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 77846f0441 05/12: ADDED: new command for signaling Prolog top-level threads, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog c0d8189056 06/12: FIXED: top-level buffer to thread synchronization,
ELPA Syncer <=
- [nongnu] elpa/sweeprolog e82fd5ce12 01/12: README.org: fix typos, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 9773817648 11/12: Announce recent changes in NEWS.org, bump version to 0.5.0, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 47cec7fd85 12/12: DOC: add manual sections "Contributing" and "Things to do", ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog f40dcff155 04/12: FIXED: reverse args modes in sweeprolog-document-predicate-at-point, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 51139ad178 08/12: ADDED: new command for signaling a top-level from the Top-level Menu, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 39bab049b1 10/12: DOC: describe the Top-level Menu and signaling in the manual, ELPA Syncer, 2022/10/06
- [nongnu] elpa/sweeprolog 4754971669 09/12: ADDED: key and menu bindings for sweeprolog-list-top-levels, ELPA Syncer, 2022/10/06