en-US/PSTextMate.dll-Help.xml

<?xml version="1.0" encoding="utf-8"?>
<helpItems xmlns:maml="http://schemas.microsoft.com/maml/2004/10" xmlns:command="http://schemas.microsoft.com/maml/dev/command/2004/10" xmlns:dev="http://schemas.microsoft.com/maml/dev/2004/10" schema="maml" xmlns="http://msh">
  <command:command>
    <command:details>
      <command:name>Format-CSharp</command:name>
      <maml:description>
        <maml:para>Renders C# source code using TextMate grammars and returns a PSTextMate.Core.HighlightedText object.
Use for previewing or formatting C# snippets and files.</maml:para>
      </maml:description>
      <command:verb>Format</command:verb>
      <command:noun>CSharp</command:noun>
    </command:details>
    <maml:description>
      <maml:para>Format-CSharp renders C# input using the TextMate grammar for C#. Input can be provided as objects (strings) via the pipeline or by passing file contents. The cmdlet produces a `HighlightedText` object suitable for rendering to console. Use `-Theme` to select a visual theme and `-LineNumbers` to include line numbers in the output.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Format-CSharp</maml:name>
        <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
          <maml:name>InputObject</maml:name>
          <maml:description>
            <maml:para>Accepts a string or object containing source code.
When receiving pipeline input, the cmdlet treats the value as source text.
For file processing, pass the file contents (for example with `Get-Content -Raw`).
FileInfo objects are also accepted</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>LineNumbers</maml:name>
          <maml:description>
            <maml:para>When specified, include line numbers in the rendered output to aid reference and diffs.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Theme</maml:name>
          <maml:description>
            <maml:para>Selects a `TextMateSharp.Grammars.ThemeName` to use when rendering. If omitted, the module default theme is used.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
        <maml:name>InputObject</maml:name>
        <maml:description>
          <maml:para>Accepts a string or object containing source code.
When receiving pipeline input, the cmdlet treats the value as source text.
For file processing, pass the file contents (for example with `Get-Content -Raw`).
FileInfo objects are also accepted</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>LineNumbers</maml:name>
        <maml:description>
          <maml:para>When specified, include line numbers in the rendered output to aid reference and diffs.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Theme</maml:name>
        <maml:description>
          <maml:para>Selects a `TextMateSharp.Grammars.ThemeName` to use when rendering. If omitted, the module default theme is used.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <dev:name>PSObject</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Accepts any object that can be converted to or contains a code string; commonly a `string` produced by `Get-Content -Raw` or piped literal text.</maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <dev:name>PSTextMate.Core.HighlightedText</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Returns a `HighlightedText` object which contains the tokenized and styled representation of the input. This object is intended for rendering to consoles or for downstream processing.</maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para>This cmdlet uses TextMate grammars packaged with the module. For large files consider streaming the contents or increasing process memory limits.</maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>--------- Example 1 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: highlight a C# snippet from the pipeline</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
"public class C { void M() {} }" | Format-CSharp
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 2 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: format a file and include line numbers</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-Content .\src\Program.cs -Raw | Format-CSharp -LineNumbers
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 3 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: Pipe FileInfo objects</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-ChildItem *.cs | Format-CSharp -Theme SolarizedDark
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
    </command:examples>
    <command:relatedLinks>
      <maml:navigationLink>
        <maml:linkText>Online Version</maml:linkText>
        <command:uri>https://github.com/trackd/TextMate/blob/main/docs/en-us</command:uri>
      </maml:navigationLink>
    </command:relatedLinks>
  </command:command>
  <command:command>
    <command:details>
      <command:name>Format-Markdown</command:name>
      <maml:description>
        <maml:para>Renders Markdown input using TextMate grammars or the module's alternate renderer and returns a PSTextMate.Core.HighlightedText object.</maml:para>
      </maml:description>
      <command:verb>Format</command:verb>
      <command:noun>Markdown</command:noun>
    </command:details>
    <maml:description>
      <maml:para>Format-Markdown highlights Markdown content using the Markdown grammar where appropriate. Use the `-Alternate` switch to force TextMate renderer as opposed to custom Markdig rendering. Input may be piped in as text or read from files. The cmdlet returns a `HighlightedText` object for rendering.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Format-Markdown</maml:name>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Alternate</maml:name>
          <maml:description>
            <maml:para>When present, forces the module's TextMate rendering instead of the custom Markdig rendering path.
