emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/swift-mode 0daff60 463/496: Fix unreadable characters appe


From: ELPA Syncer
Subject: [nongnu] elpa/swift-mode 0daff60 463/496: Fix unreadable characters appearing in repl prompt
Date: Sun, 29 Aug 2021 11:34:28 -0400 (EDT)

branch: elpa/swift-mode
commit 0daff60105eee0f936976543e0e0e65c88627ab4
Author: Jaeyoon Jeong <dalgong@users.noreply.github.com>
Commit: taku0 <taku0@users.noreply.github.com>

    Fix unreadable characters appearing in repl prompt
    
    This seems a better fix for swift-emacs/swift-mode#132; The original 
solution didn't work for me.
---
 swift-mode-repl.el | 28 ++++++++++++++++------------
 1 file changed, 16 insertions(+), 12 deletions(-)

diff --git a/swift-mode-repl.el b/swift-mode-repl.el
index db82504..e33af51 100644
--- a/swift-mode-repl.el
+++ b/swift-mode-repl.el
@@ -176,21 +176,25 @@ Runs the hook `swift-repl-mode-hook' \(after the 
`comint-mode-hook' is run).
          (cmd-string (swift-mode:command-list-to-string cmd))
          (cmd-list (swift-mode:command-string-to-list cmd))
          (buffer-name (concat "*Swift REPL [" cmd-string "]*"))
-         (buffer (get-buffer-create buffer-name)))
-    (unless dont-switch
-      (pop-to-buffer buffer))
-    (with-current-buffer buffer
-      (unless (comint-check-proc buffer-name)
-        (save-excursion
-          (apply 'make-comint-in-buffer
-                 cmd-string buffer (car cmd-list) nil (cdr cmd-list))
-          (swift-repl-mode)))
-      (setq-local swift-mode:repl-buffer buffer-name))
+         (buffer (get-buffer-create buffer-name))
+         old-size)
     (with-current-buffer original-buffer
-      (setq-local swift-mode:repl-buffer buffer-name)
+      (setq-local swift-mode:repl-buffer buffer)
       (unless keep-default
         (setq-local swift-mode:repl-executable cmd)
-        (setq-default swift-mode:repl-buffer swift-mode:repl-buffer)))))
+        (setq-default swift-mode:repl-buffer swift-mode:repl-buffer)))
+    (with-current-buffer buffer
+      (setq old-size (buffer-size))
+      (swift-repl-mode)
+      (setq-local swift-mode:repl-buffer buffer))
+    (unless (comint-check-proc buffer)
+      (apply 'make-comint-in-buffer
+             cmd-string buffer (car cmd-list) nil (cdr cmd-list))
+      (with-current-buffer buffer
+        (while (= old-size (buffer-size))
+          (sleep-for .1))))
+    (unless dont-switch
+      (pop-to-buffer buffer))))
 
 ;;;###autoload
 (defalias 'run-swift 'swift-mode:run-repl)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]