[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [AUCTeX-devel] font-latex.el [1/4]: Improve the code generated by fo
Re: [AUCTeX-devel] font-latex.el [1/4]: Improve the code generated by font-latex-make-match-defun
Wed, 22 Feb 2017 22:45:40 +0900
> first of all, a big thank you for diving into this and your profound
> analysis. font-latex.el is not my strongest point, but I think I
> understood your findings and they make sense to me. Maybe others could
Thank you for taking a look and giving encouraging comments.
> I have a question reg. your patch and sorry if I'm missing something
>> diff --git a/font-latex.el b/font-latex.el
>> --- a/font-latex.el
>> +++ b/font-latex.el
>> @@ -502,9 +502,9 @@
>> ,(intern (concat prefix name "-keywords")))
>> ;; `face' can be a face symbol, a form returning
>> ;; a face symbol, or a list of face attributes.
>> - (if (and (listp ,face) (functionp (car ,face)))
>> - (eval ,face)
>> - ,face)
>> + ,(if (and (listp face) (fboundp (car face)))
>> + face
>> + `',face)
> Why do you need this extra backtick here?
It is there in order for the following ",face" to be expanded as
intended. Since the point is inside the form ",(if ... )", which begins
with a comma, a backquote is necessary for another comma-preceding
expression ",face" to evaluate to the valuce of the variable "face".
I tested with this backquote deleted, then the generated code became
instead of the value of the variable "face".