-
Notifications
You must be signed in to change notification settings - Fork 0
Home
akamienski edited this page Feb 1, 2026
·
25 revisions
Note
Please be informed that this is a beta version - you're using it at your own risk!
# Default INI next to the EXE
./WinMacMenu.exe
# Custom INI path
./WinMacMenu.exe --config C:\Tools\menu.ini- Enable in
config.iniunder[General]:-
RunInBackground=truekeeps the app running in the background for instant menu display. -
ShowTrayIcon=trueshows an icon in the system tray while running in background. Left-click toggles the menu; right-click shows a small menu with "Show menu" and "Exit".
-
- When in background mode, clicking outside the menu, pressing the Windows key, or Escape hides the menu (the process keeps running).
- Starting WinMacMenu again while it’s already running in background will simply signal the existing instance to show/toggle the menu and exit immediately.
- In
[General], setStartOnLogin=trueto add a Run entry under HKCU for the current config (value name is unique per-config). The command line preserves your--configpath. - Set
StartOnLogin=falseto remove that registry entry cleanly.
- Add inline to the Params field of a FOLDER item to inject its first-level contents directly into the root menu.
- Add inlineopen instead of inline to make the header (Label) clickable (opens the folder) while still expanding contents inline.
- Add notitle (or noheader) with inline to suppress the grayed header (omit with inlineopen if you want the clickable header line).
Examples
Item1=Code|FOLDER|%USERPROFILE%\Code|inline
Item2=My Scripts|FOLDER|%USERPROFILE%\Scripts|inlinenotitle
Item3=Projects|FOLDER|%USERPROFILE%\Projects|inlineopen
- [General] global behavior and style
- [Placement] position rules
- [Menu] menu items Item1..ItemN
- [Icons] per-item icon mapping Icon1..IconN and optional DefaultIcon/DefaultIconLight/DefaultIconDark
- [IconsLight] theme-specific per-item icons for light theme (Icon1..IconN)
- [IconsDark] theme-specific per-item icons for dark theme (Icon1..IconN)
- [Sorting] options
- [Power] exclude specific power options from Power menu
- [RecentItems] item settings
- [TaskKill] item settings
- [ThisPC] item settings
- [Home] item settings
- [Logging]
The generated default INI is comment-free. If you add comments manually, use ; or # at the start of a line. Inline comments (end‑of‑line) are not supported.
- First-letter activation
- Outside click dismisses menu
- DPI-aware scaling via system menu metrics
- Icons in legacy mode use MIIM_BITMAP, keeping native look (no custom owner-draw)
- Direct files appear as normal clickable items.
- Subdirectories appear as expandable lazy submenus (respecting visibility filters and depth limits).
- No automatic separator is added; manage separators explicitly with SEPARATOR items if desired.
-
inlineopencreates a clickable header line first. - ShowDotfiles supports: false | true | filesonly | foldersonly (default false). Extended modes let you selectively expose dot files vs dot folders.
-
[General] FolderShowOpenEntry=falsehides the automatic "Open " line at the top of folder submenus when single-click mode is enabled. - Recent resolves .lnk targets; missing targets skipped
- Power actions: consistent markers used internally (POWER_MENU aggregates)
- Single-instance per INI path
- Second invocation toggle: launching the executable again (e.g., via a Windows key binding in an external tool) sends a toggle message. If the menu is open it closes; if closed it opens at the configured position. This enables assigning the EXE both to open and to dismiss via the same key.
- Empty folder submenu: check path, permissions, filters (ShowHidden / ShowDotfiles)
- No icons: ensure ShowIcons=true (or LegacyIcons=true for backward compatibility) and paths are correct
- Folder icons not appearing: set ShowFolderIcons=true; the system folder icon only shows when no per-item icon exists
- No telemetry. The app makes no network connections and collects no data.
- Registry usage: optional HKCU\Software\Microsoft\Windows\CurrentVersion\Run entry when you enable “Start on login” from the tray. It’s off by default and only changed when you toggle it. There is no service or scheduled task.
- Keyboard/mouse hooks: installed only while the popup menu is visible to allow outside‑click/escape dismissal; they are immediately removed when the menu closes.
- Recent cleanup: choosing “Clear Recent Items list” deletes shortcut (.lnk) files from your user Recent folder. It doesn’t touch actual documents or programs. There’s no confirmation.
- Filesystem: reads your config.ini and enumerates folders you explicitly reference in the menu.
- Configure the menu using either a simple INI file or the built-in GUI for live editing.
- WinMacMenu reads an INI. If missing, a default is created.
- Environment variables expand in labels, paths, params, and icon paths (e.g., %USERNAME%).
- Indices N in [Icons]/[IconsLight]/[IconsDark] map to ItemN in [Menu].
- Generated default INI contains no comments (to keep the file minimal). Comments are still supported by the parser if you add them manually: lines beginning with
;or#are ignored. - Duplicate keys: The last occurrence in a section wins (standard Win32 profile API behavior).
- Unknown keys are ignored.
- Built with standard Win32 APIs: user32, shell32, shlwapi, comctl32, uxtheme, dwmapi, powrprof, advapi32.
- This app uses legacy popup menus; so no parity with Windows 11 Fluent Design System for now
- It's recommended to use it together with Open-Shell, so the WinMacMenu can be triggered by clicking the Start menu button with the left mouse button or by pressing the Windows key.
- You can also pin shortcuts to taskbar, or add to custom toolbar. Each shortcut can refer to different config.ini files with different file names for ini file.
- ini file used in current session will be highlighted in tooptip of tray icon, if file name is different than default (config.ini).