Fig Autocomplete-Tooling Repo
This repo contains the source for all of Fig tools related with autocomplete.
-
You can see the list of Fig's packages on the NPM registry here: https://www.npmjs.com/~withfig
-
You can see the source code and related README for each package in the
./packages
folder
Packages
create-completion-spec
@fig/publish-spec-to-team
@withfig/autocomplete-tools
@fig/eslint-config-autocomplete
@withfig/eslint-plugin-fig-linter
@fig/autocomplete-generators
@fig/autocomplete-helpers
clap_complete_fig
click_complete_fig
cobracompletefig
@fig/complete-commander
@fig/complete-oclif
swift-argument-parser
@fig/autocomplete-merge
@fig/autocomplete-shared
@withfig/autocomplete-types
To publish a package:
Run yarn workspace <workspace name> npm publish
IMPORTANT: remember to tag the new package version following the current conventions (see the previous tags of a package) this is important for some workflows we are running and to keep track of when releases were done.
e.g.
yarn workspace @withfig/autocomplete-types npm publish
Note:
<workspace name>
is not the name of the folder, but the name specified inside the package.json of the package to publish.
Conventions for new CLI integration
Package (integration) name
- If namespaced it SHOULD be
@fig/complete[-_]($FRAMEWORK_NAME)
- If not namespaced it SHOULD be
($FRAMEWORK_NAME)[-_]complete[-_]fig
According to language conventions you can use a dash or an underscore to separate the words.
Examples:
@fig/complete-commander
@fig/complete-oclif
clap_complete_fig
cobracompletefig
Name of the default subcommand added to the CLI
Most of our CLI integration tools allow to set the name of the subcommand added to the CLI but we also provide a default value for that.
That default name MUST be generate-fig-spec
such that running $CLI generate-fig-spec
prints the spec.
Function that adds the command
The functions exported from the integration can:
- Create a new framework subcommand which will print the spec when invoked
- Generate a spec and return it
In all the cases the names are standardized and SHOULD be:
addCompletionSpecCommand
orcreateCompletionSpecCommand
for functions creating a new subcommandgenerateCompletionSpec
for functions that return the spec as a string
According to language conventions these function names can be transformed to snake case, etc...
public-site-nextjs
Docs on Docs MUST conform to the rules listed above too.