Useful for testing alternate presentation.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
        </command:parameter>
        <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
          <maml:name>InputObject</maml:name>
          <maml:description>
            <maml:para>Accepts a string or object containing Markdown text. Common usage is `Get-Content -Raw` piped into the cmdlet.
FileInfo objects are also accepted</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>LineNumbers</maml:name>
          <maml:description>
            <maml:para>Includes line numbers in the rendered output when specified.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Theme</maml:name>
          <maml:description>
            <maml:para>Selects a `TextMateSharp.Grammars.ThemeName` to style the output. If omitted, the module default is used.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Alternate</maml:name>
        <maml:description>
          <maml:para>When present, forces the module's TextMate rendering instead of the custom Markdig rendering path.
Useful for testing alternate presentation.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
      </command:parameter>
      <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
        <maml:name>InputObject</maml:name>
        <maml:description>
          <maml:para>Accepts a string or object containing Markdown text. Common usage is `Get-Content -Raw` piped into the cmdlet.
FileInfo objects are also accepted</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>LineNumbers</maml:name>
        <maml:description>
          <maml:para>Includes line numbers in the rendered output when specified.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Theme</maml:name>
        <maml:description>
          <maml:para>Selects a `TextMateSharp.Grammars.ThemeName` to style the output. If omitted, the module default is used.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <dev:name>PSObject</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Accepts Markdown text as a `string` or an object that can provide textual content.</maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <dev:name>PSTextMate.Core.HighlightedText</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Returns a `HighlightedText` object representing the highlighted Markdown content.</maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para>The Markdown renderer may apply special handling for fenced code blocks and front-matter when `UsesMarkdownBaseDirectory` is enabled. Use `-Alternate` to bypass markdown-specific rendering.</maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>--------- Example 1 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: highlight a Markdown string</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
"# Title`n`n- item1`n- item2" | Format-Markdown
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 2 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: format a file using the alternate renderer</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-Content README.md -Raw | Format-Markdown -Alternate
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 3 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: pipe FileInfo object and use a theme and line numbers</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-ChildItem docs\guide.md | Format-Markdown -Theme SolarizedLight -LineNumbers
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
    </command:examples>
    <command:relatedLinks>
      <maml:navigationLink>
        <maml:linkText>Online Version</maml:linkText>
        <command:uri>https://github.com/trackd/TextMate/blob/main/docs/en-us</command:uri>
      </maml:navigationLink>
    </command:relatedLinks>
  </command:command>
  <command:command>
    <command:details>
      <command:name>Format-PowerShell</command:name>
      <maml:description>
        <maml:para>Renders PowerShell code using TextMate grammars and returns a PSTextMate.Core.HighlightedText result for display or programmatic use.</maml:para>
      </maml:description>
      <command:verb>Format</command:verb>
      <command:noun>PowerShell</command:noun>
    </command:details>
    <maml:description>
      <maml:para>Format-PowerShell highlights PowerShell source and script files. Input can be provided as pipeline text or via file contents. The resulting `HighlightedText` can be used with console renderers or further processed. Use `-Theme` and `-LineNumbers` to adjust output.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Format-PowerShell</maml:name>
        <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
          <maml:name>InputObject</maml:name>
          <maml:description>
            <maml:para>Accepts a `string` or object containing PowerShell source text.
