Toon posts:

[bash-2.05] - bash doet raar? (dankzij PS1)

Pagina: 1
Acties:

Verwijderd

Topicstarter
Dit probleem is al eerder voorbij gekomen, maar helaas is daar geen goede oplossing uitgekomen.

PS1 ingesteld op de standaard '\u@\h:\w>' geeft totaal geen problemen. bash gaat netjes verder op een nieuwe regel zodra ik het einde van de regel bereik. maar... zodra ik een eigen prompt instel (3 kleuren, 2 regels, waarvan de laatste regel slechts bestaat uit '>', vetgedrukt) gaat bash heel vreemd doen. Zodra ik het einde van de eerste regel bereik ga ik niet verder op een nieuwe regel zoals de bedoeling is, maar gaat bash terug naar het begin van de eerste regel... zodra ik dan het einde van deze (in werkelijkheid 2e) regel nader, gaat bash wel naar een nieuwe, 2e regel (wat eigenlijk de 3e moet zijn dus).

Nu is dus mijn vraag, hoe vertel ik bash dat hij ook aan het einde van de eerste regel netjes naar de volgende regel gaat, zonder mijn eigen versie van PS1 te hoeven opgeven?

  • Juup
  • Registratie: Februari 2000
  • Niet online
Probeer deze eens:
PS1 = "\\[\033[01;32m\]\u@\h \\[\033[01;34m\]$PWD: \\[\033[00m\]"
Het gaat om een paar extra karacters in je PS1 die bash vertellen dan die andere karakters geen echte lijnvullers zijn.

Een wappie is iemand die gevallen is voor de (jarenlange) Russische desinformatiecampagnes.
Wantrouwen en confirmation bias doen de rest.


Verwijderd

Topicstarter
aah... ik zou net posten dat ik het al gevonden had... :P

voor mensen die dit probleem in de toekomst ook tegenkomen:

stel, ik wil een simpele prompt hebben, maar wel eentje met eigen kleuren. ik zal dan de ansi escape sequences (speciale besturingscodes) moeten gaan gebruiken om deze kleuren in te stellen. bijvoorbeeld:

PS1='\033[1;33m>\033[0m '

dit resulteert in een simpele prompt '> ' in een gele kleur. ik persoonlijk zie deze prompt slechts als 2 karakters, echter, bash ziet dit als elf karakters ('\033', '[1' en '[0' worden als 1 karakter gezien schijnt het). dit kan rare situaties opleveren, zoals de situatie die ik dus heb ondervonden. om dit probleem op te lossen kun je de 'niet-zichtbare' tekens, de stuurcodes zoals '\033[1;33m' tussen '\\[' en '\]' zetten, daarmee is het probleem opgelost...

hehe... dit zou zo in de nos faq passen!! ideetje? :? :P

btw... toch bedankt voor je reply jaaap... :)