From: Masatake YAMATO <yamato@redhat.com>
To: checker@d6.com
Cc: 29097@debbugs.gnu.org
Subject: bug#29097: 25.1; to support '_' as a word constituent, subword-mode regexes need updating
Date: Wed, 01 Nov 2017 18:28:42 +0900 (JST) [thread overview]
Message-ID: <20171101.182842.541615102291611059.yamato@redhat.com> (raw)
In-Reply-To: <CAOdMLc32qSKOwAzb2JMM8yag8vg72GBYPmRsSPbD+tGC3ru4UQ@mail.gmail.com>
> Yes, sexp's include entire brace blocks and whatnot. I just want to
> forward into valid c identifiers but with subword support. So there's
> still a big difference between the two functions?
I'm talking in narrower scope: C identifier.
Originally subword-mode focuses on moving the point within a C identifier.
I will use '*' is for the current point position.
I will use '^' is for the point position when you press
a key for forwarding.
Let's introduce an example.
gtk_main
=======================================begin
\M-\C-f works as follows:
gtk_main
*-------^
\M-f(subword mode: off) works as follows:
gtk_main
*--^
\C-f works as follows:
gtk_main
*^
=======================================end
For gtk_main, there is no area that subword-mode works.
Subword more make sense when a user thinks granularity(?) of
moving the point with \M-f is too large.
=======================================begin
\M-f(subword mode: off):
NSObjectGtk_main
*----------^
\M-f(subword mode: on):
NSObjectGtk_main
*-^
=======================================end
subword mode provides finer granularity \M-f to those who thinks
granularity(?) of moving the point with (original) \M-f is too large.
This is the original intention I worked on c-subword-mode, the
ancestor of subword-mode.
In other hand, you are setting,
> (modify-syntax-entry ?_ "w")
It seems for me that you think granularity(?) of moving the point with
(original) \M-f is too small. This syntax modification makes moving the
point with (original) \M-f larger.
My basic assumption for designing c-subword-mode is not satisfied.
So I cannot show good direction as an original developer.
The mode syntax defines the behavior of \M-\C-f and \M-f in the mode.
Extending syntax mechanism allowing to define upper case, lower case
and something is ideal. The behavior of subword-forward and subword-backward
can be derived from the exnteded syntax.
Masatake YAMATO
> Yes, sexp's include entire brace blocks and whatnot. I just want to
> forward into valid c identifiers but with subword support. So there's
> still a big difference between the two functions?
>
> Chris
>
>
>
> On Tue, Oct 31, 2017 at 22:54 Masatake YAMATO <yamato@redhat.com> wrote:
>
>> Hi,
>>
>> I read the original bug report.
>>
>> I wonder why you want do
>>
>> (modify-syntax-entry ?_ "w")
>>
>> .
>>
>> This change suppresses the difference of \M-f and \M-C-f.
>> Do you really want this suppression?
>>
>> Masatake YAMATO
>>
>>
>> >> From: Chris Hecker <checker@d6.com>
>> >> Date: Tue, 31 Oct 2017 20:51:23 -0700
>> >> Cc: yamato@redhat.com
>> >>
>> >> If you like using identifiers with underscores (_) in them, like
>> >> C macros or even just regular identifiers, you can add _ as a word
>> >> constituent in the syntax tables, but if you're using subword-mode
>> >> then the forward and backwards regexes need updating to work
>> >> correctly. Here is the relevant section of my .emacs c-mode hook:
>> >
>> > Perhaps we should make subword-forward-regexp and
>> > subword-backward-regexp defcustoms?
>>
prev parent reply other threads:[~2017-11-01 9:28 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-11-01 3:51 bug#29097: 25.1; to support '_' as a word constituent, subword-mode regexes need updating Chris Hecker
2017-11-01 4:06 ` Eli Zaretskii
2017-11-01 5:08 ` Chris Hecker
2017-11-01 19:33 ` Eli Zaretskii
2017-11-01 22:40 ` Chris Hecker
[not found] ` <87shdm3mby.fsf@users.sourceforge.net>
2019-10-01 15:59 ` Lars Ingebrigtsen
2017-11-01 5:54 ` Masatake YAMATO
2017-11-01 6:20 ` Chris Hecker
2017-11-01 9:28 ` Masatake YAMATO [this message]
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=20171101.182842.541615102291611059.yamato@redhat.com \
--to=yamato@redhat.com \
--cc=29097@debbugs.gnu.org \
--cc=checker@d6.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 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.