userscreen под панелями — отдельное окно ("Desktop")

Хотите говорить о Far и не знаете, куда обратиться?
User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

userscreen под панелями — отдельное окно ("Desktop")

Postby NightRoman » Sun 10 Aug, 2014 11:21

Far 3.0.4041
PowerShell скрипт C:\tmp\test.ps1 с таким содержанием:

Code: Select all

'hello'

запускаю с помощью PowerShellFar из комстроки командой

Code: Select all

ps: C:\tmp\test.ps1

В итоге вместо ожиданных панелей после исполнения - окно консоли. Надо дважды нажать CtrlO, чтобы появились панели.

Это в Фаре неполадка или плагин что-то иначе должен делать теперь в связи с новым окном?

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby NightRoman » Sun 10 Aug, 2014 11:37

Другая проблема, двоякая.

1. Новое окно не ожидается плагином, оно в позиции 0, где раньше ожидались панели. Возможно, плагин сам виноват, нечего считать, что окно 0 - это панели. Но тем не менее, раньше было так и работало, теперь некоторые плагины могут требовать доработки.

И такой момент. Раньше для проверки того, что открыты только панели, достаточно было проверить, что количесво окон равно 1. Теперь же их 2. Плагин тоже сбит с толку и требует доработки.

Так или иначе, изменения - потенциально ломающие работу плагинов. Хотелось бы анонса на тему, где и что плагины должны делать иначе.

2. Если плагин делает окно 0 текущим, то Фар зависает. В PSF это можно сделать командой

Code: Select all

ps: $Far.Window.SetCurrentAt(0)

(делается это с помощью ACTL_SETCURRENTWINDOW + ACTL_COMMIT)

User avatar
John Doe
Бюрократ
Posts: 11048
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 10 times
Been thanked: 63 times

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby John Doe » Sun 10 Aug, 2014 11:48

2. Говорят CtrlTab помогает. Или F12.

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby NightRoman » Sun 10 Aug, 2014 11:53

И еще одна странность (последняя на сегодня, пока откачусь до уточнения деталей).

Запускаю Фар в режиме редактора с любым файлом, плагины подключены. В этом редакторе из меню плагинов вызываю PowerShellFar \ Invoke commands и строке ввода набираю $Far.Window.Count и энтер. В итоге появляется окно вьюера с результатом 2 (раньше было 1, это не ошибка, наверное). При закрытии вьюера происходит выход из Фара, а не возврат в редактор, из которого открывали вьюер - вот это уже ошибка, либо в Фаре, либо в плагине, который в новых условиях не так работает.

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby NightRoman » Sun 10 Aug, 2014 11:56

John Doe wrote:2. Говорят CtrlTab помогает. Или F12.

Да, помогает.

Кстати, и макросы отвалятся, которые считали окно 0 панелями.

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby NightRoman » Sun 10 Aug, 2014 12:11

Может, открыть отдельную тему? Вопросов и нюансов, наверное, будет немало. Пока есть такие вопросы.
- Для чего может быть полезно новое окно?
- Будут ли плагины вызываться из этого окна?
- Будет ли (есть ли) макро область этого окна?

User avatar
DrKnS
Posts: 4501
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 110 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby DrKnS » Sun 10 Aug, 2014 14:21

Плагины не должны полагаться на порядковые номера окон.
Если плагин хочет панели, то надо идти по списку окон и искать WTYPE_PANELS.
Если плагин ожидал, что 0 - это всегда панели, то он и так работал неправильно, т. к. бывает /e и /v.

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby NightRoman » Sun 10 Aug, 2014 18:07

Спасибо. Это все я и так упомянул, уже ученый, в Фаре плагин не должен полагаться на то, что не написано, даже если не написано, что должен идти и искать нужное окно нужного типа. И все равно это ломка, а в аносах ничего об этом. А ответы на вопросы?

User avatar
DrKnS
Posts: 4501
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 110 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby DrKnS » Sun 10 Aug, 2014 18:40

