Skip to content

feat: add configurable icon styles with nerd font support#65

Merged
dlvhdr merged 4 commits intodlvhdr:mainfrom
pablospe:nerd-icons-squash
Jan 23, 2026
Merged

feat: add configurable icon styles with nerd font support#65
dlvhdr merged 4 commits intodlvhdr:mainfrom
pablospe:nerd-icons-squash

Conversation

@pablospe
Copy link
Contributor

Summary

  • Add four nerd font icon styles for the file tree
  • Add pkg/icons with 1000+ file type icon mappings
  • Update documentation with icon style descriptions

Icon Styles

Style Description
nerd-fonts-status Boxed git status icons (default)
nerd-fonts-simple Generic file icon
nerd-fonts-filetype Language-specific file icons
nerd-fonts-full Status + filetype icons combined
unicode Unicode symbols
ascii Plain ASCII

Add four nerd font icon styles for the file tree:
- nerd-fonts-status: boxed git status icons (default)
- nerd-fonts-simple: generic file icon
- nerd-fonts-filetype: language-specific file icons
- nerd-fonts-full: status + filetype icons combined

Also includes unicode and ascii fallback styles.

Add pkg/icons with 1000+ file type icon mappings sourced
from eza and superfile projects.
@dlvhdr dlvhdr merged commit 04b0c19 into dlvhdr:main Jan 23, 2026
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request Feb 2, 2026
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [dlvhdr/diffnav](https://github.com/dlvhdr/diffnav) | minor | `v0.6.0` → `v0.8.1` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>dlvhdr/diffnav (dlvhdr/diffnav)</summary>

### [`v0.8.1`](https://github.com/dlvhdr/diffnav/releases/tag/v0.8.1)

[Compare Source](dlvhdr/diffnav@v0.8.0...v0.8.1)

Quick and small fix thanks to [@&#8203;pablospe](https://github.com/pablospe)!

#### Changelog

- [`dfb73a4`](dlvhdr/diffnav@dfb73a4) Fix side-by-side toggle for directory nodes ([#&#8203;72](dlvhdr/diffnav#72))

### [`v0.8.0`](https://github.com/dlvhdr/diffnav/releases/tag/v0.8.0)

[Compare Source](dlvhdr/diffnav@v0.7.0...v0.8.0)

### The Collapsible Release

#### Directories Are Now Intractable

The main feature of this release is that you can now collapse and expand directories!
In addition you can view the diff for entire directories at once, as well as the entire diff if you're on the root node.

<https://github.com/user-attachments/assets/eccf158c-5fb1-4af1-89a9-ad6c8ddbbe52>

### Diffstats

Diff stats in the file tree show you the amount of changes to a file in a glance.
This is on by default and you can turn it off by setting this in your config:

```yaml
ui:
  showDiffStats: false
```

Enjoy!

#### Changelog

- [`297d8d0`](dlvhdr/diffnav@297d8d0) feat: diffstats
- [`6e5d9c3`](dlvhdr/diffnav@6e5d9c3) feat: expand/collapse dirs ([#&#8203;70](dlvhdr/diffnav#70))
- [`9305af9`](dlvhdr/diffnav@9305af9) fix: add node cache so you can view collapsed nodes diff ([#&#8203;71](dlvhdr/diffnav#71))
- [`2d86e83`](dlvhdr/diffnav@2d86e83) refactor: use dirnode for dir nodes ([#&#8203;69](dlvhdr/diffnav#69))

### [`v0.7.0`](https://github.com/dlvhdr/diffnav/releases/tag/v0.7.0)

[Compare Source](dlvhdr/diffnav@v0.6.0...v0.7.0)

### New File Tree Infra + File Icons!

v0.7.0 uses a new file tree under the hood that in the future will enable expanding/collapsing directories. Watch out for future updates.

Also, star contributor [@&#8203;pablospe](https://github.com/pablospe) added support for file icons with this config option:

```yaml
ui:
  icons: nerd-fonts-full
```

#### Changelog

- [`580ed20`](dlvhdr/diffnav@580ed20) chore: update .gh-dash.yml
- [`04b0c19`](dlvhdr/diffnav@04b0c19) feat: add configurable icon styles with nerd font support ([#&#8203;65](dlvhdr/diffnav#65))
- [`cc9c87c`](dlvhdr/diffnav@cc9c87c) refactor: rename filetreev2 to filetree ([#&#8203;67](dlvhdr/diffnav#67))
- [`52b6e4e`](dlvhdr/diffnav@52b6e4e) refactor: use tree bubble ([#&#8203;37](dlvhdr/diffnav#37))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi45NS4xIiwidXBkYXRlZEluVmVyIjoiNDIuOTUuMSIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90IiwiYXV0b21hdGlvbjpib3QtYXV0aG9yZWQiLCJkZXBlbmRlbmN5LXR5cGU6Om1pbm9yIl19-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants