Пользовательское меню и символ @
Пользовательское меню и символ @
Уже довольно большое количество билдов, в том числе в последнем стабильном, лог отрабатывания консольных приложений из пользовательского меню отражается при включенных панелях. Панели уезжают вверх, пока не будет евент их перерисовки, а также история не сохраняется - по CtrlO лога не видно.
- NightRoman
- Posts: 6184
- Joined: Fri 18 Aug, 2006 13:52
- Location: Cambridge, UK
- Has thanked: 32 times
- Been thanked: 62 times
- Contact:
Re: Пользовательское меню.
А какие именно приложения? Я такое с некоторыми наблюдаю, но, думаю, это те, которые сами с консолью напрямую работают. С "обычными" вроде такого не наблюдается.
И разве это только из меню? А если из комстроки запустить, не то же самое будет?
И разве это только из меню? А если из комстроки запустить, не то же самое будет?
- NightRoman
- Posts: 6184
- Joined: Fri 18 Aug, 2006 13:52
- Location: Cambridge, UK
- Has thanked: 32 times
- Been thanked: 62 times
- Contact:
Re: Пользовательское меню.
Ждем подробностей от автора. Свой пример я выложить не могу, приложение весьма специальное, просто так не запустится.2useven10 wrote:у меня не уезжают.
давайте детали.
И я не думаю, что дело в "последних" билдах.
Re: Пользовательское меню.
Пакетный файл, вызовом консольных команд: copy, move, net и т.п.NightRoman wrote:А какие именно приложения?
Пока делал скрины, писал ответ, пришла идея, что это может быть из-за спец символа предпроцессора @. Я им скрываю отображение строки выполнения самого пакетного файла.
Проверил, так и есть. Так что может это и не баг, а фича - "не мигать" панелями. Не критично, но раньше было для меня удобней. Пока убрал @ из команды меню.
В ком.строке с @ также отрабатывает, просто никогда не использовал его там.NightRoman wrote:А если из комстроки запустить, не то же самое будет?
- John Doe
- Бюрократ
- Posts: 13862
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: Пользовательское меню.
А почему тогда не перенаправить вывод в nul?Release wrote:Так что может это и не баг, а фича - "не мигать" панелями. Не критично, но раньше было для меня удобней. Пока убрал @ из команды меню.
Re: Пользовательское меню.
Потому что мне надо скрыть не лог выполнения команды, а саму строку запуска с параметрами.John Doe wrote:А почему тогда не перенаправить вывод в nul?
Например:
Code: Select all
D:\>net use <- Эту строку скрываем, а то что ниже нет
Новые подключения будут запомнены.
Состояние Локальный Удаленный Сеть
-------------------------------------------------------------------------------
OK X: \\***************\**** Microsoft Windows Network
Отсоединен Z: \\***********\***** Microsoft Windows Network
Отсоединен \\***.***.***.***\**** Microsoft Windows Network
Команда выполнена успешно.
Для меня важнее, что историю (пример выше) выполнения не посмотреть в консоли после перерисовывания. Можно конечно перенаправлять вывод в файл, но для меня было удобно так, как было раньше.t-rex wrote:Там опосля надо видимо всё таки перерисовывать экран.
- John Doe
- Бюрократ
- Posts: 13862
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: Пользовательское меню.
Не было такого. И вообще польза сомнительна.Release wrote:[...]но для меня было удобно так, как было раньше.Code: Select all
D:\>net use <- Эту строку скрываем, а то что ниже нет
Незачем перерисовывать, пользователь может и сам перенаправить в nul либо убрать @t-rex wrote:Там опосля надо видимо всё таки перерисовывать экран.
Re: Пользовательское меню.
Да, прошу прощения, видимо до этого пользовался без @ - проверил в 2 отрабатывает также.John Doe wrote:Не было такого. И вообще польза сомнительна.
А вот с этим не согласен, пользователь много чего может, но... с таким подходом и данный сабж не нужен, можно и проводником пользоваться или консолью.Release wrote:Незачем перерисовывать, пользователь может и сам перенаправить в nul либо убрать @
А в данном случае поклацать дважды CtrrlO.
К тому же, есть приложения, которым "глубоко положить", куда вы там пытаетесь перенаправить вывод.
- John Doe
- Бюрократ
- Posts: 13862
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: Пользовательское меню.
Похоже вы не совсем понимаете чего хотите.
1. Хотите видеть вывод - не добавляйте @
2. Не хотите - перенаправляйте в nul
Если в nul невозможно (а это редкость), значит остаётся вариант 1
А перерисовывать тут негде, третьего варианта нет
1. Хотите видеть вывод - не добавляйте @
2. Не хотите - перенаправляйте в nul
Если в nul невозможно (а это редкость), значит остаётся вариант 1
А перерисовывать тут негде, третьего варианта нет
- HaRT
- Moderator
- Posts: 10868
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: Пользовательское меню.
Да человек просто хочет, чтобы ‘@’ перед командой работала так же, как в BAT/CMD-скрипте — не выводить в консоль саму команду (echo off для одной строки), а ввод-вывод как обычно. Учитывая, что через пользовательское меню может выполняться несколько команд подряд, желание вполне закономерное.
Фар есть инструмент, а не нянька. © 2009 DrKnS
Re: Пользовательское меню.
Честно говоря, не понял где это "тут негде", но предположу... Far, вроде как, все равно "дожидается" окончания выполнения команды меню. Что мешает вставить в конце вызов метода обновления панелей? (хотя кода я, конечно, не видел.)John Doe wrote:А перерисовывать тут негде, третьего варианта нет
Спасибо, именно это меня максимально устроило бы. Честно говоря, я изначально предполагал, что оно именно так и должно было бы работать, по аналогии. Потому и воспринял данную фичу, как баг.HaRT wrote:Да человек просто хочет, чтобы ‘@’ перед командой работала так же, как в BAT/CMD-скрипте — не выводить в консоль саму команду (echo off для одной строки), а ввод-вывод как обычно. Учитывая, что через пользовательское меню может выполняться несколько команд подряд, желание вполне закономерное.
Наберусь наглости предложить, реализовать два варианта: или опционально, через настройки как сейчас и понятно озвученным HaRT, или через @ 2-й вариант, а через @@ (или другой символ) существующий вариант (можно и наоборот, чтобы не ломать текущее состояние - может кто-то пользуется им так, как он работает сейчас).
- John Doe
- Бюрократ
- Posts: 13862
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 74 times
- Been thanked: 428 times
- Contact:
Re: Пользовательское меню.
Ничего не мешает. Только объясните что это вам даст. В каких случаях это может быть полезно?Release wrote:Что мешает вставить в конце вызов метода обновления панелей? (хотя кода я, конечно, не видел.)