Thank you for working on this, Yamaoka-san. Some further changes are needed to fully support the help-echo property. Firstly, help-echo functions expect an overlay as their second argument when the object that had the property is an overlay (button). Secondly, help-echo values can be forms in addition to strings and functions. Lastly, (info "(elisp) Button Properties") needs updating to reflect the supported values of the help-echo button property. The following patch should do all this. I will push it in the next few days if there are no objections. WDYT?