View Issue Details

IDProjectCategoryView StatusLast Update
0000811Wishes.PluginsFARCmdspublic2010-06-11 16:28
ReporterJohnDoe Assigned Tovskirdin  
PrioritynormalSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Fixed in Version2.0 
Summary0000811: FARCmds не учитывает консольные алиасы
DescriptionПоскольку сам фар уже давно умеет запускать консольные алиасы (созданные командой DOSKEY), хотелось бы научить этому и плагин из стандартной поставки.

Пример: имеем алиас mplayer
DOSKEY mplayer=C:\APPs\VIDEO\MPlayer\mplayer.exe

Хотим посмотреть хелп
edit:<mplayer --help

Но нет - FARCmds не знает про наш алиас :(

"mplayer" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
TagsNo tags attached.

Relationships

has duplicate 0000932 closedvskirdin Plugins macro:load не работает 

Activities

alexy

2009-05-28 11:30

administrator   bugnote:0003322

Я думаю надо чтоб фар обрабатывал алиасы перед отдачей комстроки плагину, а также наверно чтоб фар сам ещё и %% обрабатывал тут тоже.

alexy

2009-05-28 11:33

administrator   bugnote:0003323

Хотя не, я не прав.

JohnDoe

2009-05-28 13:49

updater   bugnote:0003325

Проблема актуальна и для MultiArc

alexy

2009-05-28 23:42

administrator   bugnote:0003334

Multiarc тут вообще не причём, он и не должен понимать алиасы.

JohnDoe

2009-05-29 08:44

updater   bugnote:0003357

Возможно это ему не помешало бы.
(Речь об коммандных строках архиваторов - в реестре и custom.ini)

Возможно стоит предоставлять плагинам соответств. API

vskirdin

2009-05-29 17:11

administrator   bugnote:0003359

JohnDoe, самое простое... решение.
Ты берешь из execute.cpp код функции ProcessOSAliases() и присовокупляешь/приспосабливаешь его к FARCmds. Попутно выкладываешь сюда патч для плагина.
Сурово? Да, сурово. А что делать!

JohnDoe

2009-05-29 20:49

updater   bugnote:0003361

Увы, "программировал" последний раз на турбопаскале. И было это 15 лет назад.

Я понимаю что приоритет у этого виша довольно низкий.
Пусть себе лежит - авось и до него дойдёт очередь когда-нибудь.

vskirdin

2009-06-04 10:36

administrator   bugnote:0003494

в общем типа сделал...
так... видимо надо в FSF добавить ProcessOSAliases, что-то сильно много повторяющего в ФАРе кода в плагин добавилось...

vskirdin

2009-06-08 12:43

administrator   bugnote:0003516

build 37

JohnDoe

2009-06-09 08:51

updater   bugnote:0003525

Что-то не работает:
view:<mplayer

"mplayer" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

vskirdin

2009-06-09 09:26

administrator   bugnote:0003526

кхе...
build 38

JohnDoe

2009-06-10 07:44

updater   bugnote:0003556

Теперь работает

JohnDoe

2009-06-10 08:06

updater   bugnote:0003557

FARCmdsRus.hlf
@Remark
$ #Замечания#

   5. В качестве #команды# могут использоваться консольные алиасы
      (Консольные алиасы - "макросы" созданные командой DOSKEY)

FARCmdsEng.hlf
@Remark
$^#Notes#
...
   5. You can use console aliases as #command#
      (Console aliases - macros defined by command DOSKEY)

vskirdin

2009-06-10 11:43

administrator   bugnote:0003567

хелп поправлен

JohnDoe

2009-06-10 15:07

updater   bugnote:0003570

FARCmdsRus.hlf
@WhereIs
$ #Команда WhereIs#
...
   2. Каталог, на котрый указывает переменная среды %FARHOME%
котрый=который

FARCmdsEng.hlf
@WhereIs
$ #The WhereIs command#
...
   2. Folder in the environment variable %FARHOME%

JohnDoe

2009-06-11 08:22

updater   bugnote:0003598

DOSKEY 1=macro:post 1
view:1 - не находит существующий файл "1"

JohnDoe

2009-07-15 18:17

updater   bugnote:0003735

продолжает ненаходить

vskirdin

2009-07-15 18:21

administrator   bugnote:0003736

> view:1 - не находит существующий файл "1"
кто здесь?
а че ты хотел этим достичь?

JohnDoe

2009-07-15 18:29

updater   bugnote:0003737

существует файл с именем "1"
он открывается с помощью команды view:1

после "DOSKEY 1=macro:post 1" - перестаёт открываться

DrKnS

2009-07-15 18:34

administrator   bugnote:0003738

Логично же.

JohnDoe

2009-07-15 18:40

updater   bugnote:0003739

Покажите

DrKnS

2009-07-15 18:42

administrator   bugnote:0003740

1=macro:post 1
view:1 = view:macro:post 1

JohnDoe

2009-07-15 19:08

updater   bugnote:0003743

1) даже так не работает

