Аналог bash PROMPT_COMMAND для Far prompt
Аналог bash PROMPT_COMMAND для Far prompt
Возможно ли сделать аналог bash PROMPT_COMMAND для Far command line prompt, таким образом, чтобы можно было для Far легко делать что-то подобное? Внедрять можно через переменные окружения - в Far prompt они уже поддерживаются.
В случае с Far не нужна доступность команды другим процессам (для этого PROMPT_COMMAND реализована через переменную окружения), и, наверное, было бы проще завести дополнительную настройку prompt-а, позволяющую указать путь к какому-либо скрипту. Также была идея сделать макросами (видимо, не получится). Может, у кого-то возникнут другие идеи по реализации.
В случае с Far не нужна доступность команды другим процессам (для этого PROMPT_COMMAND реализована через переменную окружения), и, наверное, было бы проще завести дополнительную настройку prompt-а, позволяющую указать путь к какому-либо скрипту. Также была идея сделать макросами (видимо, не получится). Может, у кого-то возникнут другие идеи по реализации.
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Аналог bash PROMPT_COMMAND для Far prompt
По аналогии с этим лучше всего, чтобы Фар предоставлял возможность задать генератор приглашения (раскрашенного).
Фар есть инструмент, а не нянька. © 2009 DrKnS
- cmd.exe
- Posts: 378
- Joined: Fri 16 Apr, 2010 18:26
- Location: Нижний Новгород
- Has thanked: 181 times
- Been thanked: 10 times
- Contact:
Аналог bash PROMPT_COMMAND для Far prompt
Есть идея такая:
Выставляем:
Возможно создать макрос который-бы обновлял по событию переменную в конфиге. что является плохой практикой.
Выставляем:
Наиболее правильный вариант предложил HaRT.
Выставляем:
Cmdline.UsePromptFormat=true
Возможно создать макрос который-бы обновлял по событию переменную в конфиге. что является плохой практикой.
Выставляем:
Cmdline.PromptFormat=[Ваша переменная]
, но это шпала в работаспособность самого general config.Наиболее правильный вариант предложил HaRT.
Last edited by HaRT on Mon 07 Dec, 2015 12:08, edited 1 time in total.
Reason: [c]
Reason: [c]
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
I know nothing except the fact of my ignorance. (с) Socrates
Аналог bash PROMPT_COMMAND для Far prompt
Я только за. Чем меньше дополнительных процессов запускать - тем эффективней будет выполнение.cmd.exe wrote:Наиболее правильный вариант предложил HaRT.
- cmd.exe
- Posts: 378
- Joined: Fri 16 Apr, 2010 18:26
- Location: Нижний Новгород
- Has thanked: 181 times
- Been thanked: 10 times
- Contact:
Аналог bash PROMPT_COMMAND для Far prompt
Как раскрасить:
Про
очень хочется:
$nl - Перевод на новую строку.
$_ - Возврат каретки.
F1->Command line settings->line prompt
Про
Cmdline.PromptFormat
, раскрасил. А как её првильно передать фару, не меняя переменную в general config?очень хочется:
$nl - Перевод на новую строку.
$_ - Возврат каретки.
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
I know nothing except the fact of my ignorance. (с) Socrates
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Аналог bash PROMPT_COMMAND для Far prompt
Почему именно такие обозначения? Они где-то уже широко используются? Есть ли альтернативные обозначения для того же самого?
Фар есть инструмент, а не нянька. © 2009 DrKnS
- cmd.exe
- Posts: 378
- Joined: Fri 16 Apr, 2010 18:26
- Location: Нижний Новгород
- Has thanked: 181 times
- Been thanked: 10 times
- Contact:
Аналог bash PROMPT_COMMAND для Far prompt
$n занят, по этому пришло в голову $nl (New Line)
$r от \r в си
В си: \r \n
$_ подразумевал перевод каретки на строку ниже и возврат её
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
I know nothing except the fact of my ignorance. (с) Socrates
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Аналог bash PROMPT_COMMAND для Far prompt
Иными словами, полная отсебятина без изучения имеющейся практики. Отказать.
Ещё со времён телетайпа есть отдельно LF (Line Feed — перевод строки, ASCII 10, он же
^J
и \n
) и отдельно CR (Carriage Return — возврат каретки, ASCII 13, он же ^M
и \r
). Это два независимых управляющих символа. И не надо привносить путаницу!Фар есть инструмент, а не нянька. © 2009 DrKnS
- cmd.exe
- Posts: 378
- Joined: Fri 16 Apr, 2010 18:26
- Location: Нижний Новгород
- Has thanked: 181 times
- Been thanked: 10 times
- Contact:
Аналог bash PROMPT_COMMAND для Far prompt
И как вы предлагаете в
Cmdline.PromptFormat
перевести строку или вернуть каретку назад уже имеющимися практиками?Отказать потому, что всё упирается в то, что написано в cmdline.cpp? см. ниже.
Да кто-же спорит что это два разных символа!
Вырезка из cmdline.cpp строка 651
Code: Select all
/* эти не реaлизованы
$E - Escape code (ASCII code 27)
$V - Windows version number
$_ - Carriage return and linefeed
*/
I've been using Vim for about 2 years now, mostly because I can't figure out how to exit it. (c) I Am Devloper
I know nothing except the fact of my ignorance. (с) Socrates
I know nothing except the fact of my ignorance. (с) Socrates
- HaRT
- Moderator
- Posts: 10866
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Аналог bash PROMPT_COMMAND для Far prompt
Я никак не предлагаю. А вот кто предлагает, тот и должен взять на себя труд изучения того, как это уже делается где-то ещё, сопоставления, анализа и выработки наилучшего варианта (и обоснования, в каком смысле он лучший).
Фар есть инструмент, а не нянька. © 2009 DrKnS
Аналог bash PROMPT_COMMAND для Far prompt
Потому, что есть вот такое - help promptcmd.exe wrote:Вырезка из cmdline.cpp строка 651
...
Кстати почему в cmdline.cpp используется именно "$"?
We are the Borg. You will be assimilated.
So Say We All!
So Say We All!