Я пишу плагин vim, который должен сделать специальное управление окнами. То, что я хочу, заключается в следующем:
При запуске текущее окно будет разделено на две части, а вновь созданное окно будет использоваться для ввода данных пользователем и вывода плагинов. Давайте назовем это окном ввода / вывода.
Иногда окно ввода / вывода необходимо «заменить». То есть новый набор содержимого заменит часть экрана, содержащую окно ввода / вывода. Назовите это временным окном. Тем не менее, окно ввода / вывода останется где-то сохраненным. Когда пользователь покидает это временное окно (с помощью: q или: q!), Содержимое окна ввода-вывода снова появится в исходном месте.
Как бы я поступил так? Я уже некоторое время пробую что-то и читаю о буферах и окнах на страницах справки, но до сих пор не могу понять это.
То, что я думаю, должно работать:
- : новое для разделения экрана при запуске.
- : set bufhidden = скрыть в окне ввода / вывода.
- : обновить отображение временного окна.
Это работает до тех пор, пока пользователь не сделает: q из временного окна. Вместо разделения экрана верхняя часть полностью исчезает. Попытка выйти с этого момента приводит к ошибкам в отношении несохраненных данных.
Заранее спасибо.