Colorama ger en enkel plattformsoberoende API för att skriva ut färg terminal text från Python-program.
ANSI escape-tecken Sekvenser används vanligen för att framställa färgad terminal text på Mac-datorer och Unix. Colorama ger några genvägar för att skapa dessa sekvenser, och gör dem att fungera på Windows också.
Detta har den lyckliga bieffekt att befintliga program eller bibliotek som redan använder ANSI-sekvenser för att framställa färgad utgång på Linux eller Mac (t.ex.. Hjälp av paket som "termcolor") kan nu också arbeta på Windows, helt enkelt genom att importera och initiera Colorama.
Status
I utvecklingen. Vissa funktioner, som anges nedan, inte genomförs ännu.
Användning
Initiering
Ansökan bör initiera Colorama använder:
från Colorama import init
i det ()
Om du är på Windows, samtalet till "" init () '' börjar filtrera ANSI escape-sekvenser av någon text som skickas till stdout eller stderr, och ersätter dem med likvärdiga Win32 samtal.
Ringa '' init () '' har ingen effekt på andra plattformar (om du inte använder "Återstart", se nedan) Avsikten är att alla ansökningar ska ringa init () villkorslöst, då deras färgade textproduktion fungerar bara på alla plattformar.
Färgade Utgång
Plattformsoberoende utskrift av färgad text kan sedan göras:
från Colorama import Fore, Back, Style
print Fore.RED + "några röd text"
utskrifts Back.GREEN + och med en grön bakgrund "
print Style.DIM + "och i svagt text"
trycket + Fore.DEFAULT + Back.DEFAULT + Style.DEFAULT
print "tillbaka till det normala nu"
eller helt enkelt genom att manuellt skriva ut ANSI-sekvenser från din egen kod:
print "/ 033 [31m '+' några röd text"
print "/ 033 [30m" # och återställs till standardfärg
eller Colorama kan användas glatt i samband med befintliga ANSI bibliotek som Termcolor (http://pypi.python.org/pypi/termcolor):
# Använda Colorama att göra Termcolor arbetet med Windows också
från Colorama import init
i det ()
# Sedan använda Termcolor för alla färgade textproduktion
från termcolor import färgade
skriva ut färgade ("Hello, World!", "grön", "on_red)
Tillgängliga formateringskonstanter är:
Fore: svart, röd, grön, gul, blå, magenta, cyan, vit, DEFAULT.
Tillbaka: svart, röd, grön, gul, blå, magenta, cyan, vit, DEFAULT.
Stil: DIM, Normal, Ljus, RESET_ALL
Style.RESET_ALL återställer förgrund, bakgrund och ljusstyrka. Colorama kommer att utföra återställningen automatiskt program exit (Ej implementerat).
Återstart
Inte implementerad
Om du befinner dig upprepade gånger skicka återställnings sekvenser för att stänga av färgförändringar i slutet av varje utskrift, då init (Återstart = sant) kommer att automatisera att:
från Colorama import init
init (Återstart = sant)
print Fore.RED + "några röd text"
print "automatiskt tillbaka till standardfärgen igen"
Utan omslags stdout
Colorama fungerar genom att linda stdout och stderr med proxyobjekt, som åsidosätter write () för att utföra sitt arbete. Använda init (Återstart = sant) kommer att göra detta omslag på alla plattformar, inte bara Windows.
Om dessa proxyobjekt omslags stdout och stderr orsaka problem, då detta kan inaktiveras genom att använda init (wrap = False) (Ej genomfört), och du kan i stället komma åt Colorama s AnsiToWin32 proxy direkt. Alla attribut tillgång på det här objektet kommer att vidarebefordras till bäcken det wraps, bortsett från .write (), som i Windows är åsido att först utföra ANSI till Win32 konvertering på text:
från Colorama import init, AnsiToWin32
init (wrap = False)
ström = AnsiToWin32 (sys.stderr)
print >> ström, Fore.BLUE + "blå text på stderr"
utveckling
Tester kräver Michael Foord s Mock modul. Jag har använt nosetests att köra testerna även om de kan fungera utan den, med hjälp av:
python -m colorama.tests
Vad är nytt i den här versionen:.
- Inkom viss dokumentation för markören positionering och tydlig skärm att Readme. Lägg "reinit" och "deinit" funktioner, som föreslagits av Charles FOL och Romanov DA.
Vad är nytt i version 0.1.18:
- Fix README (ingen sådan attr som Fore.DEFAULT , etc), vänligen rapporterats av nodakai.
Vad är nytt i version 0.1.17:
- Förhindra utskrift av sopor ANSI koder vid installation med pip
Vad är nytt i version 0.1.16:
- Re-uppladdning för att åtgärda tidigare fel. Gör rent avlägsnar nu gamla MANIFEST.
Vad är nytt i version 0.1.15:
- Fix python3 inkompatibilitet vänligt rapporterats av Gunter Kolousek
Vad är nytt i version 0.1.14:
- Fix hårdkodad ställs till vit-on- svarta färger. Fore.RESET, Back.RESET och Style.RESET_ALL nu återgå till färgerna som de var när init () anropades. Några lärd förhoppningsvis lärt sig om att testa innan de släpps.
Vad är nytt i version 0.1.13:
- Föregående version var helt bruten (innehöll ingen källa) . Dubbel oops.
Vad är nytt i version 0.1.10:
- Sluta emulera "ljus" text med ljusa bakgrunder. Display "normal" text med win32 normal förgrunden i stället för ljus. Släpp stöd för "dim" text.
Vad är nytt i version 0.1.9:
- Fix oförenlighet med Python 2.5 och tidigare Ta bort inställningar. py beroende av setuptools, använder nu stdlib distutils
Krav :
- Python
Kommentarer hittades inte