Latest post of the previous page:
PS: Это просто мысли вслух... Насколько это реализуемо/трудоёмко не смотрел.Контекст, исчезающий с экрана (Context disappearing from the screen) Topic is solved
- John Doe
- Бюрократ
- Posts: 13854
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
Контекст, исчезающий с экрана (Context disappearing from the screen)
По Ctrl-O у нас сейчас не голый буфер. Хоткеи, строка статуса, диалоги.
И даже без Ctrl-O панели могут быть уменьшены / скрыты индивидуально, и под ними тоже какой-то буфер ожидается.
Т.е. минимально придётся таки копировать, хотя бы подпанельную часть.
- John Doe
- Бюрократ
- Posts: 13854
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
Контекст, исчезающий с экрана (Context disappearing from the screen)
А можно ли тут перечислить потенциальные сложности?
Контекст, исчезающий с экрана (Context disappearing from the screen)
Наверное да, и скорее всего ещё что-то всплывёт.
Но как минимум:
1) Интерфейс фар (UI) не будет портить буфер десктопа.
2) Не надо будет сохранять и восстанавливать окно интерфейса (труколор сейчас иногда невозможно сохранить без потерь).
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Контекст, исчезающий с экрана (Context disappearing from the screen)
Это уже есть, называется mc и пользоваться этим без кровавых слез затруднительно.
Мухи и котлеты вместе (Ctrl+O, Ctrl+F1, Ctrl+Up) - киллер-фича продукта.
- John Doe
- Бюрократ
- Posts: 13854
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
Контекст, исчезающий с экрана (Context disappearing from the screen)
Вот в этом месте как раз и можно было бы переключать буфер.
- John Doe
- Бюрократ
- Posts: 13854
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
Контекст, исчезающий с экрана (Context disappearing from the screen)
Спутал, у меня макрос на CtrlUp прокручивает буфер вверх.
По существу же, как уже говорилось выше: то что под панелями можно копировать из настоящего буфера.
По существу же, как уже говорилось выше: то что под панелями можно копировать из настоящего буфера.
- nvv
- Posts: 25
- Joined: Thu 06 Oct, 2016 03:52
- Location: Владивосток, Россия
- Has thanked: 6 times
- Been thanked: 1 time
Контекст, исчезающий с экрана (Context disappearing from the screen)
1. Ок, первая особенность реализации Far3.0 (полное или частичное отсутствие на экране пущенной команды) — исправлена. Спасибо.
2. Ситуация со второй особенностью (принудительное удаление первой строки буфера, невзирая на наличие места в подвале оного) перетекла в чуждую мне плоскость "способы реализации".
3. А я продолжу в плоскости "интерфейс пользователя".
NB. Никаких целенаправленных промежутков не делается. А прокрутка вверх происходит, ЕСЛИ указанный CrLf выполняется в последней строке этого буфера. Только в этом случае старая первая строка исчезает.
4. Можно рассмотреть два варианта (Mini и Maxi) исключения второй вышеуказанной особенности Far3.0. В обоих вариантах, сразу по завершении работы запущенной команды, но до рисования своих элементов (промпт, панели, меню и прочие часики):
Mini ("а ля Far1.*/Far2.0"):
- проверить позицию строки с курсором в буфере;
- если она НЕ выше грядущего промпта ФАР-а, сдвинуть содержимое буфера вверх, освободив место для промпта.
Maxi ("оседающий буфер"):
- переместить пустые строки из подвала буфера в его начало;
+ сдвинуть содержимое буфера вверх, освободив место для промпта.
5. Иными словами (по максимуму), желательно бы "прибить гвоздями" последнюю НЕ_пустую строку буфера к месту над промптом. Что бы не наблюдать бессмысленное (пустое) пространство после содержательной части выдачи отработавшего процесса. Попутно частично разрешилась бы …
2. Ситуация со второй особенностью (принудительное удаление первой строки буфера, невзирая на наличие места в подвале оного) перетекла в чуждую мне плоскость "способы реализации".
3. А я продолжу в плоскости "интерфейс пользователя".
См. ниже.DrKnS, 2019.02.22 13:41Как раз из-за исчерпания места. Запускаемой программе предоставлен весь экран. Совсем весь. Мы не знаем, где она там наследила, поэтому предполагается, что везде.изымать из имеющего место быть «диалога» те или иные фрагменты не из-за исчерпания места
Этого (см. начало второго фрагмента). В этот буфер идёт выдача пущенных команд и из него принудительно удаляется первая строка (по завершении работы оных команд).Какого буфера?размер буфера ведь и увеличить можно
Нет. Cmd просто отрабатывает CrLf в текущей позиции курсора + рисует с первой позиции следующей строки приглашение ко вводу (очередной) команды.cmd делает точно такой же промежуток из точно таких же соображений.
NB. Никаких целенаправленных промежутков не делается. А прокрутка вверх происходит, ЕСЛИ указанный CrLf выполняется в последней строке этого буфера. Только в этом случае старая первая строка исчезает.
Не совсем так. "Гвоздями прибито" место на экране, где пользователю предлагается ввести команду. А вот место в буфере, где фиксируются промпт+введённая_команда, и, откуда (с какого места) эта команда может выводить нечто на StdOut/StdErr, - это другое место. Разумеется, эти места можно и совместить. К слову, "гвозди" для часиков (или, например, диалога по "<Shift>+<F4>") - для "приколачивания" промпта не подойдут?Far - не компроцессор, промпт у него прибит гвоздями внизу экрана, поэтому текст едет вверх.
4. Можно рассмотреть два варианта (Mini и Maxi) исключения второй вышеуказанной особенности Far3.0. В обоих вариантах, сразу по завершении работы запущенной команды, но до рисования своих элементов (промпт, панели, меню и прочие часики):
Mini ("а ля Far1.*/Far2.0"):
- проверить позицию строки с курсором в буфере;
- если она НЕ выше грядущего промпта ФАР-а, сдвинуть содержимое буфера вверх, освободив место для промпта.
Maxi ("оседающий буфер"):
- переместить пустые строки из подвала буфера в его начало;
+ сдвинуть содержимое буфера вверх, освободив место для промпта.
5. Иными словами (по максимуму), желательно бы "прибить гвоздями" последнюю НЕ_пустую строку буфера к месту над промптом. Что бы не наблюдать бессмысленное (пустое) пространство после содержательной части выдачи отработавшего процесса. Попутно частично разрешилась бы …
John Doe, 2019.02.22 14:23
… и другая проблема: по завершению батника текста просто не видно, потому что он "уехал" на несколько тысяч строк вверх, где не каждый даже догадается поискать.
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Контекст, исчезающий с экрана (Context disappearing from the screen)
Я хотел написать пространный пост с аргументированными возражениями и даже начал, но потом осознал, что написать костыль будет раз в 10 быстрее, поэтому 5370.
-
- Posts: 1328
- Joined: Mon 04 Apr, 2005 13:41
- Location: San Ramon, CA / Kharkov, UA
- Has thanked: 32 times
- Been thanked: 61 times
Контекст, исчезающий с экрана (Context disappearing from the screen)
DrKnS, в 5370 не изменился far\vbuild.m4, т.е. 5369.
Мы не можем ждать милостей от Фара, взять их у него — наша задача! (C) Мичурин
- John Doe
- Бюрократ
- Posts: 13854
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
Контекст, исчезающий с экрана (Context disappearing from the screen)
DrKnS, а нельзя ли вкратце пояснить это: viewtopic.php?p=153237#p153237?
- DrKnS
- Posts: 6114
- Joined: Thu 04 Aug, 2005 06:44
- Location: Kyiv
- Has thanked: 12 times
- Been thanked: 426 times
Контекст, исчезающий с экрана (Context disappearing from the screen)
Пятой точкой чувствую.
Большой буфер сам по себе работает неидеально (хотя и неплохо), и это после 9 лет.
Если viewport не прибивать к концу буфера, а таскать по всей высоте, исключительно в зависимости от позиции курсора, установленной какой-то левой программой - наверное, будут новые забавные баги там и сям.
Но попробовать, в принципе, можно.
- John Doe
- Бюрократ
- Posts: 13854
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
Контекст, исчезающий с экрана (Context disappearing from the screen)
Если левая программа будучи запущена из cmd не вызывает проблем, то и у нас их не должно возникнуть в этом месте.
Но насчёт пятой точки согласен, наверняка найдутся случаи требующие особой обработки.