Subject: bug#76679: 31.0.50; forward-sentence not working in the narrowed buffer under c-ts-mode

From: Juri Linkov <[email-masked]>
Date: Mon, 10 Mar 2025 20:28:12 +0200

>> The code `(forward-thing 'sentence)' is not working in narrowed region
>> under c-ts-mode.
>> 
>> For example, open file `test.c`, then turn on `c-ts-mode', what in the
>> buffer is:
>> 
>>     int main () { return 0; }
>>   
>> Now select word `return' and execute `narrow-to-region', then in buffer:
>> 
>>     Ireturn
>> 
>> where `I' represent the cursor. Now execute:
>> 
>>     (forward-thing 'sentence)
>> 
>> Then you will find that the cursor is stay still, not moving to the
>> end. This behavior is not like the ones anywhere else, I think it's a bug.
>
> I'm not sure the notion of a "sentence" is well defined in C-like
> languages.
>
> Yuan and Juri, any comments or suggestions?

We agreed that a "sentence" in C-like languages is a thing that
ends with a semicolon (or a comma that separates arguments).

However, this report raises a different question: whether forward-sentence
should navigate to the end of the narrowed region when the semicolon is hidden?