[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs
From: |
Eli Zaretskii |
Subject: |
Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs |
Date: |
Thu, 16 Feb 2023 17:58:11 +0200 |
> Date: Thu, 16 Feb 2023 17:38:54 +0200
> Cc: emacs-devel@gnu.org
> From: Dmitry Gutov <dgutov@yandex.ru>
>
> On 16/02/2023 17:19, Eli Zaretskii wrote:
> >> - "electric" behaviors: CC Mode's commands vs. electric-indent-mode and
> >> electric-pair-mode.
> >> - c-subword-mode vs subword-mode
> >> - c-display-defun-name vs which-function-mode
> >> - c-indent-exp vs prog-indent-sexp
> >> - c-indent-defun/c-fill-paragraph vs prog-fill-reindent-defun
> >> - c-indent-line-or-region vs indent-for-tab-command and indent-region.
> >
> > These don't exist in c-ts-mode, with the single exception of the
> > electric behavior of '#' (which is a must in C).
>
> Could it work by adding ?# to electric-indent-chars?
Theo is working on that, so it's up to him.
> We are at a crossroads. I think. To the left lies the approach I
> described. To the right -- adding more stuff from CC Mode verbatim,
> simply because a lot of people are already used to it.
I don't see a reason to add C-specific features to c-ts-mode as long
as the general ones do a decent job. After reviewing the features and
their current equivalents in c-ts-mode, I asked for only one to be
added: electric-pound. All the rest I think are in relatively good
shape as we are. So are you sure we are at a crossroads and not
already home free?
> > (c-indent-line-or-region &optional ARG REGION)
> >
> > Indent active region, current line, or block starting on this line.
> > In Transient Mark mode, when the region is active, reindent the region.
> > Otherwise, with a prefix argument, rigidly reindent the expression
> > starting on the current line.
> > Otherwise reindent just the current line.
>
> Does the description mean that using the prefix will force a "rigid
> reindentation" of the region?
Not of the region, but of the sexp starting at that line. Exactly
like indent-for-tab-command:
(indent-for-tab-command &optional ARG)
Indent the current line or region, or insert a tab, as appropriate.
This function either inserts a tab, or indents the current line,
or performs symbol completion, depending on ‘tab-always-indent’.
The function called to actually indent the line or insert a tab
is given by the variable ‘indent-line-function’.
If a prefix argument is given (ARG), after this function indents the
current line or inserts a tab, it also rigidly indents the entire
balanced expression which starts at the beginning of the current
line, to reflect the current line’s indentation.
In most major modes, if point was in the current line’s
indentation, it is moved to the first non-whitespace character
after indenting; otherwise it stays at the same position relative
to the text.
If ‘transient-mark-mode’ is turned on and the region is active,
this function instead calls ‘indent-region’. In this case, any
prefix argument is ignored.
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, (continued)
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Dmitry Gutov, 2023/02/15
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Eli Zaretskii, 2023/02/15
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Dmitry Gutov, 2023/02/15
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Eli Zaretskii, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Dmitry Gutov, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Eli Zaretskii, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Dmitry Gutov, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Eli Zaretskii, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Dmitry Gutov, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Theodor Thornhill, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs,
Eli Zaretskii <=
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Dmitry Gutov, 2023/02/16
- Re: emacs-29 b18754bb179: Minor improvements in c-ts-mode and docs, Eli Zaretskii, 2023/02/16