Skip to content

Commit 69aad33

Browse files
committed
Add: bui, tui
1 parent 56688f5 commit 69aad33

File tree

2 files changed

+980
-903
lines changed

2 files changed

+980
-903
lines changed

README.org

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2259,6 +2259,26 @@ makel is a project consisting of a Makefile (=makel.mk=) that Emacs package auth
22592259

22602260
*** Libraries :libraries:
22612261

2262+
**** [[https://github.com/alezost/bui.el][bui: Buffer interface library]]
2263+
2264+
#+BEGIN_QUOTE
2265+
BUI (Buffer User Interface) is an Emacs library that can be used to make user interfaces to display some kind of entries (like packages, buffers, functions, etc.).
2266+
2267+
The intention of BUI is to be a high-level library which is convenient to be used both by:
2268+
2269+
- package makers, as there is no need to bother about implementing routine details and usual features (like buffer history, filtering displayed entries, etc.);
2270+
- users, as it provides familiar and intuitive interfaces with usual keys (for moving by lines, marking, sorting, switching between buttons); and what is also important, the defined interfaces are highly configurable through various generated variables. A summary of available key bindings can be displayed by pressing h.
2271+
2272+
*Usage*
2273+
2274+
BUI provides means to display entries in 2 types of buffers:
2275+
2276+
- =list=: it is based on =tabulated-list-mode=, thus it looks similar to a list of Emacs packages (=M-x list-packages=);
2277+
- =info=: it can be used to display more verbose info, like various buttons, text and other stuff related to the displayed entry (or entries).
2278+
2279+
In short, you define how a =list= / =info= interface looks like (using =bui-define-interface= macro), and then you can make some user commands that will display entries (using =bui-get-display-entries= and similar functions).
2280+
#+END_QUOTE
2281+
22622282
**** [[https://github.com/kiwanami/emacs-calfw][calfw: Calendar framework]]
22632283

22642284
#+BEGIN_QUOTE
@@ -2301,6 +2321,13 @@ The library that powers Magit's command/option UI.
23012321
Taking inspiration from prefix keys and prefix arguments, Transient implements a similar abstraction involving a prefix command, infix arguments and suffix commands.
23022322
#+END_QUOTE
23032323

2324+
**** [[https://github.com/ebpa/tui.el][tui: An experimental text-based UI framework modeled after React]]
2325+
2326+
#+BEGIN_QUOTE
2327+
This is an experiment in building purely text-based user interfaces (TUI’s). The ultimate goal is to explore new paradigms for user interface design and development using Emacs. To this end, tui.el implements an API based on the popular React JavaScript framework in order to reduce the demands involved with designing and building complex text-based UI’s.
2328+
This is all currently experimental! Expect things to change as I get feedback about what works, what does not!
2329+
#+END_QUOTE
2330+
23042331
**** =widget= :built_in:
23052332

23062333
#+BEGIN_QUOTE

0 commit comments

Comments
 (0)