
Когда я ввожу это в ConEmu:
gvim --windowid %ConEmuBackHWND% -new_console:sH
Я получаю пустой сплит, который через некоторое время говорит следующее:
GUI application (PID=384) was attached to ConEmu:
\Path\To\gvim.exe
Пытаясь выяснить, что пошло не так, я создал задачу «Gvim» со следующим содержимым команды:
gvim --windowid %ConEmuBackHWND% -new_console:sH
(То же самое, что и команда, которую я ввел выше в командной строке)
И когда я знаю, что запускаю задачу из диалогового окна «Создать новую консоль», все работает нормально, и я получаю дочернее окно gvim в качестве правого разделения!
Как выполняются команды из диалогового окна «Создать новую консоль» и как сделать так, чтобы указанная выше команда создавала разделение gvim непосредственно из консоли?
решение1
ProcessExplorer — очень полезный инструмент для обнаружения проблем с переменными окружения и т. д. Я думаю, у вас проблема из-за расширения переменных. Попробуйте сделать следующее
gvim --windowid !ConEmuBackHWND! -new_console:sH
При запуске команды со знаками процента CLI заменяет переменныедоConEmu получает команду. Итак, вы пытались запустить gvim в новом сплите, но указали ему HWND изстарый раскол.
При использовании восклицательных знаков переменные не расширяются, ConEmu получает команду нетронутой, а !ConEmuBackHWND!
сама ConEmu расширяется в нужный момент после создания split и инициализации новых переменных.