| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-04-28 | support completion through subdirs of path | Toby Goodwin | |
| 2018-04-28 | check access of external commands when completing | Toby Goodwin | |
| 2018-04-28 | eliminate goto... clearer? | Toby Goodwin | |
| 2018-04-26 | Always insert single match of explicit complete function | Bert Münnich | |
| If an explicit complete function has only one match but is used directly after the default tab completion, than the single match is shown instead of inserted. The solution is resetting the 'rl_last_func' variable if it is set to 'rl_complete' when using an explicit complete function. | |||
| 2018-04-26 | Custom readline commands for explicit completions | Bert Münnich | |
| New commands: - rc-complete-command, per default bound to "M-!" - rc-complete-filename, "M-/" - rc-complete-variable, "M-$" These commands are useful, if one wants a specific type of completion which is not performed by the context-senstive default one, e.g. filename completion at the beginning of the line or command completion for the second word (after sudo). The readline code now also sets the application name to "rc", making it possible to specify different bindings for these commands in ~/.inputrc: $if rc "\C-x\C-[": rc-complete-command "\C-[\C-x": rc-complete-filename "\C-x\C-v": rc-complete-variable $endif | |||
| 2018-04-26 | Completion of command names and variables | Bert Münnich | |
| New completion entry functions for readline specific code: - compl_var for variables - compl_fn for functions - compl_builtin for builtins - compl_extcmd for external commands in path - compl_command, which combines the last three The first three are simple wrappers for compl_name, which iterates over a typical rc table (an array of structs) yielding the name fields. The appropriate completion entry function is chosen based on the character/token that preceeds the word to complete: '$' for variable, beginning of line or one of [`@|&(){;] for command. Otherwise the shell falls back to readline's default completion, which it also does, if the chosen completion entry function finds no match. | |||
| 2018-04-25 | bring ChangeLog up to date | Toby Goodwin | |
| 2018-04-20 | new mkinstalldirs for some reason | Toby Goodwin | |
| 2018-04-20 | replace space used to terminate heredoc | Toby Goodwin | |
| 2018-03-26 | Merge branch 'master' into ifnot | Toby Goodwin | |
| 2018-03-26 | whitespace cleanups | Toby Goodwin | |
| 2018-03-20 | whitespace cleanup | Toby Goodwin | |
| 2018-03-19 | Merge branch 'master' into ifnot | Toby Goodwin | |
| 2018-03-19 | implement $nl and $tab, issue #43 | Toby Goodwin | |
| 2018-03-19 | implement desugaring version (again, lost due to git problem) | Toby Goodwin | |
| 2018-03-17 | Merge branch 'master' into ifnot | Toby Goodwin | |
| 2018-03-17 | fix bad merge fixup | Toby Goodwin | |
| 2018-03-17 | Merge branch 'continue' | Toby Goodwin | |
| 2018-03-17 | tidy up, test cases, document flag | Toby Goodwin | |
| 2018-03-16 | flag largely working, flag n + is a bit odd | Toby Goodwin | |
| 2018-03-16 | starting to work | Toby Goodwin | |
| 2018-03-05 | Merge branch 'master' into ifnot | Toby Goodwin | |
| 2018-03-05 | add to ChangeLog | Toby Goodwin | |
| 2018-03-05 | implement walk half of if not, plus tests | Toby Goodwin | |
| 2018-03-02 | Unify bodies of if and if-else statements | Bert Münnich | |
| Fixes issue #31 of rakitzis/rc. | |||
| 2018-03-02 | nBody second child can be null | Toby Goodwin | |
| 2018-03-01 | Merge branch 'master' into ifnot | Toby Goodwin | |
| 2018-02-17 | remove all references to SIGCLD | Toby Goodwin | |
| 2018-02-09 | remove config.h-dist; add thanks to Bert and Leah | Toby Goodwin | |
| 2018-02-09 | wip | Toby Goodwin | |
| 2017-11-17 | Merge pull request #41 from muennich/issue40 | Toby Goodwin | |
| Fix issue #40 | |||
| 2017-10-28 | Add test for issue #40, exit status of -e with failed backquote or pipeline | Bert Münnich | |
| 2017-10-27 | Fix exit value for -e with failed backquote or pipeline | Bert Münnich | |
| This fixes rakitzis/rc issue #40. Both cases suffered from a misconception of statprint() in which the necessary check for -e happens. The checked status value gets passed to statprint() as an argument but the corresponding value passed to rc_exit() in case the status is non-zero comes from getstatus(), which requires that the checked status is written to statuses[] first. For pipelines this happened in the wrong order and for backquotes the status value was not put into statuses[] at all. Making statprint() a static helper function prevents this mistake by only leaving the setstatus family of functions to handle status codes. | |||
| 2017-08-28 | remove blank line at end of file | Toby Goodwin | |
| 2017-08-27 | Change one continue-testing loop from for to while | Drazen Borkovic | |
| 2017-08-26 | Formatting | Drazen Borkovic | |
| 2017-08-26 | Remove space at end of line | Drazen Borkovic | |
| 2017-08-26 | Add continue to man page | Drazen Borkovic | |
| 2017-08-26 | Add "continue" builtin | Drazen Borkovic | |
| 2017-08-25 | Merge pull request #21 from muennich/break-varstack | Toby Goodwin | |
| Fix breaking out of loops through local variable blocks | |||
| 2017-08-25 | use "/bin/pwd -P" - github #36 | Toby Goodwin | |
| 2017-08-25 | add Casper | Toby Goodwin | |
| 2017-06-23 | fix for github #32 readline loses track of term size | Toby Goodwin | |
| 2017-06-23 | fix prefix redir precedence bug, github #33 | Toby Goodwin | |
| 2017-06-23 | add failing test for github #33 counter intuitive redirection parse | Toby Goodwin | |
| 2017-06-23 | add parse tree dumper with --enable-develop | Toby Goodwin | |
| 2017-06-23 | reinstate yacc to the build process | Toby Goodwin | |
| 2017-05-26 | INSTALL is an artifact, so add to .gitignore | Toby Goodwin | |
| 2017-05-26 | fix typos | Jakub Wilk | |
| 2017-05-26 | When running rc on the following script, rc crashes. | Drazen Borkovic | |
| fn f1 { v=x { }} fn f2 { f1 1; f1 2 } f2 whatis Valgrind stack: ==10068== Invalid read of size 8 ==10068== at 0x40EFB1: varlookup (var.c:84) ==10068== by 0x407B04: whatare_all_vars (hash.c:311) ==10068== by 0x401E60: b_whatis (builtins.c:323) ==10068== by 0x402E32: exec (exec.c:92) ==10068== by 0x40F997: walk (walk.c:39) The reason is that vp[h].p is freed in delete_var(), but the pointer is kept. Later the pointer is found to be non-null and dereferenced causing the crash. | |||