shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bash (prompt colorido) - acrescentando...


From: Guilherme Salgado
Subject: bash (prompt colorido) - acrescentando...
Date: 14 Oct 2001 23:21:22 BST

Desculpem mandar outro email...

devo acrescentar que o problema ocorre quando o comando digitado eh grande,
ultrapassa o fim da linha. parece que o bash se atrapalha e tenta colocar o
comando no comeco da linha. eu nao consegui entender oq acontece...

--
Guilherme

From (no email address) Mon Oct 15 06:18:39 2001
Return-Path: <address@hidden>
X-Sender: address@hidden
X-Apparently-To: address@hidden
Received: (EGP: mail-7_4_1); 15 Oct 2001 13:18:39 -0000
Received: (qmail 26922 invoked from network); 15 Oct 2001 13:18:37 -0000
Received: from unknown (10.1.10.26)
  by l7.egroups.com with QMQP; 15 Oct 2001 13:18:37 -0000
Received: from unknown (HELO perninha.conectiva.com.br) (200.250.58.156)
  by mta1 with SMTP; 15 Oct 2001 13:18:36 -0000
Received: from burns.conectiva (burns.conectiva [10.0.0.4])
        by perninha.conectiva.com.br (Postfix) with SMTP id B7408390C0
        for <address@hidden>; Mon, 15 Oct 2001 10:18:33 -0300 (EST)
Received: (qmail 8146 invoked by uid 0); 15 Oct 2001 13:16:35 -0000
Received: from verde.distro.conectiva (10.0.17.77)
  by burns.conectiva with SMTP; 15 Oct 2001 13:16:35 -0000
Date: Mon, 15 Oct 2001 10:19:47 -0200 (BRST)
X-X-Sender:  <verde@verde.distro.conectiva>
To: lista shell-script <address@hidden>
Subject: Re: [shell-script] bash (prompt colorido)
In-Reply-To: <address@hidden>
Message-ID: <Pine.LNX.4.33L.0110151003430.938-100000@verde.distro.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=iso-8859-1
Content-Transfer-Encoding: 8BIT
X-eGroups-From: # aurelio marinho jargas <address@hidden>
From: # aurelio marinho jargas <address@hidden>

ae guilherme,

@ 14/10, Guilherme Salgado:
> Na epoca que eu usava o bash1 eu tentei colocar umas coisinhas coloridas no 
> meu
> prompt e nao deu muito certo. Qdo eu teclava <UP> para ver os comandos
> digitados anteriormente era uma caca enorme, o comando ficava por "tras" do
> prompt, eu nao conseguia ver qual era o comando nem edita-lo.
>
> PS1="\e[0;36m[$TIME $LOAD]\e[0m\n[\h \#] \W > \[\033]0;[\u@\h] \w\007\]"
> Esse aí funciona direitinho. mas se a parte colorida ficar na linha que eu
> digito os comandos ja era.


o pobrema é que ao voltar as linhas do histórico, o bash faz a
contagem do tamanho do prompt (quantos caracteres) para
posicionar o cursor.

como os caracteres de controle uitlizados para imprimir colorido
são invisíveis, eles não podem ser incluídos nessa contagem do
tamanho do prompt. então, como "marcá-los" para dizer ao bash,
"ei, estes são caracteres não-imprimíveis"?

man bash | col -b | grep -C '\\\['

    \[     begin a sequence of non-printing characters, which
           could be used to embed a terminal control sequence
           into the prompt
    \]     end a sequence of non-printing characters



então, coloca os \e[33m entre \[ e \], por exemplo: \[\e[33m\],
e assim faz pra todos os caracteres de controle que tiver no
prompt beleza?


-- 
s·:(·>(·×^a]×http://www.verde666.org×^[:wq




reply via email to

[Prev in Thread] Current Thread [Next in Thread]