منصوبے کے بارے میں

Rich ایک Python لائبریری ہے جو ٹرمینل میں رچ ٹیکسٹ اور خوبصورت فارمیٹنگ کے لیے ہے۔ یہ ایک API فراہم کرتی ہے جو ٹرمینل آؤٹ پٹ میں رنگ اور اسٹائل شامل کرنے کو آسان بناتی ہے، اور پہلے سے ہی خوبصورت ٹیبلز، پروگریس بارز، مارک ڈاؤن، سائنٹیکس ہائی لائٹ شدہ سورس کوڈ، ٹریس بیکس وغیرہ رینڈر کر سکتی ہے۔ موزونیت: Rich Linux، macOS اور Windows پر کام کرتا ہے۔ نیا Windows Terminal true color اور ایموجی سپورٹ کرتا ہے؛ کلاسیکی ٹرمینل صرف 16 رنگ تک محدود ہے۔ اسے Python 3.8 یا اس سے نئی ورژن کی ضرورت ہے اور یہ Jupyter notebooks کے ساتھ اضافی کنفیگریشن کے بغیر بھی کام کرتا ہے۔ انسٹالیشن: pip کے ذریعے انسٹال کریں (`python -m pip install rich`) اور `python -m rich` کے ذریعے آؤٹ پٹ ٹیسٹ کریں۔ Rich print: `rich.print` import کریں تاکہ built-in `print` جیسی ہی signature والی ورژن حاصل ہو، جس میں `[bold magenta]World[/bold magenta]` جیسا markup اور ایموجی ناموں کی سپورٹ بھی ہے۔ Rich کو `pretty.install()` کے ذریعے Python REPL میں بھی انسٹال کیا جا سکتا ہے تاکہ ڈیٹا اسٹرکچرز خوبصورتی سے print اور highlight ہوں۔ Console API: `Console` آبجیکٹ میں `print` method موجود ہے جو built-in جیسا ہے، لیکن word-wrapping، اسٹائل keyword arguments اور BBCode جیسے console markup کے ساتھ۔ اس میں `log` method بھی ہے جو time اور location کالمز شامل کرتا ہے اور collections کو خوبصورتی سے print کر سکتا ہے، جس میں local variables دکھانے کے لیے `log_locals` آپشن موجود ہے۔ Python کے logging module کے لیے ایک built-in logging Handler بھی موجود ہے۔ Built-in renderables میں شامل ہیں: - Emoji: ایموجی کو کالونز کے درمیان نام سے شامل کریں، مثلاً `:smiley:`۔ - Tables: لچکدار Unicode ٹیبلز جن میں borders، اسٹائلز، cell alignment اور کالمز کو ٹرمینل کے مطابق resize کیا جا سکتا ہے۔ - Progress bars: `track` کے ذریعے یا percentage، فائل سائز، رفتار اور باقی وقت کے لیے custom column configurations کے ذریعے متعدد flicker-free پروگریس بارز۔ - Status: `status` context manager کے ذریعے spinner animation اور پیغام؛ دستیاب spinners کو `python -m rich.spinner` سے دیکھا جا سکتا ہے۔ - Tree: guide lines کے ساتھ hierarchical ڈیٹا رینڈرنگ، فائل اسٹرکچرز کے لیے موزوں؛ `python -m rich.tree` اس کی نمائش کرتا ہے۔ - Columns: برابر یا بہترین width والے منظم کالمز، directory listings کی طرح۔ - Markdown: `Markdown` کلاس کے ذریعے ٹرمینل میں Markdown فارمیٹنگ رینڈر کریں۔ - Syntax highlighting: Pygments پر مبنی `Syntax` آبجیکٹ کے ذریعے، themes اور line numbers کے ساتھ۔ - Tracebacks: خوبصورت اور آسان پڑھنے والے ٹریس بیکس جو معیاری Python ٹریس بیکس سے زیادہ کوڈ دکھاتے ہیں، اور default handler کے طور پر configure کیے جا سکتے ہیں۔ Rich renderables Console Protocol پر بنائے گئے ہیں، جس سے صارفین اپنے اپنا Rich content implement کر سکتے ہیں۔ README میں ذکر شدہ متعلقہ پروجیکٹس میں Rich CLI شامل ہے، جو syntax highlighting، Markdown رینڈرنگ اور CSV کو ٹیبلز میں دکھانے کے لیے ایک command-line ایپلیکیشن ہے، اور Textual، جو پیچیدہ ٹرمینل user interfaces بنانے کے لیے ایک sister project ہے۔