[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Bug-AUCTeX] Re: TeX-command-master fails if fun 'file' is defined.
From: |
Ralf Angeli |
Subject: |
Re: [Bug-AUCTeX] Re: TeX-command-master fails if fun 'file' is defined. |
Date: |
Sun, 07 Oct 2007 13:33:20 +0200 |
User-agent: |
Gnus/5.110007 (No Gnus v0.7) Emacs/22.1.50 (gnu/linux) |
* David Kastrup (2007-10-07) writes:
> Ralf Angeli <address@hidden> writes:
>
>> * Ralf Angeli (2007-10-05) writes:
>>
>>> An easy way out would be to rename the symbol to something less generic,
>>> e.g. `TeX-master-or-region-file'. A nicer way would be to get rid of
>>> the whole awkward construct of a locally defined function.
>>
>> The attached patch should do that. It still has the shortcoming of
>> `TeX-master-or-region-file' relying on `file' being defined outside of
>> it and indicating the function to call. Any better suggestions?
>
> I think this tries to hard to keep the old contorted logic
It's more a move in the other direction. It does not want to keep the
old contorted logic, but does not try hard enough to get rid of it.
> while still
> breaking backwards-compatibility with previous TeX-command-list
> specifications.
Yeah, that's an issue.
> I think we should just special-case a check for 'file and be done (for
> as long as TeX-command-list keeps its basic structure). Future AUCTeX
> programmers will thank us for it. The present logic is too clever
> just for the single purpose of interpreting "file".
I don't think somebody will thank us for keeping that piece of code
alive. At least I found it very difficult to understand what's going
on. Anyway, the special casing could look something like this:
--- tex-buf.el 08 Aug 2007 19:41:49 +0200 1.262
+++ tex-buf.el 07 Oct 2007 13:27:57 +0200
@@ -310,7 +310,8 @@
expansion (car (cdr entry)) ;Second element
arguments (cdr (cdr entry)) ;Remaining elements
string (save-match-data
- (cond ((TeX-function-p expansion)
+ (cond ((and (not (eq expansion 'file))
+ (TeX-function-p expansion))
(apply expansion arguments))
((boundp expansion)
(apply (eval expansion) arguments))
--
Ralf