[generate-docc-reference] [GSoC 2025] Separate DocC Pages for Each Command
I maintainer di solito rispondono entro 3 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- swift
- Ambito
- cli, documentation
Direzione di ricerca
Inizia con il plugin generate-docc-reference esistente e con la sua generazione attuale di un articolo per il comando principale. Leggi le issue #721 e #722 prima di definire la struttura; il lavoro è completo quando esistono pagine e directory separate per comandi, flag, opzioni e argomenti, insieme ai file di metadati e alla categorizzazione proposti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Description
We’ve recently integrated the generate-docc-reference plugin into the SwiftArgumentParser project. One of the key improvements outlined in our project goals is to refine this plugin, enabling it to generate separate documentation pages for each command and organize them into a well-structured set of files. For now the plugin only generates an article for the main command. As articles are considered good for communicating the general purpose and overview of the project, we should create seperate pages for each command to get low level on explanations and how things work.
Proposed Structure
We can follow the structure below in order to expand our documentation generation further.
High Level Overview of the Structure
-
Separation of Command Documentation
The documentation will be split into individual pages for each command, with each page covering the details of the command, its flags, options, and arguments. This will provide clear, in-depth explanations for every command, rather than a single generic overview. -
Hierarchical File Structure
We will adopt a folder-based structure where each command, flag, option, and argument has its own dedicated markdown file. If a command has subcommands, they will also be structured into their own folders and documented similarly, ensuring clarity for users with more complex command-line tools. -
Metadata Categorization
To maintain organization, metadata will be added to each markdown file, categorizing them as command, flag, option, or argument. This will help categorize the components and provide meaningful context for users when navigating the documentation. -
Metadata Files
Relevant JSON files, such as topics.json, will be included in the root directory to define the overall structure of the documentation catalog.
Next Steps
- Since the contribution guidelines encourage small improvements and changes, we can start by creating directories and separate files for each command.
- Then we can create documents for argument, options and flags, listing all related properties to the command.
- Next, we can proceed to add the root metadata files like topics.json for the documentation catalog.
- Finally, we can focus on structuring the metadata for the arguments, options, and flags for each command.
- Then we can get low level and design the structure of our documentation files by solving the mentioned issues below:
- Lingua principale
- Swift
- Stelle
- 3.8k
- Fork
- 436
- Merge medio
- 4g 11h
- PR unite (30g)
- 2
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apple/swift-argument-parser
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
apple/swift-argument-parser#1007 ·
I maintainer di solito rispondono entro 3 giorni
-
Tool tests fail under the Swift Build build system because `generate-manual` & `generate-docc-reference` are not builtForse già presa @rgoldberg l’ha presa 23 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
apple/swift-argument-parser#995 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
Consider making `String.wrapped()` and `Platform.terminalWidth` publicForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
apple/swift-argument-parser#973 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
Include hidden args in completion scriptsForse già presa @Galileo927 l’ha presa 182 giorni fa. Apertagood first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
apple/swift-argument-parser#733 · 7 commenti ·
I maintainer di solito rispondono entro 3 giorni
-
Shared `@OptionGroup` flag is rejected after a subcommand when the root has a passthrough `defaultSubcommand`Forse già presa @sean0407 l’ha presa 22 giorni fa. Aperta
Difficoltà 4/5 1-2 giorni Idoneità per principianti 48/100
apple/swift-argument-parser#994 ·
I maintainer di solito rispondono entro 3 giorni
Tutte le issue di apple/swift-argument-parser
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
Ebullioscopic/Atoll#930 ·
I maintainer di solito rispondono entro 2 giorni
-
area:development bug triage:needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
vburojevic/hermes#123 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 70/100
jaywcjlove/awesome-mac#4631 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
Muesli-HQ/muesli#764 · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno
-
Dynamic Island: "Tools" and "Files" are the Quick panel and the Shelf under other namesForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
vorssaint/vorssaint-utils#4162 ·
I maintainer di solito rispondono entro 2 giorni