lsdSpec top-level property

FigSpec lsdSpec
final

Completion spec for lsd CLI

Implementation

final FigSpec lsdSpec = FigSpec(
  name: 'lsd',
  description: 'An ls command with a lot of pretty colors and some other stuff',
  args: [
    Arg(
    isVariadic: true,
    template: 'folders',
    defaultValue: '.'
  )
  ],
  options: [

    Option(
      name: ['-1', '--oneline'],
      description: 'Display one entry per line'
    ),
    Option(
      name: ['-A', '--almost-all'],
      description: 'Do not list implied . and'
    ),
    Option(
      name: ['-a', '--all'],
      description: 'Do not ignore entries starting with'
    ),
    Option(
      name: ['-d', '--directory-only'],
      description: 'Display directories themselves, and not their contents (recursively when used with --tree)'
    ),
    Option(
      name: ['-F', '--classify'],
      description: 'Append indicator (one of */=>@|) at the end of the file names'
    ),
    Option(
      name: ['-h', '--human-readable'],
      description: 'For ls compatibility purposes ONLY, currently set by default'
    ),
    Option(
      name: ['-i', '--inode'],
      description: 'Display the index number of each file'
    ),
    Option(
      name: ['-L', '--dereference'],
      description: 'When showing file information for a symbolic link, show information for the file the link references rather than for the link itself'
    ),
    Option(
      name: ['-l', '--long'],
      description: 'Display the extended file metadata as a table'
    ),
    Option(
      name: ['-R', '--recursive'],
      description: 'Recurse into directories'
    ),
    Option(
      name: ['-r', '--reverse'],
      description: 'Reverse the order of the sort'
    ),
    Option(
      name: ['-S', '--sizesort'],
      description: 'Sort by size'
    ),
    Option(
      name: ['-t', '--timesort'],
      description: 'Sort by time modified'
    ),
    Option(
      name: ['-v', '--versionsort'],
      description: 'Natural sort of (version) numbers within text'
    ),
    Option(
      name: '--classic',
      description: 'Enable classic mode (no colors or icons)'
    ),
    Option(
      name: ['-X', '--extensionsort'],
      description: 'Sort by file extension'
    ),
    Option(
      name: '--help',
      description: 'Prints help information'
    ),
    Option(
      name: '--ignore-config',
      description: 'Ignore the configuration file'
    ),
    Option(
      name: '--no-symlink',
      description: 'Do not display symlink target'
    ),
    Option(
      name: '--total-size',
      description: 'Display the total size of directories'
    ),
    Option(
      name: '--tree',
      description: 'Recurse into directories and present the result as a tree'
    ),
    Option(
      name: ['-V', '--version'],
      description: 'Prints version information'
    ),
    Option(
      name: '--blocks',
      description: 'Specify the blocks that will be displayed and in what order',
      args: [
        Arg(
        name: 'blocks',
        suggestions: [

          FigSuggestion(name: 'permission'),
          FigSuggestion(name: 'user'),
          FigSuggestion(name: 'group'),
          FigSuggestion(name: 'size'),
          FigSuggestion(name: 'date'),
          FigSuggestion(name: 'name'),
          FigSuggestion(name: 'inode'),
          FigSuggestion(name: 'links')
        ]
      )
      ]
    ),
    Option(
      name: '--color',
      description: 'When to use terminal colours',
      args: [
        Arg(
        name: 'color',
        suggestions: [

          FigSuggestion(name: 'always'),
          FigSuggestion(name: 'auto'),
          FigSuggestion(name: 'never')
        ],
        defaultValue: 'auto'
      )
      ]
    ),
    Option(
      name: '--date',
      description: 'How to display date',
      args: [
        Arg(
        name: 'date',
        suggestions: [

          FigSuggestion(name: 'date'),
          FigSuggestion(name: 'relative'),
          FigSuggestion(name: '+date-time-format')
        ],
        defaultValue: 'date'
      )
      ]
    ),
    Option(
      name: '--depth',
      description: 'Stop recursing into directories after reaching depth',
      args: [
        Arg(
        name: 'num'
      )
      ]
    ),
    Option(
      name: '--group-dirs',
      description: 'Sort the directories then the files',
      args: [
        Arg(
        name: 'group-dirs',
        suggestions: [

          FigSuggestion(name: 'none'),
          FigSuggestion(name: 'first'),
          FigSuggestion(name: 'last')
        ]
      )
      ]
    ),
    Option(
      name: '--icon',
      description: 'When to print the icons',
      args: [
        Arg(
        name: 'icon',
        suggestions: [

          FigSuggestion(name: 'always'),
          FigSuggestion(name: 'auto'),
          FigSuggestion(name: 'never')
        ],
        defaultValue: 'auto'
      )
      ]
    ),
    Option(
      name: '--icon-theme',
      description: 'Whether to use fancy or unicode icons',
      args: [
        Arg(
        name: 'icon-theme',
        suggestions: [

          FigSuggestion(name: 'fancy'),
          FigSuggestion(name: 'unicode')
        ],
        defaultValue: 'fancy'
      )
      ]
    ),
    Option(
      name: '--ignore-glob',
      description: 'Do not display files/directories with names matching the glob pattern(s). More than one can be specified by repeating the argument',
      args: [
        Arg(
        name: 'pattern'
      )
      ]
    ),
    Option(
      name: '--size',
      description: 'How to display size',
      args: [
        Arg(
        name: 'size',
        suggestions: [

          FigSuggestion(name: 'default'),
          FigSuggestion(name: 'short'),
          FigSuggestion(name: 'bytes')
        ],
        defaultValue: 'default'
      )
      ]
    ),
    Option(
      name: '--sort',
      description: 'Sort by WORD instead of name',
      args: [
        Arg(
        name: 'WORD',
        suggestions: [

          FigSuggestion(name: 'size'),
          FigSuggestion(name: 'time'),
          FigSuggestion(name: 'version'),
          FigSuggestion(name: 'extension')
        ]
      )
      ]
    )
  ]
);