[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Prompt messed up if PS1 contains ANSI escape sequences
From: |
Andreas Kähäri |
Subject: |
Re: Prompt messed up if PS1 contains ANSI escape sequences |
Date: |
Thu, 7 Sep 2023 16:25:57 +0200 |
On Thu, Sep 07, 2023 at 04:03:39PM +0200, Gioele Barabucci wrote:
> On 07/09/23 15:50, Greg Wooledge wrote:
> > On Thu, Sep 07, 2023 at 03:46:23PM +0200, Gioele Barabucci wrote:
> > > On 07/09/23 15:00, alex xmb ratchev wrote:
> > > > u have to \[ esc-seq \]
> > > > eg inside \[ and \]
> > > >
> > > > PS1=$'\u\[\e[1m\]\h\[\e[0m- '
> > > >
> > > > should display hostname bold
> > >
> > > Thanks for the suggestion, but adding \] does not really fix the problem,
> > > it
> > > just masks it in many cases (better than nothing).
> >
> > The \[ \] wrappings are required. They're not "masking" the problem.
> > Your prompt is literally set incorrectly without them.
>
> Agreed that \] is required. With "masking" I mean that the use of \]
> prevents the problem I'm referring to from showing up easily. But the
> problem is still there even when \] is used.
>
> The following snippet shows that, even with the final \], Bash produces the
> same erroneous output and miscalculates the cursor position (it just needs a
> longer prompt):
>
> $ long_name="$(printf 'abcdef0123456789/%.0s' {0..20})"
> $ mkdir -p /tmp/$long_name
> $ cd /tmp/$long_name
> $ PS1=$'\n\[\e[1m\]\w\[\e[m\] \$ '
>
> Now press the up arrow, then the down arrow)
>
> Regards,
>
> --
> Gioele Barabucci
I can't really reproduce the issue that you are seeing, but isn't the \n
(the newline) also a non-printable character that should be wrapped in
\[ \], since it has no width?
--
Andreas (Kusalananda) Kähäri
Uppsala, Sweden
.
- Prompt messed up if PS1 contains ANSI escape sequences, Gioele Barabucci, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, alex xmb ratchev, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, alex xmb ratchev, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Gioele Barabucci, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Greg Wooledge, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Gioele Barabucci, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Greg Wooledge, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Gioele Barabucci, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Gioele Barabucci, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences,
Andreas Kähäri <=
- Re: Prompt messed up if PS1 contains ANSI escape sequences, alex xmb ratchev, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, alex xmb ratchev, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Kerin Millar, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, alex xmb ratchev, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, Kerin Millar, 2023/09/07
- Re: Prompt messed up if PS1 contains ANSI escape sequences, alex xmb ratchev, 2023/09/07