If the argument of `LuaEval` evaluates to a function, xplr will try to
pass Lua Context to it.
Example:
```lua
{ LuaEval = [[function(app) return { { LogInfo = app.pwd } } end]] }
```
Closes: https://github.com/sayanarijit/xplr/issues/394
This PR breaks the custom layout renderer API by deprecating the
following heavyweight fields in the Lua Context passed to the renderer
functions.
The following fields are being deprecated:
- app.directory_buffer
- app.history
- app.last_modes
However, there's no change in the Lua Context passed to the functions
called via `CallLua*` messages.
Closes: https://github.com/sayanarijit/xplr/issues/418
This PR adds a new message: `UpdateInputBuffer: InputOperation`
This makes it possible to perform cursor based input operations without
needing input from the keyboard.