Прижать диалог к тому или иному краю или снова отцентровать в окне

Здесь обсуждается всё, что касается макросов.
User avatar
HaRT
Moderator
Posts: 9258
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 94 times
Been thanked: 200 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by HaRT »

HaRT wrote:
Tue 31 Dec, 2019 17:54
citRiks wrote:
Tue 31 Dec, 2019 17:01
А нам их не покажете?
Покажу, но не в этом году и не в этой теме.
Фар есть инструмент, а не нянька. © 2009 DrKnS

citRiks
Posts: 219
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 63 times
Been thanked: 26 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by citRiks »

HaRT,

Благодарю Вас за публикацию этих интересных и по действию, и по содержанию кода, макросов.

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

User avatar
HaRT
Moderator
Posts: 9258
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 94 times
Been thanked: 200 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by HaRT »

citRiks wrote:
Fri 24 Jan, 2020 20:28
диалог часто оказывается не там, где ожидалось
Просто у вас неправильные ожидания. Клавиши соответствуют не целевому положению в окне, а направлению движения диалога (до упора). Исключение — центровка.
Фар есть инструмент, а не нянька. © 2009 DrKnS

citRiks
Posts: 219
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 63 times
Been thanked: 26 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by citRiks »

HaRT wrote:
Fri 24 Jan, 2020 20:31
Клавиши соответствуют не целевому положению в окне, а направлению движения диалога (до упора).
Попытался я приноровиться к указанной логике, но она оказалась для меня неоправданно усложнённой. И поэтому я у себя всё же подкорректировал 4 сабжевые макроса (на CtrlNum4,8,6 и 2) так, чтобы их шорткаты вполне соответствовали целевому положению диалога в окне.

citRiks
Posts: 219
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 63 times
Been thanked: 26 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by citRiks »

На гитхабе помещена версия сабжевого скрипта авторства XeR0X`а.
На мой субъективный взгляд,
помещённая реализация более стройная по коду и однозначно последовательная по шорткатам.
Добавлено:
Помимо оптимизации кода ещё и функциональность расширена:
по AltHome/AltEnd и по PgUp/PgDn можно делать "умные" прижатия.
"Умность" состоит в том что PgUp/PgDn не изменяет положение по по горизонтали
А AltHome/AltEnd в свою очередь не изменяет положения по вертикали.
Это дает c комбинацией этих пар больше степеней свободы прислонения.
Далее, цитируя самого XeR0X`а:
пришла еще одна идея в голову сейчас,
чтобы они НЕ скакали сразу вверх/вниз вправо/лево до упора,
но и делали остановку посередине,
- реализую уже потом.
Т.е. это добавит еще степеней свободы, не занимая весь НамПад
Обьяснение этой легкой паранои на занятие кнопок:
* Они могут быть нужны в оригинальном смысле
* Кто-то другой их может зачем-то занять
 ! Message from: John Doe
Вложение удалено
Last edited by John Doe on Wed 29 Jan, 2020 07:59, edited 7 times in total.

puppy
Posts: 7
Joined: Thu 23 Jan, 2020 17:40
Has thanked: 9 times
Been thanked: 2 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by puppy »

