在Emacs的弹出菜单中显示图像

Woj*_*Gac 4 emacs elisp image popup emacs24

我正在为人们学习日语的Emacs模式。重点是通过运行一组函数提取点处的字符(如果它是日语字符)并显示具有笔划顺序的图像,来帮助他们学习各种日语字符(尤其是汉字)的笔划顺序。我已经解决了几乎所有细节,但是我对显示图像有疑问。我希望能够create-image在定位于的弹出菜单中显示图像对象(由获得)。有任何提示吗?另外,我想创建一个显示图像的新临时缓冲区。我已经尝试过使用insert-imageimage对象,但是在结果缓冲区中看到的只是一个应该放置图像的空矩形。如何制作可见图像的缓冲区?任何帮助,不胜感激。

Dre*_*rew 5

首先,将图像放在工具提示中可能会有所帮助。

我这样做,在Dired + -看到的代码diredp-mouseover-help和diredp-image-dired-create-thumb。这是它的核心:

  • 除非image-dired-thumb-name说图像文件已经有缩略图,否则使用image-dired-create-thumb来创建一个。这是的主要部分diredp-image-dired-create-thumb。

  • 在鼠标悬停时在工具提示中显示完整图像或缩略图:

    (let((img文件(if(eq'full diredp-image-preview-in-tooltip))
                         文件
                       (diredp-image-dired-create-thumb文件)))
      (对““'显示(创建图像img文件)进行授权))

下一步可能是在图像上放置keymap或local-map属性,例如,使用mouse-1绑定作为该图像选择的选择动作。只是一个想法-还没有尝试过。

您可能想将多个图像放在同一工具提示中,每个图像具有不同的动作功能。还没有尝试过,但是您可以尝试一下。

HTH。