[BUG]: Visual Studio 2022 isnt managed
Summary
Hi! I cant get Visual Studio 2022 to be managed by komorebi. Ive tried with the auto generated applications.json file, and with my own rules.
Version Information
OS Name: Microsoft Windows 11 Business OS Version: 10.0.26100 N/A Build 26100
komorebic 0.1.36 tag:v0.1.36 commit_hash:8ef1bcf2 build_time:2025-04-13 03:10:57 +00:00 build_env:rustc 1.86.0 (05f9846f8 2025-03-31),stable-x86_64-pc-windows-msvc
Komorebi Configuration
{
"$schema": "https://raw.githubusercontent.com/LGUG2Z/komorebi/v0.1.36/schema.json",
"app_specific_configuration_path": "C:/Users/DragonSebastianJohan/applications.json",
"manage_rules": [
{
"kind": "Title",
"id": "Microsoft Visual Studio",
"matching_strategy": "Contains"
},
{
"kind": "Exe",
"id": "devenv.exe",
"matching_strategy": "Equals"
}
],
"window_hiding_behaviour": "Cloak",
"cross_monitor_move_behaviour": "Insert",
"default_workspace_padding": 0,
"default_container_padding": 0,
"border": true,
"border_width": 4,
"border_offset": -1,
"theme": {
"palette": "Base16",
"name": "Ashes",
"unfocused_border": "Base03",
"bar_accent": "Base0D"
},
"display_index_preferences": {
"0": "JK5B0N3",
"1": "LEN41B5-4&2c4d2617&0&UID8388688",
"2": "GQ6MMY3"
},
{
"workspaces": [
{
"name": "I",
"layout": "VerticalStack"
},
{
"name": "II",
"layout": "VerticalStack"
},
{
"name": "III",
"layout": "VerticalStack"
},
{
"name": "IV",
"layout": "VerticalStack"
}
]
},
{
"workspaces": [
{
"name": "I",
"layout": "VerticalStack"
},
{
"name": "II",
"layout": "VerticalStack"
},
{
"name": "III",
"layout": "VerticalStack"
},
{
"name": "IV",
"layout": "VerticalStack"
}
]
},
{
"workspaces": [
{
"name": "I",
"layout": "HorizontalStack"
}
]
}
]
}
Hotkey Configuration
.shell powershell
# Reload whkd configuration
# alt + o : taskkill /f /im whkd.exe && start /b whkd # if shell is cmd
alt + o : taskkill /f /im whkd.exe; Start-Process whkd -WindowStyle hidden # if shell is pwsh / powershell
alt + shift + o : komorebic reload-configuration
# App shortcuts - these require shell to be pwsh / powershell
# The apps will be focused if open, or launched if not open
# alt + f : if ($wshell.AppActivate('Firefox') -eq $False) { start firefox }
# alt + b : if ($wshell.AppActivate('Chrome') -eq $False) { start chrome }
alt + q : komorebic close
alt + m : komorebic minimize
# Focus windows
alt + h : komorebic focus left
alt + j : komorebic focus down
alt + k : komorebic focus up
alt + l : komorebic focus right
alt + shift + oem_4 : komorebic cycle-focus previous # oem_4 is [
alt + shift + oem_6 : komorebic cycle-focus next # oem_6 is ]
# Move windows
alt + shift + h : komorebic move left
alt + shift + j : komorebic move down
alt + shift + k : komorebic move up
alt + shift + l : komorebic move right
alt + shift + return : komorebic promote
# Stack windows
alt + left : komorebic stack left
alt + down : komorebic stack down
alt + up : komorebic stack up
alt + right : komorebic stack right
alt + oem_1 : komorebic unstack # oem_1 is ;
alt + oem_4 : komorebic cycle-stack previous # oem_4 is [
alt + oem_6 : komorebic cycle-stack next # oem_6 is ]
# Resize
alt + oem_plus : komorebic resize-axis horizontal increase
alt + oem_minus : komorebic resize-axis horizontal decrease
alt + shift + oem_plus : komorebic resize-axis vertical increase
alt + shift + oem_minus : komorebic resize-axis vertical decrease
# Manipulate windows
alt + t : komorebic toggle-float
alt + shift + f : komorebic toggle-monocle
# Window manager options
alt + shift + r : komorebic retile
alt + p : komorebic toggle-pause
# Layouts
alt + x : komorebic flip-layout horizontal
alt + y : komorebic flip-layout vertical
# Workspaces
alt + 1 : komorebic focus-workspace 0
alt + 2 : komorebic focus-workspace 1
alt + 3 : komorebic focus-workspace 2
alt + 4 : komorebic focus-workspace 3
alt + 5 : komorebic focus-workspace 4
alt + 6 : komorebic focus-workspace 5
alt + 7 : komorebic focus-workspace 6
alt + 8 : komorebic focus-workspace 7
# Move windows across workspaces
alt + shift + 1 : komorebic move-to-workspace 0
alt + shift + 2 : komorebic move-to-workspace 1
alt + shift + 3 : komorebic move-to-workspace 2
alt + shift + 4 : komorebic move-to-workspace 3
alt + shift + 5 : komorebic move-to-workspace 4
alt + shift + 6 : komorebic move-to-workspace 5
alt + shift + 7 : komorebic move-to-workspace 6
alt + shift + 8 : komorebic move-to-workspace 7
Output of komorebic check
No KOMOREBI_CONFIG_HOME detected, defaulting to C:\Users\DragonSebastianJohan
Looking for configuration files in C:\Users\DragonSebastianJohan
Found komorebi.json; this file can be passed to the start command with the --config flag
Application specific configuration file path has not been set. Try running 'komorebic fetch-asc'
Found C:\Users\DragonSebastianJohan.config\whkdrc; key bindings will be loaded from here when whkd is started, and you can start it automatically using the --whkd flag
OS Name: Microsoft Windows 11 Business
Reminder: If you are using komorebi at work you are required to purchase a license
As for VS, are you running the process as a regular user process or as an elevated administrator process?
@LGUG2Z very nice catch with the business license, but this is on my personal laptop which runs Business. But! The idea is to run it in my work laptop too when I get everything to work.
I'm running vs as an elevated admin process. Is that not possible? I'm gonna check if that's required for my personal project. But I know it is for one of the projects at work, so if I wanna use this across all my devices I'd need it to work with admin processes too!
@LGUG2Z since you were such a hawk and because I thought it was funny that you noticed the windows license, I have donated to the PCRF and sponsored the project!
I'm running vs as an elevated admin process. Is that not possible?
It's possible but then you also need to run komorebi as an elevated admin process - part of Windows' security model at the operating system level is to not allow user-level processes to manipulate the windows of administrator-level processes 🔒
@LGUG2Z interesting! So just run it from the terminal with the terminal being in elevated administrator?
Yeah exactly, just make sure to komorebic stop with all the various flags for the components you have started first before calling komorebic start from an admin terminal
Running the terminal as administrator did not work. Changing visual studio to not run as administrator works, but means that I wont be able to use this on my work laptop.
I tried setting run as administrator on the komorebi exe's, and that didn't help either.
Any ideas?
@SebbeJohansson I use the community version, not business, but I run komorebi as admin, vs does not get managed if opened as admin.
What I need to do is to minimize vs and when I restore it (un-minimize) it gets managed but as a floating window for some reason. However now it is managed fine, just need to minimize it, restore it and then "de-float" it
From the sounds of it, it looks like the app isn't sending a SHOW event on launch and is probably sending OBJECT_NAMECHANGE instead like Intellij and Firefox to - it's worth adding an object_name_change rule to see if this workaround helps