Как установить формат приглашения командной строки из макроса?

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
fps
Posts: 219
Joined: Wed 20 Apr, 2005 06:39
Has thanked: 18 times
Been thanked: 6 times

Как установить формат приглашения командной строки из макроса?

Post by fps »

Latest post of the previous page:

DrKnS wrote: Fri 20 Jul, 2018 10:45 set foo= - удалить переменную foo
lua:win.SetEnv("foo", "") - присвоить переменной foo пустое значение.
Странность на мой взгляд в том, что строка %foo% будет подставлена не только в первом но и во втором случае.
Наверное это поведение логично и как-то объяснимо, но ни в одном из известных мне языков при обращении к переменной мы не получаем ее имя в качестве её значения при условии если её значение равно пустой строке.
Я не могу представить себе реальной пользы от такого поведения (кроме как для отладки).
Last edited by fps on Fri 20 Jul, 2018 11:09, edited 3 times in total.
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Как установить формат приглашения командной строки из макроса?

Post by Shmuel »

fps wrote: Fri 20 Jul, 2018 11:08 Странность на мой взгляд в том, что строка %foo% будет подставлена не только в первом но и во втором случае.
Нет, во втором случае всё будет правильно.
Другое дело, что Фар не сразу возьмёт новое значение.

После такого запуска Фар C:\Far3\far.exe "lua:win.SetEnv('myvar', win.GetEnv('myvar') or '')"
мы увидим %myvar% в приглашении, но если нажать Space Enter, %myvar% исчезнет и больше не появится.
fps
Posts: 219
Joined: Wed 20 Apr, 2005 06:39
Has thanked: 18 times
Been thanked: 6 times

Как установить формат приглашения командной строки из макроса?

Post by fps »

Shmuel, у меня не исчезает.
FAR 3.0 build 5239 x64, Win7

В Command line settings прописано так:
[x] Set command line prompt format (a)%myvar%(7)$p$g
Last edited by fps on Fri 20 Jul, 2018 11:39, edited 1 time in total.
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Как установить формат приглашения командной строки из макроса?

Post by Shmuel »

Это уже похоже на глюк Фара. Если убрать (a) и (7), то исчезает.
User avatar
DrKnS
Posts: 5804
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 343 times

Как установить формат приглашения командной строки из макроса?

Post by DrKnS »

fps wrote: Fri 20 Jul, 2018 11:35не исчезает
Как уже выше отмечено, промпт перерисовывается не на каждый чих.
Смените папку - исчезнет.
fps
Posts: 219
Joined: Wed 20 Apr, 2005 06:39
Has thanked: 18 times
Been thanked: 6 times

Как установить формат приглашения командной строки из макроса?

Post by fps »

DrKnS, если переменная выделена цветом, то не исчезает.
Как уже выше отмечено, похоже на глюк Фара.
User avatar
DrKnS
Posts: 5804
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 343 times

Как установить формат приглашения командной строки из макроса?

Post by DrKnS »

fps, да, вы правы, это баг. Исправлено в 5240.

Post Reply

Return to “Нужна помощь”