Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues

svgesus — SVG Jesus

Windows SVG thumbnail shell extension (D + NanoSVG). Implements COM IThumbnailProvider + IInitializeWithStream.

Explore the docs »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License
  6. Contact

About The Project

Thread-safe thumbnail provider designed so Windows can cache SVG previews consistently. Rasterization uses NanoSVG (C); the shell extension is written in D.

(back to top)

Built With

  • Shell extensionD (dmd / ldc)
  • RasterizationNanoSVG (C)
  • Toolchain — Visual Studio Build Tools (cl)

(back to top)

Getting Started

Prerequisites

  • Windows 10/11 x64
  • D compiler (dmd or ldc)
  • Visual Studio Build Tools with cl in PATH
  • Run once: scripts/fetch_nanosvg.ps1 to download NanoSVG headers

Optional Build Tools install:

winget install --id Microsoft.VisualStudio.2022.BuildTools -e

Build

.\scripts\fetch_nanosvg.ps1
dub build
# Optional:
.\scripts\build_dmd.ps1
.\scripts\build_llvm.ps1

Output: bin/svgesus.dll.

Install (manual)

  1. Copy bin/svgesus.dll to a permanent location (e.g. C:\Program Files\svgesus\svgesus.dll).
  2. Run as Administrator: regsvr32 "C:\Program Files\svgesus\svgesus.dll".
  3. Restart Explorer or log off and back on.

Uninstall: regsvr32 /u "C:\Program Files\svgesus\svgesus.dll" (as Admin).

(back to top)

Usage

After registration, SVG files should show thumbnails in Explorer. If caching fails:

  • Handler may be failing intermittently (Explorer skips cache).
  • OneDrive Files On-Demand can block local thumbnail generation.
  • Folder Options → View → ensure “Always show icons, never thumbnails” is unchecked.

Registered with DisableProcessIsolation = 1 for in-process reliability.

See docs/LANGUAGE_CHOICE.adoc for language/design notes.

(back to top)

Contributing

Fork, branch, and open a pull request.

Top contributors

contributors

For per-person profile links, prefer all-contributors.

(back to top)

Changelog

See CHANGELOG.md for the project history.

License

MIT.

(back to top)

Contact

Ryan Johnson — @amdphreak

Project Link: https://github.com/AMDphreak/svgesus

Site: https://ryanjohnson.dev

(back to top)

About

Windows SVG thumbnail shell extension (SVG Jesus). D + NanoSVG.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages