unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Lin Sun <sunlin7.mail@gmail.com>
To: 71083@debbugs.gnu.org
Subject: bug#71083: [PATCH] ; Enhance the "python-shell-send-block" for convenience
Date: Mon, 20 May 2024 20:28:17 +0000	[thread overview]
Message-ID: <CABCREdqa16sn2ppcbC8V8rXxD-DgADWRwaUoLu7Krgd188Xryg@mail.gmail.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 718 bytes --]

Hi,

This patch tries to make `python-shell-send-block' more convenient.

I had added the function `python-shell-send-block'  twenty days ago in
bug#70609, it will send code block with header by default, and a
prefix "C-u" to call the function will send block without header.

And I received some feedback that sending a block without a header
should be a more used one.

Many python blocks begin with "if condition", and users may want to
send the block without its condition header to try different condition
branches.

So this patch will make sending block without header to be the default
behavior, and a prefix "C-u" will make the function to send block with
header.

Please help review this minor change. Thanks

[-- Attachment #2: 0001-Enhance-the-python-shell-send-block-for-convenience.patch --]
[-- Type: text/x-patch, Size: 2543 bytes --]

From 7eefbf3e4de925c211e483a809d0f8d94e8d17f0 Mon Sep 17 00:00:00 2001
From: Lin Sun <sunlin7@hotmail.com>
Date: Mon, 20 May 2024 06:55:31 +0000
Subject: [PATCH] ; Enhance the "python-shell-send-block" for convenience

* lisp/progmodes/python.el (python-shell-send-block):
  The "python-shell-send-block" will send block without header defaultly.
* lisp/progmodes/python.el: Update test case.
---
 lisp/progmodes/python.el            | 4 ++--
 test/lisp/progmodes/python-tests.el | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el
index 7f28f583543..9ec198da79a 100644
--- a/lisp/progmodes/python.el
+++ b/lisp/progmodes/python.el
@@ -4149,14 +4149,14 @@ interactively."
   "Send the block at point to inferior Python process.
 The block is delimited by `python-nav-beginning-of-block' and
 `python-nav-end-of-block'.  If optional argument ARG is non-nil
-(interactively, the prefix argument), send the block body without
+(interactively, the prefix argument), send the block body with
 its header.  If optional argument MSG is non-nil, force display
 of a user-friendly message if there's no process running; this
 always happens interactively."
   (interactive (list current-prefix-arg t))
   (let ((beg (save-excursion
                (when (python-nav-beginning-of-block)
-                 (if (null arg)
+                 (if arg
                      (beginning-of-line)
                    (python-nav-end-of-statement)
                    (beginning-of-line 2)))
diff --git a/test/lisp/progmodes/python-tests.el b/test/lisp/progmodes/python-tests.el
index f50797953c3..803008db8a3 100644
--- a/test/lisp/progmodes/python-tests.el
+++ b/test/lisp/progmodes/python-tests.el
@@ -7476,7 +7476,7 @@ print('current 3')"
     (goto-char (point-min))
     (should-error (python-shell-send-block) :type 'user-error)
     (forward-line)
-    (python-shell-send-block)
+    (python-shell-send-block t) ;; send block with header
     (python-tests-shell-wait-for-prompt)
     (python-shell-with-shell-buffer
       (goto-char (point-min))
@@ -7485,7 +7485,7 @@ print('current 3')"
       (should (re-search-forward "current 2" nil t))
       (should-not (re-search-forward "current 3" nil t)))
     (forward-line)
-    (python-shell-send-block t) ;; send block body only
+    (python-shell-send-block) ;; send block body only
     (python-tests-shell-wait-for-prompt)
     (python-shell-with-shell-buffer
       ;; should only 1 line output from the block body
-- 
2.20.5


             reply	other threads:[~2024-05-20 20:28 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-20 20:28 Lin Sun [this message]
2024-05-25  8:03 ` bug#71083: [PATCH] ; Enhance the "python-shell-send-block" for convenience Eli Zaretskii
2024-05-25  8:49   ` kobarity
2024-05-25 15:57     ` Lin Sun
2024-05-26  0:35       ` kobarity
2024-05-26  8:30       ` Eli Zaretskii
2024-05-26 18:41         ` Lin Sun

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.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CABCREdqa16sn2ppcbC8V8rXxD-DgADWRwaUoLu7Krgd188Xryg@mail.gmail.com \
    --to=sunlin7.mail@gmail.com \
    --cc=71083@debbugs.gnu.org \
    /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.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).