From 38f853924909773d245da49137f63d00e43e59d4 Mon Sep 17 00:00:00 2001 From: Noethix55555 <277300782+Noethix55555@users.noreply.github.com> Date: Wed, 17 Jun 2026 22:51:06 -0400 Subject: [PATCH] fix: set IsShortMenuSyntax in Parse to preserve '! ' menu syntax on round-trip --- src/MpvNet/InputHelp.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/MpvNet/InputHelp.cs b/src/MpvNet/InputHelp.cs index 0da86c23..f4451155 100644 --- a/src/MpvNet/InputHelp.cs +++ b/src/MpvNet/InputHelp.cs @@ -371,6 +371,14 @@ public static List Parse(string content) binding.IsMenu = true; line = line[..line.IndexOf(App.MenuSyntax)]; } + else if (line.Contains("#! ") || line.TrimEnd().EndsWith("#!")) + { + int prefixIndex = line.Contains("#! ") ? line.IndexOf("#! ") : line.IndexOf("#!"); + binding.Comment = line[(prefixIndex + 2)..].Trim(); + binding.IsMenu = true; + binding.IsShortMenuSyntax = true; + line = line[..prefixIndex]; + } else if (line.Contains("#custom-menu:")) { binding.Comment = line[(line.IndexOf("#custom-menu:") + 13)..].Trim();