Typically used with `Get-Content -Raw` or piping literal strings.
Accepts FileInfo objects</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>LineNumbers</maml:name>
          <maml:description>
            <maml:para>When present, include line numbers in the rendered output.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Theme</maml:name>
          <maml:description>
            <maml:para>Chooses a `TextMateSharp.Grammars.ThemeName` for styling the highlighted output.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
        <maml:name>InputObject</maml:name>
        <maml:description>
          <maml:para>Accepts a `string` or object containing PowerShell source text.
Typically used with `Get-Content -Raw` or piping literal strings.
Accepts FileInfo objects</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>LineNumbers</maml:name>
        <maml:description>
          <maml:para>When present, include line numbers in the rendered output.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Theme</maml:name>
        <maml:description>
          <maml:para>Chooses a `TextMateSharp.Grammars.ThemeName` for styling the highlighted output.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <dev:name>PSObject</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Accepts textual input representing PowerShell source.</maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <dev:name>PSTextMate.Core.HighlightedText</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Returns the highlighted representation of the input source as a `HighlightedText` object.</maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para>The cmdlet uses the PowerShell grammar shipped with the module. For very large scripts consider chunking input to avoid high memory usage.</maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>--------- Example 1: Highlight a short PowerShell snippet ---------</maml:title>
        <maml:introduction>
          <maml:para>```
'Get-Process | Where-Object { $_.CPU -gt 1 }' | Format-PowerShell
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 2: Highlight a script file with line numbers ---------</maml:title>
        <maml:introduction>
          <maml:para>```
