You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

53 lines
2.4 KiB

Ai/docs alignment (#91) * chore: initialize the memory bank Add the canonical .memory-bank base with evidence-based project context: purpose and scope, workflows, stack and validation commands, architecture map, decisions, and the open work found while documenting the cmdlets. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: AI Assistant <ai@example.com> * docs: align documentation with the cmdlet source - Fill all 36 platyPS cmdlet pages from the C# source: synopsis, description, parameters, defaults, examples, inputs, outputs, and notes, including documented limitations of the current code - Check every example against live parameter metadata and run them in a sandbox; fix examples that did not work (CSV restore, account filter, recursive inheritance, -AccessRights typos) - Rewrite the home, concepts, examples, README, and contributor pages; add a grouped cmdlet overview, module settings, privileges, long paths, and the platyPS workflow - Document Remove-Item2 -PassThru as renamed after 4.2.6 (#64) - Fix mkdocs.yml navigation, edit_uri, and copyright markup; add build.os and a pinned MkDocs version for Read the Docs - Point online help links to the pages on GitHub; add CHANGELOG.md Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: AI Assistant <ai@example.com> * ci: build the module and check the docs against the build The documentation check ran Update-MarkdownHelp against the NTFSSecurity release from the PowerShell Gallery (4.2.6), so it failed for every unreleased parameter change. PR #91 failed because 4.2.6 still has Remove-Item2 -PassThur while the source and the docs have -PassThru. - Build NTFSSecurity.csproj in Release on the Visual Studio 2022 image, using the .NET Framework 4.5.2 reference assemblies package instead of an installed targeting pack - Check Docs/Cmdlets against the module built from source - Pin platyPS 0.14.2 and MarkdownLinkCheck 0.2.0, and enable TLS 1.2 so the NuGet provider bootstrap works Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: AI Assistant <ai@example.com> * chore: record the green PR 91 build in the memory bank Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: AI Assistant <ai@example.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: AI Assistant <ai@example.com>
4 weeks ago
# Style guide
Follow these rules so that the NTFSSecurity documentation reads as one
consistent set of pages.
## Language
- Write in American English, in the present tense, and in the active voice.
- Address the reader as "you".
- Keep sentences short, with one idea per sentence.
- Write product names as their owners do: PowerShell, Windows PowerShell,
NTFS, Active Directory, GitHub.
- Format cmdlet names, parameter names, values, type names, paths, and code
as code with backticks, for example `Add-NTFSAccess -AccessRights Modify`.
- Describe what the code does. Check every statement about behavior against
the source code or a test run.
## Examples
- Use the sample accounts `CONTOSO\JohnDoe`, `CONTOSO\Domain Users`,
`BUILTIN\Users`, and `BUILTIN\Administrators`.
- Use sample paths below `C:\Data`.
- Use full cmdlet names, full parameter names, and full value names, for
example `FullControl` instead of `Full`. Don't use aliases or positional
parameters unless the example is about them.
- Test every example in a test folder before you publish it.
- Don't publish output that shows real computer, domain, or user names.
Describe the result in a sentence instead.
- Say when an example needs an elevated session.
## Cmdlet reference pages
| Section | Content |
| --- | --- |
| SYNOPSIS | One sentence that starts with a verb in the third person, for example "Gets ..." or "Adds ...". |
| DESCRIPTION | What the cmdlet does, what it works on, how the parameter sets differ, defaults, and the module settings that affect it. |
| EXAMPLES | Two to four realistic tasks. Each example has a title, the command, and a sentence that explains the result. |
| PARAMETERS | "Specifies ..." for parameters that take a value and "Indicates that ..." for switches. Name the default when the parameter is omitted. |
| INPUTS and OUTPUTS | One sentence per type. Say when the cmdlet writes nothing by default. |
| NOTES | Required privileges, limitations, and differences between versions. |
| RELATED LINKS | Links to closely related cmdlet pages. |
## Conceptual pages
- Use one level 1 heading per page and sentence case for all headings.
- Start each page with a short introduction that says what the page covers.
- Wrap lines at 80 characters, except in tables, links, and code blocks.
- Link to the cmdlet reference instead of repeating parameter details.
## Next steps
Read [Markdown and platyPS specifics](04-Markdown-Specifics.md).