Skip to content

maoyeedy/CommandPaletteUnity

Repository files navigation

Command Palette (CmdPal) Unity Extension

Overview

This project provide a Command Palette extension for opening Unity Hub recent projects.

Screenshot

Installation

Requirements

  • PowerToys installed, with Command Palette module enabled
  • Unity Hub installed, with recent projects history

Unity Hub is not required to run in the background, as this extension launches editor directly.

WinGet [Recommended]

In Progress.

Microsoft Store

In Progress.

Via GitHub

Released builds can be manually downloaded from this repository's Releases page.

Development

Parsing Recent Projects

# Beautify the history json
jq . "$HOME/AppData/Roaming/UnityHub/projects-v1.json"

# List most recent 3 projects:
jq '.data | to_entries | .[-3:] | from_entries' "$HOME/AppData/Roaming/UnityHub/projects-v1.json"

Parsing Installed Editors

Get-ChildItem -Path "HKLM:\SOFTWARE\Unity Technologies\Installer\", "HKCU:\SOFTWARE\Unity Technologies\Installer\"

Contributing

If you have bug reports or feature requests, any issues are welcome.

If you want to contribute, submit pull request directly to master.

TODO

  • Expose settings to sort and filter the list output.
  • Add fallback dialog if editor for a project is not installed.
  • Option to open project with another Unity version.
  • Add sub-command to view all installed Unity versions and their paths.

Related Repositories

  1. PowerToys Command Palette Utility
    Core runtime that this extension builds upon.

  2. Unity3D Project Lister and Launcher
    Inspiration for creating this plugin, but I'll avoid its dependency on Unity Setup Powershell Module.