News for hackers. Stuff that matters.
Re:Launch HN: Fig (YC S20) – Autocomplete for the Terminal by nathancahill on Tuesday May 25, 2021 @11:25AM (#27278064)
Very smooth, downloaded it and played around a bit.

My first thought is why not use built-in shell autocompletion functions instead of redefining them in JS?

Zsh completions are super powerful: https://github.com/zsh-users/zsh-completions/blob/master/zsh...

Typing `git a<TAB>` yields this in my terminal:

    ~ git add
    add        -- add file contents to index
    am         -- apply patches from a mailbox
    apply      -- apply patch to files and/or to index
    archimport -- import an Arch repository into git
    archive    -- create archive of files from named tree
(btw, broken link at the bottom of this page: https://fig.io/docs/getting-started - https://fig.io/concepts/dynamic-suggestions should be https://fig.io/docs/concepts/dynamic-suggestions)
Re:Launch HN: Fig (YC S20) – Autocomplete for the Terminal by mschrage on Tuesday May 25, 2021 @11:31AM (#27278160)
This is something we definitely should add as a fallback when a Fig completion spec doesn't exist!

The reason we created our own standard is because traditional shell autocomplete doesn't always provide metadata, like descriptions, priority or icons. Also it is a little tricky to write by hand, unless you're pretty familiar with shell scripting.

Re:Launch HN: Fig (YC S20) – Autocomplete for the Terminal by verdverm on Tuesday May 25, 2021 @12:52PM (#27279219)
Many CLI libraries provide the ability to generate auto-completion scripts. Cobra for Golang is an excellent example. It provides functions for all the major shells and is quite simple to add to any Go CLI using the library. It also supports dynamic calls for when someone wants to autocomplete on a resource known only to the running CLI.

For python argparse, there is argcomplete in the same vein

Re:Launch HN: Fig (YC S20) – Autocomplete for the Terminal by mschrage on Tuesday May 25, 2021 @01:20PM (#27279593)
We're building out integrations with CLI libraries like cobra and oclif[0], so you can generate a Fig completion spec automatically the same way!

Then it just comes down to the Fig popover UX.

[0] https://github.com/withfig/oclif-plugin

Re:Launch HN: Fig (YC S20) – Autocomplete for the Terminal by verdverm on Tuesday May 25, 2021 @05:04PM (#27282640)
Does Fig then need to mirror autocomplete for any command which wants to make use of the popover UX?

(one of the reasons I would not want this tool, colors and file extensions are sufficient for types, no need for icons, popups, and yet another tool)

Re:Launch HN: Fig (YC S20) – Autocomplete for the Terminal by stackbeard on Friday May 28, 2021 @08:30AM (#27314578)
I have this in my zshrc. Hopefully it is helpful to others:

  # tab completion
  setopt hash_list_all
  # https://stackoverflow.com/a/14900496/8514646
  bindkey '^i' expand-or-complete-prefix
  # by category
  # https://old.reddit.com/r/zsh/comments/6l797o/organizing_co mpletions_by_category/
  # https://github.com/sorinionescu/prezto/blob/master/modules/completion/init.zsh#L60
  zstyle ':completion:*:*:*:*:*' menu select
  zstyle ':completion:*:matches' group 'yes'
  zstyle ':completion:*:options' description 'yes'
  zstyle ':completion:*:options' auto-description '%d'
  zstyle ':completion:*:corrections' format ' %F{green}-- %d (errors: %e) --%f'
  zstyle ':completion:*:descriptions' format ' %F{yellow}-- %d --%f'
  zstyle ':completion:*:messages' format ' %F{purple} -- %d -- %f'
  zstyle ':completion:*:warnings' format ' %F{red}-- no matches found --%f'
  zstyle ':completion:*:default' list-prompt '%S%M matches%s'
  zstyle ':completion:*' format ' %F{yellow}-- %d --%f'
  zstyle ':completion:*' group-name ''
  zstyle ':completion:*' verbose yes
`
Re:Launch HN: Fig (YC S20) – Autocomplete for the Terminal by oddmiral on Wednesday May 26, 2021 @07:55AM (#27289302)
ble.sh[0] is also good autocompletion and syntax highlighting solution for bash.

[0]: https://github.com/akinomyoga/ble.sh