provide installation utilities
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Muss geklärt werden
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- typescript
- Bereich
- cli
Rechercherichtung
Beginne damit zu untersuchen, wie tab derzeit Shell-Vervollständigungen bereitstellt und wie eine CLI, die sie nutzt, diese über Befehle wie my-cli init oder my-cli complete --install integrieren würde. Definiere die in diesem Issue unterstützten Installations- und Shell-Fälle, einschließlich eigenständiger Installationen, globaler npm-Installationen und projektspezifischer lokaler Installationen; als abgeschlossen gilt, dass der Umfang und das Verhalten der Installationsdienstprogramms vereinbart und implementiert sind, mit Validierung für jeden unterstützten Fall.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
CLIs using tab will ideally provide a bit of functionality to help the user install completions. Since we'll all be recreating the same logic, it seems to me like it should be built into tab itself. It should probably be provided as a utility function which can be either invoked within a larger setup flow (my-cli init) or as specific command (my-cli complete --install)
I haven't dug in too deep yet, but I'm imagining this would:
- detect the current shell (if not passed in explicitly)
- check if the completions are already installed
- either install or update the completion setup
In the process of figuring this out for our CLI (https://varlock.dev), I also realized that the way the CLI is installed can affect how it must be set up. Our tool can be installed as a standalone binary via curl or brew, as a global node_module (npm i -g), or within a project's node_modules. The installation utilities should also probably take care of detecting how the cli is installed and warn (or error?) if the tool is not on the user's PATH.
Supporting completions for locally installed packages invoked via package manager (pnpm exec my-cli) is something I'd love to see happen, but I'm guessing it's just not possible unless the package managers themselves support it?
- Vorherrschende Sprache
- TypeScript
- Sterne
- 280
- Forks
- 11
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus bombshell-dev/tab
-
An option is resolved from the root before the matched command, so a short name means one thing for the whole lineEvtl. vergeben @AmirSa12 hat das vor 4 Tagen übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 56/100
bombshell-dev/tab#153 · 6 Kommentare ·
-
enhancement
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
bombshell-dev/tab#127 · 2 Kommentare ·
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 55/100
bombshell-dev/tab#118 ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
bombshell-dev/tab#107 · 3 Kommentare ·
-
documentation enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 30/100
bombshell-dev/tab#106 · 1 Kommentar ·
Alle Issues in bombshell-dev/tab
Ähnliche Issues
-
[Bug]: Server git tests sign fixture commits with the developer's key when run from the repo rootOffen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
melgarafael/DeskcommCRM#2657 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
MystenLabs/MemWal#1163 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Mondriaan
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
knaw-huc/textannoviz#709 ·
Maintainer antworten meist innerhalb von 1 Tag
-
billion-context-pi
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 62/100
ranxianglei/billion-context#2521 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag