Commit Graph

66 Commits (47582e167ecabd9c5724d2385e3030110b853525)

Author SHA1 Message Date
sammyette 3dd834fcdf
fix: merge patch releases with master (#248)
my absolutely terrible april fools release was made on a separate branch. this pr merges the fixes on master so history can be synced up. (and mainly to get the 2.1.2 blog post)
2023-04-10 12:38:30 -04:00
sammyette d577b3c958
feat: sink enhancements (#241)
* feat: add read method to sinks

* feat: add manual flush method for sinks

* fix: add flush as sink method and fix arg amount for read

* feat: add pipe property to sinks to see if stdin sink is a pipe

* feat: add method autoFlush to toggle/change automatic flushing

* chore: update changelog
2023-03-25 17:42:25 -04:00
crumb 4e37e8ca47
fix: replace sed with vgrep (#238) 2023-02-18 20:02:52 -04:00
sammyette d48a66e393
docs: update changelog 2023-02-10 16:59:44 -04:00
sammyette 2f6ab5fd92
feat: add sink for commanders to write output/read input (#232)
to write output, you would usually just use the print builtin
since commanders are just lua custom commands but this does not
consider the fact of pipes or other shell operators being used
to redirect or whatever.

this adds readable/writable "sinks" which is a type for input
or output and is currently only used for commanders but can be
used for other hilbish things in the future
2023-01-20 19:07:42 -04:00
sammyette 8d20ad9eed
fix: make hilbish.which work properly with aliases 2023-01-18 06:52:22 -04:00
sammyette 6530d48b00
docs: document types properly (#227) 2023-01-18 06:39:26 -04:00
sammyette 72d6b0a4a0
chore: add 2.0.1 tag to changelog 2022-12-28 20:53:38 -04:00
sammyette f661db158b
chore: add missing entries to changelog 2022-12-20 00:27:47 -04:00
sammyette 787d6c082f
chore: prepare for v2.0 2022-12-19 23:46:45 -04:00
TorchedSammy 6ca36847f1
docs: add bolded notes/changes for building and installing hilbish 2.0 2022-12-12 21:04:04 -04:00
sammyette 4ee160fb66
fix: provide correct command when navigating history (#214)
fixes an issue of going up and down in history results in the incorrect order of commands being inserted (nothing happens to the order in the history itself, just when navigating via arrow keys)

* fix: provide correct command when navigating history

previously, the order while navigating history
with the arrow keys would be incorrect
meaning the command you expect if you go u
then go back down would not be there

* chore: update changelog
2022-12-09 21:45:52 -04:00
TorchedSammy 1024f93446
chore: update changelog 2022-12-06 12:54:56 -04:00
TorchedSammy 26ff6c9a46
fix(nature/completions): get command name properly for custom completions 2022-12-05 23:15:35 -04:00
TorchedSammy 3f9b230381
chore: update changelog 2022-11-30 14:29:46 -04:00
TorchedSammy ff4609e432
feat: add hilbish.cancel hook (closes #213) 2022-11-25 19:21:36 -04:00
TorchedSammy ef3e7d92bc
chore: update changelog 2022-11-25 19:13:32 -04:00
TorchedSammy 8b547f2af0
feat: make tab completion work with spaces and escaped characters 2022-11-25 16:56:35 -04:00
TorchedSammy 6ffcc498ac
docs: update changelog for rc 2022-10-14 19:25:18 -04:00
sammy 0d32a10ca3
feat: add builtins clear, exec and cat (#208)
* feat: add clear and exec command

* docs: add builtins to changelog

* feat: add cat command
2022-10-14 19:15:40 -04:00
TorchedSammy 91596fa81c
docs: document drop in windows support 2022-10-10 17:33:36 -04:00
TorchedSammy 8f41005da7
chore: update changelog 2022-09-17 20:24:31 -04:00
sammy 2337f9ab60
refactor: use custom event emitter (#193)
* refactor: use custom event emitter

* fix: sigint hook emit on windows

* fix: restore correct hilbish conf file

* fix: call recoverer for go listeners

* refactor(golibs/bait): use 1 map for listeners

* feat: add once listeners, ability to remove listeners and remove listener on error

* perf: reslice listener slice instead of trying to do ordered move with append

* feat(bait): add release function to remove event listener

* perf: remove listener directly from once emit instead of using off function

* refactor: use bait event emitter on commander

* docs(golibs/bait): add doc strings for functions

* docs: set changelog

* docs(golibs/bait): add docs for lua release function
2022-08-17 18:01:32 -04:00
TorchedSammy 387d7d2243
fix: percentages in completion entries causing a problem in the completion menus 2022-07-26 19:24:02 -04:00
TorchedSammy 09a8b41063
chore!: remove guide command (closes #188) 2022-07-13 16:04:57 -04:00
sammy 349380ae6b
feat: lua backed history (#187)
* refactor: put file history handler in line reader instance instead of global

* feat: add lua history handler in go

* feat: use lua to retrieve readline history

* refactor: handle history in lua

this also introduces a new opt: history
if it is false, command history won't get added

* fix: remove nature.history require

* docs: add changes in changelog

* fix: add comma after history opt
2022-07-13 16:02:09 -04:00
TorchedSammy c8c30e9861
docs: update changelog 2022-07-13 15:46:18 -04:00
TorchedSammy 08e2951513
feat: add raw input hook (closes #180) 2022-07-10 20:34:00 -04:00
TorchedSammy 6eea5bce47
feat: add motd (closes #185) 2022-07-09 17:54:21 -04:00
TorchedSammy a106f4aea0
refactor!: move hilbish.greeting to an opt (closes #184) 2022-07-09 17:15:13 -04:00
TorchedSammy 90ed12d551
feat: add hilbish.init hook (closes #186) 2022-07-09 17:04:50 -04:00
sammy e0694c8862
build!: replace make with task (#171)
* build!: replace make with task

allows easy windows building (besides literally go build)
down the line because getting make on windows is dumb
and even if you do it probably wouldnt work as intended
on there

(i also find task more intuitive for simple things)

* ci: use task in build workflow instead of make

* style: remove whitespace errors in task file

* docs: add task in changelog

* docs: fix link to task

* docs: change message for task notice
2022-07-09 11:44:53 -04:00
TorchedSammy 362bb14d7e
feat: auto start lua modules (closes #167) 2022-06-20 17:07:15 -04:00
TorchedSammy 453ba9f8ad
feat(fs): add some functions and properties (closes #168) 2022-06-20 16:47:16 -04:00
sammyette 226605a996
feat: allow runners to specify if they want more input (#162)
* refactor!: make runners require returning a table

allows for more options for runners in the future,
and makes it so that you can avoid passing
certain args more easily.

* feat: allow runners to specify continue in return to prompt for more input

* docs: update changelog

* refactor: reorder returns of handleSh function

* refactor: move out reprompting and runner handling to functions

makes codefactor happy hopefully. this commit includes
a fix to check if after reprompt the user hits ctrl d
and just exits cleanly
2022-06-02 22:33:30 -04:00
sammyette 3990d370fa
feat: extend hilbish.runner interface to allow multiple runners (#159) 2022-05-28 19:06:18 -04:00
sammyette b28a2c24c1
refactor!: use userdata where appropriate (#157)
any interface which has lua side objects that are from go side for its api (namely jobs) they will use userdata instead of always creating a table to represent the object. this might or might not bring lower ram usage since there is now only 1 single reference to an object instead of always creating a table to expose on lua

breaking change since methods need to be called with a colon instead of dot
2022-05-28 19:03:44 -04:00
TorchedSammy d99c24842f
docs: update changelog 2022-05-24 19:31:51 -04:00
TorchedSammy 2572d0ea9e
docs: update changelog with latest changes 2022-05-21 21:11:59 -04:00
sammyette d2f16dfbbf
feat: job enhancements (#153)
* feat: add hilbish.job.add function

this is mainly to accomodate for the employer
handler (#152)

* feat!: add start function to jobs

the commit itself adds a few things but the
main purpose is to facilitate a lua side start
function that can restart the job

there is a breaking change in the hilbish.job.add
function; it is now required to provide an extra
table for arguments, since the first cmd
table isnt really what's actually ran

* fix: reuse standard files for jobs

* fix: deadlock in lua job add function and not taking proper amount of args

* fix: assign binary path to job

* feat: emit job.add hook when job is added

* chore: update modules

* fix: use setpgid on cmd procattr for background jobs

* fix: use right procattr on correct os

* fix: set bg proc attr in build tagged file

* feat: add disown function

* fix: stop jobs on exit

* feat: add disown command

* feat: add jobs.last function to get last job

* feat: make disown command get last job if id isnt suppied as arg

* chore: remove unused code

* feat: add job output

* chore: fix comments

* fix!: make exec path in job add explicit in lua side

* docs: add docs and changelogs relating to jobs
2022-05-21 20:53:36 -04:00
TorchedSammy e678ef66d8
docS: update changelogs for master
800th commit!
2022-04-30 12:00:01 -04:00
TorchedSammy 1ba314d961
chore: prepare for v1.2.0 release 2022-03-22 22:11:46 -04:00
TorchedSammy 053914ec45
docs: fix dates for changelog versions 2022-03-22 17:19:23 -04:00
TorchedSammy eb0a81f7a2
chore: prepare for v1.1.0 release 2022-03-17 20:56:19 -04:00
TorchedSammy 7d7ccb5c9b
chore: prepare changelog for v1.0.4 2022-03-12 21:59:45 -04:00
TorchedSammy 23902ea25c
chore: prepare for v1.0.3 release 2022-03-12 20:10:39 -04:00
TorchedSammy b7478c3c1a
chore: prepare for v1.0.2 release 2022-03-06 21:48:24 -04:00
TorchedSammy 9165e0bdf9
chore: prepare for 1.0.1 release 2022-03-06 17:23:44 -04:00
TorchedSammy 7959a8b572
docs: mention latest changes in changelog 2022-03-06 15:00:43 -04:00
TorchedSammy 29c1e29bb7
docs: change date of 1.0 2022-03-05 21:41:33 -04:00