blob: c64aec29bd26eac7ef0beb151285ae2ae26af00d (
plain) (
tree)
|
|
[[!meta title="Re-imagining the Emacs User Experience with Casual Suite"]]
[[!meta copyright="Copyright © 2024 Charles Choi"]]
[[!inline pages="internal(2024/info/casual-nav)" raw="yes"]]
<!-- Initially generated with emacsconf-publish-talk-page and then left alone for manual editing -->
<!-- You can manually edit this file to update the abstract, add links, etc. --->
# Re-imagining the Emacs User Experience with Casual Suite
Charles Choi (he/him) - Pronunciation: Che, IRC: kickingvegas, <http://yummymelon.com/devnull/> , Mastodon: <https://sfba.social/@kickingvegas>
[[!inline pages="internal(2024/info/casual-before)" raw="yes"]]
To date, the predominant interaction model for Emacs has been to use keybindings or the mini-buffer prompt to issue commands. These commands are drawn from a vast ecosystem of packages (both core and third party) designed to extend Emacs. When these commands are used in aggregate, the aforementioned interaction model places a high cognitive load on the user. It also sets a very steep learning curve for Emacs.
The inclusion of the Transient model package in Emacs facilitates a different interaction model using keyboard-driven menu interfaces. Menu interfaces excel at discovery and recognition, neither of which are well supported with keybindings and a prompt. Menu interfaces also can be made contextual to allow the user to focus on a task at hand.
Casual Suite is a personal effort to re-imagine the Emacs user experience by using keyboard-driven Transient menus as its primary interaction model.
This talk describes Casual Suite, detailing its implementation and operation.
About the speaker:
Charles Choi has been an Emacs user since 1989 but did not get around to learning Elisp until 2022. He possesses formal knowledge of computers with a Ph.D. in Computer Engineering received from the University of Virginia in 1997. He is from and continues to live in San Francisco.
[[!inline pages="internal(2024/info/casual-after)" raw="yes"]]
[[!inline pages="internal(2024/info/casual-nav)" raw="yes"]]
|