bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#54551: show-paren-mode inconsistency


From: goncholden
Subject: bug#54551: show-paren-mode inconsistency
Date: Fri, 25 Mar 2022 07:10:36 +0000

------- Original Message -------
On Friday, March 25th, 2022 at 6:47 PM, Eli Zaretskii <eliz@gnu.org> wrote:
> > Date: Thu, 24 Mar 2022 22:48:35 +0000
> > From: goncholden goncholden@protonmail.com
> > Cc: 54551@debbugs.gnu.org
> >
> > Consider the following command
> >
> > (setq initial-frame-alist '((width . 72) (height . 26)) ).
> >
> > Would be instructive that when one puts the cursor in the space between 
> > (width . 72) and (height . 26), the entire (width . 72) (height . 26) would 
> > be highlighted.
>
> Why only "(width . 72) (height . 26)" and not the entire setq expression?
>
> Or maybe I don't understand what you mean by "instructive", i.e. what
>
> exactly would you like Emacs to show you and why?
>
> show-paren-mode has a specific goal: to show you the matching
>
> parenthesis in an unobtrusive way, and do that as you type as well as
>
> when you move through the code. That is the "instructive" role that
>
> it takes up upon itself. It sounds like you want something else,
>
> which would then call for a different feature with different visuals
>
> (parenthesized expressions tend to nest, so being "inside" one of them
>
> means you are "inside" all of the outer ones, and displaying them
>
> calls for a different technique than what show-paren does).
>
> > But (setq show-paren-when-point-inside-paren t) does not do that.
> >
> > Can be very non-intuitive when debugging.
>
> For debugging, I suggest that you use C-M-u.
>
> > Also, if you put the cursor on the parenthesis following (height . 26), 
> > only (height . 26) gets highlighted, rather than the entire (height . 26) 
> > (height . 26).
>
> What do you mean by "the entire (height . 26)"? Did you try to set
> show-paren-style to 'expression', and if not, does it do what you
> want?

I had been trying "(customize-set-variable 'show-paren-when-point-inside-paren 
t)".
It has been suggested to me to try "highlight-sexp", which seems to work better 
than
the functionality provided by show-paren-when-point-inside-paren.

With "highlight-sexp", placing cursor after "(width . 72)" does highlight
"(width . 72) (height . 26)" for the expression
"(setq initial-frame-alist '((width . 72) (height . 26)) )"

"highlight-sexp" does highlight the innermost expression, not so with
"show-paren-when-point-inside-paren".

You are making sense, but I wondered if you could see possibilities for
improvements to "show-paren-mode".

I am debugging a problem where emacs states that there exists an extra
closing parenthesis, but having extreme difficulty locating it.

Have split the file in two and using "require" on a child file.  Otherwise
I have to comment each line of code rather than whole sections.  Commenting
each line is likely to introduce errors if one is not very careful removing
the comment tags.















reply via email to

[Prev in Thread] Current Thread [Next in Thread]