Как вставить пробел между “файлом” и “мерзавцем” +, Как заставить полный путь показывать?

1) Как вставить пробел, промежуточный current directory (file) и git_prompt_info (git) не заканчиваясь с дополнительным пространством между current directory и text cursor ?

Когда никакое пространство не добавляется:

➜ user ~ |
➜ user ~ cd file|     
➜ user filegit:(master) ✗ |

Примечание: | представляет текстовый курсор.

Источник (.zshrc):

PROMPT='%{$fg_bold[green]%}➜ %{$fg_bold[red]%}$USER %{$fg_bold[cyan]%}%c%{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'

Когда пространство добавляется:

➜ user ~  |     
➜ user ~  cd file|     
➜ user file git:(master) ✗ |    

Примечание: пространство между current directory (~) и git_prompt_info (git) возможно, был добавлен, но дополнительное пространство было добавлено между current directory (~) и text cursor (|).

Источник (.zshrc):

PROMPT='%{$fg_bold[green]%}➜ %{$fg_bold[red]%}$USER %{$fg_bold[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'

Примечание: единственное внесенное изменение, является пространством, которое было добавлено здесь %c% -> %c %.

2) И оттуда, как я заставляю полный путь показывать?

➜ user ~ cd file|    
➜ user ~/file git:(master) ✗ |     
1
задан 12 April 2018 в 04:23

1 ответ

В Вашем git_prompt_info функция необходимо снабдить префиксом вывод пространство, если существует вывод, иначе нет. (Как примечание стороны: Вы, вероятно, хотите изучить vcs_info систему, которая интегрируется в zsh, см. zshcontrib страницу руководства),

Относительно Вашего второго вопроса: Если я понимаю Вас правильно, необходимо смочь использовать %~ вместо %c получить то, что Вы хотите. Если Вы действительно хотите, чтобы полный путь был показан использование %d. Взгляните на zshmisc страница руководства (запрашивают раздел расширения) для большего количества изменений этого.

1
ответ дан 7 December 2019 в 15:21

Другие вопросы по тегам:

Похожие вопросы: