summaryrefslogblamecommitdiffstats
path: root/2021/talks/eaf.md
blob: 78a52c78fea88593d07cd528716e4ad20569d372 (plain) (tree)
1
2
3
4
5
6
7
8
9
10









                                                                                 

                                                              




                                                                      














                                                                                                                                                                                                                                                         
 
                                                         
 
                                                         
[[!meta title="Emacs Application Framework: A 2021 Update"]]
[[!meta copyright="Copyright © 2021 Matthew Zeng"]]
[[!inline pages="internal(2021/info/eaf-nav)" raw="yes"]]

<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Emacs Application Framework: A 2021 Update
Matthew Zeng

[[!inline pages="internal(2021/info/eaf-schedule)" raw="yes"]]

Emacs Application Framework (EAF) is a customizable and extensible GUI
application framework that extends Emacs graphical capabilities using
PyQt5. There are many new but important updates since EmacsConf2020
last year, this talk will briefly go over them.

# Feedback

IRC nick: matthewzmd

- One thing I never tried watching all this is viewing PDF files within emacs.
- is there an eaf-app that's not a bootstrapping nightmare? I suppose having Vue as dependency makes that not so for a large number
- This is pretty cool, from a security standpoint, I'm not sure I'd want a web browser in emacs all that much.
  - With how Emacs deals with things like GPG/pass/etc. I feel like it's probably as secure as you make it?
  - matthewzmd: TDT the browser application is independent from emacs itself, you're using a browser in emacs, but the browser is not actually in emacs
  - If it can be secured under something like firejail, that may be better, as long as there's some segmenting with any communication between the two.  Then again, I generally run any browser in dedicated VMs.
- ok now this is something i need
- maybe i misunderstood, but is every eaf app essentially embedded QT?
  - matthewzmd: Yes, it uses PyQt5 and it's essentially painting the Qt frame on top of emacs, simulating a buffer. EPC is used for Elisp <-> Python <-> JS communication
  - I guess/hope this is using qtwebengine, not qtwebkit? ('cos qtwebkit is unmaintained and by now massively insecure)
  - matthewzmd: if you wanna dig more into the internals of EAF, I suggest you to read this part of the Wiki (<https://github.com/emacs-eaf/emacs-application-framework/wiki/Hacking>) or my talk from last year (<https://emacsconf.org/2020/talks/34/>)

[[!inline pages="internal(2021/captions/eaf)" raw="yes"]]

[[!inline pages="internal(2021/info/eaf-nav)" raw="yes"]]