prelude is no longer. it is now nature.
organized the single file prelude into multiple
source files and renamed it to nature. this is coming
after thought that it can turn into a general hilbish
lua core, with user facing modules as well.
this introduces the `nature.dirs` module, to interact
and get recently changed to directories and last/old
cwd.
this also makes the completion functions `bins`
and `files` also return the prefix to pass
to the completion handler.
this is an overhaul to the completion system,
which gets the completion handler from lua
instead of being made to only have lua provided
*command* completions.
it does not have any performance deficit, even
though it calls in to golua for completions.
with the change of blocking changes to the
hilbish table, i took an opportunity
to make the highlighter and hinter callbacks
set in a more natural way. instead of being
a function which takes a callback, you set
the function itself.
changed the way file completions are handed
completely, which fixes#130 and makes the
full name appear in the completion menu instead
of it being cut off
if an alias is something which isn't valid syntax,
specifically if hilbish cant split up the input
properly to execute, it will report the error to
the user. the previous behaviour was a panic since
on error the args slice will be of length 0
this is basically an edge case and fixes a bug
which shouldnt happen normally
Added emacsForwardWord and emacsBackwardWord which is used by M-f and
M-b directly. Also added M-d to ctrl delete and removed the bad old
funcion in favor of the fancy new one. Lastly I added alt delete which
deletes with emacsBackwardWord. Works identically to gnu readline
Co-authored-by: Renzix <DanielDeBruno@renzix.com>
* feat: add right prompt (closes#111)
* chore: add comment for set right prompt function
* fix: add 1 space at the end of right prompt to fix character cut off
* docs: update doc for prompt function
this introduces a breaking change to runner functions.
they are now required to return 3 values, the first
being the user's input, and the 2 others that it was
before. the `hilbish.runner` functions respectively
have been updated, so if you just return from those
there will be no difference