不闪就好。我这边主要是Emacs没能直接获取xserver的window handle(hwnd)。我现在的获取方式不够高效。这个问题解决了,应该也不会闪。我这个情况太特殊了,我再看看。
顺便报个issue吧。eaf.el里面197行的(setq-local cursor-type nil)没起效,仍然能看到光标。我在stackoverflow上面看到这似乎是evil造成的(我用evil)。不用evil的用户应该没这个问题。可以用internal-show-cursor代替。
不闪就好。我这边主要是Emacs没能直接获取xserver的window handle(hwnd)。我现在的获取方式不够高效。这个问题解决了,应该也不会闪。我这个情况太特殊了,我再看看。
顺便报个issue吧。eaf.el里面197行的(setq-local cursor-type nil)没起效,仍然能看到光标。我在stackoverflow上面看到这似乎是evil造成的(我用evil)。不用evil的用户应该没这个问题。可以用internal-show-cursor代替。
刚才用了一下helm-posframe,很好用。可是被eaf给遮住了。 有人遇到这种情况吗?
更新
在论坛里搜索了一下,原来是个老问题。也就是说,不能用helm-posframe和eaf共用?
用snails,同样配方,更轻量,fd backend尤其好用
嗯。我也意识到应该这么做了。我之前提到的屏幕闪烁问题就是helm、which key这些插件频繁改变窗口布局造成的。既然posframe这样的方案用不了,那就只能切换到snails。刚好我也被helm的卡顿、启动速度问题折磨了那么久,这下可以换下口味了。
我这两天优化了window id的获取方法,应该达到或者超过了Linux上面的获取xid的速度,但是仍然有闪烁。现在只能归结到eaf-monitor-configuration-change太耗时了。我这里有些时候会莫名其妙reparent失败,eaf先出现再隐藏,所以我会在chang_title之前运行一次eaf-monitor-configuration-change,强制reparent一次。这也加剧了闪烁。
当加入 darkreader.js 这个插件时,最开始会发生加载页面的过程中,会出现白色闪烁的问题,为了避免这个问题,EAF会在加载过程中对页面顶部绘制一个蒙板避免闪烁
但是又引入新的问题,很多Javascript库向下滚动的时候也会触发URL变化(比如Emacs China和那种左边带书签导航的页面),向下滚动就会导致EAF反复绘制蒙板,也会影响用户体验。
今天这个补丁彻底修复 darkreader.js 在页面加载中闪烁白色背景的问题,同时也去掉EAF的蒙板workaround,整个体验就和Chrome + Darkreader.js插件的体验一模一样了。
更新后要执行一下 install-eaf.sh
暗色模式可以在页面加载之后再打开或关闭吗?
最新版修正了4k屏 + Gnome3/Wayland缩放的问题,同时添加了硬件加速的参数,EAF网页会全部用GPU渲染。
建议Gnome3/Wayland的用户升级。
GPU渲染在Windows平台可用吗?
更新
我看了下源码,看样子是支持的。
看来是最新的硬件加速补丁引起的,Windows平台暂时禁用GPU硬件加速,Linux默认使用GPU硬件加速。
今天基于Mozilla的 readability.js 这个库写了一个补丁 Add reader mode. · emacs-eaf/emacs-application-framework@ae64dda · GitHub
按逗号这个快捷键,可以直接把EAF浏览器的网页转换成纯文本的方式进行阅读(没有复杂UI、广告和图片干扰)
相当于支持基本样式和表格的W3m
更新EAF需要在根目录执行 npm install
Add export_text function. · emacs-eaf/emacs-application-framework@262c9c8 · GitHub 增加了 export_text 命令。
可以快速把网页的文本拷贝出来供Emacs其他模块使用,比如 Org-Mode.
最新版EAF增加了一个vue-demo的app,方便大家基于Vue.js给Emacs开发多媒体应用。
更新EAF后,在根目录执行 ./install-eaf.sh 脚本,EAF会自动安装Vue依赖并自动运行npm run build
来构建Vue应用。
安装完成后使用 eaf-open-vue-demo
命令来打开Vue演示应用。
目前为止,EAF具备的协同开发能力有:
EAF现在可以联合Python和JavaScript两种编程语言进行协同编程,同时可以通过Qt5、NodeJS、Vue.js三种方式来扩展Emacs的多媒体能力,欢迎大家提交新的应用!
刚才在Windows 10 上安装 EAF,安装依赖很方便。但是在 预览 Markdown buffer 时,编辑的内容更新 eaf buffer 时会失去焦点。不知道有人遇到同样的问题吗?ALT+Tab 可以恢复。
我没看明白他是怎么失焦的。我私下跟他沟通看看。
@yqu212 是这样的,在Emacs 中打开一个 Markdown 文件,然后执行 eaf-open-this-buffer
,这时会打开一个buffer 预览当前的 Markdown 文件。只要我一编辑 Markdown 文件,C-x,C-s
保存, 就会失去焦点。