Get-Content .\scripts\deploy.ps1 -Raw | Format-PowerShell -LineNumbers
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 3: Pipe FileInfo object and render with theme ---------</maml:title>
        <maml:introduction>
          <maml:para>```
Get-ChildItem .\scripts\*.ps1 | Format-PowerShell -Theme Monokai
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
    </command:examples>
    <command:relatedLinks>
      <maml:navigationLink>
        <maml:linkText>Online Version</maml:linkText>
        <command:uri>https://github.com/trackd/TextMate/blob/main/docs/en-us</command:uri>
      </maml:navigationLink>
    </command:relatedLinks>
  </command:command>
  <command:command>
    <command:details>
      <command:name>Format-TextMate</command:name>
      <maml:description>
        <maml:para>Displays syntax-highlighted text using TextMate grammars. Accepts strings or file input and returns a `HighlightedText` object for rendering.</maml:para>
      </maml:description>
      <command:verb>Format</command:verb>
      <command:noun>TextMate</command:noun>
    </command:details>
    <maml:description>
      <maml:para>Format-TextMate renders textual input using an appropriate TextMate grammar. When `-Language` is provided it forces that language; when omitted the cmdlet may infer language from file extension or default to `powershell`. Use `-Alternate` to force the standard renderer for Markdown files.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Format-TextMate</maml:name>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Alternate</maml:name>
          <maml:description>
            <maml:para>Forces the standard (non-markdown-specialized) renderer. Useful for previewing how code blocks will appear under the generic renderer.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
        </command:parameter>
        <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
          <maml:name>InputObject</maml:name>
          <maml:description>
            <maml:para>Accepts a `string` or object containing textual content.
Use `Get-Content -Raw` to pass file contents.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Language</maml:name>
          <maml:description>
            <maml:para>Hint to force a particular TextMate language ID (for example `powershell`, `csharp`, `python`).
When provided it overrides extension-based inference.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">String</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>LineNumbers</maml:name>
          <maml:description>
            <maml:para>Include line numbers in the output when specified.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
        </command:parameter>
        <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Theme</maml:name>
          <maml:description>
            <maml:para>Select a `TextMateSharp.Grammars.ThemeName` used for styling output.</maml:para>
          </maml:description>
          <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Alternate</maml:name>
        <maml:description>
          <maml:para>Forces the standard (non-markdown-specialized) renderer. Useful for previewing how code blocks will appear under the generic renderer.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
      </command:parameter>
      <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="0" aliases="none">
        <maml:name>InputObject</maml:name>
        <maml:description>
          <maml:para>Accepts a `string` or object containing textual content.
Use `Get-Content -Raw` to pass file contents.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="true">PSObject</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Language</maml:name>
        <maml:description>
          <maml:para>Hint to force a particular TextMate language ID (for example `powershell`, `csharp`, `python`).
When provided it overrides extension-based inference.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">String</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>LineNumbers</maml:name>
        <maml:description>
          <maml:para>Include line numbers in the output when specified.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">SwitchParameter</command:parameterValue>
      </command:parameter>
      <command:parameter required="false" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Theme</maml:name>
        <maml:description>
          <maml:para>Select a `TextMateSharp.Grammars.ThemeName` used for styling output.</maml:para>
        </maml:description>
        <command:parameterValue required="false" variableLength="true">TextMateSharp.Grammars.ThemeName</command:parameterValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes>
      <command:inputType>
        <dev:type>
          <dev:name>PSObject</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Accepts textual input or objects containing text; commonly used with `Get-Content -Raw` or pipeline strings or FileInfo objects.</maml:para>
        </maml:description>
      </command:inputType>
    </command:inputTypes>
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <dev:name>PSTextMate.Core.HighlightedText</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Returns a `HighlightedText` object representing the rendered tokens and styling metadata.</maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para>If language cannot be inferred and `-Language` is not provided, the cmdlet defaults to `powershell` for string input. Use `-Language` to override detection.</maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>--------- Example 1 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: highlight a snippet with an explicit language</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
"print('hello')" | Format-TextMate -Language python
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 2 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: render a file and let the cmdlet infer language from extension</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Format-TextMate -InputObject (Get-Content scripts\deploy.ps1 -Raw)
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 3 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: preview a Markdown file</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-Content README.md -Raw | Format-TextMate -Theme SolarizedDark
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
    </command:examples>
    <command:relatedLinks>
      <maml:navigationLink>
        <maml:linkText>Online Version</maml:linkText>
        <command:uri>https://github.com/trackd/TextMate/blob/main/docs/en-us</command:uri>
      </maml:navigationLink>
    </command:relatedLinks>
  </command:command>
  <command:command>
    <command:details>
      <command:name>Get-TextMateGrammar</command:name>
      <maml:description>
        <maml:para>Retrieves a list of supported TextMate languages and grammar metadata available to the module.</maml:para>
      </maml:description>
      <command:verb>Get</command:verb>
      <command:noun>TextMateGrammar</command:noun>
    </command:details>
    <maml:description>
      <maml:para>Get-TextMateGrammar returns detailed `TextMateSharp.Grammars.Language` objects describing available grammars, file extensions, scopes, and other metadata. Useful for tooling that needs to map file types to TextMate language IDs.</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Get-TextMateGrammar</maml:name>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters />
    <command:inputTypes />
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <dev:name>TextMateSharp.Grammars.Language</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Emits `Language` objects from TextMateSharp describing the grammar, scope name, file extensions and any available configuration.</maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para>The returned objects can be used by `Format-TextMate` or other consumers to determine which grammar token to apply for a given file.</maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>--------- Example 1 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: list all supported languages</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-TextMateGrammar
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 2 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: show language names and extensions</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-TextMateGrammar | Select-Object Name, Extensions
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 3 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: find languages supporting .cs files</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Get-TextMateGrammar | Where-Object { $_.Extensions -contains '.cs' }
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
    </command:examples>
    <command:relatedLinks>
      <maml:navigationLink>
        <maml:linkText>Online Version</maml:linkText>
        <command:uri>https://github.com/trackd/TextMate/blob/main/docs/en-us</command:uri>
      </maml:navigationLink>
    </command:relatedLinks>
  </command:command>
  <command:command>
    <command:details>
      <command:name>Test-TextMate</command:name>
      <maml:description>
        <maml:para>Tests whether a language, extension, or file is supported by the module's TextMate grammars. Returns a boolean or diagnostic object indicating support.</maml:para>
      </maml:description>
      <command:verb>Test</command:verb>
      <command:noun>TextMate</command:noun>
    </command:details>
    <maml:description>
      <maml:para>Test-TextMate verifies support for TextMate languages and extensions. Use the `-File` parameter to check a specific file path, `-Extension` to verify a file extension, or `-Language` to test a language identifier. The cmdlet returns `true` or `false`</maml:para>
    </maml:description>
    <command:syntax>
      <command:syntaxItem>
        <maml:name>Test-TextMate</maml:name>
        <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>File</maml:name>
          <maml:description>
            <maml:para>Path to a file to test for grammar support.
The path is resolved and existence is validated before checking support.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="true">System.String</command:parameterValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Test-TextMate</maml:name>
        <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Extension</maml:name>
          <maml:description>
            <maml:para>File extension to test (for example `.ps1`, `.cs`).
When used the cmdlet returns whether the module has a grammar associated with that extension.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="true">System.String</command:parameterValue>
        </command:parameter>
      </command:syntaxItem>
      <command:syntaxItem>
        <maml:name>Test-TextMate</maml:name>
        <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
          <maml:name>Language</maml:name>
          <maml:description>
            <maml:para>TextMate language ID to test (for example `powershell`, `csharp`, `markdown`).
Returns whether that language ID is supported.</maml:para>
          </maml:description>
          <command:parameterValue required="true" variableLength="true">System.String</command:parameterValue>
        </command:parameter>
      </command:syntaxItem>
    </command:syntax>
    <command:parameters>
      <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Extension</maml:name>
        <maml:description>
          <maml:para>File extension to test (for example `.ps1`, `.cs`).
When used the cmdlet returns whether the module has a grammar associated with that extension.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="true">System.String</command:parameterValue>
      </command:parameter>
      <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>File</maml:name>
        <maml:description>
          <maml:para>Path to a file to test for grammar support.
The path is resolved and existence is validated before checking support.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="true">System.String</command:parameterValue>
      </command:parameter>
      <command:parameter required="true" variableLength="false" globbing="false" pipelineInput="false" position="Named" aliases="none">
        <maml:name>Language</maml:name>
        <maml:description>
          <maml:para>TextMate language ID to test (for example `powershell`, `csharp`, `markdown`).
Returns whether that language ID is supported.</maml:para>
        </maml:description>
        <command:parameterValue required="true" variableLength="true">System.String</command:parameterValue>
      </command:parameter>
    </command:parameters>
    <command:inputTypes />
    <command:returnValues>
      <command:returnValue>
        <dev:type>
          <dev:name>bool</dev:name>
        </dev:type>
        <maml:description>
          <maml:para>Returns `bool` results for support checks. In error cases or file-not-found scenarios the cmdlet may write errors or diagnostic objects to the pipeline.</maml:para>
        </maml:description>
      </command:returnValue>
    </command:returnValues>
    <maml:alertSet>
      <maml:alert>
        <maml:para>Use `Get-TextMate` to discover available language IDs and their extensions before calling this cmdlet.</maml:para>
      </maml:alert>
    </maml:alertSet>
    <command:examples>
      <command:example>
        <maml:title>--------- Example 1 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: test a file path for support</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Test-TextMate -File .\src\Program.cs
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 2 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: test by extension</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Test-TextMate -Extension .ps1
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
      <command:example>
        <maml:title>--------- Example 3 ---------</maml:title>
        <maml:introduction>
          <maml:para>Example: test by language identifier</maml:para>
          <maml:para>&#x80;</maml:para>
          <maml:para>```
Test-TextMate -Language powershell
```</maml:para>
        </maml:introduction>
        <dev:code />
        <dev:remarks />
      </command:example>
    </command:examples>
    <command:relatedLinks>
      <maml:navigationLink>
        <maml:linkText>Online Version</maml:linkText>
        <command:uri>https://github.com/trackd/TextMate/blob/main/docs/en-us</command:uri>
      </maml:navigationLink>
    </command:relatedLinks>
  </command:command>
</helpItems>