colorama מספק API פשוט חוצות פלטפורמות להדפיס טקסט מסוף צבעוני מיישומי פייתון.
רצפי תווי בריחת ANSI משמשים בדרך כלל כדי לייצר טקסט מסוף צבעוני על מחשבי מקינטוש ויוניקס. Colorama מספק כמה קיצורי דרך כדי ליצור רצפים אלה, וגורם להם לעבוד על Windows מדי.
זה יש מאושר לוואי שיישומים או ספריות קיימים שכבר משתמשים ברצפי ANSI לייצר פלט צבעוני על לינוקס או מקינטוש (למשל. באמצעות חבילות כמו 'termcolor') יכול גם עכשיו עובד על Windows, פשוט על ידי יבוא ואתחול ה Colorama.
סטטוס
בפיתוח. תכונות מסוימות, כאמור להלן, אינן מיושמות עדיין.
שימוש
אתחול
את בקשות יש לאתחל באמצעות Colorama:
מinit יבוא colorama
init ()
אם אתה על Windows, הקריאה ל''init ()' 'יתחיל סינון רצפי בריחת ANSI מתוך כל טקסט שנשלח לstdout או stderr, ויחליף אותם עם Win32 שווה ערך שיחות.
קורא '' init () '' אין כל השפעה על פלטפורמות אחרות (אלא אם אתה משתמש "autoreset ', ראה להלן) הכוונה היא שכל היישומים צריכים להתקשר init () ללא תנאי, אז פלט הטקסט הצבעוני שלהם פשוט עובד על כל הפלטפורמות.
פלט צבעוני
הדפסה בפלטפורמות של טקסט צבעוני לאחר מכן ניתן לעשות:
מפורה colorama יבוא, חזרה, סגנון
הדפסת Fore.RED + "חלק מהטקסט אדום '
Back.GREEN הדפסה + ועם רקע ירוק '
הדפסת Style.DIM + 'ובטקסט עמום "
הדפסה + Fore.DEFAULT + Back.DEFAULT + Style.DEFAULT
הדפסה 'לקדמותו עכשיו "
או פשוט על ידי הדפסה ידנית רצפי ANSI מהקוד שלך:
+ "חלק מהטקסט אדום" הדפסה "/ 033 [31M '
הדפסה '/ 033 [30' # ואיפוס לברירת מחדל צבע
או יכול לשמש Colorama בשמחה בשיתוף עם ספריות ANSI קיימות כגון Termcolor (http://pypi.python.org/pypi/termcolor):
# להשתמש Colorama לעשות Termcolor עבודה על Windows מדי
מinit יבוא colorama
init ()
# לאחר מכן להשתמש Termcolor לכל פלט הטקסט הצבעוני
מtermcolor יבוא צבעוני
להדפיס בצבע ("שלום, העולם!", "ירוק", "on_red ')
קבועי עיצוב זמינים הם:
פורה: שחור, אדום, ירוק, צהוב, כחול, אדום, תכלת, לבן, ברירת מחדל.
חזרה: שחור, אדום, ירוק, צהוב, כחול, אדום, תכלת, לבן, ברירת מחדל.
סגנון: DIM, נורמלי, מואר, RESET_ALL
Style.RESET_ALL מאפס חזית, רקע ובהירות. Colorama יבצע איפוס זה באופן אוטומטי ביציאה תכנית (לא מיושם).
Autoreset
לא מיושם
אם אתה מוצא את עצמך שוב ושוב שולח את רצפי איפוס לכבות שינויי צבע בסוף כל הדפסה, ולאחר מכן init (autoreset = True) יהיה להפוך כי:
מinit יבוא colorama
init (autoreset = True)
הדפסת Fore.RED + "חלק מהטקסט אדום '
הדפסה 'באופן אוטומטי בחזרה לצבע ברירת מחדל שוב "
ללא עטיפת stdout
Colorama עובד על ידי עטיפת stdout וstderr עם אובייקטי פרוקסי, שכתיבה לעקוף () כדי לעשות את העבודה שלהם. באמצעות init (autoreset = True) יעשה עטיפה זו בכל הפלטפורמות, ולא רק של Windows.
אם חפצי פרוקסי אלה עוטפים stdout וstderr לגרום לך בעיות, אז זה יכול להיות נכה באמצעות init (לעטוף = False) (לא מיושמים), ובמקום זאת אתה יכול לגשת פרוקסי AnsiToWin32 של Colorama ישירות. כל גישת תכונה על אובייקט זה תועבר לזרם זה עוטף, מלבד .write (), אשר על Windows הוא שנדרס לראשון לבצע ANSI לWin32 המרה על טקסט:
מinit יבוא colorama, AnsiToWin32
init (לעטוף = False)
זרם = AnsiToWin32 (sys.stderr)
זרם הדפסה >>, "טקסט הכחול על stderr 'Fore.BLUE +
פיתוח
בדיקות דורשות מודול מוק של מייקל רומפורד. אני כבר משתמש nosetests לרוץ בדיקות למרות שהם עשויים לעבוד בלי זה, באמצעות:
colorama.tests -m פיתון <מודול>
מה חדש בהודעה זו:.
- נוסף כמה תיעוד למיקום סמן ומסך ברור לreadme. הוסף 'reinit' ופונקציות 'deinit', כפי שהוצע על ידי צ'ארלס תחשיב היחסים ורומנוב התובע.
מה חדש בגרסת 0.1.18:
- README תקן (אין כזה attr כFore.DEFAULT , וכו '), דיווח באדיבות על ידי nodakai.
מה חדש בגרסת 0.1.17:
- הדפסה למנוע קודי ANSI אשפה על התקנה עם PIP
מה חדש בגרסת 0.1.16:
- להעלות מחדש כדי לתקן את השגיאה קודמת. הפוך נקי עכשיו מסיר MANIFEST הישן.
מה חדש בגרסה 0.1.15:
- אי התאמת python3 תקן דיווח באדיבות על ידי גונטר Kolousek
מה חדש בגרסת 0.1.14:
- תקן איפוס בקידוד הקשיח ללבן-מאזניים צבעים שחורים. Fore.RESET, Back.RESET וStyle.RESET_ALL עכשיו לחזור לצבעים כפי שהם היו כאשר init () נקרא. שיעורים מסוימים בתקווה למדו על בדיקה לפני השחרור.
מה חדש בגרסה 0.1.13:
- הגרסה קודמת נשברה לחלוטין (לא הכיל מקור) . זוגי אופס.
מה חדש בגרסה 0.1.10:
- תפסיק טקסט חיקוי 'בהיר' עם רקע בהיר. טקסט התצוגה 'הרגיל' באמצעות חזית נורמלית Win32 במקום בהיר. זרוק תמיכה עבור טקסט "עמום".
מה חדש בגרסה 0.1.9:
- תקן תאימות עם פייתון 2.5 וגרסות קודמות הסרה התקנה. תלות, פירו על setuptools, משתמשת כעת distutils stdlib
דרישות :
- פייתון
תגובות לא נמצא