Prompt padrão para o Zsh no Ubuntu

2

Como você pode obter o prompt "/ home / user @ address: / path" para o Zsh?

Eu corro o seguinte sem sucesso no meu .zshrc

PROMPT='%d%>:%{\e[0m%} '

Eu recebo como meu prompt

/home/masi
    
por Léo Léopold Hertz 준영 29.10.2009 / 02:21

2 respostas

4

Isso pode lhe dar o que você quer ( usuário @ host : caminho ):

PROMPT=$'%n@%m:%d%{\e[0m%} '

Se você quiser limitar o tamanho do caminho ( %> do seu exemplo), limite-o a exibir apenas os últimos 12 caracteres assim:

PROMPT=$'%n@%m:%12<...<%d%<<%{\e[0m%} '

Se você não queria realmente o código de escape embutido (é um comando típico do estilo do VT100 para limpar qualquer formatação em negrito / etc.), você poderia simplificá-lo para isso:

PROMPT='%n@%m:%12<...<%d%<< '
    
por 29.10.2009 / 03:22
2

Nesse caso, o manual pode ser muito útil.

Suponho que você queira algo como: PROMPT='$HOME@%M:%3~ '

Aparentemente, na verdade, ler as 4 frases na pequena página de manual é muito trabalhoso. Talvez porque seja um link:

13. Prompt Expansion

13.1 Expansion of Prompt Sequences

Prompt sequences undergo a special form of expansion.
This type of expansion is also available using the -P option
to the print builtin.

If the PROMPT_SUBST option is set, ...

Certain escape sequences may be recognised in the prompt string.

If the PROMPT_BANG option is set, ...

If the PROMPT_PERCENT option is set, ...

13.2 Simple Prompt Escapes

13.2.1 Special characters

%%
A '%'.

%)
A ')'.

13.2.2 Login information

%l
The line (tty) ...

%M
The full machine hostname.

%m
The hostname up to the first '.'. An integer may follow the '%' to specify
how many components of the hostname are desired. With a negative integer, 
trailing components of the hostname are shown.

%n
$USERNAME.

%y
The line (tty) ...

13.2.3 Shell state

%#
A '#' if the shell is running with privileges, ...

%?
The return status ...

%_
The status of the parser, ...

%d
%/
Present working directory ($PWD). If an integer follows the '%', it 
specifies a number of trailing components of $PWD to show; zero means 
the whole path. A negative integer specifies leading components, 
i.e. %-1d specifies the first component.

%~
As %d and %/, but if $PWD has a named directory as its prefix, that part
is replaced by a '~' followed by the name of the directory. If it starts
with $HOME, that part is replaced by a '~'.

%h
%!
Current history event number.

%i
The line number ...

%I
The line number ...

%j
The number of jobs.

%L
The current value of $SHLVL.

%N
The name of the script, ...

%x
The name of the file ...

%c
%.
%C
Trailing component ...These are deprecated... equivalent to %1~ and %1/ ...

13.2.4 Date and time ... Ignored ...

13.2.5 Visual effects ... Ignored ...

13.3 Conditional Substrings in Prompts ... Possibly useful but ignored ...

    
por 29.10.2009 / 03:43