Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-10-26 | fix(rc): prompt during command entry | Nicholas Noll | |
2021-10-26 | feat(rc): keywords now recognized. for and while loop | Nicholas Noll | |
Prototypes for loops sketched. This required recognizing keywords and returning from yylex. Debugging/testing will be required. | |||
2021-10-26 | chore(rename): libn -> base | Nicholas Noll | |
2021-10-26 | proto(rc): control structures | Nicholas Noll | |
2021-10-26 | feat(rc): added index operations | Nicholas Noll | |
2021-10-21 | feat(rc): added a few builtins | Nicholas Noll | |
2021-10-21 | feat(rc): added andand and oror operators | Nicholas Noll | |
2021-10-21 | Fix: attempted to access stale memory upon exec failure. | Nicholas Noll | |
Now correctly prints out argv[1] | |||
2021-10-21 | feat(rc): string join operator | Nicholas Noll | |
2021-10-21 | feat(rc): string concatenation works | Nicholas Noll | |
2021-10-21 | feat(rc): expanded tree printing | Nicholas Noll | |
2021-10-21 | feat(rc): vi mode fleshed out | Nicholas Noll | |
2021-10-20 | Feat: now execs instead of exec + fork if going to exit. | Nicholas Noll | |
One quick solution to the lack of tracking deep into the command line is to note that the pattern of code emitted for an async is: Xasync |__ child (command) |__ parent (continues) The child creates a process group, as described before. If the child is a simple command, we will now "exec" as it will exit immediately after the command. This gives us the correct behavior, at least for simple cases. This also fixed pipes. However, if child has to be forked, i.e. can't be immediately execed, then I don't think this process works... | |||
2021-10-20 | Refactored interactivity to track with thread. | Nicholas Noll | |
Hit a bit of a stopping point. Specifically, the way XAsync runs currently is by forking the execution context and having the child run the async code while the parent runs the remainder. The problem with this architecture is it doesn't interact well with job control. When we fork, we create a new process group. Thus the Xasync fork becomes the new leader. In short, our traversal of the parse tree as to be less "preorder" and more "in order", i.e. from the leaves up. The "left" command of the pipeline should be the "leader" of the process group. | |||
2021-10-19 | Feat(rc): added subshell commands and cd builtin | Nicholas Noll | |
Slowly chipping away at a decent feature list. Subshell commands are executed by @{ ... }. | |||
2021-10-19 | feat(rc): prototype of async jobs | Nicholas Noll | |
2021-10-19 | Feat: word operators and more robust crashing | Nicholas Noll | |
Added the length and concatenate operators. Slightly improved the robustness on syntax errors. | |||
2021-10-19 | feat(rc): cleaner process watching for each job | Nicholas Noll | |
2021-10-18 | feat(rc): job control prototype working for basic commands | Nicholas Noll | |
2021-10-15 | feat(rc): working prototype of input->compile->print loop | Nicholas Noll | |
2021-10-13 | RM(rc): old code. too many assumptions baked in | Nicholas Noll | |
2021-10-13 | Feat(rc): working(ish) version of rc shell | Nicholas Noll | |
Removed compile commands | |||
2021-10-13 | feat(rc): added unix port of rc with linenoise | Nicholas Noll | |
2021-10-13 | fix(email): bytes error. updated vendoring | Nicholas Noll | |
2021-10-09 | fix(term): forgot harfbuzz file | Nicholas Noll | |
2021-10-09 | feat(rc): added shell | Nicholas Noll | |
2021-10-08 | fix(tmux): regex to correctly deal with suspended nvim | Nicholas Noll | |
2021-10-08 | fix(theme): consistent theme | Nicholas Noll | |
2021-10-05 | feat(term): added ligature support. some combining character help | Nicholas Noll | |
2021-10-05 | feat(dwm): spatial movement and attach bottom | Nicholas Noll | |
2021-10-04 | feat(wm): layer shell | Nicholas Noll | |
2021-10-04 | feat(wm): mouse input | Nicholas Noll | |
2021-10-04 | feat(wm): keyboard focus corrected | Nicholas Noll | |
2021-10-04 | feat(wm): tiling prototype working | Nicholas Noll | |
2021-10-04 | checkin(wm) | Nicholas Noll | |
2021-09-29 | Feat(wm): prepararation for layout mechanism | Nicholas Noll | |
2021-09-29 | chore(wm): add forgotten files | Nicholas Noll | |
2021-09-29 | feat(wm): working prototype | Nicholas Noll | |
2021-09-28 | feat: reorganized code to be more modular | Nicholas Noll | |
2021-09-28 | Feat: added skeleton of wayland window manager | Nicholas Noll | |
2021-09-28 | Checkin: various small changes | Nicholas Noll | |
2021-09-23 | feat: improved interface of map macro | Nicholas Noll | |
2021-04-22 | chore(refactor): explicit definition of useful interfaces | Nicholas Noll | |
2021-04-22 | chore(organize): restructured build to allow for parallel projects to sys ↵ | Nicholas Noll | |
functionality | |||
2021-04-22 | chore: rm unfinished projects | Nicholas Noll | |
2021-02-17 | chore: update to configs before playing with ligature support in terminal | Nicholas Noll | |
2020-07-19 | chore: update | Nicholas Noll | |
2020-06-26 | feat: simplified volume command | Nicholas Noll | |
2020-06-26 | fix: correctly deal with edge cases with one window | Nicholas Noll | |
2020-06-26 | fix: external gaps now fit as squares | Nicholas Noll | |