bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-23 Thread Ikumi Keita
Hi Arash,

> Arash Esbati  writes:
> Ikumi Keita  writes:
>> Do you think that we should also revert the similar changes for
>> paragraph related variables?

> I'm not sure if that part is really relevant for users.  I suggest we
> keep that as is and touch it if we get feedback from the users.  Does it
> make sense?

OK, then I'll install the current patch.

Regards,
Ikumi Keita
#StandWithUkraine #StopWarInUkraine
#Gaza #StopMassiveKilling #CeasefireNOW




___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-23 Thread Arash Esbati
Hi Keita,

Ikumi Keita  writes:

> I see, here is a tentative patch.

Thanks.

> Do you think that we should also revert the similar changes for
> paragraph related variables?

I'm not sure if that part is really relevant for users.  I suggest we
keep that as is and touch it if we get feedback from the users.  Does it
make sense?

Best, Arash



___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-22 Thread Ikumi Keita
Hi Arash,

> Arash Esbati  writes:
> I think that "customized section commands defined in file local
> variables" is more a corner case than enabling `outline-minor-mode' via
> `LaTeX-mode-hook'; and we a have recipe for former if needed.  So it's
> up to us to make a decision here: there will be unhappy customers, but
> how many?  ;-)

I see, here is a tentative patch. Do you think that we should also
revert the similar changes for paragraph related variables?

Regards,
Ikumi Keita
#StandWithUkraine #StopWarInUkraine
#Gaza #StopMassiveKilling #CeasefireNOW

diff --git a/context.el b/context.el
index 5ee0217d..86991ccf 100644
--- a/context.el
+++ b/context.el
@@ -1875,9 +1875,8 @@ that is, you do _not_ have to cater for this yourself by adding \\=' or $."
   ;; Outline support
   (require 'outline)
   (set (make-local-variable 'outline-level) #'ConTeXt-outline-level)
-  ;; Moved after `run-mode-hooks'. (bug#65750)
-  ;; (set (make-local-variable 'outline-regexp) (ConTeXt-outline-regexp t))
-  ;;(make-local-variable 'outline-heading-end-regexp)
+  (set (make-local-variable 'outline-regexp) (ConTeXt-outline-regexp t))
+  (make-local-variable 'outline-heading-end-regexp)
   (setq TeX-header-end (ConTeXt-header-end)
 TeX-trailer-start (ConTeXt-trailer-start))
 
@@ -1913,10 +1912,7 @@ Run after mode hooks and file local variables application."
  "[ \t]*\\("
  (ConTeXt-paragraph-commands-regexp) "\\|"
  "\\$\\$\\|" ; Plain TeX display math
- "$\\)"))
-
-  (or (local-variable-p 'outline-regexp)
-  (setq-local outline-regexp (ConTeXt-outline-regexp t
+ "$\\)")))
 
 (defun context-guess-current-interface ()
   "Guess what ConTeXt interface the current buffer is using."
diff --git a/latex.el b/latex.el
index 83de0e84..de70c7f5 100644
--- a/latex.el
+++ b/latex.el
@@ -8268,16 +8268,6 @@ Run after mode hooks and file local variables application."
   (if (bound-and-true-p filladapt-mode)
   (turn-off-filladapt-mode))
 
-  ;; Don't overwrite the value the user set by hooks or file
-  ;; (directory) local variables.
-  (or (local-variable-p 'outline-regexp)
-  (setq-local outline-regexp (LaTeX-outline-regexp t)))
-  (or (local-variable-p 'outline-heading-alist)
-  (setq outline-heading-alist
-(mapcar (lambda (x)
-  (cons (concat "\\" (nth 0 x)) (nth 1 x)))
-LaTeX-section-list)))
-
   ;; Keep `LaTeX-paragraph-commands-regexp' in sync with
   ;; `LaTeX-paragraph-commands' in case the latter is updated by
   ;; hooks or file (directory) local variables.
@@ -8441,13 +8431,12 @@ function would return non-nil and `(match-string 1)' would return
 
   (require 'outline)
   (set (make-local-variable 'outline-level) #'LaTeX-outline-level)
-  ;; Moved after `run-mode-hooks'. (bug#65750)
-  ;; (set (make-local-variable 'outline-regexp) (LaTeX-outline-regexp t))
-  ;; (when (boundp 'outline-heading-alist)
-  ;;   (setq outline-heading-alist
-  ;; (mapcar (lambda (x)
-  ;;   (cons (concat "\\" (nth 0 x)) (nth 1 x)))
-  ;; LaTeX-section-list)))
+  (set (make-local-variable 'outline-regexp) (LaTeX-outline-regexp t))
+  (when (boundp 'outline-heading-alist)
+(setq outline-heading-alist
+  (mapcar (lambda (x)
+(cons (concat "\\" (nth 0 x)) (nth 1 x)))
+  LaTeX-section-list)))
 
   (setq-local TeX-auto-full-regexp-list
   (delete-dups (append LaTeX-auto-regexp-list
diff --git a/tex-info.el b/tex-info.el
index fc10f018..9f919ee3 100644
--- a/tex-info.el
+++ b/tex-info.el
@@ -31,9 +31,6 @@
 
 (require 'texinfo)
 
-;; Silence the compiler for variables:
-(defvar outline-heading-alist)
-
 ;;; Environments:
 (defvar Texinfo-environment-list
   '(("cartouche") ("command") ("copying") ("defcv") ("deffn") ("defivar")
@@ -672,13 +669,12 @@ value of `Texinfo-mode-hook'."
   (set (make-local-variable 'syntax-propertize-function)
texinfo-syntax-propertize-function)
 
-  ;; Moved after `run-mode-hooks'. (bug#65750)
-  ;; (setq-local outline-heading-alist
-  ;; (mapcar (lambda (x) (cons (concat "@" (car x)) (cadr x)))
-  ;;   	  texinfo-section-list))
-  ;; (setq-local outline-regexp
-  ;; (concat (regexp-opt (mapcar #'car outline-heading-alist) t)
-  ;;   	  "\\>"))
+  (setq-local outline-heading-alist
+  (mapcar (lambda (x) (cons (concat "@" (car x)) (cadr x)))
+	  texinfo-section-list))
+  (setq-local outline-regexp
+  (concat (regexp-opt (mapcar #'car outline-heading-alist) t)
+	  "\\>"))
 
   ;; Mostly AUCTeX stuff
   (set (make-local-variable 'TeX-command-current) #'TeX-command-master)
@@ -873,16 +869,6 @@ Run after mode hooks and file local variables application."
texinfo-chapter-level-regexp
"\\)")))
 
-  ;; Outline settings.
-  (or (local-variable-p 'outline-heading-alist)
-  

bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-22 Thread Arash Esbati
Ikumi Keita  writes:

> I feel a bit reluctant about that idea since it doesn't recognize the
> customized section commands defined in file local variables. In that
> case, the user has to do by oneself either of the following
> alternatives:
> 1. Defer the call to `outline-hide-body' after parsing file local vars.
> 2. Add parsing file local vars (at least for `LaTeX-section-list')
>explicitly before calling `outline-minor-mode'. 
>
> But maybe we can ignore such corner case.

I think that "customized section commands defined in file local
variables" is more a corner case than enabling `outline-minor-mode' via
`LaTeX-mode-hook'; and we a have recipe for former if needed.  So it's
up to us to make a decision here: there will be unhappy customers, but
how many?  ;-)

Best, Arash



___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-22 Thread Ikumi Keita
Hi Arash,

> Arash Esbati  writes:
> Maybe we revert the change for bug #65750 and declare that one as "won't
> fix".

Yes, it's a possible option, I think.

> If we have to find a compromise, I vote for supporting

>   (add-hook 'LaTeX-mode-hook (lambda()
>(outline-minor-mode 1)
>(outline-hide-body)))

> which is something that other modes support as well.

I feel a bit reluctant about that idea since it doesn't recognize the
customized section commands defined in file local variables. In that
case, the user has to do by oneself either of the following
alternatives:
1. Defer the call to `outline-hide-body' after parsing file local vars.
2. Add parsing file local vars (at least for `LaTeX-section-list')
   explicitly before calling `outline-minor-mode'. 

But maybe we can ignore such corner case.

Regards,
Ikumi Keita
#StandWithUkraine #StopWarInUkraine
#Gaza #StopMassiveKilling #CeasefireNOW



___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-22 Thread Arash Esbati
Hi Keita

Ikumi Keita  writes:

> In general, I suppose that emacs doesn't offer a neat framework to deal
> with this type of competition between the order of setting variable and
> running subsidiary functionality. Particularly, (La)TeX is (IMHO)
> exceptional in that the users can define arbitrary sectioning commands.
> which makes it difficult to prepare for outline mode.
>
> Maybe I close this bug as "won'tfix" type :-(

Maybe we revert the change for bug #65750 and declare that one as "won't
fix".  If we have to find a compromise, I vote for supporting

  (add-hook 'LaTeX-mode-hook (lambda()
   (outline-minor-mode 1)
   (outline-hide-body)))

which is something that other modes support as well.

Best, Arash



___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-21 Thread Ikumi Keita
Hi Richard,

> Richard Stanton  writes:
> That works. Thanks! 
> The explanation makes perfect sense. But it also means that putting

> %%% eval: (outline-hide-body)

> in the file’s local variables doesn’t work. Is there a similar
> work-around here, so I can make the settings file-specific if I want?

Hmm, that's a tough question. :-) I couldn't find a good answer for this
request, either. You can do it in only a awkward way, i.e.:

%%% eval: (add-hook 'find-file-hook (lambda () (outline-hide-body)) nil t)

In general, I suppose that emacs doesn't offer a neat framework to deal
with this type of competition between the order of setting variable and
running subsidiary functionality. Particularly, (La)TeX is (IMHO)
exceptional in that the users can define arbitrary sectioning commands.
which makes it difficult to prepare for outline mode.

Maybe I close this bug as "won'tfix" type :-(

Regards,
Ikumi Keita
#StandWithUkraine #StopWarInUkraine
#Gaza #StopMassiveKilling #CeasefireNOW



___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-19 Thread Richard Stanton via bug-auctex via Bug reporting list for AUCTeX
That works. Thanks! 

The explanation makes perfect sense. But it also means that putting

%%% eval: (outline-hide-body)

in the file’s local variables doesn’t work. Is there a similar work-around 
here, so I can make the settings file-specific if I want?

Thanks!




> On Feb 19, 2024, at 1:41 AM, Ikumi Keita  wrote:
> 
> Hi Richard,
> 
>> Richard Stanton via bug-auctex via Bug reporting list for AUCTeX 
>> mailto:bug-auctex@gnu.org>> writes:
>> Using Emacs 29.2 under MacOS 12.7.3, I want LaTeX files to open with
>> section bodies hidden, and just headers showing. I can get this to work
>> manually when I'm editing the file by running the command
>> "outline-hide-body". But when I run the same command as part of
>> LaTeX-mode-hook, the file opens with nothing hidden.
> 
>> Here's the relevant portion of my init.el file. The rest of it just
>> deals with setting up straight.el:
> 
>> (use-package tex :straight auctex)
> 
>> (add-hook 'LaTeX-mode-hook (lambda()
>> (outline-minor-mode 1)
>> (outline-hide-body)
>> ))
> 
>> Note that:
> 
>> 1) If I add other commands to this LaTeX-mode-hook, they get executed just
>> fine. it seems to be only the outline-hide-body command that isn't doing
>> what I expect.
> 
>> 2) Everything works as I hope if I don't load AUCTeX but use the
>> built-in LaTeX mode instead (with the appropriately renamed hook).
> 
>> Is this a bug, or am i missing something?
> 
> Sorry for bothering you. I think this is an outcome of the fix of
> bug#65750[1] last September.
> 
> In the fix, settings for outline mode were deferred after the parsing
> file local variables so that user's customize to section commands are
> reflected to outline related functionalities. This however means that
> `LaTeX-mode-hook' runs before outline mode settings are ready.
> 
> I haven't come up with a clean solutions yet. For a tentative
> workaround, you can use
> (add-hook 'LaTeX-mode-hook
> (lambda ()
>   (add-hook 'find-file-hook
> (lambda()
>(outline-minor-mode 1)
>(outline-hide-body))
> nil t)))
> 
> instead of
> (add-hook 'LaTeX-mode-hook (lambda()
> (outline-minor-mode 1)
> (outline-hide-body)
> ))
> .
> 
> [1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65750 
> 
> 
> Regards,
> Ikumi Keita
> #StandWithUkraine #StopWarInUkraine
> #Gaza #StopMassiveKilling #CeasefireNOW

___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-19 Thread Ikumi Keita
Hi Richard,

> Richard Stanton via bug-auctex via Bug reporting list for AUCTeX 
>  writes:
> Using Emacs 29.2 under MacOS 12.7.3, I want LaTeX files to open with
> section bodies hidden, and just headers showing. I can get this to work
> manually when I'm editing the file by running the command
> "outline-hide-body". But when I run the same command as part of
> LaTeX-mode-hook, the file opens with nothing hidden.

> Here's the relevant portion of my init.el file. The rest of it just
> deals with setting up straight.el:

> (use-package tex :straight auctex)

> (add-hook 'LaTeX-mode-hook (lambda()
>  (outline-minor-mode 1)
>  (outline-hide-body)
>  ))

> Note that:

> 1) If I add other commands to this LaTeX-mode-hook, they get executed just
> fine. it seems to be only the outline-hide-body command that isn't doing
> what I expect.

> 2) Everything works as I hope if I don't load AUCTeX but use the
> built-in LaTeX mode instead (with the appropriately renamed hook).

> Is this a bug, or am i missing something?

Sorry for bothering you. I think this is an outcome of the fix of
bug#65750[1] last September.

In the fix, settings for outline mode were deferred after the parsing
file local variables so that user's customize to section commands are
reflected to outline related functionalities. This however means that
`LaTeX-mode-hook' runs before outline mode settings are ready.

I haven't come up with a clean solutions yet. For a tentative
workaround, you can use
(add-hook 'LaTeX-mode-hook
  (lambda ()
(add-hook 'find-file-hook
  (lambda()
(outline-minor-mode 1)
(outline-hide-body))
  nil t)))

instead of
(add-hook 'LaTeX-mode-hook (lambda()
 (outline-minor-mode 1)
 (outline-hide-body)
 ))
.

[1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65750

Regards,
Ikumi Keita
#StandWithUkraine #StopWarInUkraine
#Gaza #StopMassiveKilling #CeasefireNOW



___
bug-auctex mailing list
bug-auctex@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-auctex


bug#69254: 14.0.2; outline-hide-body doesn't work when called in LaTeX-mode-hook

2024-02-18 Thread Richard Stanton via bug-auctex via Bug reporting list for AUCTeX
Using Emacs 29.2 under MacOS 12.7.3, I want LaTeX files to open with
section bodies hidden, and just headers showing. I can get this to work
manually when I'm editing the file by running the command
"outline-hide-body". But when I run the same command as part of
LaTeX-mode-hook, the file opens with nothing hidden.

Here's the relevant portion of my init.el file. The rest of it just
deals with setting up straight.el:

(use-package tex :straight auctex)

(add-hook 'LaTeX-mode-hook (lambda()
 (outline-minor-mode 1)
 (outline-hide-body)
 ))

Note that:

1) If I add other commands to this LaTeX-mode-hook, they get executed just
fine. it seems to be only the outline-hide-body command that isn't doing
what I expect.

2) Everything works as I hope if I don't load AUCTeX but use the
built-in LaTeX mode instead (with the appropriately renamed hook).

Is this a bug, or am i missing something?

Thanks for any help

Richard Stanton


Emacs  : GNU Emacs 29.2 (build 1, x86_64-apple-darwin21.6.0, NS appkit-2113.60 
Version 12.7.3 (Build 21H1015))
 of 2024-02-09
Package: 14.0.2

current state:
==
(setq
 AUCTeX-date "2024-02-09"
 window-system 'ns
 LaTeX-version "2e"
 TeX-style-path '("/usr/local/var/auctex"
  "/Users/stanton/.emacs.d/straight/build/auctex/style"
  "/Users/stanton/.emacs.d/auctex/auto"
  "/Users/stanton/.emacs.d/auctex/style" "auto" "style")
 TeX-auto-save nil
 TeX-parse-self nil
 TeX-master t
 TeX-command-list '(("TeX"
 "%(PDF)%(tex) %(file-line-error) %`%(extraopts) 
%S%(PDFout)%(mode)%' %(output-dir) %t"
 TeX-run-TeX nil (plain-TeX-mode AmSTeX-mode Texinfo-mode)
 :help "Run plain TeX")
("LaTeX" "%`%l%(mode)%' %T" TeX-run-TeX nil
 (LaTeX-mode docTeX-mode) :help "Run LaTeX")
("Makeinfo" "makeinfo %(extraopts) %(o-dir) %t"
 TeX-run-compile nil (Texinfo-mode) :help
 "Run Makeinfo with Info output")
("Makeinfo HTML"
 "makeinfo %(extraopts) %(o-dir) --html %t"
 TeX-run-compile nil (Texinfo-mode) :help
 "Run Makeinfo with HTML output")
("AmSTeX"
 "amstex %(PDFout) %`%(extraopts) %S%(mode)%' %(output-dir) 
%t"
 TeX-run-TeX nil (AmSTeX-mode) :help "Run AMSTeX")
("ConTeXt"
 "%(cntxcom) --once --texutil %(extraopts) %(execopts)%t"
 TeX-run-TeX nil (ConTeXt-mode) :help "Run ConTeXt once")
("ConTeXt Full" "%(cntxcom) %(extraopts) %(execopts)%t"
 TeX-run-TeX nil (ConTeXt-mode) :help
 "Run ConTeXt until completion")
("BibTeX" "bibtex %(O?aux)" TeX-run-BibTeX nil
 (plain-TeX-mode LaTeX-mode docTeX-mode AmSTeX-mode
  Texinfo-mode ConTeXt-mode)
 :help "Run BibTeX")
("Biber" "biber %(output-dir) %s" TeX-run-Biber nil
 (plain-TeX-mode LaTeX-mode docTeX-mode AmSTeX-mode
  Texinfo-mode)
 :help "Run Biber")
("Texindex" "texindex %s.??" TeX-run-command nil
 (Texinfo-mode) :help "Run Texindex")
("Texi2dvi" "%(PDF)texi2dvi %t" TeX-run-command nil
 (Texinfo-mode) :help "Run Texi2dvi or Texi2pdf")
("View" "%V" TeX-run-discard-or-function t t :help
 "Run Viewer")
("Print" "%p" TeX-run-command t t :help "Print the file")
("Queue" "%q" TeX-run-background nil t :help
 "View the printer queue" :visible TeX-queue-command)
("File" "%(o?)dvips %d -o %f " TeX-run-dvips t
 (plain-TeX-mode LaTeX-mode docTeX-mode AmSTeX-mode
  Texinfo-mode)
 :help "Generate PostScript file")
("Dvips" "%(o?)dvips %d -o %f " TeX-run-dvips nil
 (plain-TeX-mode LaTeX-mode docTeX-mode AmSTeX-mode
  Texinfo-mode)
 :help "Convert DVI file to PostScript")
("Dvipdfmx" "dvipdfmx -o %(O?pdf) %d" TeX-run-dvipdfmx nil
 (plain-TeX-mode LaTeX-mode docTeX-mode AmSTeX-mode
  Texinfo-mode)
 :help "Convert DVI file to PDF with dvipdfmx")
("Ps2pdf" "ps2pdf %f %(O?pdf)" TeX-run-ps2pdf nil
 (plain-TeX-mode LaTeX-mode docTeX-mode AmSTeX-mode
  Texinfo-mode)
 :help "Convert PostScript file to PDF")
("Glossaries" "makeglossaries %(d-dir) %s" TeX-run-command