Ассоциации применяются к запуску из комстроки - ошибочно?

Здесь можно сообщить о найденных багах в Far.
Post Reply
ccaid
Posts: 841
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 17 times
Been thanked: 5 times

Ассоциации применяются к запуску из комстроки - ошибочно?

Post by ccaid » Thu 10 Jan, 2019 12:35

Far30b5214.x86.20180517 - эффекта не было
Far30b5215.x86.20180518 - эффект появился
Far30b5351.x86.20190110 - он все еще с нами

Воспроизведение:
1) Распаковываем и запускаем, типа: Far -s Profile

2) Настраиваем ассоциацию:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<farconfig version="3.0.5214">
    <associations>
        <filetype mask="*.chm">
            <command type="0" enabled="1" command="&quot;!.!&quot;"/>
        </filetype>
    </associations>
</farconfig>
3) В комстроку вводим:

Code: Select all

"%FarHome%\Encyclopedia\macroapi_manual.ru.chm"
и нажимаем Enter

4) В консоли получаем:

Code: Select all

>"macroapi_manual.ru.chm"
""macroapi_manual.ru.chm"" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
При запуске из FarMenu.ini тот же эффект.
Как по мне, это баг.
Или в этом есть замысел? Но в changelog он не анонсирован.
Фар делают добрые люди

2useven10
Posts: 3750
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 4 times
Been thanked: 148 times

Ассоциации применяются к запуску из комстроки - ошибочно?

Post by 2useven10 » Thu 10 Jan, 2019 12:59

ccaid wrote:
Thu 10 Jan, 2019 12:35
Но в changelog он не анонсирован
changelog wrote:drkns 24.06.2016 01:15:01 +0200 - build 4723
1. Очень экспериментальная фича: встроенные ассоциации распространяются на комстроку.

ccaid
Posts: 841
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 17 times
Been thanked: 5 times

Ассоциации применяются к запуску из комстроки - ошибочно?

Post by ccaid » Thu 10 Jan, 2019 13:26

вон-она-чо. рвануло не сразу.

и что показал эксперимент? что никто и не заметил разницы кроме меня, и то не сразу?
а юзкейс какой?
Фар делают добрые люди

User avatar
DrKnS
Posts: 5148
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 5 times
Been thanked: 190 times

Ассоциации применяются к запуску из комстроки - ошибочно?

Post by DrKnS » Thu 10 Jan, 2019 13:51

ccaid wrote:
Thu 10 Jan, 2019 12:35
Как по мне, это баг.
Я не очень понимаю смысл ассоциаций типа !.!, но допустим.

Вы просите исполнять *.chm как "!.!" ("name.extension").
Фар берет ваше "%FarHome%\Encyclopedia\macroapi_manual.ru.chm", делает из него "!.!", т.е. "macroapi_manual.ru.chm" и запускает (что видно в процитированном).
Чтобы это работало, macroapi_manual.ru.chm должен быть в текущем каталоге (cd %FarHome%\Encyclopedia) или еще где-то, где ОС может его найти.

Что конкретно здесь баг?

Если вам по какой-то причине нужны такие странные ассоциации, пишите хотя бы "!\!.!".

ccaid wrote:
Thu 10 Jan, 2019 13:26
а юзкейс какой?
Там.

ccaid
Posts: 841
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 17 times
Been thanked: 5 times

Ассоциации применяются к запуску из комстроки - ошибочно?

Post by ccaid » Thu 10 Jan, 2019 14:56

DrKnS wrote:
Thu 10 Jan, 2019 13:51
Я не очень понимаю смысл ассоциаций типа !.!
могу предложить два. во-первых, *.chm архивные плагины трактуют как архив, но поскольку чаще требуется запускать, чем заходить внутрь, то на Enter вешается такая заглушка: ассоциации имеют приоритет перед плагинами. во-вторых, тесткейс должен быть минимален, я считаю. ассоциация вида: chmview "!.!" или akelpad "!.!" для *.txt — будет приводить к тому же результату, но может переключить обсуждение на используемые программы.
DrKnS wrote:
Thu 10 Jan, 2019 13:51
Что конкретно здесь баг?
ассоциации традиционно применялись к файлу под курсором, т.е. в текущей папке. поэтому ассоциация (обычно) это та или иная строка, содержащая !.!
я явно указываю путь до файла, и вдруг ассоциация его обрезает.
почему я должен не удивиться?
да, я почитал обсуждение, теперь понятно, что это не на пустом месте.
DrKnS wrote:
Thu 10 Jan, 2019 13:51
пишите хотя бы "!\!.!".
а разве есть другие варианты?
Фар делают добрые люди

Post Reply

Return to “Глюки и баги”