- Для чего может быть полезно новое окно?
Прежде всего оно полезно для внутренней структуры кода и избавления от костылей.
То, что оно доступно из интерфейса - скорее, побочный эффект, оставленный в качестве эксперимента.

В данный момент это просто ничем не замутнённый вывод программ/плагинов, который можно невозбранно читать и копировать.
Прозвучали идеи, что там удобно было бы прокручивать буфер курсорными клавишами и выделять мышью.
- Будут ли плагины вызываться из этого окна?
Если найдете им там применение - будут.
- Будет ли (есть ли) макро область этого окна?
Если найдете ей там применение - будет.

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby NightRoman » Mon 11 Aug, 2014 06:03

NightRoman wrote:И еще одна странность (последняя на сегодня, пока откачусь до уточнения деталей).

Запускаю Фар в режиме редактора с любым файлом, плагины подключены. В этом редакторе из меню плагинов вызываю PowerShellFar \ Invoke commands и строке ввода набираю $Far.Window.Count и энтер. В итоге появляется окно вьюера с результатом 2 (раньше было 1, это не ошибка, наверное). При закрытии вьюера происходит выход из Фара, а не возврат в редактор, из которого открывали вьюер - вот это уже ошибка, либо в Фаре, либо в плагине, который в новых условиях не так работает.


Эта проблема есть и в 4042. Плагин не нужен для воспроизведения, можно просто открыть еще один редактор из истории. При выходе из второго редактора происходит выход из Фара, а не возврат в первый редактор.

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: userscreen под панелями — отдельное окно ("Desktop")

Postby NightRoman » Mon 11 Aug, 2014 06:13


User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: userscreen под панелями — отдельное окно ("Desktop")

Postby NightRoman » Mon 11 Aug, 2014 07:13

Если найдете им там применение - будут.

Конечно, применение для плагина есть. Например, вызов команд PowerShell предполагается возможным из любого места Фара, где есть меню плагинов. Хотя бы для исследования текущего состояния при разработке. А из этого окна сейчас нельзя, так как меню плагинов нет.

С макросами тоже будет применение, как только появится хоть какая-нибудь интеракция с клавиатуры в этом окне.

User avatar
DrKnS
Posts: 4501
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 110 times
Contact:

Re: Глюки и баги, появившиеся в «ночных сборках»

Postby DrKnS » Mon 11 Aug, 2014 07:26

NightRoman wrote:открыть еще один редактор из истории. При выходе из второго редактора происходит выход из Фара, а не возврат в первый редактор.

Не повторяется.

Shmuel
Posts: 4997
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 11 times
Been thanked: 132 times

Re: userscreen под панелями — отдельное окно ("Desktop")

Postby Shmuel » Mon 11 Aug, 2014 07:35

У меня повторяется (ночная сборка 3.0.4042, запуск far /p /e far.exe.ini).

User avatar
DrKnS
Posts: 4501
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 2 times
Been thanked: 110 times
Contact:

Re: userscreen под панелями — отдельное окно ("Desktop")

Postby DrKnS » Mon 11 Aug, 2014 08:02

Есть такое, не заметил "в режиме редактора".
Поправлю.

User avatar
NightRoman
Posts: 5849
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 8 times
Been thanked: 8 times
Contact:

Re: userscreen под панелями — отдельное окно ("Desktop")

Postby NightRoman » Mon 11 Aug, 2014 10:37

Изменившееся поведение. В папке Фара выполняем следующие шаги
- открыть FarEng.hlf в редакторе (F4)
- вернуться в панели (CtrlTab)
- открыть FarRus.hlf в редакторе (F4)
- из второго редактора через F12 перейти в первый редактор FarEng.hlf
- закрыть текущий первый редактор
-- в итоге в Фаре 4038 оказываемся во втором редакторе (интуитивно ожидаемо), а в Фаре 4042 оказываемся в панелях (это поведение неинтуитивно).


Return to “Обсуждение Far Manager”

Who is online

Users browsing this forum: No registered users and 1 guest