What is Emacs Application Framework?
Emacs Application Framework is a development framework that developers can develop any PyQt program and integrate into Emacs.
This framework mainly implements three functions:
- Integrate PyQt program window into Emacs Frame using Xlib Reparent technology
- Listening to EAF buffer's keyboard event flow and controlling the keyboard input of PyQt program via DBus IPC
- Created a window compositer to make the PyQt program window adapt Emacs's Window/Buffer design
Using this framework, you can use PyQt develop powerful graphics programs to extend Emacs
Some screenshots
Browser
Image Viewer
Video Player
PDF Player
Installation
- Install python libraries:
sudo pacman -S python-xlib python-pyqt5 python-pymediainfo
sudo pip install git+https://github.com/wbsoft/python-poppler-qt5.git- Clone this repository and add below code in your ~/.emacs
(require 'eaf)Usage
M-x eaf-open
| App | Key | Event |
|---|---|---|
| Browser | Left Button | Open link current tab |
| Ctrl + Left Button | Open link in new tab | |
| Image Viewer | j | Load next image in current directory |
| k | Load previous image in current directory | |
| Video Player | Space | Play or Pause |
| h | Seek backward | |
| l | Seek forward | |
| Pdf Viewer | j | Scroll up |
| k | Scroll down | |
| Space | Scroll up page | |
| b | Scroll down page | |
| , | Scroll to end | |
| . | Scroll to home | |
| t | Switch scale mode | |
| - | zoom out | |
| = | zoom in | |
| 0 | zoomn reset |
How to develop new plugins?
Join Us
Do you want to make Emacs a real operating system?
Do you want to live in emacs more comfortably?
Want to create unparalleled plugins to extend emacs?
Join us, happy hacking!



