لیٹیکس میں کوڈ میکرو پیکیج کے منٹ کے استعمال کو اجاگر کرتا ہے

Code Latex Highlights Macro Package Minted Usage



بنیاد

پھنسے استعمال کرنے کے لئے ازگروں کے ماحول کو انسٹال کرنے کے ساتھ ساتھ پیگمنٹ ماڈیول کی بھی ضرورت ہوتی ہے ، کیونکہ ٹکسال 300 سے زیادہ زبانوں کے نحو کو اجاگر کرنے کے لئے ماڈیول پر انحصار کرتا ہے۔

لیٹیکس مرتب کرنے والے کو بھی شیل-فرار کا آپشن شامل کرنے کی ضرورت ہے کیونکہ اس کو پائیمنٹ پروگرام کو فون کرنے کی ضرورت ہے لہذا ٹیکسٹ کمپلر کو یہ آپشن بتائیں۔



بنیادی استعمال:

egin{minted}{} end{minted}

ایک مکمل مثال یہ ہے:



documentclass{article} usepackage{minted} egin{document} egin{minted}{c} int main() { printf('hello, world') return 0 } end{minted} end{document}

پھنسے ہوئے ماحول کے علاوہ ، آپ mint ماحول کو تبدیل کرنے کے لئے کمانڈ بھی استعمال کرسکتے ہیں ، جیسے کہ:



mint{python}|import this|

اس کے علاوہ ، اسے لائن میں بھی استعمال کیا جاسکتا ہے ، جیسے:

wordsmintinline{python}{print(x**2)}words

آپ کسی کوڈ کو فائل کے ذریعہ اجاگر کرنا چاہتے ہیں۔

inputminted[]{}{}.

مائنٹڈ پیکیج کوڈ کے فلوٹنگ ڈسپلے کیلئے لسٹنگ فلوٹنگ باڈی ماحول بھی فراہم کرتا ہے۔ جیسا کہ:



egin{listing}[H] mint{cl}/(car (cons 1 '(2)))/ caption{Example of a listing.} label{lst:example} end{listing}

بھی استعمال کیا جا سکتا listoflistings کوڈ کی فہرست والی ایک ڈائرکٹری تیار کریں۔

آپشن

پودوں والے اختیار کا استعمال کرسکتے ہیں key=value راستہ دیا گیا ، لیکن صرف دیا گیا۔ _ + _ | پھر طے شدہ آپشن کا استعمال کریں۔ آپ دستاویز میں ایک ہی زبان میں تمام کوڈ ڈسپلے کے لئے ایک جیسے اختیارات بھی مرتب کرسکتے ہیں۔
کمانڈ کے ساتھ ان لائن اور ان لائن کوڈ key setminted ترتیبات کے ساتھ۔

کچھ عام اختیارات یہ ہیں:

  • لنلنینوس آپشن آپ کو مختلف زبانوں میں نمایاں کوڈ کی لائنوں کی تعداد گننے کی سہولت دیتا ہے۔

  • آٹوگوبل آپشن معروف جگہ کو ختم کرسکتا ہے

  • بیس لینسٹریچ آپشن لائن اسپیسنگ کی اسکیل ویلیو طے کرتا ہے

  • بیومروورلیس آپشن اومرلے فنکشن کو بیمر میں نافذ کرنے کی اجازت دیتا ہے ، جیسے | _ _ + _ |

  • بریک اینڈ آپشن ان لائن کوڈ کے حروف کی وضاحت کرسکتا ہے جو لائن ٹوٹنے کے بعد لپیٹ سکتے ہیں۔
    کریکٹر سیٹ ایک تار ہے ، جیسے | _ _ _ _ |

setmintedinline
  • بریک گروپ گروپ آپشن پہلے سے ہی درست ہو جاتا ہے ، مطلب یہ ہے کہ جب بریک ڈور آپشن استعمال ہوتا ہے ، اگر لائن بریک کریکٹر میں ایک جیسا ہی ملحقہ کردار ہوتا ہے تو ، آخری حرف کے بعد لائن ٹوٹ جاتی ہے۔

  • بریک لیٹرسیمبولپری اور بریک فٹرسمبلپپوسٹ آپشنز حرف کی وضاحت کرنے کے لئے استعمال ہوتے ہیں جو وقفے سے پہلے اور بعد میں شامل کیے جاتے ہیں۔

  • جب آپ _ _ + _ | آپ کسی بھی کردار پر لکیریں توڑ سکتے ہیں تو انٹرنل کوڈ کے ماحول میں بریکنیئر آپشن استعمال ہوتا ہے۔

  • بریکنی ویرسائیمپولپری اور بریکنی ویزریسمبولپپوسٹ بریکافٹرسیمبولپری اور بریکافٹرسیمبلپپوسٹ آپشنز کی طرح ہیں۔

  • بریک آؤٹ انڈینٹ آپشن لائن لائن کے وقفے کے بعد خود کار طریقے سے انڈینٹیشن ترتیب دینے کے لئے استعمال ہوتا ہے۔

  • بریک فاف بریک فال کے برابر ہے۔

  • بریک فائرفگروپ بریک ٹیم گروپ سے ملتا جلتا ہے۔

  • بریک فائرفیسمبلپپری ، بریک فافیسیسمبلپسٹ بھی بریک فٹرسائمبلپری اور بریکافٹرسمبولپپوسٹ سے ملتا جلتا ہے۔

  • بریک بائٹ ٹوکن آپشن ٹوکن کے اندر لائن ٹوٹ جانے سے روکتا ہے۔

  • بریک بائٹ ٹوک نینی جگہ کہیں ٹوکن کے اندر لائن ٹوٹ جانے کو روکتا ہے ، لیکن لائنوں کو ٹوکن کے درمیان توڑنے کی اجازت دیتا ہے۔

  • بریکینٹینٹ آپشن لائن کے وقفے کے بعد لائن کی انڈنٹ فاصلہ طے کرنے کے لئے استعمال کیا جاتا ہے ، جیسے 1 ایم

  • بریکینٹینچرس آپشن انڈیشنٹیشن فاصلے کو ایک ہی حرف کی چوڑائی کے متعدد ، جیسے 2 بار طے کرتا ہے۔

  • بریک لائن آپشن کوڈ کو توڑنے کی اجازت دیتا ہے۔

  • بریکسمبول بریکسمبلفٹ کے برابر ہے ، جو لائن وقفے کے بعد لائن سے پہلے شامل کریکٹر کو سیٹ کرنے کے لئے استعمال ہوتا ہے۔

  • بریکسمبلائٹ کا استعمال کردار کو لائن بریک کے دائیں طرف سیٹ کرنے کے لئے کیا جاتا ہے۔

  • Breaksymbolindent بریکسیمبلینڈینٹ لیفٹ کے مترادف ہے ، جس سے بریکسی امبلفٹ کردار کے خاکہ فاصلہ طے ہوتا ہے

  • Breaksymbolindentnchars Breaksymbolindentleftnchars کے مترادف ہے ، جو بریکسیمبلفٹ کردار کے انڈیٹیشن فاصلے کو طے کرتا ہے ، جس میں کردار کی چوڑائی کے ایک سے زیادہ کے طور پر اظہار کیا گیا ہے۔

  • بریکسمبلینڈینٹائرینٹ دائیں جانب اضافی انٹینٹیشن فاصلہ ہے جو بریکسمبلائٹ کے لئے جگہ مہیا کرتا ہے۔

  • Breaksymbolindentrightnchars دائیں جانب اضافی انٹینٹیشن فاصلہ ہے جو بریکسمبلائٹ کے لئے جگہ مہیا کرتا ہے۔ کردار کی چوڑائی کے کئی میں اظہار

  • بریکسیبولسیپ بریکسیمبلسیفٹ کے برابر ہے ، بریکسی بولوفٹ کو ترتیب دیتا ہے اور متصل متن کی اسپیسنگ۔

  • Breaksymbolsepnchars Breaksymbolsepleftnchars کے برابر ہے ، جو Breaksymbolleft اور ملحقہ متن کی جگہ کا تعین کرتا ہے۔ کردار کی چوڑائی کے کئی میں اظہار

  • Breaksymbolsepright ، سیٹ کریں Breaksymbolright اور ملحقہ متن کی جگہ۔

  • Breaksymbolseprightnchars ، سیٹ بریکسمبلائٹ اور ملحقہ متن کی جگہ۔ کردار کی چوڑائی کے کئی میں اظہار

  • Bgcolor پس منظر کا رنگ متعین کرتا ہے۔ اگر آپ رنگ کی زیادہ جدید ترتیبات استعمال کرنا چاہتے ہیں تو ، آپ mdframed یا tcolorbox جیسے ماحول میں ٹکسال والے ماحول کو رکھ سکتے ہیں۔ اگر آپ tcolorbox استعمال کرتے ہیں تو ، آپ اسے ترتیب دے سکتے ہیں۔ only{...} پھر براہ راست tcblisting ماحول استعمال کریں ، جیسے:

breakafter=-/d
  • کوڈٹیگیفائٹ کو تبصروں یا ڈاکٹرنگس میں خصوصی ٹیگس کو اجاگر کرنے کے لئے استعمال کیا جاسکتا ہے ، جیسے ٹوڈو ، کیڑے ، نوٹ ، وغیرہ۔

  • Curlyquotes run `` اور egin{minted}[breaklines, breakafter=d]{python} some_string = 'SomeTextThatGoesOnAndOnForSoLongThatItCouldNeverFitOnOneLine' end{minted} چلائیں گے۔ حروف کوٹیشن نمبروں میں تبدیل کیا جاتا ہے۔

  • انکوڈنگ فائل کو انکوڈنگ کا سیٹ کرتی ہے جس کو پیگمنٹ تسلیم کرتا ہے۔

  • اسسکن سائیڈ کا استعمال فرار ہونے والے کردار کی جوڑی کو سیٹ کرنے کے لئے کیا جاتا ہے ، کردار جوڑی میں موجود کوڈ کو لیٹیکس کے ذریعہ عام طور پر تجزیہ کیا جائے گا۔ اس آپٹ کو آپ کے کوڈ میں لیٹیکس کمانڈ استعمال کرنے کی ضرورت ہے۔

جیسا کہ:

breaklines=true
  • پہلی لائن ڈسپلے کوڈ کی پہلی لائن طے کرتی ہے ، اور لائن سے پہلے کی تمام لائنوں کو نظرانداز کردیا جاتا ہے۔

  • فرسٹنمبر پہلی لائن کا لائن نمبر متعین کرتا ہے۔

  • Fontfamily الفاظ کا ایک وضاحتی کنبہ متعین کرتا ہے ، جیسے ٹی ٹی ، کورئیر وغیرہ۔

  • فونٹسیریز ایک وضاحتی ورڈ سسٹم متعین کرتی ہے۔

  • فونٹسائز ایک وضاحتی فونٹ سائز سیٹ کرتا ہے۔

  • فونٹ شیپ پیش وضاحتی گلیفس کا تعین کرتا ہے۔

  • فارمیٹ کام ٹرانسکرپٹ کوڈ سے قبل عمل میں آنے والی کمانڈ سے باہر نکلتا ہے ، جو ایک ہک ہے۔

  • فریم کوڈ کے چاروں طرف لائن سیٹ کرتا ہے۔ کوئی نہیں | بائیں لائن | ٹاپ لائن | نیچے لائن | لائنیں | سنگل

  • فریمریل سرحد کی چوڑائی طے کرتا ہے۔

  • فریمسیپ بارڈر اور مشمولات کے درمیان وقفہ کاری کا تعین کرتا ہے۔

  • گوببل ہر لائن کے شروع میں حذف کردہ حروف کی تعداد طے کرتا ہے۔

  • ہائی لائٹ کلر وہ رنگ متعین کرتا ہے جس کو نمایاں کرنے کی ضرورت ہوتی ہے۔

  • ہائی لائٹ لائنز لائن کا لائن نمبر متعین کرتی ہے جس کو نمایاں کرنے کی ضرورت ہوتی ہے ، ایک تار ہے ، جیسے | _ _ + _ |。

  • مطلوبہ الفاظ ، کم ، اوپری یا بڑے دارالحکومت کی ورڈ کی صورت متعین کرتے ہیں۔

  • لیبل کوڈ کے آس پاس کسی لیبل کے مندرجات پرنٹ کرتا ہے۔

  • لیبل پوزیشن لیبل کی پوزیشن مرتب کرتی ہے ، جیسے کوئی نہیں | ٹاپ لائن | نیچے لائن | سب

  • آخری لائن ڈسپلے کوڈ کی آخری لائن طے کرتی ہے۔ اس لائن کے بعد ظاہر نہیں ہوتا ہے۔

  • لیننز کی ترتیب یہ ظاہر کرتی ہے کہ آیا لائن نمبر ظاہر ہوا ہے۔ لائن نمبر کے انداز کو تبدیل کرنے کے ل you ، آپ کو | _ _ _ _ | میکرو کی وضاحت کی ضرورت ہے۔

جیسا کہ:

cbuselibrary{minted}
  • نمبرفیرسٹ لائن سیٹ کرتی ہے کہ آیا پہلی لائن ہمیشہ گنتی رہتی ہے ، اور سوتیلی نمبر کو نظرانداز کیا جاتا ہے۔

  • نمبرز لائن نمبر چھوڑنے کے لئے استعمال ہونے والی پوزیشن | دائیں | دونوں | کوئی نہیں

  • میتھیسکیپ کو سیٹ کرنے کے لئے استعمال کیا جاتا ہے کہ آیا فرار ہونے والے کردار کے جوڑے میں ریاضی کا طریقہ استعمال کیا جاسکتا ہے۔

  • نمبر بلاک لائنز سیٹ کرتی ہے کہ لائن وقفے کے بعد لائنوں کو نمبر بنانا ہے یا نہیں۔

  • نمبر نمبر لائن کا آغاز کریں اور لائن کے آغاز کی وقفہ کاری کریں۔

  • اوبیتبس سیٹ کرتی ہے کہ آیا ٹیبز صرف ٹیبز کے بطور استعمال ہوتے ہیں اور خالی جگہوں میں تبدیل نہیں ہوتے ہیں۔

  • آؤٹ کوڈنگ ، پمشن آؤٹ پٹ کے نمایاں متن کی فائل انکوڈنگ کو سیٹ کرتا ہے۔

  • ری سیٹمارجینز سیٹ کرتا ہے کہ آیا دوسرے ماحول میں بائیں مارجن کو دوبارہ ترتیب دینا ہے۔

  • رولیکلور سرحد کا رنگ متعین کرتا ہے

  • اسی صفحے پر تمام کوڈز کو ایک ہی صفحے پر متعین کرتا ہے ، یہاں تک کہ اگر یہ مناسب نہ ہو۔

  • چاہے شو اسپیسس جگہیں دکھائے۔

  • چاہے شو ٹیبز ٹیبز دکھائے۔

  • اسپیس خالی جگہوں کو ظاہر کرنے کے لئے استعمال ہونے والا کردار متعین کرتی ہے

  • اسپیس کلر اسپیس ڈسپلے کا رنگ متعین کرتا ہے

  • انداز پیگمنٹ کے لئے اسٹائل شیٹ کا تعین کرتا ہے۔

  • سٹیپنمبر لائن نمبر کا وقفہ نمبر دکھاتا ہے۔

  • اسٹیفنمبرفرسٹ پہلے سیٹ کرتا ہے کہ پہلی لائن سے وقفہ ڈسپلے لائن نمبر مرتب کرنا ہے۔ پہلے سے طے شدہ طور پر ، جب لائن نمبر n ظاہر ہوتا ہے ، جب موڈ (n ، stepsnumber) == 0 ، جب یہ آپشن استعمال ہوتا ہے ، تو یہ بن جاتا ہے:
    Mod (n-firstnumber، stepsnumber) == 0۔

  • اسٹیفنمبر آف سیٹ ویلیوز سیٹ کریں کہ جب وقفہ لائن نمبر ڈسپلے کو ترتیب دیتے وقت پہلی لائن کے لائن نمبر کو نظر انداز کرنا ہے ، یعنی ، ظاہر کرنے والی لائن کا پہلے لائن کے لائن نمبر سے کوئی تعلق نہیں ہے ، لیکن اس کی اصل تعداد سے متعلق ہے لائنز ، جب لائن نمبر کی ویلیو پھر بھی پہلے سیٹ ہوجاتی ہے تو لائن نمبر کے بعد ویلیو۔ لہذا ، معاملہ جہاں لائن نمبر ن کو ظاہر کیا جاتا ہے وہ جدید ہے (n-firstnumber + 1، stepsnumber) == 0

  • سٹرائپال سیٹ کرتا ہے کہ آیا تمام آدانوں میں شروع اور اختتامی جگہوں کو ختم کرنا ہے

  • سٹرپنل سیٹ کرتی ہے کہ آیا تمام ان پٹ (نیو لائن) میں نئے لائن حرفوں کو شروع اور ختم کرنا ہے۔

  • ٹیب ٹیب کے ڈسپلے کیریکٹر کو سیٹ کریں ، نوٹ کریں کہ یہ صرف تب ہی درست ہے جب showtabs = سچ ، آپ استعمال کرسکتے ہیں egin{tcblisting}{, minted language=, minted style=, minted options={} } end{tcblisting} _ ' اور دوسرے حروف۔

  • ٹیب کلور ٹیب کا ڈسپلے رنگ متعین کرتا ہے

  • ٹیبسائز کسی ٹیب میں خالی جگہوں کی تعداد طے کرتا ہے

  • ٹیکسکل سیٹنگ تبصروں میں لیٹیکس کوڈ کے استعمال کے قابل بناتی ہے۔ فہرستوں کے استعمال سے ملتا جلتا ہے۔ حوالہ کے ل a کسی تبصرے میں لیبل شامل کرنے کیلئے یہ استعمال مفید ہے۔ یقینا ، آپ براہ راست ایسپنسائڈ بھی استعمال کرسکتے ہیں۔

  • ٹیکس کام کا فنکشن ٹیکسکل کی طرح ہی ہے۔

  • xleftmargin کوڈ بلاک کے بائیں جانب انڈینٹیشن میں اضافہ

  • زیراسٹ مارگین کوڈ بلاک کے دائیں جانب انڈینٹیشن میں اضافہ

ایک نیا ماحول کی وضاحت کریں

بعض اوقات ہم صرف ایک ٹھوس ماحول استعمال کرنے کے بجائے مختلف کوڈ کو ظاہر کرنے کے لئے ایک دستاویز میں متعدد مختلف نامزد ماحول استعمال کرنا چاہتے ہیں۔ لسٹنگ پیکیج کی طرح egin{minted}[escapeinside=||]{py} def f(x): y = x|colorbox{green}{**}|2 return y end{minted} ، ٹکسال کردہ پیکیج فراہم کرتا ہے highlightlines={1, 3-4} نئے ماحول کی وضاحت کے لئے کمانڈز استعمال کیے جاتے ہیں ، جیسے:

heFancyVerbLine

مندرجہ بالا کوڈ سی پی پی کوڈ کی نمائش کے لئے سی پی پی کوڈ ماحول کی وضاحت کرتا ہے۔ اگر آپ وہ اختیار استعمال کرنا چاہتے ہیں جو سی پی کوڈ ماحول میں تعریف میں متعین نہیں تھا تو ، آپ کو * علامت استعمال کرنے کی ضرورت ہے ، مثال کے طور پر:

enewcommand{ heFancyVerbLine}{sffamily extcolor[rgb]{0.5,0.5,1.0}{scriptsize oldstylenums{arabic{FancyVerbLine}}}} egin{minted}[linenos, firstnumber=11]{python} def all(iterable): for i in iterable: if not i: return False return True end{minted}

اسی طرح کے | FancyVerbTab ightarrowfilllstnewenvironment کلاس کمانڈز ، بھی پاس ہوسکتے ہیں
ewminted ewminted{cpp}{gobble=2,linenos} egin{cppcode} template T id(T value) { return value } end{cppcode} egin{cppcode*}{linenos=false, frame=single} int const answer = 42 end{cppcode*} کمانڈ مختلف زبان کے لئے کمانڈ کی وضاحت کرتی ہے۔

خلاصہ

مندرجہ بالا بنیادی طور پر ٹکسال پیکیج کی دستاویزات کے لئے ہے ، اور استعمال متعارف کرایا گیا ہے ، اس میں کوئی خاص اطلاق نہیں ہے۔ اگلا مضمون کوڈ ڈسپلے کے لئے ایک اچھی درخواست متعارف کرائے گا۔

مرتب کرنے کے بارے میں

ٹکسال شدہ پیکیج کی دستاویزات پر توجہ دینے کی ضرورت ہے ، آپ کو mint آپشن استعمال کرنے کی ضرورت ہے۔ ایک ہی وقت میں ، مرتب وقت پر ، کیونکہ پگمشن پروگرام کو بلانے کی ضرورت ہے ، اس لئے ازگر کی تنصیب کے ماحول کے لئے کچھ ضروریات ہیں۔ اگر سرکاری ازگر انبار لگا ہوا ہے ، تو عام طور پر پروگرام کی تلاش کا راستہ کوئی مسئلہ نہیں ہے۔ تاہم ، اگر آپ ایناکونڈا سافٹ ویئر کا ایک سیٹ استعمال کرتے ہیں اور سسٹم کے راستے پر ایناکونڈا کا راستہ متعین نہیں کرتے ہیں تو پھر پائیمنٹ پروگرام میں دشواری پیش آسکتی ہے۔ لہذا ، آپ کو انکونڈا کے ذریعہ فراہم کردہ کمانڈ لائن میں مرتب کرنے کی ضرورت ہے۔ جیسا کہ:

mintinline

ٹیب کے بارے میں

جب آپ کو آگاہ کرنے کی ضرورت ہو تو ، مختلف ایڈیٹرز کے مابین متن کی نقل کے دوران ٹیب تبدیل ہوسکتے ہیں۔ مثال کے طور پر ، نوٹ پیڈ ++ دستاویز سے کوڈ کو ونڈ میں کاپی کرنے سے ٹیب تبدیل ہوجائے گا۔ اگر اس مسئلے کو حل کرنے کا کوئی طریقہ نہیں ہے تو ، پھر آپ کسی جگہ میں تبدیل کردہ ٹیب کے بارے میں سوچ سکتے ہیں اور پھر کاپی کرسکتے ہیں۔