oh-my-posh/website/docs/segments/node.mdx
2024-03-18 20:07:25 +01:00

69 lines
6.4 KiB
Plaintext

---
id: node
title: Node
sidebar_label: Node
---
## What
Display the currently active [Node.js][node-js] version.
## Sample Configuration
import Config from "@site/src/components/Config.js";
<Config
data={{
type: "node",
style: "powerline",
powerline_symbol: "\uE0B0",
foreground: "#ffffff",
background: "#6CA35E",
template: " \uE718 {{ .Full }} ",
}}
/>
## Properties
| Name | Type | Description |
| ----------------------- | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `home_enabled` | `boolean` | display the segment in the HOME folder or not - defaults to `false` |
| `fetch_version` | `boolean` | display the Node.js version - defaults to `true` |
| `missing_command_text` | `string` | text to display when the command is missing - defaults to empty |
| `display_mode` | `string` | <ul><li>`always`: The segment is always displayed</li><li>`files`: The segment is only displayed when one of the following files is present (**default**):<ul><li>`*.js`</li><li>`*.ts`</li><li>`package.json`</li><li>`.nvmrc`</li><li>`pnpm-workspace.yaml`</li><li>`.pnpmfile.cjs`</li><li>`.vue`</li></ul></li></ul> |
| `version_url_template` | `string` | a go [text/template][go-text-template] [template][templates] that creates the URL of the version info / release notes |
| `fetch_package_manager` | `boolean` | define if the current project uses Yarn or NPM - defaults to `false` |
| `yarn_icon` | `string` | the icon/text to display when using Yarn - defaults to ` \uF011B` |
| `npm_icon` | `string` | the icon/text to display when using NPM - defaults to ` \uE71E` |
| `extensions` | `[]string` | allows to override the default list of file extensions to validate |
| `folders` | `[]string` | allows to override the list of folder names to validate |
| `cache_version` | `boolean` | cache the executable's version or not - defaults to `false` |
## Template ([info][templates])
:::note default template
```template
{{ if .PackageManagerIcon }}{{ .PackageManagerIcon }} {{ end }}{{ .Full }}
```
:::
### Properties
| Name | Type | Description |
| --------------------- | --------- | ------------------------------------------------------------------- |
| `.Full` | `string` | the full version |
| `.Major` | `string` | major number |
| `.Minor` | `string` | minor number |
| `.Patch` | `string` | patch number |
| `.URL` | `string` | URL of the version info / release notes |
| `.Error` | `string` | error encountered when fetching the version string |
| `.PackageManagerIcon` | `string` | the Yarn or NPM icon when setting `fetch_package_manager` to `true` |
| `.Mismatch` | `boolean` | true if the version in `.nvmrc` is not equal to `.Full` |
| `.Expected` | `string` | the expected version set in `.nvmrc` |
[go-text-template]: https://golang.org/pkg/text/template/
[templates]: /docs/configuration/templates
[node-js]: https://nodejs.org