Destacar a linha atual do prompt bash

7

Eu quero que o terminal destaque a linha prompt bash atual.
O efeito que estou tentando alcançar é o mesmo dos editores de texto, onde a linha atual com o cursor é realçada. Algo parecido com isto:

    
por BUCKSHOT 19.12.2015 / 04:21

1 resposta

2

Se você estiver satisfeito em destacar somente o prompt , o seguinte aplicará as cores reversas em qualquer coisa que você já tenha em PS1 :

PS1="\[\e[7m\]$PS1\[\e(B\e[m\]"

Se você tiver um espaço no final do prompt (isso é uma prática comum) que não deseja destacar:

PS1="[\e[7m]${PS1::-1}[\e(B\e[m] "

Alguns terminais, pelo menos iTerm para macOS, têm a opção de definir um "guia de cursor". Isso provavelmente está fazendo exatamente o que você quer alcançar (eu exagerei o guia na foto, eu costumo tê-lo muito mais transparente e vermelho, como na segunda foto):

Oguiadocursornãotemnadaavercomoshelleserásempreexibido,independentementedoquevocêestáfazendo(guiadocursorvermelhomuitofraconalinhalendoAC_CONF_AUX_DIR([build]),aquimostradonoeditorvim):

Infelizmente, só executo o iTerm no macOS, então não sei se há emuladores de terminal que possam fazer isso para o seu Unix em particular.

    
por 28.06.2016 / 12:33

Tags