All projects

TreeView – XML, JSON and YAML viewer for Total Commander

XML, JSON, YAML and TOML as a tree or grid in the Total Commander Lister – with in-place editing.

TreeView opens XML, JSON, YAML, TOML and Windows registry exports in three views: as a tree (like XML Notepad), as a nested grid (like XMLSpy) and as formatted, coloured source. Large files open quickly, and broken files still show everything up to the error.

What is TreeView?

TreeView is a Lister plugin for Total Commander that opens XML (and its many dialects such as project files, SVG and RSS), JSON, JSON Lines, YAML, TOML and Windows registry exports. You can read them as a tree like XML Notepad, as a nested grid like XMLSpy, or as formatted, coloured source.

Values can be edited in place – only that part of the file is rewritten, so comments and formatting stay – and are saved with Ctrl+S. Broken files still show everything up to the error, with its line number. The plugin is written in C++ against the plain Win32 API and needs no runtime.

Highlights

  • 01

    Three views

    Tree, nested grid and source – the selected node stays selected when you switch.

  • 02

    Edit in place

    Change a value with double-click, Ctrl+E or F4; only that part of the file is rewritten, comments and formatting stay.

  • 03

    Copy paths

    Copy a value, name, XPath or JSONPath, or a whole node as XML, JSON or YAML.

  • 04

    Tolerant

    JSON with comments and trailing commas, YAML anchors and several documents, and syntax errors reported with the line number.

How it’s built

TreeView is written in C++ against the plain Win32 API, without frameworks or runtimes: its own parsers for XML, JSON, YAML and TOML that keep the original text, so edits touch only what changed, and GDI drawing in the Windows 11 style.

Frequently asked questions

Can Total Commander show JSON, XML or YAML as a tree?

Yes, with the TreeView Lister plugin: press F3 on the file and choose tree, nested grid or source.

Can I edit values in TreeView?

Yes: double-click a value, or press Ctrl+E or F4. Text, numbers, booleans, XML attributes and element text can be changed; changes are written only when you save with Ctrl+S. (Not for .reg files.)

How do I copy an XPath or JSONPath?

In the context menu of a node: copy the value, the name, the path (XPath for XML, JSONPath for JSON) or the whole node as XML, JSON or YAML.

All projects