Subject: bug#73404: 30.0.50; [forward/kill/etc]-sexp commands do not behave as expected in tree-sitter modes

From: Juri Linkov <[email-masked]>
Date: Sat, 11 Jan 2025 20:19:47 +0200

> But indeed for list operations in indentation-based languages like
> Haskell/Python/Coffeescript/YAML, we're faced again with the fact that
> a closing LF can close several nested lists, so when going backward
> there is some amount of ambiguity (and I'd argue that it's preferable
> (and closer to the historical behavior) to choose to jump less far,
> e.g. so that `C-M-n C-M-p` never moves backward).

I tried to implement list operations in yaml-ts-mode
on the nodes "block_mapping_pair" and "flow_sequence".

While testing everything looked so nice when `C-M-f`
and `C-M-b` moved on the whole key-value pairs.

But in actual use, it turned out to be completely unusable.

It feels this is because `C-M-f` is expected to move
to the next symbol unless it's at the beginning
of (...), [...], if...fi, begin...end.

Perhaps we should still support list navigation only
for these 4 keys: 'C-M-n', 'C-M-p', 'C-M-d', 'C-M-y',
but not for `C-M-f` and `C-M-b`.