From: Jaehwang Jerry Jung <tomtomjhj@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 39517@debbugs.gnu.org
Subject: bug#39517: [PATCH] Add new option 'word-wrap-boundary'
Date: Tue, 11 Feb 2020 00:36:01 +0900 [thread overview]
Message-ID: <fb2ba175-29aa-4683-e398-1ed2a69967a3@gmail.com> (raw)
In-Reply-To: <83lfpbdbbq.fsf@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 2489 bytes --]
Hi. Thank you for the comments.
On 2/10/20 12:34 AM, Eli Zaretskii wrote:
>> From: Jaehwang Jerry Jung<tomtomjhj@gmail.com>
>> Date: Sun, 9 Feb 2020 16:43:34 +0900
>> Cc: Jaehwang Jerry Jung<tomtomjhj@gmail.com>
>>
>> * src/buffer.c (syms_of_buffer): Define buffer-local variable
>> word-wrap-boundary.
>> * src/buffer.h (struct buffer): Add word_wrap_boundary_.
>> * src/xdisp.c (IT_DISPLAYING_WORD_WRAP_BOUNDARY): replaces
>> IT_DISPLAYING_WHITESPACE.
> Thank you for your interest in Emacs.
>
> When proposing a new feature, please always describe the rationale and
> relevant practical use cases. In this case, it is not clear to me
> when it would make sense to allow arbitrary characters as wrap
> boundaries. Maybe you had only white-space characters in mind, but
> then why not use [:space:] or some Unicode category specification
> instead of allowing any characters?
I noticed that word wrapping looks a bit weird when the text contains
long URLs. So I wanted to add non-word ASCII characters so that URLs
can be wrapped more naturally as in other editors, while not changing
the default behavior.
>> + /* Characters that may cause word wrapping. */
>> + Lisp_Object word_wrap_boundary_;
> Any reason this is a Lisp object and not a C string?
No specific reason for that. I chose Lisp object because other members
like name_ are Lisp objects too.
>> -#define IT_DISPLAYING_WHITESPACE(it) \
>> - ((it->what == IT_CHARACTER && (it->c == ' ' || it->c == '\t')) \
>> +#define IT_DISPLAYING_WORD_WRAP_BOUNDARY(it) \
>> + ((it->what == IT_CHARACTER \
>> + && strchr ((char *) SDATA (BVAR (current_buffer, word_wrap_boundary)), \
>> + it->c)) \
> This cannot be right: characters are stored in Lisp strings in a
> multibyte encoding that is superset of UTF-8, so the above will only
> support pure-ASCII boundary characters, which is probably not what you
> had in mind.
You're right. Actually I think it would be simpler to hard-code a better
list of boundary characters in that macro.
> This feature, if we decide to accept it, will also need to be
> described in the Emacs user manual, as that is why you exposed this to
> Lisp. We would also want a defcustom form for it, probably in
> cus-start.el.
Thanks for letting me know that.
> Last, but not least, for a contribution this large, we will need you
> to assign the copyright to the FSF. If you agree, I will send you the
> form to fill and the instructions to send it.
Yes, I agree.
[-- Attachment #2: Type: text/html, Size: 3846 bytes --]
next prev parent reply other threads:[~2020-02-10 15:36 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-09 7:43 bug#39517: [PATCH] Add new option 'word-wrap-boundary' Jaehwang Jerry Jung
2020-02-09 15:34 ` Eli Zaretskii
2020-02-10 15:36 ` Jaehwang Jerry Jung [this message]
2020-02-10 16:10 ` Eli Zaretskii
2020-02-11 15:43 ` Jaehwang Jerry Jung
2020-08-09 11:23 ` Lars Ingebrigtsen
2020-08-09 14:11 ` Eli Zaretskii
2020-08-09 15:23 ` Jaehwang Jerry Jung
2020-08-09 15:25 ` Lars Ingebrigtsen
2020-08-09 15:44 ` Eli Zaretskii
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
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fb2ba175-29aa-4683-e398-1ed2a69967a3@gmail.com \
--to=tomtomjhj@gmail.com \
--cc=39517@debbugs.gnu.org \
--cc=eliz@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 external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.