view:%FARHOME%\far.exe
doskey 1=%FARHOME%\far.exe
view:1
╔═════════ Viewer ══════════╗
║ File not found ║
║ Cannot open the file ║
║ C:\APPS\FAR\BinW\far.exe ║
║ OK ║
╚═══════════════════════════╝

2)Оно и не должно так работать
Алиасы - только для запуска, а в данном случае - только для перехвата вывода
view:<1 /?

JohnDoe

2009-07-15 19:20

updater   bugnote:0003745

Из-за этого и 0000932
(Закройте его кто-нибудь как связанный с 0000811)

JohnDoe

2010-05-06 16:44

updater   bugnote:0005310

Тикет реализован, за исключением одного бага. Может починим как-нибудь?
Повторю суть:

Алиасы должны подставляться только в командах предполагающих запуск (при перехвате вывода). Например:
view:<alias

В прочих случая это просто бессмысленно:
view:alias

В этом случае никакого запуска не происходит, должен просто открываться файл с именем alias. Буквально "alias", без всяких подстановок.

vskirdin

2010-05-13 11:56

administrator   bugnote:0005354

build 68

JohnDoe

2010-05-17 12:24

updater   bugnote:0005381

Last edited: 2010-05-17 12:26

Ещё одна мелочь:
goto:<alias

Тут алиас раскрывается, но опять же зря, поскольку здесь не предполагается никакого запуска.

Вообще не очень хорошо что в одних командах плагина "<" обозначает перенаправление вывода команды, а в других - чтение из файла

Имхо это правильнее всего решить приведением синтаксиса к общему знаменателю, во всех префиксах.

Например:
"<" - перехват вывода
"<<" - чтение из файла

JohnDoe

2010-05-18 20:11

updater   bugnote:0005382

Ещё одно место где зачем-то раскрываются алиасы - команда link:
link:alias destination

vskirdin

2010-06-04 10:08

administrator   bugnote:0005447

build 70

Issue History

Date Modified Username Field Change
2009-04-06 17:23 JohnDoe New Issue
2009-05-28 11:30 alexy Note Added: 0003322
2009-05-28 11:31 alexy Project Wishes.Plugins => Wishes
2009-05-28 11:31 alexy Category FARCmds => Command Line/Execute
2009-05-28 11:33 alexy Note Added: 0003323
2009-05-28 11:33 alexy Project Wishes => Wishes.Plugins
2009-05-28 11:33 alexy Category Command Line/Execute => FARCmds
2009-05-28 13:49 JohnDoe Note Added: 0003325
2009-05-28 23:42 alexy Note Added: 0003334
2009-05-29 08:44 JohnDoe Note Added: 0003357
2009-05-29 17:11 vskirdin Note Added: 0003359
2009-05-29 20:49 JohnDoe Note Added: 0003361
2009-06-04 10:36 vskirdin Note Added: 0003494
2009-06-04 10:37 vskirdin Status new => assigned
2009-06-04 10:37 vskirdin Assigned To => vskirdin
2009-06-08 12:43 vskirdin Note Added: 0003516
2009-06-08 12:43 vskirdin Status assigned => feedback
2009-06-09 08:51 JohnDoe Note Added: 0003525
2009-06-09 09:26 vskirdin Note Added: 0003526
2009-06-10 07:44 JohnDoe Note Added: 0003556
2009-06-10 08:06 JohnDoe Note Added: 0003557
2009-06-10 11:43 vskirdin Note Added: 0003567
2009-06-10 15:07 JohnDoe Note Added: 0003570
2009-06-11 08:22 JohnDoe Note Added: 0003598
2009-07-15 18:16 JohnDoe Status feedback => resolved
2009-07-15 18:17 JohnDoe Note Added: 0003735
2009-07-15 18:17 JohnDoe Status resolved => assigned
2009-07-15 18:17 JohnDoe Resolution open => reopened
2009-07-15 18:21 vskirdin Note Added: 0003736
2009-07-15 18:29 JohnDoe Note Added: 0003737
2009-07-15 18:34 DrKnS Note Added: 0003738
2009-07-15 18:40 JohnDoe Note Added: 0003739
2009-07-15 18:42 DrKnS Note Added: 0003740
2009-07-15 19:08 JohnDoe Note Added: 0003743
2009-07-15 19:20 JohnDoe Note Added: 0003745
2009-11-03 11:38 alexy Relationship added has duplicate 0000932
2010-05-06 16:44 JohnDoe Note Added: 0005310
2010-05-13 11:56 vskirdin Note Added: 0005354
2010-05-13 11:56 vskirdin Status assigned => feedback
2010-05-17 12:24 JohnDoe Note Added: 0005381
2010-05-17 12:24 JohnDoe Status feedback => assigned
2010-05-17 12:26 JohnDoe Note Edited: 0005381
2010-05-18 20:11 JohnDoe Note Added: 0005382
2010-06-04 10:08 vskirdin Note Added: 0005447
2010-06-04 10:08 vskirdin Status assigned => feedback
2010-06-10 09:33 JohnDoe Status feedback => resolved
2010-06-11 16:28 alexy Status resolved => closed
2010-06-11 16:28 alexy Resolution reopened => fixed
2010-06-11 16:28 alexy Fixed in Version => 2.0