unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: "Andreas Röhler" <andreas.roehler@easy-emacs.de>
To: help-gnu-emacs@gnu.org
Subject: Re: delete all whitespace (space) in a region
Date: Tue, 14 Nov 2023 09:41:05 +0100	[thread overview]
Message-ID: <e360b39e-db24-461e-9ce6-29186b234b25@easy-emacs.de> (raw)
In-Reply-To: <ZUxvbzHgO1tvrNkl@tuxteam.de>


Am 09.11.23 um 06:34 schrieb tomas@tuxteam.de:
> On Wed, Nov 08, 2023 at 09:24:53PM -0500, tpeplt wrote:
>> Manuel Giraud via Users list for the GNU Emacs text editor
>> <help-gnu-emacs@gnu.org>  writes:
>>> If you don't want to confirm for the replacements, you could instead do
>>> this:
>>>
>>> (defun my-delete-all-whitespace-region (beg end)
>>>    (interactive "r")
>>>    (save-excursion
>>>      (goto-char beg)
>>>      (while (re-search-forward " " end t)
>>>        (replace-match ""))))
> A small optimisation would be to use the regexp " +", meaning one
> or more spaces.
>
>> Emacs 28 added the function ‘replace-string-in-region’.
>>
>> (defun my-delete-all-whitespace-region (beg end)
>>    (interactive "r")
>>    (save-excursion
>>      (replace-string-in-region " " "" beg end)))
> To have this here, you'd have to "replace-regexp-in-region", of
> course.
>
> Cheers

BTW the code using replace-string-in-region and the form above are not 
equivalent.

The latter updates the end, whereas the previous keeps the old limit, 
which may do unexpected deletions.

Cheers,

Andreas



  reply	other threads:[~2023-11-14  8:41 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-08 17:53 delete all whitespace (space) in a region Uwe Brauer
2023-11-08 19:15 ` Manuel Giraud via Users list for the GNU Emacs text editor
2023-11-09  2:24   ` tpeplt
2023-11-09  2:43     ` Emanuel Berg
2023-11-13 16:02       ` Uwe Brauer
2023-11-09  5:34     ` tomas
2023-11-14  8:41       ` Andreas Röhler [this message]
2023-11-14  9:33         ` Michael Heerdegen
2023-11-09  8:44     ` Uwe Brauer
2023-11-09 15:58       ` tpeplt

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=e360b39e-db24-461e-9ce6-29186b234b25@easy-emacs.de \
    --to=andreas.roehler@easy-emacs.de \
    --cc=help-gnu-emacs@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.
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).