[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] master 7284a17: python.el: Generate clearer shell buffer n
From: |
Fabi�n Ezequiel Gallina |
Subject: |
[Emacs-diffs] master 7284a17: python.el: Generate clearer shell buffer names. |
Date: |
Fri, 26 Dec 2014 20:59:50 +0000 |
branch: master
commit 7284a174abc03c9ccf45aa43c939585beea351b7
Author: Fabián Ezequiel Gallina <address@hidden>
Commit: Fabián Ezequiel Gallina <address@hidden>
python.el: Generate clearer shell buffer names.
* lisp/progmodes/python.el (python-shell-get-process-name)
(python-shell-internal-get-process-name): Use `buffer-name`.
(python-shell-internal-get-or-create-process): Simplify.
* test/automated/python-tests.el (python-shell-get-process-name-1)
(python-shell-internal-get-process-name-1): Cleanup.
(python-shell-get-process-name-2)
(python-shell-internal-get-process-name-2): New tests.
(python-shell-calculate-command-1)
(python-shell-calculate-process-environment-3)
(python-shell-calculate-exec-path-2, python-shell-make-comint-1)
(python-shell-make-comint-2, python-shell-make-comint-4)
(python-shell-get-process-1, python-util-clone-local-variables-1):
Replace obsolete function and variable references with current.
---
lisp/ChangeLog | 8 +++
lisp/progmodes/python.el | 44 +++++-------------
test/ChangeLog | 13 +++++
test/automated/python-tests.el | 99 ++++++++++++++++++----------------------
4 files changed, 77 insertions(+), 87 deletions(-)
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 8d231a4..755499b 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,11 @@
+2014-12-26 Fabián Ezequiel Gallina <address@hidden>
+
+ python.el: Generate clearer shell buffer names.
+
+ * progmodes/python.el (python-shell-get-process-name)
+ (python-shell-internal-get-process-name): Use `buffer-name`.
+ (python-shell-internal-get-or-create-process): Simplify.
+
2014-12-26 Dmitry Gutov <address@hidden>
Add basic xref apropos implementation to elisp-mode.
diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 47c6a90..bd8c734 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -2087,36 +2087,18 @@ and `python-shell-output-prompt-regexp' using the
values from
(defun python-shell-get-process-name (dedicated)
"Calculate the appropriate process name for inferior Python process.
-If DEDICATED is t and the variable `buffer-file-name' is non-nil
-returns a string with the form
-`python-shell-buffer-name'[variable `buffer-file-name'] else
-returns the value of `python-shell-buffer-name'."
- (let ((process-name
- (if (and dedicated
- buffer-file-name)
- (format "%s[%s]" python-shell-buffer-name buffer-file-name)
- (format "%s" python-shell-buffer-name))))
- process-name))
+If DEDICATED is t returns a string with the form
+`python-shell-buffer-name'[`buffer-name'] else returns the value
+of `python-shell-buffer-name'."
+ (if dedicated
+ (format "%s[%s]" python-shell-buffer-name (buffer-name))
+ python-shell-buffer-name))
(defun python-shell-internal-get-process-name ()
"Calculate the appropriate process name for Internal Python process.
The name is calculated from `python-shell-global-buffer-name' and
-a hash of all relevant global shell settings in order to ensure
-uniqueness for different types of configurations."
- (format "%s [%s]"
- python-shell-internal-buffer-name
- (md5
- (concat
- python-shell-interpreter
- python-shell-interpreter-args
- python-shell--prompt-calculated-input-regexp
- python-shell--prompt-calculated-output-regexp
- (mapconcat #'symbol-value python-shell-setup-codes "")
- (mapconcat #'identity python-shell-process-environment "")
- (mapconcat #'identity python-shell-extra-pythonpaths "")
- (mapconcat #'identity python-shell-exec-path "")
- (or python-shell-virtualenv-root "")
- (mapconcat #'identity python-shell-exec-path "")))))
+the `buffer-name'."
+ (format "%s[%s]" python-shell-internal-buffer-name (buffer-name)))
(defun python-shell-calculate-command ()
"Calculate the string used to execute the inferior Python process."
@@ -2606,12 +2588,10 @@ there for compatibility with CEDET.")
(defun python-shell-internal-get-or-create-process ()
"Get or create an inferior Internal Python process."
- (let* ((proc-name (python-shell-internal-get-process-name))
- (proc-buffer-name (format " *%s*" proc-name)))
- (when (not (process-live-p proc-name))
- (run-python-internal)
- (setq python-shell-internal-buffer proc-buffer-name))
- (get-buffer-process proc-buffer-name)))
+ (let ((proc-name (python-shell-internal-get-process-name)))
+ (if (process-live-p proc-name)
+ (get-process proc-name)
+ (run-python-internal))))
(define-obsolete-function-alias
'python-proc 'python-shell-internal-get-or-create-process "24.3")
diff --git a/test/ChangeLog b/test/ChangeLog
index 7d33014..fda30d9 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -1,3 +1,16 @@
+2014-12-26 Fabián Ezequiel Gallina <address@hidden>
+
+ * automated/python-tests.el (python-shell-get-process-name-1)
+ (python-shell-internal-get-process-name-1): Cleanup.
+ (python-shell-get-process-name-2)
+ (python-shell-internal-get-process-name-2): New tests.
+ (python-shell-calculate-command-1)
+ (python-shell-calculate-process-environment-3)
+ (python-shell-calculate-exec-path-2, python-shell-make-comint-1)
+ (python-shell-make-comint-2, python-shell-make-comint-4)
+ (python-shell-get-process-1, python-util-clone-local-variables-1):
+ Replace obsolete function and variable references with current.
+
2014-12-19 Artur Malabarba <address@hidden>
* automated/let-alist.el: require `cl-lib'
diff --git a/test/automated/python-tests.el b/test/automated/python-tests.el
index de20a80..fd42794 100644
--- a/test/automated/python-tests.el
+++ b/test/automated/python-tests.el
@@ -1775,52 +1775,41 @@ def f():
(defvar python-tests-shell-interpreter "python")
(ert-deftest python-shell-get-process-name-1 ()
- "Check process name calculation on different scenarios."
+ "Check process name calculation sans `buffer-file-name'."
(python-tests-with-temp-buffer
- ""
- (should (string= (python-shell-get-process-name nil)
- python-shell-buffer-name))
- ;; When the `current-buffer' doesn't have `buffer-file-name', even
- ;; if dedicated flag is non-nil should not include its name.
- (should (string= (python-shell-get-process-name t)
- python-shell-buffer-name)))
+ ""
+ (should (string= (python-shell-get-process-name nil)
+ python-shell-buffer-name))
+ (should (string= (python-shell-get-process-name t)
+ (format "%s[%s]" python-shell-buffer-name
(buffer-name))))))
+
+(ert-deftest python-shell-get-process-name-2 ()
+ "Check process name calculation with `buffer-file-name'."
(python-tests-with-temp-file
- ""
- ;; `buffer-file-name' is non-nil but the dedicated flag is nil and
- ;; should be respected.
- (should (string= (python-shell-get-process-name nil)
- python-shell-buffer-name))
- (should (string=
- (python-shell-get-process-name t)
- (format "%s[%s]" python-shell-buffer-name buffer-file-name)))))
+ ""
+ ;; `buffer-file-name' is non-nil but the dedicated flag is nil and
+ ;; should be respected.
+ (should (string= (python-shell-get-process-name nil)
+ python-shell-buffer-name))
+ (should (string=
+ (python-shell-get-process-name t)
+ (format "%s[%s]" python-shell-buffer-name (buffer-name))))))
(ert-deftest python-shell-internal-get-process-name-1 ()
- "Check the internal process name is config-unique."
- (let* ((python-shell-interpreter python-tests-shell-interpreter)
- (python-shell-interpreter-args "")
- (python-shell-prompt-regexp ">>> ")
- (python-shell-prompt-block-regexp "[.][.][.] ")
- (python-shell-setup-codes "")
- (python-shell-process-environment "")
- (python-shell-extra-pythonpaths "")
- (python-shell-exec-path "")
- (python-shell-virtualenv-path "")
- (expected (python-tests-with-temp-buffer
- "" (python-shell-internal-get-process-name))))
- ;; Same configurations should match.
- (should
- (string= expected
- (python-tests-with-temp-buffer
- "" (python-shell-internal-get-process-name))))
- (let ((python-shell-interpreter-args "-B"))
- ;; A minimal change should generate different names.
- (should
- (not (string=
- expected
- (python-tests-with-temp-buffer
- "" (python-shell-internal-get-process-name))))))))
-
-(ert-deftest python-shell-parse-command-1 ()
+ "Check the internal process name is buffer-unique sans `buffer-file-name'."
+ (python-tests-with-temp-buffer
+ ""
+ (should (string= (python-shell-internal-get-process-name)
+ (format "%s[%s]" python-shell-internal-buffer-name
(buffer-name))))))
+
+(ert-deftest python-shell-internal-get-process-name-2 ()
+ "Check the internal process name is buffer-unique with `buffer-file-name'."
+ (python-tests-with-temp-file
+ ""
+ (should (string= (python-shell-internal-get-process-name)
+ (format "%s[%s]" python-shell-internal-buffer-name
(buffer-name))))))
+
+(ert-deftest python-shell-calculate-command-1 ()
"Check the command to execute is calculated correctly.
Using `python-shell-interpreter' and
`python-shell-interpreter-args'."
@@ -1832,7 +1821,7 @@ Using `python-shell-interpreter' and
(format "%s %s"
python-shell-interpreter
python-shell-interpreter-args)
- (python-shell-parse-command)))))
+ (python-shell-calculate-command)))))
(ert-deftest python-shell-calculate-process-environment-1 ()
"Test `python-shell-process-environment' modification."
@@ -1857,17 +1846,17 @@ Using `python-shell-interpreter' and
path-separator original-pythonpath)))))
(ert-deftest python-shell-calculate-process-environment-3 ()
- "Test `python-shell-virtualenv-path' modification."
+ "Test `python-shell-virtualenv-root' modification."
(let* ((original-path (or (getenv "PATH") ""))
- (python-shell-virtualenv-path
+ (python-shell-virtualenv-root
(directory-file-name user-emacs-directory))
(process-environment
(python-shell-calculate-process-environment)))
(should (not (getenv "PYTHONHOME")))
- (should (string= (getenv "VIRTUAL_ENV") python-shell-virtualenv-path))
+ (should (string= (getenv "VIRTUAL_ENV") python-shell-virtualenv-root))
(should (equal (getenv "PATH")
(format "%s/bin%s%s"
- python-shell-virtualenv-path
+ python-shell-virtualenv-root
path-separator original-path)))))
(ert-deftest python-shell-calculate-process-environment-4 ()
@@ -1900,13 +1889,13 @@ Using `python-shell-interpreter' and
(ert-deftest python-shell-calculate-exec-path-2 ()
"Test `python-shell-exec-path' modification."
(let* ((original-exec-path exec-path)
- (python-shell-virtualenv-path
+ (python-shell-virtualenv-root
(directory-file-name (expand-file-name user-emacs-directory)))
(exec-path (python-shell-calculate-exec-path)))
(should (equal
exec-path
(append (cons
- (format "%s/bin" python-shell-virtualenv-path)
+ (format "%s/bin" python-shell-virtualenv-root)
original-exec-path))))))
(ert-deftest python-shell-make-comint-1 ()
@@ -1922,7 +1911,7 @@ Using `python-shell-interpreter' and
(shell-buffer
(python-tests-with-temp-buffer
"" (python-shell-make-comint
- (python-shell-parse-command) proc-name)))
+ (python-shell-calculate-command) proc-name)))
(process (get-buffer-process shell-buffer)))
(unwind-protect
(progn
@@ -1943,7 +1932,7 @@ Using `python-shell-interpreter' and
(shell-buffer
(python-tests-with-temp-buffer
"" (python-shell-make-comint
- (python-shell-parse-command) proc-name nil t)))
+ (python-shell-calculate-command) proc-name nil t)))
(process (get-buffer-process shell-buffer)))
(unwind-protect
(progn
@@ -2010,7 +1999,7 @@ and `python-shell-interpreter-args' in the new shell
buffer."
(setenv "PYTHONSTARTUP" startup-file)
(python-tests-with-temp-buffer
"" (python-shell-make-comint
- (python-shell-parse-command) proc-name nil))))
+ (python-shell-calculate-command) proc-name nil))))
(process (get-buffer-process shell-buffer)))
(unwind-protect
(progn
@@ -2040,10 +2029,10 @@ and `python-shell-interpreter-args' in the new shell
buffer."
(dedicated-proc-name (python-shell-get-process-name t))
(global-shell-buffer
(python-shell-make-comint
- (python-shell-parse-command) global-proc-name))
+ (python-shell-calculate-command) global-proc-name))
(dedicated-shell-buffer
(python-shell-make-comint
- (python-shell-parse-command) dedicated-proc-name))
+ (python-shell-calculate-command) dedicated-proc-name))
(global-process (get-buffer-process global-shell-buffer))
(dedicated-process (get-buffer-process dedicated-shell-buffer)))
(unwind-protect
@@ -3767,7 +3756,7 @@ def foo(a, b, c):
. "from IPython.core.completerlib import module_completion")
(python-shell-completion-string-code
. "';'.join(get_ipython().Completer.all_completions('''%s'''))\n")
- (python-shell-virtualenv-path
+ (python-shell-virtualenv-root
. "/home/user/.virtualenvs/project"))))
(with-current-buffer buffer
(kill-all-local-variables)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] master 7284a17: python.el: Generate clearer shell buffer names.,
Fabi�n Ezequiel Gallina <=