PowerShellFar — PowerShell host и автоматизация Far Manager

Здесь можно обсудить ваш любимый плагин.
Post Reply
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

Latest post of the previous page:

Почему?
Да не знаю, честно говоря - ну хотя бы чтоб лишнее на флешке не таскать; скажешь ерунда, если упаковать- да, но я не пакую, так как у меня авто-синхронизация некоторых папок с флешкой налажена и нужны живые файлы, а на флешке куча всего другого, конечно, и резерв еще охота иметь на ней.
mugz
Posts: 181
Joined: Thu 02 Jun, 2005 13:36
Contact:

Post by mugz »

настроишь инет можно будет через SVN и таскать - на работе коммитить, дома апдейтить :)
paul_sh
Posts: 15
Joined: Wed 10 Jan, 2007 09:44
Location: Moscow

Post by paul_sh »

Привет!

А как там эксперименты с x64?
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

Эксперименты все закончились удачно. Собственно PowerShellFar и не требует никакой доработки или переделки. Доработка была сделана для Far.NET - сорсы теперь ГОТОВЫ для x64, собираются и работают без проблем, проверено DkmS. Кто хочет\может - может брать и собирать, как это сделал он, или с ним связаться, у него вроде даже сборка была приготовлена. У меня, к сожалению, нет возможности\потребности собирать и тестировать бинарники для x64, не серчайте.
DkmS
Posts: 48
Joined: Sat 10 Jun, 2017 18:07

x64

Post by DkmS »

Проверено на Vista х64 и Server 2003 x64 - всё хозяйство (Far.Net и PowerShellFar) работает как предполагалось.
paul_sh
Posts: 15
Joined: Wed 10 Jan, 2007 09:44
Location: Moscow

Post by paul_sh »

Замечательный получился плагин!

Вот только сильно напрягает необходимость ввода префикса плагина в ком. строке. Думаю, как бы заставить Far передавать управление в PowerShellFar, когда префикс не указан вообще. Т.е. полностью отказаться от выполнения %ComSpec% в пользу плагина.
Есть идеи?

Спасибо
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

paul_sh

Об этом я тоже мечтал маленько, однако, думаю, проблем будет не меньше пользы. Но альтернативные пути улучшить ситуацию есть. Вот один и них, мой:

макрос ShiftEnter - F11 1 2 в панелях с условием непустой ком.строки (чтоб при пустой ShiftEnter работал как обычно). Здесь "1" это хоткей PowerShellFar в меню плагинов (у тебя может другой), а "2" это команда плагина "2. Invoke selected code". Теперь просто набираем команду без префикса, жмем ShiftEnter, получаем удовольствие.

Дополнительный бонус - если команда отработала с ошибкой, текст не убирается из ком.строки, типа сразу можно начать что-то исправлять в ней. Некоторый минус - в историю команд фара это не попадает, но в историю команд PowerShell попадает все равно, так что не проблема.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

Да, конечно, можешь макрос и на Enter повесить (при непустой комстроке, опять, естественно) - и будет тебе почти другой %ComSpec%. При этом это не затрагивает команды юзер меню и ассоциаций файлов, там префиксы нужны.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

Получилось ли? Могу и так предложить (пригодится и для чего другого) - создаем и запускаем скрипт Set-ShellShiftEnter.ps1

Code: Select all

$r = "HKCU:\Software\Far\KeyMacros\Shell\ShiftEnter"
if (Test-Path $r) { Remove-ItemProperty $r * } else { [void](New-Item $r) }
Set-ItemProperty $r Description ">: Invoke selected code"
Set-ItemProperty $r Sequence "F11 1 2"
Set-ItemProperty $r NotEmptyCommandLine 1
Set-ItemProperty $r DisableOutput 1
Возможно, надо заменить ShiftEnter на что по вкусу и "1" в Sequence на хоткей PowerShell в меню плагинов.
paul_sh
Posts: 15
Joined: Wed 10 Jan, 2007 09:44
Location: Moscow

Post by paul_sh »

NightRoman wrote:Получилось ли?
Да, спасибо, Роман! Я, собственно, такой макрос себе сразу и сделал, только повесил его на CtrlShiftEnter. А в историю не попадает, это правда.

Просто думал, вдруг есть еще более красивое решение.

Спасибо
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

Думаю это самое красивое и разумное решение. Даже Enter можно задействовать для острых ощущений, но вряд ли стоит.

Не попадает в историю Фара, но попадает в историю PowerShellFar, смотри меню плагина. Тоже повесь на макрос - и все дела. Тем более там с недавних пор инкрементал фильт работает. В след версии еще будет улучшено и выглядеть будет почти как нормальное меню (в прошлой вроде еще не так, первый блин).
paul_sh
Posts: 15
Joined: Wed 10 Jan, 2007 09:44
Location: Moscow

Post by paul_sh »

Спасибо, попробую. Вот только x64 версию сейчас скомпилирую.
paul_sh
Posts: 15
Joined: Wed 10 Jan, 2007 09:44
Location: Moscow

Post by paul_sh »

А в идеале хотелось бы возможности полной бесшовной интеграции с Far-ом. Т.е. именно подмены ComSpec. Я вот думаю, может написать маленький exe-шник, прописать его в ComSpec. Задача этого экзешника - найти PS хост родительского Фара, соединиться с ним и передать ему команду... Что-нибудь в этом духе.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

Более года назад, когда все это начинал, тоже так думал. Сейчас не вижу смысла особого, все в целом и так в порядке, поверь автору :)(кроме юникода, но это пройдет, надеюсь, уже в обозримом будущем).
Все работает, как задумано, остальное - "шашечки". Ну вот что изменится реально, если будет "бесшовная" интеграция? Только потеряешь гибкость "шовной" интеграции, по-моему.
paul_sh
Posts: 15
Joined: Wed 10 Jan, 2007 09:44
Location: Moscow

Post by paul_sh »

Ну, возможно и так... В принципе, если все необходимое замакросить, то должно получиться удобно.

Кстати, Роман, я правильно понимаю, что в SVN нет исходников PowerShellFar, они только в архиве с релизом?
В SVN найти не смог.
User avatar
NightRoman
Posts: 6184
Joined: Fri 18 Aug, 2006 13:52
Location: Cambridge, UK
Has thanked: 32 times
Been thanked: 62 times
Contact:

Post by NightRoman »

в SVN нет исходников PowerShellFar, они только в архиве с релизом
Да.
Post Reply

Return to “Обсуждение плагинов”