mirror of
https://github.com/neovim/neovim.git
synced 2026-02-09 22:11:52 +10:00
- The defined interface for the UI is only the RPC protocol. The original
UI interface as an array of function pointers fill no function.
- On the server, all the UI:s are all RPC channels.
- ui.c is only used on the server.
- The compositor is a preprocessing step for single-grid UI:s
- on the client, ui_client and tui talk directly to each other
- we still do module separation, as ui_client.c could form the basis
of a libnvim client module later.
Items for later PR:s
- vim.ui_attach is still an unhappy child, reconsider based on plugin experience.
- the flags in ui_events.in.h are still a mess. Can be simplified now.
- UX for remote attachment needs more work.
- startup for client can be simplified further (think of the millisecs we can save)
15 lines
291 B
C
15 lines
291 B
C
#ifndef NVIM_API_UI_H
|
|
#define NVIM_API_UI_H
|
|
|
|
#include <stdint.h>
|
|
|
|
#include "nvim/api/private/defs.h"
|
|
#include "nvim/map.h"
|
|
#include "nvim/ui.h"
|
|
|
|
#ifdef INCLUDE_GENERATED_DECLARATIONS
|
|
# include "api/ui.h.generated.h"
|
|
# include "ui_events_remote.h.generated.h"
|
|
#endif
|
|
#endif // NVIM_API_UI_H
|