This change brings output of 'ls -l' closer to the actual shell command.
FossilOrigin-Name: 7f38c81ca4c4844eae37e5450b3bda2f4bfdf4a68c840b81f3f2cd963bc0473d
- Make every command's POD doc have a single-line introductory description.
This help is then used as a one-liner summary in Term::Shell.
- Tie %cmd_map to IxHash to preserve hash elements' order.
- Fix bug in Term::Shell's code related to command aliases.
(Also emailed Term::Shell author to include the fix in next release.)
- Remove run_() which already exists in Term::Shell.
- Use Term::Shell's help facilities instead of manually redefining
run_help() and other related commands. The complete POD documentation is
still available for viewing if user invokes ./shelldap --help.
- Completer functions are disabled right now (fix coming in the next
commit)
FossilOrigin-Name: a3bfbcceb8e471a3397b5e90cfe9bd0fa7ebe84934de738e34bc620a24f7fe5c
Make Ctrl+C behave like in the shell (abort current line, redisplay)
Add '?' and 'man' as aliases for help
Add qw// on module 'use's to not import any symbols
FossilOrigin-Name: fc4cb91774beb03f371ad04c5b26e45f6db49ae40af72bb2fbccc6c3c1a65e6f
With this change, 'inspect'ing an element prints its attributes
in a defined order: (requiredness, multivaluedness)
Previously, the order was alphabetical and varying.
FossilOrigin-Name: bb3518297cc3ffdd6a8a1db79e681431f56f6d395f5300e6f99d0f444fc5fd04
%cmd_map was previously a hash containing:
{
real_function => alias_function,
...
}
Now the structure of the hash is:
{
alias_or_real_func => [ real_func/if_any, autocompleter_func ],
...
}
This allows for a more streamlined definition of commands and aliases,
and makes it possible to keep all data in %cmd_map instead of having
additional special cases.
FossilOrigin-Name: ea3c724d1676d6f2ddfddfce22c3d32135ab20d26e81f10c39c4c10bc902b5e9
POD documentation has been modified to list available shell commands using =head2
instead of =item.
This, combined with run_help() modified to accept arguments, allows one to use
'help <command name>' to get help for a specific command, similar/equal to getting
help for shell builtins in regular shells.
E.g.:
help cat
help list
FossilOrigin-Name: 94e02e094f07f261abc084b1271832ee7640053397b1e32c7d6c72d452611986
Previously, when autogenerating the config file, the name of config
itself was included in the YAML contents.
This in turn caused the config file to be re-parsed again and any
command line arguments were overwritten with values from the config
file.
Now the name of config file is not dumped if it is equal to the file
being written, and the config file is not reparsed if it is the same
file.
FossilOrigin-Name: 9c4483633c8bcf36f4e98ce41ab0f54ea4620a4b7f21ccf07e563e49afbe0da6
This commit changes the default attribute list from a fixed '*'
to a configurable list, defaulting to ['*'].
It allows one to use config file or command line to set default
attributes to retrieve and display - i.e. to set default attributes
to '+' or to a list of multiple specific attributes.
Printing or changing this value through env/setenv is currently not
supported because env/setenv only work properly with string values
while attributes is a list.
FossilOrigin-Name: 8c312e181611c61d43a588d2aa2c6e3d231db490c29f40aee861a0e1832039fc
To avoid code duplication, refactor run_cat to be a thin wrapper around a
common function called by both run_cat and run_less.
FossilOrigin-Name: 28a0cda242c8cc11dcb8e5de781b0e52308808799afc012cc33651990da43b4f
user's editor. No reason to have shelldap and editor wrap battles.
Dennis Kaarsemaker <dennis.kaarsemaker@booking.com>
FossilOrigin-Name: 574bf5133459a4354682e6db80b0c87a907d124aca3aeaebd17b1285a64b23b9