Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/syntax-tree/unist-util-inspect
utility to inspect nodes
https://github.com/syntax-tree/unist-util-inspect
console inspect syntax-tree unist unist-util util
Last synced: 3 months ago
JSON representation
utility to inspect nodes
- Host: GitHub
- URL: https://github.com/syntax-tree/unist-util-inspect
- Owner: syntax-tree
- License: mit
- Created: 2014-10-06T06:48:40.000Z (over 10 years ago)
- Default Branch: main
- Last Pushed: 2024-07-16T12:15:29.000Z (7 months ago)
- Last Synced: 2024-11-10T02:55:55.538Z (3 months ago)
- Topics: console, inspect, syntax-tree, unist, unist-util, util
- Language: JavaScript
- Homepage: https://unifiedjs.com
- Size: 238 KB
- Stars: 27
- Watchers: 11
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
- awesome-syntax-tree - unist-util-inspect - Inspect nodes. (unist utilities)
README
# unist-util-inspect
[![Build][build-badge]][build]
[![Coverage][coverage-badge]][coverage]
[![Downloads][downloads-badge]][downloads]
[![Size][size-badge]][size]
[![Sponsors][sponsors-badge]][collective]
[![Backers][backers-badge]][collective]
[![Chat][chat-badge]][chat][unist][] utility to inspect trees.
## Contents
* [What is this?](#what-is-this)
* [When should I use this?](#when-should-i-use-this)
* [Install](#install)
* [Use](#use)
* [API](#api)
* [`inspect(tree[, options])`](#inspecttree-options)
* [`inspectColor(tree[, options])`](#inspectcolortree-options)
* [`inspectNoColor(tree[, options])`](#inspectnocolortree-options)
* [`Options`](#options)
* [Types](#types)
* [Compatibility](#compatibility)
* [Contribute](#contribute)
* [License](#license)## What is this?
This is a utility pretty prints the tree.
## When should I use this?
This utility pretty prints the tree in a format that is made custom for unist
trees, which is terser than the often verbose and repetitive JSON,
to more easily spot bugs and see what’s going on in the tree.## Install
This package is [ESM only][esm].
In Node.js (version 16+), install with [npm][]:```sh
npm install unist-util-inspect
```In Deno with [`esm.sh`][esmsh]:
```js
import {inspect} from 'https://esm.sh/unist-util-inspect@8'
```In browsers with [`esm.sh`][esmsh]:
```html
import {inspect} from 'https://esm.sh/unist-util-inspect@8?bundle'
```
## Use
```js
import {u} from 'unist-builder'
import {inspect} from 'unist-util-inspect'const tree = u('root', [
u('literal', '1'),
u('parent', [
u('void', {id: 'a'}),
u('literal', '2'),
u('node', {id: 'b'}, [])
])
])console.log(inspect(tree))
```Yields:
```text
root[2]
├─0 literal "1"
└─1 parent[3]
├─0 void
│ id: "a"
├─1 literal "2"
└─2 node[0]
id: "b"
```## API
This package exports the identifiers [`inspect`][api-inspect],
[`inspectColor`][api-inspectcolor], and [`inspectNoColor`][api-inspectnocolor].
There is no default export.### `inspect(tree[, options])`
Inspect a tree, with color in Node, without color in browsers.
###### Parameters
* `tree` ([`Node`][node])
— tree to inspect
* `options` ([`Options`][api-options], optional)
— configuration###### Returns
Pretty printed `tree` (`string`).
### `inspectColor(tree[, options])`
> 🪦 **Deprecated**: use `color` option of `inspect`.
Inspect a tree, with color.
Otherwise same as [`inspect`][api-inspect].### `inspectNoColor(tree[, options])`
> 🪦 **Deprecated**: use `color` option of `inspect`.
Inspect a tree, without color.
Otherwise same as [`inspect`][api-inspect].### `Options`
Configuration (TypeScript type).
###### Fields
* `color` (`boolean`, default: `true` in Node, `false` otherwise)
— whether to use ANSI colors
* `showPositions` (`boolean`, default: `true`)
— whether to include positional information## Types
This package is fully typed with [TypeScript][].
It exports the additional type [`Options`][api-options].## Compatibility
Projects maintained by the unified collective are compatible with maintained
versions of Node.js.When we cut a new major release, we drop support for unmaintained versions of
Node.
This means we try to keep the current release line, `unist-util-inspect@^8`,
compatible with Node.js 16.## Contribute
See [`contributing.md`][contributing] in [`syntax-tree/.github`][health] for
ways to get started.
See [`support.md`][support] for ways to get help.This project has a [code of conduct][coc].
By interacting with this repository, organization, or community you agree to
abide by its terms.## License
[MIT][license] © [Titus Wormer][author]
[build-badge]: https://github.com/syntax-tree/unist-util-inspect/workflows/main/badge.svg
[build]: https://github.com/syntax-tree/unist-util-inspect/actions
[coverage-badge]: https://img.shields.io/codecov/c/github/syntax-tree/unist-util-inspect.svg
[coverage]: https://codecov.io/github/syntax-tree/unist-util-inspect
[downloads-badge]: https://img.shields.io/npm/dm/unist-util-inspect.svg
[downloads]: https://www.npmjs.com/package/unist-util-inspect
[size-badge]: https://img.shields.io/badge/dynamic/json?label=minzipped%20size&query=$.size.compressedSize&url=https://deno.bundlejs.com/?q=unist-util-inspect
[size]: https://bundlejs.com/?q=unist-util-inspect
[sponsors-badge]: https://opencollective.com/unified/sponsors/badge.svg
[backers-badge]: https://opencollective.com/unified/backers/badge.svg
[collective]: https://opencollective.com/unified
[chat-badge]: https://img.shields.io/badge/chat-discussions-success.svg
[chat]: https://github.com/syntax-tree/unist/discussions
[npm]: https://docs.npmjs.com/cli/install
[esm]: https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c
[esmsh]: https://esm.sh
[typescript]: https://www.typescriptlang.org
[license]: license
[author]: https://wooorm.com
[health]: https://github.com/syntax-tree/.github
[contributing]: https://github.com/syntax-tree/.github/blob/main/contributing.md
[support]: https://github.com/syntax-tree/.github/blob/main/support.md
[coc]: https://github.com/syntax-tree/.github/blob/main/code-of-conduct.md
[unist]: https://github.com/syntax-tree/unist
[node]: https://github.com/syntax-tree/unist#node
[api-inspect]: #inspecttree-options
[api-inspectcolor]: #inspectcolortree-options
[api-inspectnocolor]: #inspectnocolortree-options
[api-options]: #options