Описание задачи / варианта использования

После переключения на новый ноутбук с шикарным процессором, но с дрянным монитором, я бы хотел ограничить background темным, когда я использую ноутбук на ходу. Тем не менее, я провожу большую часть времени, когда ноутбук подключен к компьютеру и, таким образом, использую свой обычный набор мониторов.

Здесь идет моя обычная настройка, которая адаптирует background к времени дня: dark когда ночью, и light когда днем. Я мог бы улучшить это лучше, но он работает просто отлично.

if has("gui_running")
    " My time-keeper and eye-saver
    if strftime("%H") < 6  
        set background=dark
    elseif strftime("%H") >18
        set background=dark
    else
        set background=light
    endif
else
    set background=dark
endif

Вопрос:

  1. Есть ли условие, которое я могу назвать / указать, чтобы показать монитор?
  2. Или, скажем, условное, которое отражает состояние источника питания?

Потенциальное решение (ожидается реализация)

  1. Как предположил @ Heptite , инструмент командной строки Windows, который возвращает что-то о системе, должен сделать свое дело. Здесь идет ближайший хит, который может добиться цели:

    • Чтобы сообщить / распечатать / отобразить разрешение экрана "текущего" монитора:
    • Я пытался бежать !wmic path Win32_VideoController get CurrentHorizontalResolution,CurrentVerticalResolution через командную строку, встроенную в Vim, но появляется дополнительное окно командной строки.
    • Официальное решение (ожидается): этот экран должен служить хорошим идентификатором состояния, в котором ноутбук находится на крошечном мониторе 1366 * 768 .
  2. Должен быть другой способ идентификации источника батареи, но я не смог воспроизвести что-либо, близкое к идентификации разрешения экрана, как показано выше.

0