citRiks wrote:
Tue 28 Jan, 2020 14:55
цитируя самого XeR0X`а:

пришла еще одна идея в голову сейчас,
чтобы они НЕ скакали сразу вверх/вниз вправо/лево до упора,
но и делали остановку посередине,
- реализую уже потом.
Т.е. это добавит еще степеней свободы, не занимая весь НамПад
Обьяснение этой легкой паранои на занятие кнопок:
* Они могут быть нужны в оригинальном смысле
* Кто-то другой их может зачем-то занять
Опробовав сабжевый скрипт, в отношении планируемого расширения функционала просил бы довести до сведения автора следующее. Имхо, было бы удобнее, чтобы "умные" прижатия и перемещения были бы сделаны отдельным, обособленным скриптом. Спасибо.

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

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by John Doe »

puppy wrote:
Wed 29 Jan, 2020 03:17
Опробовав сабжевый скрипт
Это какой?

puppy
Posts: 7
Joined: Thu 23 Jan, 2020 17:40
Has thanked: 9 times
Been thanked: 2 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by puppy »

John Doe wrote:
Wed 29 Jan, 2020 07:58
Это какой?
Похоже, что тот вариант, который был приаттачен. Но Вы это вложение почему-то удалили. Вот и в начальном посте тоже вложения нету, а ведь так и удобнее, и быстрее будет.

User avatar
HaRT
Moderator
Posts: 9258
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 94 times
Been thanked: 200 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by HaRT »

puppy wrote:
Wed 29 Jan, 2020 03:17
сабжевый скрипт
Нет никакого сабжевого скрипта, а есть обсуждение разных подходов к решению заявленной в Теме задачи и, соответственно, разных скриптов для этого.
Фар есть инструмент, а не нянька. © 2009 DrKnS

LAT
Posts: 281
Joined: Thu 21 Jan, 2010 20:00
Has thanked: 14 times
Been thanked: 24 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by LAT »

puppy wrote:
Wed 29 Jan, 2020 15:18
Похоже, что тот вариант, который был приаттачен.
Удаленный скрипт находится здесь: viewtopic.php?p=158726#p158726

User avatar
HaRT
Moderator
Posts: 9258
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 94 times
Been thanked: 200 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by HaRT »

LAT wrote:
Wed 29 Jan, 2020 15:26
puppy wrote:
Wed 29 Jan, 2020 15:18
Похоже, что тот вариант, который был приаттачен.
Удаленный скрипт находится здесь: viewtopic.php?p=158726#p158726
Нет, там другой, и не надо их тут смешивать.
Фар есть инструмент, а не нянька. © 2009 DrKnS

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

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by John Doe »

puppy wrote:
Wed 29 Jan, 2020 15:18
Похоже, что тот вариант, который был приаттачен. Но Вы это вложение почему-то удалили.
"Сабжевый" скрипт этот тот что в шапке.
Вложение потому и удалено, чтобы не сбивало с толку невнимательных пользователей.
(оно и было избыточным, поскольку доступно по приведённой там же ссылке)

puppy
Posts: 7
Joined: Thu 23 Jan, 2020 17:40
Has thanked: 9 times
Been thanked: 2 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by puppy »

HaRT wrote:
Wed 29 Jan, 2020 15:27
LAT писал(а): ↑
Ср 29 янв, 2020 15:26

Удаленный скрипт находится здесь: viewtopic.php?p=158726#p158726

Нет, там другой, и не надо их тут смешивать
То, что смешивать их не надо, это верно. Коды то существенно разные.

Но и сопряжённость между ними тоже полезно иметь ввиду, имхо. Поскольку и этот, и тот манипулируют местом положения диалоговых окон.

И, между прочим, для того, чтобы применить "умное" прижатие (реализованное в расширенной функциональности скрипта Dialog_ALL-igner.XeR0X.Lua) нужно, чтобы диалог был смещён от центральных линий окна Far. А это с клавиатуры делается шорткатами CtrlAltСтрелки макросов произвольного смещения позиции диалогов в составе скрипта Dialog_ReXiZeR.XeR0X.Lua.

И в связи с этим я нахожу целесообразным свести ключи обоих скриптов к консистентности, единообразно назначив всем макросам, изменяющим место положения диалогов, ключи с модификаторами CtrlAlt:

Прижатия к центам сторон и углам — по CtrlAltNum1-9;

Прижатия по горизонтали и по вертикали — по CtrlAltHome/End и по CtrlAltPgUp/PgDn.

citRiks
Posts: 219
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 63 times
Been thanked: 26 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by citRiks »



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

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

Ну т.е. скрипт в развитии.

Dialog_ALL-igner.XeR0X.Lua v 1.1.2
Last edited by citRiks on Fri 31 Jan, 2020 08:51, edited 4 times in total.

puppy
Posts: 7
Joined: Thu 23 Jan, 2020 17:40
Has thanked: 9 times
Been thanked: 2 times

Прижать диалог к тому или иному краю или снова отцентровать в окне

Post by puppy »

citRiks wrote:
Fri 31 Jan, 2020 00:55
XeRoX:
Касаемо прочих переназначений кнопочек, я каюсь что не вразумился смыслом
Полагаю целесообразным пояснить полезность переназначений. Которые в основном сводятся к удобному на практике .

Post Reply

Return to “Обсуждение макросов”