From: Ihor Radchenko <yantar92@posteo.net>
To: Liu Hui <liuhui1610@gmail.com>
Cc: emacs-orgmode@gnu.org
Subject: Re: [PATCH] Set Python shell in Org edit buffer
Date: Sun, 28 Jan 2024 20:35:33 +0000 [thread overview]
Message-ID: <877cjtnqlm.fsf@localhost> (raw)
In-Reply-To: <CAOQTW-NySineGSBKEdBjBPj1TORczkVwYAoM=nuZ+gKyvn_jJA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 530 bytes --]
Liu Hui <liuhui1610@gmail.com> writes:
> Yes, I have updated the text and you're welcome to improve it. Thanks!
> From c503b2ed5116e2abae25459b09abc919074ac54a Mon Sep 17 00:00:00 2001
> From: Liu Hui <liuhui1610@gmail.com>
> Date: Tue, 5 Dec 2023 11:40:38 +0800
> Subject: [PATCH] Set Python shell in Org edit buffer
Now, after amending `org-src-associate-babel-session' to execute even
when no session is active, we can use
`org-babel-python-associate-session'.
Attaching tentative patch that should be equivalent to yours.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-ob-python-Set-Python-shell-in-Org-edit-buffer.patch --]
[-- Type: text/x-patch, Size: 2330 bytes --]
From f8a748aee619f9fa3f9104321b33212447e7f952 Mon Sep 17 00:00:00 2001
Message-ID: <f8a748aee619f9fa3f9104321b33212447e7f952.1706473998.git.yantar92@posteo.net>
From: Ihor Radchenko <yantar92@posteo.net>
Date: Sun, 28 Jan 2024 21:29:25 +0100
Subject: [PATCH] ob-python: Set Python shell in Org edit buffer
* lisp/ob-python.el (org-babel-python-associate-session): New function
setting `python-shell-buffer-name' in *Org Src* buffer according to
source block's :session parameter. This function will be triggered by
`org-src-associate-babel-session'.
* etc/ORG-NEWS (ob-python now sets ~python-shell-buffer-name~ in Org
edit buffers): Announce the change.
Link: https://orgmode.org/list/CAOQTW-MdC=jiGf+3bEVtfww+izSZix7csBJ+mZ4eZ2BQHDR42w@mail.gmail.com
---
etc/ORG-NEWS | 7 +++++++
lisp/ob-python.el | 6 ++++++
2 files changed, 13 insertions(+)
diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index f9c916a9d..2163f00e1 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -13,6 +13,13 @@ Please send Org bug reports to mailto:emacs-orgmode@gnu.org.
* Version 9.7 (not released yet)
** Important announcements and breaking changes
+*** ob-python now sets ~python-shell-buffer-name~ in Org edit buffers
+
+When editing a Python src block, the editing buffer is now associated
+with the Python shell specified by the src block's ~:session~ header,
+which means users can now send code directly from the edit buffer,
+e.g., using ~C-c C-c~, to the session specified in the Org buffer.
+
*** ~org-edit-special~ no longer force-starts session in R and Julia source blocks
Previously, when R/Julia source block had =:session= header argument
diff --git a/lisp/ob-python.el b/lisp/ob-python.el
index 4d7492e2b..2f62d7353 100644
--- a/lisp/ob-python.el
+++ b/lisp/ob-python.el
@@ -83,6 +83,12 @@ (defcustom org-babel-python-None-to 'hline
:package-version '(Org . "8.0")
:type 'symbol)
+(defun org-babel-python-associate-session (session)
+ "Associate Python code buffer with an Python session.
+Make SESSION without earmuffs be the Python buffer name."
+ (setq-local python-shell-buffer-name
+ (org-babel-python-without-earmuffs session)))
+
(defun org-babel-execute:python (body params)
"Execute Python BODY according to PARAMS.
This function is called by `org-babel-execute-src-block'."
--
2.43.0
[-- Attachment #3: Type: text/plain, Size: 224 bytes --]
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
next prev parent reply other threads:[~2024-01-28 20:33 UTC|newest]
Thread overview: 62+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-12-05 10:18 [PATCH] Set Python shell in Org edit buffer Liu Hui
2023-12-05 11:51 ` Ihor Radchenko
2023-12-06 4:41 ` Liu Hui
2023-12-06 13:23 ` Ihor Radchenko
2023-12-07 4:45 ` Liu Hui
2023-12-07 10:36 ` Ihor Radchenko
2023-12-07 14:17 ` Liu Hui
2023-12-07 15:19 ` Ihor Radchenko
2023-12-08 10:19 ` Liu Hui
2023-12-08 13:09 ` Ihor Radchenko
2023-12-09 2:33 ` Liu Hui
2023-12-09 10:32 ` Ihor Radchenko
2023-12-09 13:36 ` Liu Hui
2023-12-27 6:04 ` Jack Kamm
2023-12-28 11:48 ` Ihor Radchenko
2023-12-31 18:31 ` Jack Kamm
2024-01-05 13:45 ` Ihor Radchenko
2024-01-05 23:29 ` Christopher M. Miles
2024-01-12 11:58 ` [ob-clojure] Clojure sessions in Org Src buffers (was: [PATCH] Set Python shell in Org edit buffer) Ihor Radchenko
2024-01-07 6:07 ` [PATCH] Set Python shell in Org edit buffer Jack Kamm
2024-01-07 12:54 ` Ihor Radchenko
2024-01-07 19:06 ` Jack Kamm
2024-01-07 23:14 ` William Denton
2024-01-08 12:26 ` Ihor Radchenko
2024-01-09 4:09 ` Jack Kamm
2024-01-09 4:25 ` Jack Kamm
2024-01-09 18:16 ` Ihor Radchenko
2024-01-10 6:21 ` Jack Kamm
2024-01-10 12:18 ` [FR] Add buffer-local setting to request specific ESS process/session name (was: [PATCH] Set Python shell in Org edit buffer) Ihor Radchenko
2024-01-10 19:14 ` Sparapani, Rodney
2024-01-10 19:15 ` Sparapani, Rodney
2024-01-10 19:31 ` Ihor Radchenko
2024-01-10 19:39 ` Sparapani, Rodney
2024-01-10 20:15 ` Ihor Radchenko
2024-01-10 21:44 ` [External] " Richard M. Heiberger
2024-01-10 21:53 ` Ihor Radchenko
2024-01-21 11:48 ` [PATCH] " Ihor Radchenko
2024-01-21 18:21 ` Sparapani, Rodney
2024-01-22 12:13 ` Ihor Radchenko
2024-01-22 13:46 ` Martin Maechler
2024-01-25 13:09 ` Ihor Radchenko
2024-01-25 15:23 ` Sparapani, Rodney
2024-01-25 15:33 ` Ihor Radchenko
2024-01-25 15:42 ` Sparapani, Rodney
2024-01-25 22:47 ` Ihor Radchenko
2024-01-10 12:19 ` [PATCH] Set Python shell in Org edit buffer Ihor Radchenko
2024-01-14 17:23 ` Jack Kamm
2024-01-16 13:49 ` Ihor Radchenko
2024-01-16 16:05 ` Jack Kamm
2024-01-28 19:12 ` Ihor Radchenko
2024-01-29 4:23 ` Jack Kamm
2023-12-27 6:07 ` Jack Kamm
2023-12-28 11:51 ` Ihor Radchenko
2023-12-29 16:04 ` Jack Kamm
2023-12-31 13:05 ` Ihor Radchenko
2023-12-31 18:14 ` Jack Kamm
2024-01-05 14:00 ` Ihor Radchenko
2023-12-29 22:20 ` Jack Kamm
2023-12-30 7:08 ` Liu Hui
2024-01-28 20:35 ` Ihor Radchenko [this message]
2024-01-29 4:21 ` Jack Kamm
2024-01-29 13:31 ` Ihor Radchenko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=877cjtnqlm.fsf@localhost \
--to=yantar92@posteo.net \
--cc=emacs-orgmode@gnu.org \
--cc=liuhui1610@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).