2019-07-19 06:58:50 +00:00
|
|
|
#!/bin/sh
|
2017-05-06 19:34:59 +00:00
|
|
|
# Meta-stuff
|
|
|
|
complete -c exa -s 'v' -l 'version' -d "Show version of exa"
|
|
|
|
complete -c exa -s '?' -l 'help' -d "Show list of command-line options"
|
|
|
|
|
|
|
|
# Display options
|
|
|
|
complete -c exa -s '1' -l 'oneline' -d "Display one entry per line"
|
2017-05-06 22:00:45 +00:00
|
|
|
complete -c exa -s 'l' -l 'long' -d "Display extended file metadata as a table"
|
2017-05-06 19:34:59 +00:00
|
|
|
complete -c exa -s 'G' -l 'grid' -d "Display entries in a grid"
|
2017-05-06 22:00:45 +00:00
|
|
|
complete -c exa -s 'x' -l 'across' -d "Sort the grid across, rather than downwards"
|
2017-05-06 19:34:59 +00:00
|
|
|
complete -c exa -s 'R' -l 'recurse' -d "Recurse into directories"
|
|
|
|
complete -c exa -s 'T' -l 'tree' -d "Recurse into directories as a tree"
|
|
|
|
complete -c exa -s 'F' -l 'classify' -d "Display type indicator by file names"
|
|
|
|
complete -c exa -l 'color' -d "When to use terminal colours"
|
|
|
|
complete -c exa -l 'colour' -d "When to use terminal colours"
|
|
|
|
complete -c exa -l 'color-scale' -d "Highlight levels of file sizes distinctly"
|
|
|
|
complete -c exa -l 'colour-scale' -d "Highlight levels of file sizes distinctly"
|
2019-07-19 06:58:50 +00:00
|
|
|
complete -c exa -l 'icons' -d "Display icons"
|
2017-05-06 19:34:59 +00:00
|
|
|
|
|
|
|
# Filtering and sorting options
|
|
|
|
complete -c exa -l 'group-directories-first' -d "Sort directories before other files"
|
2017-09-27 12:46:36 +00:00
|
|
|
complete -c exa -l 'git-ignore' -d "Ignore files mentioned in '.gitignore'"
|
2019-07-15 13:58:31 +00:00
|
|
|
complete -c exa -s 'a' -l 'all' -d "Show hidden and 'dot' files"
|
2017-05-06 19:34:59 +00:00
|
|
|
complete -c exa -s 'd' -l 'list-dirs' -d "List directories like regular files"
|
2017-05-06 22:00:45 +00:00
|
|
|
complete -c exa -s 'L' -l 'level' -d "Limit the depth of recursion" -a "1 2 3 4 5 6 7 8 9"
|
2017-05-06 19:34:59 +00:00
|
|
|
complete -c exa -s 'r' -l 'reverse' -d "Reverse the sort order"
|
|
|
|
complete -c exa -s 's' -l 'sort' -x -d "Which field to sort by" -a "
|
|
|
|
accessed\t'Sort by file accessed time'
|
2017-09-13 22:26:06 +00:00
|
|
|
age\t'Sort by file modified time (newest first)'
|
2018-12-17 04:46:50 +00:00
|
|
|
changed\t'Sort by changed time'
|
2017-05-06 19:34:59 +00:00
|
|
|
created\t'Sort by file modified time'
|
2017-09-13 22:26:06 +00:00
|
|
|
date\t'Sort by file modified time'
|
2017-05-06 19:34:59 +00:00
|
|
|
ext\t'Sort by file extension'
|
2017-08-20 16:33:39 +00:00
|
|
|
Ext\t'Sort by file extension (uppercase first)'
|
2017-05-06 19:34:59 +00:00
|
|
|
extension\t'Sort by file extension'
|
2017-08-20 16:33:39 +00:00
|
|
|
Extension\t'Sort by file extension (uppercase first)'
|
2017-05-06 19:34:59 +00:00
|
|
|
filename\t'Sort by filename'
|
2017-08-20 16:33:39 +00:00
|
|
|
Filename\t'Sort by filename (uppercase first)'
|
2017-05-06 19:34:59 +00:00
|
|
|
inode\t'Sort by file inode'
|
|
|
|
modified\t'Sort by file modified time'
|
|
|
|
name\t'Sort by filename'
|
2017-08-20 16:33:39 +00:00
|
|
|
Name\t'Sort by filename (uppercase first)'
|
2017-09-13 22:26:06 +00:00
|
|
|
newest\t'Sort by file modified time (newest first)'
|
2017-05-06 19:34:59 +00:00
|
|
|
none\t'Do not sort files at all'
|
2017-09-13 22:26:06 +00:00
|
|
|
oldest\t'Sort by file modified time'
|
2017-05-06 19:34:59 +00:00
|
|
|
size\t'Sort by file size'
|
2017-09-13 22:26:06 +00:00
|
|
|
time\t'Sort by file modified time'
|
2017-06-29 13:57:43 +00:00
|
|
|
type\t'Sort by file type'
|
2017-05-06 19:34:59 +00:00
|
|
|
"
|
|
|
|
|
|
|
|
complete -c exa -s 'I' -l 'ignore-glob' -d "Ignore files that match these glob patterns" -r
|
|
|
|
|
|
|
|
# Long view options
|
2017-05-06 22:00:45 +00:00
|
|
|
complete -c exa -s 'b' -l 'binary' -d "List file sizes with binary prefixes"
|
|
|
|
complete -c exa -s 'B' -l 'bytes' -d "List file sizes in bytes, without any prefixes"
|
|
|
|
complete -c exa -s 'g' -l 'group' -d "List each file's group"
|
2017-05-06 19:34:59 +00:00
|
|
|
complete -c exa -s 'h' -l 'header' -d "Add a header row to each column"
|
2017-05-06 22:00:45 +00:00
|
|
|
complete -c exa -s 'h' -l 'links' -d "List each file's number of hard links"
|
|
|
|
complete -c exa -s 'g' -l 'group' -d "List each file's inode number"
|
|
|
|
complete -c exa -s 'S' -l 'blocks' -d "List each file's number of filesystem blocks"
|
|
|
|
complete -c exa -s 't' -l 'time' -x -d "Which timestamp field to list" -a "
|
2018-12-17 04:46:50 +00:00
|
|
|
modified\t'Display modified time'
|
|
|
|
changed\t'Display changed time'
|
2017-05-06 19:34:59 +00:00
|
|
|
accessed\t'Display accessed time'
|
|
|
|
created\t'Display created time'
|
|
|
|
"
|
2018-12-17 04:46:50 +00:00
|
|
|
complete -c exa -s 'm' -l 'modified' -d "Use the modified timestamp field"
|
|
|
|
complete -c exa -l 'changed' -d "Use the changed timestamp field"
|
2017-07-05 23:52:27 +00:00
|
|
|
complete -c exa -s 'u' -l 'accessed' -d "Use the accessed timestamp field"
|
|
|
|
complete -c exa -s 'U' -l 'created' -d "Use the created timestamp field"
|
|
|
|
complete -c exa -l 'time-style' -x -d "How to format timestamps" -a "
|
|
|
|
default\t'Use the default time style'
|
|
|
|
iso\t'Display brief ISO timestamps'
|
|
|
|
long-iso\t'Display longer ISO timestaps, up to the minute'
|
|
|
|
full-iso\t'Display full ISO timestamps, up to the nanosecond'
|
|
|
|
"
|
2017-05-06 19:34:59 +00:00
|
|
|
|
|
|
|
# Optional extras
|
2017-05-06 22:00:45 +00:00
|
|
|
complete -c exa -s 'g' -l 'git' -d "List each file's Git status, if tracked"
|
|
|
|
complete -c exa -s '@' -l 'extended' -d "List each file's extended attributes and sizes"
|