emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [patch] Fixes and improvements in org-latex-language-alist


From: Ihor Radchenko
Subject: Re: [patch] Fixes and improvements in org-latex-language-alist
Date: Sun, 10 Sep 2023 07:55:42 +0000

Juan Manuel Macías <maciaschain@posteo.net> writes:

>> (let ((de-plist '(...)))
>>  `(...
>>    ("de" ,@de-plist)
>>    ("de-de" ,@de-plist)
>>    ...))
>>
>> This is copy-paste-proof and does not require breaking changes in the
>> value structure.
>
> I like the idea because it avoids errors, but I don't know if
> it's worth it, there being only two cases (at the moment).

It is not that complex, really. I suggested the above approach because:
1. It is easy to read - clearly, ,@de-plist and ,@de-plist are the same
   thing.
2. If we ever need to change de-plist, we should only do it in a single
   place.

> ... This other
> possibility occurred to me, just to make it easier to read and not have
> to navigate to the list of variables:
>
> (let* ((basic-code)
>        (shared-plist (lambda (&rest plist)
>                (setq basic-code plist))))
>   `(...
>     ("de" ,(funcall shared-plist :babel "ngerman" :babel-ini-alt "german" 
> :polyglossia "german" :polyglossia-variant "german" :lang-name "German" 
> :script "latin" :script-tag "latn"))
>     ("de-de" ,@basic-code)
>     ...
>     ("zh" ,(funcall shared-plist :babel-ini-only "chinese" :polyglossia 
> "chinese" :lang-name "Chinese Simplified" :script "hans" :script-tag "hans"))
>     ("zh-cn" ,@basic-code)))

This is less readable compared to having ",@de-plist" - ",@de-plist".
One would need to put extra effort to understand the equality of
(funcall shared-plist ...) and ,@basic-code.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>



reply via email to

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