[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: macros for w3m-attributes
>> On Mon, 03 Sep 2018 07:28:48 +0900
>> yamaoka@xxxxxxx (Katsumi Yamaoka) said as follows:
>Hi Tsuchiya-san, could you follow this subject up? (I'm not so versed
>in the asynchronous operation of emacs-w3m, sorry.)
I also do not catch Boruch's point.
First of all, I need to talk an old history.
w3m-content-type(), w3m-content-charset() and these macros were defined
as independent inline functions in early emacs-w3m code. However, these
inline functions shared many redundant codes, thus I determined to
introduce w3m-attributes() to remove redundant codes. Please note that
these inline functions were already used in numerous places when I wrote
w3m-attributes(). I had two choices:
(1) I could rewrite all occurences of these inline functions with
w3m-attributes(), and
(2) I could write wrapper macros using w3m-attributes() and did not
touch real occurences of these inline functions.
Of course, I selected the latter choice as you see in the current
emacs-w3m code.
Asynchronous operation code such as w3m-process-do() was introduced a
half year after I wrote w3m-attributes(). And then, I converted many
synchronous codes to asynchronous codes mechanically.
Therefore, I think there are several redundant codes as the result of
the wrapper macros and the mechanical conversions.
However, these parts are quite fragile parts of emacs-w3m. I need much
time to evalute Boruch's patch.
--
TSUCHIYA Masatoshi