এটি হল perltidyp কমান্ড যা আমাদের একাধিক বিনামূল্যের অনলাইন ওয়ার্কস্টেশন যেমন উবুন্টু অনলাইন, ফেডোরা অনলাইন, উইন্ডোজ অনলাইন এমুলেটর বা MAC OS অনলাইন এমুলেটর ব্যবহার করে OnWorks ফ্রি হোস্টিং প্রদানকারীতে চালানো যেতে পারে।
কার্যক্রম:
NAME এর
perltidy - একটি পার্ল স্ক্রিপ্ট ইন্ডেন্টার এবং রিফরম্যাটার
সাইনোপিসিস
perltidy [ বিকল্প ] file1 file2 file3 ...
(আউটপুট file1.tdy, file2.tdy, file3.tdy, ... এ যায়)
perltidy [ বিকল্প ] file1 -o outfile
perltidy [ বিকল্প ] file1 -st >outfile
পার্লটিডি [ বিকল্প ] আউটফাইল
বর্ণনাঃ
পার্লটিডি একটি পার্ল স্ক্রিপ্ট পড়ে এবং একটি ইন্ডেন্টেড, রিফরম্যাট করা স্ক্রিপ্ট লেখে।
অনেক ব্যবহারকারী শুরু করার জন্য "EXAMPLES"-এ যথেষ্ট তথ্য পাবেন৷ নতুন ব্যবহারকারী হতে পারে
সংক্ষিপ্ত টিউটোরিয়াল থেকে উপকৃত যা এখানে পাওয়া যাবে
http://perltidy.sourceforge.net/tutorial.html
শৈলী পরামিতিগুলির একটি সেট পদ্ধতিগতভাবে সংজ্ঞায়িত করার জন্য একটি সুবিধাজনক সহায়তা এখানে পাওয়া যেতে পারে
http://perltidy.sourceforge.net/stylekey.html
পার্লটিডি একটির অস্তিত্বের উপর নির্ভর করে দুটি মোডের যে কোনো একটিতে আউটপুট তৈরি করতে পারে -html
পতাকা এই পতাকা ছাড়া, আউটপুট একটি ফরম্যাটার মাধ্যমে পাস করা হয়. ডিফল্ট
ফরম্যাটিং সুপারিশ অনুসরণ করার চেষ্টা করে পার্লস্টাইল(1), তবে এটি নিয়ন্ত্রণ করা যেতে পারে
অনেক ইনপুট পরামিতি সহ বিশদভাবে, যা "ফরম্যাটিং বিকল্প" এ বর্ণনা করা হয়েছে।
যখন -html পতাকা দেওয়া হয়, আউটপুট একটি এইচটিএমএল ফরম্যাটারের মাধ্যমে পাস করা হয় যা
"HTML বিকল্প" এ বর্ণিত।
উদাহরণ
perltidy somefile.pl
এটি একটি ফাইল তৈরি করবে somefile.pl.tdy ব্যবহার করে পুনরায় ফরম্যাট করা স্ক্রিপ্ট ধারণকারী
ডিফল্ট বিকল্প, যা প্রস্তাবিত শৈলীর আনুমানিক পার্লস্টাইল(1)। উৎস ফাইল
somefile.pl অপরিবর্তিত
perltidy *.pl
সব উপর perltidy চালান .pl ডিফল্ট বিকল্পগুলির সাথে বর্তমান ডিরেক্টরির ফাইলগুলি। দ্য
আউটপুট একটি সংযোজিত ফাইলে থাকবে .tdy এক্সটেনশন একটি ত্রুটি সহ যেকোনো ফাইলের জন্য,
এক্সটেনশন সহ একটি ফাইল থাকবে .ERR.
perltidy -b file1.pl file2.pl
পরিবর্তন করুন file1.pl এবং file2.pl জায়গায়, এবং মূল ব্যাকআপ file1.pl.bak এবং
file2.pl.bak। যদি file1.pl.bak এবং / অথবা file2.pl.bak আগে থেকেই আছে, তারা থাকবে
ওভাররাইট
perltidy -b -bext='/' file1.pl file2.pl
ব্যাকআপ ফাইল ছাড়া আগের উদাহরণ হিসাবে একই file1.pl.bak এবং file2.pl.bak
কোন ত্রুটি না থাকলে মুছে ফেলা হবে।
perltidy -gnu somefile.pl
ফাইলে perltidy চালান somefile.pl একটি শৈলী সহ যা GNU কোডিংকে আনুমানিক করে
সি প্রোগ্রামের জন্য মানদণ্ড। আউটপুট হবে somefile.pl.tdy.
perltidy -i=3 somefile.pl
ফাইলে perltidy চালান somefile.pl, প্রতিটি স্তরের ইন্ডেন্টেশনের জন্য 3টি কলাম সহ (-i=3)
ডিফল্ট 4 কলামের পরিবর্তে। রিফরম্যাট করা স্ক্রিপ্টে কোনো ট্যাব থাকবে না,
মন্তব্য, পড নথি, উদ্ধৃতি, এবং এখানে নথিতে ইতিমধ্যে বিদ্যমান যে কোনোটি ছাড়া।
আউটপুট হবে somefile.pl.tdy.
perltidy -i=3 -et=8 somefile.pl
পূর্ববর্তী উদাহরণের মতই, সেই অগ্রণী হোয়াইটস্পেস ব্যতীত একটি ট্যাবের সাথে এনটাব করা হবে
8টি স্পেস প্রতি অক্ষর।
perltidy -ce -l=72 somefile.pl
ফাইলে perltidy চালান somefile.pl "cuddled elses" ব্যবহার ব্যতীত সমস্ত ডিফল্ট সহ (-এই)
এবং সর্বাধিক লাইন দৈর্ঘ্য 72 কলাম (-l=72ডিফল্ট 80টি কলামের পরিবর্তে।
perltidy -g somefile.pl
ফাইলে perltidy চালান somefile.pl এবং একটি লগ ফাইল সংরক্ষণ করুন somefile.pl.LOG যা দেখায়
প্রতিটি লাইনের শুরুতে বন্ধনী, বন্ধনী এবং বর্গাকার বন্ধনীর নেস্টিং।
perltidy -html somefile.pl
এটি একটি ফাইল তৈরি করবে somefile.pl.html html মার্কআপ সহ স্ক্রিপ্ট রয়েছে। দ্য
আউটপুট ফাইলে একটি এমবেডেড স্টাইল শীট থাকবে বিভাগ যা সম্পাদনা করা যেতে পারে
চেহারা পরিবর্তন করতে।
perltidy -html -css=mystyle.css somefile.pl
এটি একটি ফাইল তৈরি করবে somefile.pl.html html মার্কআপ সহ স্ক্রিপ্ট রয়েছে। এই
আউটপুট ফাইলে একটি পৃথক স্টাইল শীট ফাইলের একটি লিঙ্ক থাকবে mystyle.css. ফাইল হলে
mystyle.css বিদ্যমান নেই, এটি তৈরি করা হবে। এটি বিদ্যমান থাকলে, এটি ওভাররাইট করা হবে না।
perltidy -html -pre somefile.pl
শুধুমাত্র PRE বিভাগ সহ একটি html স্নিপেট লিখুন somefile.pl.html. এই যখন দরকারী
একটি বৃহত্তর ওয়েব পৃষ্ঠায় অন্তর্ভুক্তির জন্য কোড স্নিপেটগুলি ফরম্যাট করা হচ্ছে৷ কোন স্টাইল শীট হবে না
এই ক্ষেত্রে লিখিত হবে।
perltidy -html -ss >mystyle.css
একটি স্টাইল শীট লিখুন mystyle.css এবং প্রস্থান করুন।
perltidy -html -frm mymodule.pm
বিষয়বস্তুর টেবিল এবং সোর্স কোড ধারণ করে একটি ফ্রেম সহ html লিখুন। আউটপুট ফাইল
হবে mymodule.pm.html (এমনকি আপনি যদি), mymodule.pm.toc.html (বিষয়বস্তুর সারণী), এবং
mymodule.pm.src.html (সোর্স কোড)।
বিকল্প - এক নজরে
সম্পূর্ণ কমান্ড লাইন বিকল্পের জন্য স্ক্যান করা হয়, এবং সেগুলি কোনো ফাইলের আগে প্রক্রিয়া করা হয়
প্রক্রিয়া করা হয়। ফলে পতাকা আগে হোক বা পরে হোক তাতে কিছু যায় আসে না
ফাইলের নাম যাইহোক, পরামিতিগুলির আপেক্ষিক ক্রম গুরুত্বপূর্ণ, পরবর্তী পরামিতিগুলির সাথে
আগের পরামিতিগুলির মানগুলিকে ওভাররাইড করা।
প্রতিটি প্যারামিটারের জন্য, একটি দীর্ঘ নাম এবং একটি ছোট নাম রয়েছে। সংক্ষিপ্ত নামগুলি সুবিধাজনক
কীবোর্ড ইনপুটের জন্য, যখন দীর্ঘ নামগুলি স্ব-নথিভুক্ত এবং কাজেই কাজে লাগে৷
স্ক্রিপ্ট দীর্ঘ নামের জন্য দুটি অগ্রণী ড্যাশ ব্যবহার করার প্রথাগত, তবে একটি ব্যবহার করা যেতে পারে।
বেশিরভাগ প্যারামিটার যা অন/অফ পতাকা হিসাবে কাজ করে একটি অগ্রণী "n" দিয়ে বাতিল করা যেতে পারে (এর জন্য
সংক্ষিপ্ত নাম) বা একটি অগ্রণী "না" বা "না-" (দীর্ঘ নামের জন্য)। উদাহরণস্বরূপ, পতাকা থেকে
outdent দীর্ঘ উদ্ধৃতি হয় -olq or --outdent-দীর্ঘ-উদ্ধৃতি. পতাকা এই এড়িয়ে যান -নোলক or
--nooutdent-দীর্ঘ-উদ্ধৃতি or --নো-আউটডেন্ট-লং-কোট.
বিকল্পগুলি একসাথে বান্ডিল করা যাবে না। অন্য কথায়, বিকল্প -q এবং -g প্রবেশ করা যাবে না
as -কিউজি.
অপশনের নামগুলি যতক্ষণ না স্বতন্ত্রভাবে চিহ্নিত করা হয় ততক্ষণ তাড়াতাড়ি শেষ করা যেতে পারে। জন্য
উদাহরণ, পরিবর্তে --ডাম্প-টোকেন-প্রকার, এটা প্রবেশ করা যথেষ্ট হবে --ডাম্প-টোক, বা
এমন কি --ডাম্প-টি, স্বতন্ত্রভাবে এই কমান্ড সনাক্ত করতে.
ইনপুট / আউটপুট নিয়ন্ত্রণ
নিম্নলিখিত পরামিতিগুলি পঠিত এবং লেখা ফাইলগুলির সাথে সম্পর্কিত।
-h, --help
ব্যবহার এবং প্রস্থানের সারাংশ দেখান।
-o= ফাইলের নাম, --আউটফাইল= ফাইলের নাম
আউটপুট ফাইলের নাম (শুধুমাত্র যদি একটি একক ইনপুট ফাইল প্রক্রিয়া করা হয়)। যদি না
আউটপুট ফাইল নির্দিষ্ট করা হয়েছে, এবং আউটপুট স্ট্যান্ডার্ড আউটপুটে পুনঃনির্দেশিত হয় না (দেখুন
-স্ট), আউটপুট যাবে filename.tdy. [দ্রষ্টব্য: - স্ট্যান্ডার্ডে পুনঃনির্দেশিত করে না
আউটপুট ব্যবহার করুন -স্ট পরিবর্তে.]
-স্ট, --স্ট্যান্ডার্ড-আউটপুট
Perltidy একটি একক মধ্যে একটি ইচ্ছামত বড় সংখ্যক ফাইল কাজ করতে সক্ষম হতে হবে
রান করুন, প্রতিটি আউটপুট একটি ভিন্ন আউটপুট ফাইলে নির্দেশিত হচ্ছে। স্পষ্টতই এই হবে
একক স্ট্যান্ডার্ড আউটপুট ডিভাইসে আউটপুট করার সাথে বিরোধ, তাই একটি বিশেষ পতাকা, -স্ট,
স্ট্যান্ডার্ড আউটপুটে আউটপুট করার অনুরোধ করতে হবে। উদাহরণ স্বরূপ,
perltidy somefile.pl -st >somefile.new.pl
শুধুমাত্র একটি ইনপুট ফাইল থাকলেই এই বিকল্পটি ব্যবহার করা যেতে পারে। ডিফল্ট হয়
-nst or --অমানক-আউটপুট.
-se, --মানক-ত্রুটি-আউটপুট
ফাইল প্রক্রিয়াকরণের সময় যদি perltidy একটি ত্রুটি সনাক্ত করে somefile.pl, এর ডিফল্ট আচরণ
ফাইলে ত্রুটি বার্তা লিখতে somefile.pl.ERR। ব্যবহার -se সমস্ত ত্রুটি বার্তা সৃষ্টি করতে
পরিবর্তে স্ট্যান্ডার্ড ত্রুটি আউটপুট স্ট্রিমে পাঠানো হবে। এই নির্দেশ প্রত্যাখ্যান করা যেতে পারে
সঙ্গে -এনসে. এইভাবে, আপনি স্থাপন করতে পারেন -se একটি .perltidyrc এবং যখন ইচ্ছা তখন এটি ওভাররাইড করুন
-এনসে কমান্ড লাইনে।
-oext= ext, --আউটপুট-ফাইল-এক্সটেনশন= ext
আউটপুট ফাইলের এক্সটেনশন পরিবর্তন করুন EXT ডিফল্টের পরিবর্তে tdy (অথবা এইচটিএমএল
যদি --html বিকল্প ব্যবহার করা হয়)। "ফাইল এক্সটেনশন নির্দিষ্ট করা" দেখুন।
-ওপ্যাথ=পথ, --আউটপুট-পথ=পথ
যখন perltidy একটি আউটপুট ফাইলের জন্য একটি ফাইলের নাম তৈরি করে, ডিফল্টরূপে এটি শুধুমাত্র একটি যুক্ত করে
ইনপুট ফাইলের পাথ এবং বেসনেমের এক্সটেনশন। এই পরামিতি পথ কারণ
পরিবর্তিত হতে পথ পরিবর্তে.
পাথটি একটি বৈধ পথ বিভাজক অক্ষরে শেষ হওয়া উচিত, তবে perltidy যোগ করার চেষ্টা করবে
একটি যদি এটি অনুপস্থিত হয়।
উদাহরণ স্বরূপ
perltidy somefile.pl -opath=/ Tmp / '
উত্পাদন করবে /tmp/somefile.pl.tdy। অন্যথায়, somefile.pl.tdy যাই হোক না কেন প্রদর্শিত হবে
ডিরেক্টরি ধারণ করে somefile.pl.
যদি পাথে স্পেস থাকে তবে এটি উদ্ধৃতিতে স্থাপন করা উচিত।
এই প্যারামিটার উপেক্ষা করা হবে যদি আউটপুট স্ট্যান্ডার্ড আউটপুটে নির্দেশিত হয়, বা যদি
এর সাথে স্পষ্টভাবে উল্লেখ করা হচ্ছে -o=s প্যারামিটার।
-b, --ব্যাকআপ-এবং-মডিফাই-ইন-জায়গায়
ইনপুট ফাইল বা ফাইলের জায়গায় পরিবর্তন করুন এবং এক্সটেনশনের সাথে আসলটি সংরক্ষণ করুন .bak.
কোন বিদ্যমান .bak ফাইল মুছে ফেলা হবে। ডিফল্ট ব্যাকআপ পরিবর্তনের জন্য পরবর্তী আইটেম দেখুন
এক্সটেনশন, এবং সম্পূর্ণভাবে ব্যাকআপ ফাইল মুছে ফেলার জন্য।
A -b ইনপুট যদি স্ট্যান্ডার্ড ইনপুট থেকে হয় বা স্ট্যান্ডার্ড আউটপুটে যায় তবে পতাকা উপেক্ষা করা হবে,
বা যদি -html পতাকা সেট করা হয়।
বিশেষ করে, আপনি উভয় ব্যবহার করতে চান -b পতাকা এবং -পিবিপি
(--perl-best-practices) পতাকা, তারপর আপনি একটি লাগাতে হবে -nst পতাকা পরে -পিবিপি পতাকা
কারণ এটি একটি ধারণ করে -স্ট পতাকা তার উপাদানগুলির মধ্যে একটি হিসাবে, যার মানে আউটপুট হবে
স্ট্যান্ডার্ড আউটপুট স্ট্রীমে যান।
-পরে= ext, --ব্যাকআপ-ফাইল-এক্সটেনশন= ext
এই পরামিতি দুটি উদ্দেশ্য পরিবেশন করে: (1) ব্যাকআপ ফাইলের এক্সটেনশন পরিবর্তন করতে
ডিফল্ট ছাড়া অন্য কিছু হতে .bak, এবং (2) নির্দেশ করতে যে কোন ব্যাকআপ ফাইল নেই
সংরক্ষণ করা উচিত।
ব্যতীত অন্য কিছুতে ডিফল্ট এক্সটেনশন পরিবর্তন করতে .bak দেখুন "নির্দিষ্ট ফাইল
এক্সটেনশন"।
উত্সের একটি ব্যাকআপ ফাইল সর্বদা লেখা হয়, তবে আপনি এটি মুছে ফেলার অনুরোধ করতে পারেন
প্রক্রিয়াকরণের শেষে যদি কোন ত্রুটি না থাকে। উত্স না হলে এটি ঝুঁকিপূর্ণ
কোড একটি সোর্স কোড নিয়ন্ত্রণ সিস্টেমের সাথে রক্ষণাবেক্ষণ করা হচ্ছে।
ব্যাকআপ মুছে ফেলা উচিত তা নির্দেশ করার জন্য একটি ফরোয়ার্ড স্ল্যাশ অন্তর্ভুক্ত করুন, /, মধ্যে
এক্সটেনশন স্ল্যাশ মুছে ফেলার পরেও যদি কোনো টেক্সট থেকে যায় তাহলে তা সংজ্ঞায়িত করতে ব্যবহার করা হবে
ব্যাকআপ ফাইল এক্সটেনশন (যা সবসময় তৈরি করা হয় এবং শুধুমাত্র মুছে ফেলা হয় যদি না থাকে
ত্রুটি)।
এখানে কিছু উদাহরন:
প্যারামিটার এক্সটেনশন ব্যাকআপ ফাইল ট্রিটমেন্ট
<-bext=bak> F<.bak> রাখুন (ডিফল্ট আচরণের মতো)
<-bext='/'> F<.bak> কোনো ত্রুটি না থাকলে মুছুন
<-bext='/backup'> F<.backup> কোনো ত্রুটি না থাকলে মুছুন
<-bext='original/'> F<.original> কোনো ত্রুটি না থাকলে মুছুন
-w, --সতর্কতা-আউটপুট
বিন্যাস -w কোনো অ-সমালোচনামূলক সতর্কতা বার্তাকে ত্রুটি হিসাবে রিপোর্ট করার কারণ করে। এইগুলো
সম্ভাব্য পড সমস্যা সম্পর্কে বার্তা অন্তর্ভুক্ত করুন, সম্ভবত খারাপ শুরুর ইন্ডেন্টেশন স্তর,
এবং পরোক্ষ বস্তুর ব্যবহার সম্পর্কে সতর্কতা। ডিফল্ট, -nw or --nowarning-আউটপুট, হয়
এই সতর্কতা অন্তর্ভুক্ত না.
-q, -- শান্ত
ত্রুটি বার্তা এবং সিনট্যাক্স পরীক্ষা নিষ্ক্রিয় করুন (একটি সম্পাদকের অধীনে চলার জন্য)।
উদাহরণস্বরূপ, আপনি যদি একটি vi-স্টাইল সম্পাদক ব্যবহার করেন, যেমন vim, আপনি পারলটিডিকে একটি হিসাবে কার্যকর করতে পারেন
এরকম কিছু ব্যবহার করে সম্পাদকের মধ্যে থেকে ফিল্টার করুন
:n1,n2!perltidy -q
যেখানে "n1,n2" নির্বাচিত পাঠ্যকে উপস্থাপন করে। ছাড়া -q পতাকা, কোনো ত্রুটি বার্তা
আপনার স্ক্রীন এলোমেলো করতে পারে, তাই আপনার "আনডু" কী ব্যবহার করার জন্য প্রস্তুত থাকুন।
-লগ, --লগ ফাইল
রক্ষা কর .LOG ফাইল, যা অনেক দরকারী ডায়গনিস্টিক আছে. Perltidy সবসময় একটি তৈরি করে .LOG
ফাইল, কিন্তু ডিফল্টরূপে এটি মুছে ফেলা হয় যদি না একটি প্রোগ্রাম বাগ সন্দেহ হয়। সেট করা
-লগ পতাকা লগ ফাইলটিকে সংরক্ষণ করতে বাধ্য করে।
-g=n, --logfile-gap=n
লগফাইলে ইনপুট কোড লাইনের মধ্যে সর্বোচ্চ ব্যবধান সেট করুন। এই উদ্দেশ্য এই
ফ্ল্যাগটি নেস্টিং ত্রুটিগুলি ডিবাগ করতে সহায়তা করে। "n" এর মান ঐচ্ছিক। আপনি যদি
পতাকা সেট করুন -g "n" এর মান ব্যতীত, এটি 1 হিসাবে নেওয়া হবে, যার অর্থ প্রতিটি
লাইনটি লগ ফাইলে লেখা হবে। আপনি একটি খুঁজছেন যদি এটি সহায়ক হতে পারে
বন্ধনী, বন্ধনী, বা বন্ধনী নেস্টিং ত্রুটি।
বিন্যাস -g এছাড়াও লগফাইল সংরক্ষিত হওয়ার কারণ হয়, তাই এটি অন্তর্ভুক্ত করার প্রয়োজন নেই
-লগ.
কোন যদি -g পতাকা দেওয়া হয়েছে, 50 এর একটি মান ব্যবহার করা হবে, যার অর্থ অন্তত প্রতি 50 তম
লাইনটি লগফাইলে রেকর্ড করা হবে। এটি অত্যধিক দীর্ঘ লগ ফাইল প্রতিরোধ করতে সাহায্য করে.
"n" এর একটি নেতিবাচক মান সেট করা সেট না করার মতই -g সব সময়ে
-এনপ্রো --নোপ্রোফাইল
কোন উপেক্ষা করুন .perltidyrc কমান্ড ফাইল। সাধারণত, perltidy আপনার বর্তমান প্রথম দেখায়
একটি জন্য ডিরেক্টরি .perltidyrc পরামিতি ফাইল। (বিন্যাসটি নীচে বর্ণনা করা হয়েছে)। যদি
এটি একটি খুঁজে পায়, এটি সেই বিকল্পগুলিকে প্রাথমিক ডিফল্ট মানগুলিতে প্রয়োগ করে এবং তারপরে এটি
কমান্ড লাইনে সংজ্ঞায়িত যেকোনও প্রযোজ্য। যদি না .perltidyrc ফাইল হয়
পাওয়া গেছে, এটি আপনার হোম ডিরেক্টরিতে একটি সন্ধান করে।
আপনি যদি সেট -এনপ্রো flag, perltidy এই ফাইলের জন্য সন্ধান করবে না.
-প্রো = ফাইলের নাম or --প্রোফাইল=ফাইলের নাম
.perltidyrc ফাইল পরীক্ষা এবং স্যুইচিং সহজ করতে, এই কমান্ডটি ব্যবহার করা যেতে পারে
একটি কনফিগারেশন ফাইল নির্দিষ্ট করুন যা .perltidyrc-এর ডিফল্ট নাম ওভাররাইড করবে।
'=' চিহ্নের উভয় পাশে একটি স্থান থাকা উচিত নয়। উদাহরণস্বরূপ, লাইন
perltidy -pro=testcfg
ফাইলের কারণ হবে testcfg ডিফল্টের পরিবর্তে ব্যবহার করা .perltidyrc.
একটি পথের নাম তিনটি বিন্দু দিয়ে শুরু হয়, যেমন ".../.perltidyrc", নির্দেশ করে যে ফাইলটি
বর্তমান ডিরেক্টরিতে শুরু করে উপরের দিকে কাজ করার জন্য অনুসন্ধান করা উচিত। এই
প্রতিটিতে তাদের নিজস্ব .perltidyrc সহ একাধিক প্রকল্প থাকা সহজ করে তোলে
রুট ডিরেক্টরি
-ও, --শো-বিকল্প
ব্যবহার করা সমস্ত বিকল্পের একটি তালিকা লিখুন .LOG ফাইল দয়া করে দেখুন --ডাম্প-বিকল্প একটি জন্য
এটি করার সহজ উপায়।
-f, --ফোর্স-রিড-বাইনারী
বাইনারি ফাইল প্রক্রিয়া করার জন্য perltidy বল করুন. অত্যধিক ত্রুটি বার্তা উত্পাদন এড়াতে,
perltidy অ-টেক্সট হিসাবে সিস্টেম দ্বারা চিহ্নিত ফাইলগুলি এড়িয়ে যায়। যাইহোক, বৈধ পার্ল
বাইনারি ডেটা ধারণকারী স্ক্রিপ্ট কখনও কখনও নন-টেক্সট হিসাবে চিহ্নিত করা যেতে পারে, এবং এই পতাকা
পারলটিডিকে তাদের প্রক্রিয়া করতে বাধ্য করে।
ফরম্যাটিং বিকল্প
মৌলিক অপশন সমূহ
--নোটিয়া
এই পতাকাটি সমস্ত বিন্যাস অক্ষম করে এবং ইনপুটটিকে অপরিবর্তিতভাবে অনুলিপি করার কারণ করে৷
লাইন এন্ডিং ক্যারেক্টার এবং যে কোন প্রাক- এবং পরবর্তী-তে সম্ভাব্য পরিবর্তন ছাড়া আউটপুট
ফিল্টার এটি একটি শ্রেণিবদ্ধ সেটের সাথে একত্রে কার্যকর হতে পারে .perltidyrc
অবাঞ্ছিত কোড পরিপাটি এড়াতে ফাইল. এছাড়াও দেখুন "কোডের নির্বাচিত বিভাগগুলি এড়িয়ে যাওয়া"
কোডের নির্দিষ্ট বিভাগগুলি পরিপাটি করা এড়াতে একটি উপায়ের জন্য।
-i=n, --ইন্ডেন্ট-কলাম=n
ইন্ডেন্টেশন লেভেল প্রতি n কলাম ব্যবহার করুন (ডিফল্ট n=4)।
-l=n, --সর্বোচ্চ-রেখা-দৈর্ঘ্য=n
ডিফল্ট সর্বোচ্চ লাইন দৈর্ঘ্য হল n=80 অক্ষর। Perltidy লাইন খুঁজে বের করার চেষ্টা করবে
এই দৈর্ঘ্যের নিচে লাইন রাখতে বিরতি পয়েন্ট। যাইহোক, দীর্ঘ উদ্ধৃতি এবং পার্শ্ব মন্তব্য
লাইন এই দৈর্ঘ্য অতিক্রম করতে পারে. বিন্যাস -l=0 সেটিংয়ের সমতুল্য -l=(a
বড় সংখ্যা).
-vmll, --ভেরিয়েবল-সর্বোচ্চ-লাইন-দৈর্ঘ্য
খুব গভীরভাবে নেস্টেড কোড সহ একটি নির্দিষ্ট সর্বাধিক লাইন দৈর্ঘ্য ব্যবহার করে একটি সমস্যা দেখা দেয়
ডেটা স্ট্রাকচার কারণ শেষ পর্যন্ত নেতৃস্থানীয় হোয়াইটস্পেস পরিমাণ জন্য ব্যবহৃত
নির্দেশক ইন্ডেন্টেশন উপলব্ধ লাইন প্রস্থের অধিকাংশ বা সমস্ত গ্রহণ করে, ছেড়ে যায়
প্রকৃত কোড বা ডেটার জন্য সামান্য বা কোন স্থান নেই। একটি সমাধান একটি ভিন্ন দীর্ঘ ব্যবহার করা হয়
লাইন দৈর্ঘ্য. আরেকটি সমাধান হল ব্যবহার করা -vmll পতাকা, যা মূলত বলে
লাইনের দৈর্ঘ্য পরিমাপ করার সময় অগ্রণী হোয়াইটস্পেস উপেক্ষা করার জন্য উপযুক্ত।
সুনির্দিষ্ট হতে, যখন -vmll প্যারামিটার সেট করা হয়েছে, একটি লাইনের সর্বোচ্চ লাইন দৈর্ঘ্য
কোড হবে M+L*I, যেখানে
M হল --maximum-line-length=M (-l=M), ডিফল্ট 80 এর মান,
I হল --indent-columns=I (-i=I), ডিফল্ট 4 এর মান,
L হল কোডের লাইনের ইন্ডেন্টেশন লেভেল
এই পতাকা সেট করা হলে, কোড ব্লকের জন্য ব্রেকপয়েন্টের পছন্দ হওয়া উচিত
মূলত এর নীড়ের গভীরতা থেকে স্বাধীন। যাইহোক, পরম লাইন দৈর্ঘ্য,
অগ্রণী হোয়াইটস্পেস সহ, এখনও নির্বিচারে বড় হতে পারে। এই সমস্যা হতে পারে
পরবর্তী প্যারামিটার অন্তর্ভুক্ত করে এড়ানো যায়।
ডিফল্ট এটি করতে হবে না (-nvmll).
-wc=n, --শ্বেতস্থান-চক্র=n
এই পতাকাটি খুব গভীরভাবে নেস্টেড কোড এবং ডেটা স্ট্রাকচারের সমস্যাগুলিকেও সমাধান করে।
যখন নেস্টিং গভীরতা মান অতিক্রম করে n নেতৃস্থানীয় হোয়াইটস্পেস হ্রাস করা হবে এবং
আবার 1 এর গভীরতায় শুরু করুন। ফলাফল হল যে কোডের ব্লকগুলি আবার তে স্থানান্তরিত হবে
যথেচ্ছভাবে ডানদিকে সরানোর চেয়ে বামে। এটি চক্রাকারে যে কোনও ক্ষেত্রে ঘটে
গভীরতা।
উদাহরণস্বরূপ যদি ইন্ডেন্টেশনের একটি স্তর 4 স্পেস সমান হয় (-i=4, ডিফল্ট), এবং একটি
ব্যবহারসমূহ -wc=15, তারপর যদি একটি লাইনের অগ্রবর্তী হোয়াইটস্পেস প্রায় 4*15=60 ছাড়িয়ে যায়
4*1=4 স্পেসে আবার কমে যাবে এবং সেখান থেকে বাড়তে থাকবে। যদি
হোয়াইটস্পেস কখনই এই সীমা অতিক্রম করে না ফর্ম্যাটিং অপরিবর্তিত থাকে।
সমন্বয় -vmll এবং -wc=n প্রদর্শনের সমস্যার সমাধান প্রদান করে
নির্বিচারে গভীর ডেটা স্ট্রাকচার এবং একটি সীমিত উইন্ডোতে কোড, যদিও -wc=n হতে পারে
কোর্স ছাড়া ব্যবহার করা হবে -vmll.
ডিফল্ট এটি ব্যবহার করা হয় না, যা ব্যবহার করেও নির্দেশ করা যেতে পারে -wc=0.
ট্যাব
ট্যাব অক্ষর ব্যবহার করা প্রায় নিশ্চিতভাবেই ভবিষ্যতে বহনযোগ্যতা এবং রক্ষণাবেক্ষণের দিকে পরিচালিত করবে
সমস্যা, তাই ডিফল্ট এবং সুপারিশ তাদের ব্যবহার না. যারা পছন্দ করেন তাদের জন্য
ট্যাব, তবে, দুটি ভিন্ন বিকল্প আছে।
সম্ভবত ট্যাব ইন্ডেন্টেশন অক্ষর প্রবর্তন ব্যতীত, নীচে বর্ণিত হিসাবে,
perltidy আপনার ফাইলে কোনো ট্যাব অক্ষর প্রবর্তন করে না এবং এটি কোনো ট্যাব সরিয়ে দেয়
কোড থেকে (যদি না এর সাথে এটি না করার অনুরোধ করা হয় -fws) যদি আপনার কোন ট্যাব থাকে
মন্তব্য, উদ্ধৃতি, বা এখানে-নথি, তারা থাকবে.
-et=n, --এন্টাব-লিডিং-হোয়াইটস্পেস
এই পতাকা প্রতিটি কারণ n প্রাথমিক স্থান অক্ষর একটি ট্যাব দ্বারা প্রতিস্থাপিত হবে
চরিত্র উল্লেখ্য যে পূর্ণসংখ্যা n পূর্ণসংখ্যা থেকে সম্পূর্ণ স্বাধীন
ইন্ডেন্টেশন প্যারামিটারের জন্য নির্দিষ্ট করা হয়েছে, -i=n.
-t, --ট্যাব
এই পতাকাটি প্রতিটি স্তরের জন্য একটি নেতৃস্থানীয় ট্যাব অক্ষর সন্নিবেশিত করে
ইন্ডেন্টেশন কিছু অন্যান্য বৈশিষ্ট্য এই বিকল্পের সাথে বেমানান, এবং যদি
এই বিকল্পগুলিও দেওয়া হয়, তারপর একটি সতর্ক বার্তা জারি করা হবে এবং এই পতাকা
আনসেট করা হবে। একটি উদাহরণ হল -এলপি বিকল্প।
-dt=n, --default-tabsize=n
যদি পার্লটিডিতে পাস করা কোডের প্রথম লাইনে অগ্রণী ট্যাব থাকে তবে কোনও ট্যাব থাকে না
স্কিম আউটপুট স্ট্রীম জন্য নির্দিষ্ট করা হয় তারপর perltidy অনুমান করতে হবে কত স্পেস
প্রতিটি নেতৃস্থানীয় ট্যাব অনুরূপ. স্পেস এই সংখ্যা n প্রতিটি অনুরূপ
ইনপুট স্ট্রীমের লিডিং ট্যাব এর সাথে নির্দিষ্ট করা যেতে পারে -dt=n। ডিফল্ট হয় এন = 8.
আউটপুট স্ট্রীমের জন্য একটি ট্যাব স্কিম নির্দিষ্ট করা থাকলে এই পতাকার কোন প্রভাব নেই,
কারণ তখন ইনপুট স্ট্রীম একই ট্যাব স্কিম ব্যবহার করে বলে ধরে নেওয়া হয় এবং
আউটপুট স্ট্রীমের জন্য ইন্ডেন্টেশন স্পেস (অন্য যে কোনো অনুমান এর দিকে পরিচালিত করবে
অস্থির সম্পাদনা)।
-syn, --চেক-সিনট্যাক্স
এই পতাকা ইনপুট এবং আউটপুট সিনট্যাক্স পরীক্ষা করতে "perl -c -T" চালানোর জন্য perltidy ঘটায়।
(পার্লে পাস করা পতাকা পরিবর্তন করতে, পরবর্তী আইটেমটি দেখুন, -পিএসসিএফ) ফলাফল হয়
তে লেখা .LOG ফাইল, যা আউটপুটে একটি ত্রুটি সনাক্ত করা হলে সংরক্ষণ করা হবে
লিপি. ইনপুট স্ক্রিপ্টে সিনট্যাক্স ত্রুটি থাকলে আউটপুট স্ক্রিপ্ট চেক করা হয় না।
পার্লটিডি তার নিজস্ব পরীক্ষা করে, কিন্তু এই বিকল্পটি "সেকেন্ড" পেতে পার্লকে নিয়োগ করে
মতামত"
যদি পার্ল ইনপুট ফাইলে ত্রুটি রিপোর্ট করে, তবে সেগুলি ত্রুটিতে রিপোর্ট করা হবে না
আউটপুট যদি না --সতর্কতা-আউটপুট পতাকা দেওয়া হয়।
ডিফল্ট হয় না এই ধরনের সিনট্যাক্স চেকিং করতে (যদিও perltidy এখনও করবে
যতটা সম্ভব স্ব-পরীক্ষা)। কারণ হল এটি BEGIN এ সমস্ত কোড ঘটায়
সমস্ত মডিউল ব্যবহার করার জন্য ব্লকগুলি কার্যকর করা হবে এবং এটি নিরাপত্তার দরজা খুলে দেয়
perltidy চালানোর সময় সমস্যা এবং অসীম লুপ।
-pscf=s, -পারল-সিনট্যাক্স-চেক-পতাকা=s
যখন পার্লকে সিনট্যাক্স পরীক্ষা করার জন্য আহ্বান করা হয়, তখন সাধারণ পতাকাগুলি "-c -T" হয়। উপরন্তু, যদি
দ্য -x পতাকা দেওয়া হয় perltidy, তারপর পার্ল এছাড়াও একটি পাস হবে -x পতাকা এটা উচিত
সাধারণত এই পতাকাগুলি পরিবর্তন করার প্রয়োজন হয় না, তবে এটি দিয়ে করা যেতে পারে -pscf=s
পতাকা উদাহরণস্বরূপ, যদি কলঙ্কিত পতাকা, "-T", চাওয়া না হয়, তাহলে পতাকা সেট করা যেতে পারে
ন্যায়সঙ্গত হও -pscf=-c.
Perltidy আপনার স্ট্রিং পার্লে পাস করবে ব্যতিক্রম যে এটি একটি যোগ করবে -c এবং -x
যদি উপযুক্ত. দ্য .LOG ফাইল দেখাবে ঠিক কি পতাকা পার্লে পাস করা হয়েছে।
-io, --ইন্ডেন্ট-শুধুমাত্র
এই পতাকাটি অ-খালি মধ্যে সমস্ত বিন্যাস এবং লাইন বিরতি পরিবর্তন নিষ্ক্রিয় করতে ব্যবহৃত হয়
কোড লাইন. এটি কার্যকর হলে, স্ক্রিপ্টে শুধুমাত্র পরিবর্তন হবে
ইন্ডেন্টেশন এবং ফাঁকা লাইন। এবং যে কোনো পতাকা হোয়াইটস্পেস এবং নিউলাইন নিয়ন্ত্রণ করবে
উপেক্ষা করা আপনি যদি আপনার সাথে পুরোপুরি খুশি হন তবে আপনি এটি ব্যবহার করতে চাইতে পারেন
হোয়াইটস্পেস এবং লাইন বিরতি, এবং শুধুমাত্র ইন্ডেন্টেশন পরিচালনা করার জন্য perltidy চান। (এই
এছাড়াও দুই একটি ফ্যাক্টরের উপর ভাল দ্বারা perltidy গতি বাড়ায়, তাই এটি দরকারী হতে পারে যখন
perltidy শুধুমাত্র একটি বড় স্ক্রিপ্টে একটি বন্ধনী ত্রুটি খুঁজে পেতে সাহায্য করার জন্য ব্যবহার করা হচ্ছে)।
এই পতাকা সেট করা সেটিংয়ের সমতুল্য --ফ্রিজ-নতুন লাইন এবং --ফ্রিজ-হোয়াইটস্পেস.
আপনি যদি আপনার বিদ্যমান ফাঁকা লাইনগুলিকে ঠিক সেভাবেই রাখতে চান তবে আপনি যোগ করতে পারেন
--ফ্রিজ-ফাঁকা-লাইন.
-ole=s, --আউটপুট-লাইন-শেষ=s
যেখানে s="win", "dos", "unix", বা "mac"। এই পতাকা আউটপুট লাইন perltidy বলে
একটি নির্দিষ্ট সিস্টেমের জন্য শেষ। সাধারণত, perltidy লাইন দিয়ে ফাইল লেখে
হোস্ট সিস্টেমের বিভাজক চরিত্র। "জয়" এবং "ডস" পতাকার একটি অভিন্ন
ফলাফল।
-ple, --সংরক্ষণ-রেখা-শেষ
এই ফ্ল্যাগটি perltidy কে তার আউটপুট ফাইলগুলিকে একই লাইনের সমাপ্তি সহ লিখতে বলে
ইনপুট ফাইল, যদি সম্ভব হয়। এটা জন্য কাজ করা উচিত এর, UNIX, এবং ম্যাক লাইন শেষ। এটা হবে
শুধুমাত্র তখনই কাজ করে যখন perltidy ইনপুট একটি ফাইলের নাম থেকে আসে (উদাহরণস্বরূপ, stdin এর পরিবর্তে)।
যদি ইনপুট ফাইল লাইনের সমাপ্তি নির্ধারণ করতে perltidy-এর সমস্যা হয়, তাহলে এটিতে ফিরে যাবে
হোস্ট সিস্টেমের লাইন এন্ডিং ব্যবহার করার ডিফল্ট আচরণ।
-এটি = এন, --পুনরাবৃত্তি=n
এই পতাকা কি perltidy কারণ n সম্পূর্ণ পুনরাবৃত্তি। এই পতাকার কারণ
যে কোড বিউটিফিকেশন একটি পুনরাবৃত্তিমূলক প্রক্রিয়া এবং কিছু ক্ষেত্রে আউটপুট থেকে
দ্বিতীয়বার প্রয়োগ করা হলে perltidy ভিন্ন হতে পারে। অধিকাংশ উদ্দেশ্যে
এর ডিফল্ট এন = 1 সন্তোষজনক হতে হবে। যাহোক এন = 2 একটি প্রধান শৈলী যখন দরকারী হতে পারে
পরিবর্তন করা হচ্ছে, বা যখন একটি সোর্স কোডে চেক-ইন করার সময় কোডটি সুন্দর করা হচ্ছে
নিয়ন্ত্রণ ব্যবস্থা. পরে আউটপুট পরিবর্তনের জন্য এটি অত্যন্ত বিরল বলে প্রমাণিত হয়েছে
2 পুনরাবৃত্তি যদি একটি মান n 2 এর থেকে বেশি ইনপুট হলে একটি কনভারজেন্স পরীক্ষা হবে
যত তাড়াতাড়ি সম্ভব পুনরাবৃত্তি বন্ধ করতে ব্যবহৃত হয়, প্রায় সবসময় 2 পুনরাবৃত্তির পরে।
একটি সরলীকৃত পুনরাবৃত্তি নিয়ন্ত্রণের জন্য পরবর্তী আইটেমটি দেখুন।
যখন এইচটিএমএল তৈরি করতে পারলটিডি ব্যবহার করা হয় তখন এই পতাকার কোন প্রভাব নেই।
-রূপ, -- একত্রিত হওয়া
এই পতাকা সমতুল্য -এটি = 4 এবং পুনরাবৃত্তি নিয়ন্ত্রণ সহজ করার জন্য অন্তর্ভুক্ত করা হয়েছে। জন্য
সমস্ত ব্যবহারিক উদ্দেশ্য এক হয় বা আউটপুট নিশ্চিত হতে চান না
একত্রিত, এবং perltidy থেকে একটি বড় পুনরাবৃত্তি সীমা ব্যবহার করার জন্য কোন জরিমানা নেই
কনভারজেন্স পরীক্ষা করবে এবং যত তাড়াতাড়ি সম্ভব পুনরাবৃত্তি বন্ধ করবে। ডিফল্ট হয়
-nconv (কোন কনভারজেন্স চেক) ব্যবহার -রূপ থেকে প্রায় দ্বিগুণ রান সময় হবে
কনভারজেন্স যাচাই করার জন্য সাধারণত একটি অতিরিক্ত পুনরাবৃত্তি প্রয়োজন।
কোড খাঁজ নিয়ন্ত্রণ
-ci=n, --continuation-indentation=n
কন্টিনিউয়েশন ইন্ডেন্টেশন হল অতিরিক্ত ইন্ডেন্টেশন স্পেস প্রয়োগ করা হয় যখন একটি লম্বা লাইন থাকে
ভাঙ্গা ডিফল্ট হল n=2, এখানে চিত্রিত:
আমার $লেভেল = # -ci=2
( $max_index_to_go >= 0 )? $levels_to_go[0] : $last_output_level;
একই উদাহরণ, n=0 সহ, পড়া একটু কঠিন:
আমার $লেভেল = # -ci=0
( $max_index_to_go >= 0 )? $levels_to_go[0] : $last_output_level;
দেওয়া মান -এই যখন একটি ছোট স্থান প্রয়োজন হয় তখন কিছু কমান্ড দ্বারাও ব্যবহৃত হয়।
উদাহরণ হল আউটডেন্টিং লেবেলের জন্য কমান্ড, -ওলা, এবং নিয়ন্ত্রণ কীওয়ার্ড, -W ঠিক আছে.
যখন ডিফল্ট মান ব্যবহার করা হয় না, তখন এটি প্রস্তাবিত হয় যে মান n দিয়ে দেওয়া হয়েছে -ci=n be
একটি পূর্ণ ইন্ডেন্টেশনের জন্য নির্ধারিত স্থানের সংখ্যার প্রায় অর্ধেকের বেশি নয়
উপর স্তর -i=n কমান্ড।
-sil=n --শুরু-ইন্ডেন্টেশন-লেভেল=n
ডিফল্টরূপে, perltidy ইনপুট ফাইল পরীক্ষা করে এবং শুরু নির্ধারণ করার চেষ্টা করে
ইন্ডেন্টেশন স্তর। যদিও এটি প্রায়শই শূন্য হয়, এটি একটি কোড স্নিপেটের জন্য শূন্য নাও হতে পারে
একটি সম্পাদনা অধিবেশন থেকে পাঠানো হচ্ছে।
প্রারম্ভিক ইন্ডেন্টেশন স্তর অনুমান করতে perltidy সহজভাবে সেই ইন্ডেন্টেশন অনুমান করে
কোড স্নিপেট তৈরি করতে ব্যবহৃত স্কিমটি বর্তমানের জন্য ব্যবহৃত হওয়ার মতোই
নিখুঁত প্রক্রিয়া। এই একমাত্র বুদ্ধিমান অনুমান করা যেতে পারে. এটা করা উচিত
এটি সঠিক হলে সঠিক, কিন্তু অন্যথায় এটি সম্ভবত হবে না। উদাহরণস্বরূপ, যদি ইনপুট
স্ক্রিপ্টটি -i=2 দিয়ে লেখা হয়েছিল এবং বর্তমান পেল্টিডি পতাকাগুলিতে -i=4 আছে, ভুল
প্রাথমিক ইন্ডেন্টেশন একটি কোড স্নিপেটের জন্য অনুমান করা হবে যার প্রাথমিক শূন্য নেই
ইন্ডেন্টেশন একইভাবে, যদি একটি এনটাবিং স্কিম ইনপুট স্ক্রিপ্টে ব্যবহার করা হয় এবং না হয়
বর্তমান প্রক্রিয়া তাহলে অনুমান করা ইন্ডেন্টেশন ভুল হবে।
যদি ডিফল্ট পদ্ধতি সঠিকভাবে কাজ না করে, অথবা আপনি শুরু পরিবর্তন করতে চান
স্তর, ব্যবহার -sil=n, শুরুর স্তরকে n হতে বাধ্য করতে।
ব্যবহার করে তালিকা ইন্ডেন্টেশন -এলপি, --লাইন-আপ-বন্ধনী
ডিফল্টরূপে, perltidy ইন্ডেন্ট তালিকা 4টি স্পেস সহ, বা যে মান দিয়ে নির্দিষ্ট করা হয়
-i=n. এখানে এইভাবে ফর্ম্যাট করা একটি ছোট তালিকা রয়েছে:
# পারলটিডি (ডিফল্ট)
@month_of_year = (
'জান', 'ফেব্রুয়ারি', 'মার', 'এপ্রিল', 'মে', 'জুন',
'জুল', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'
);
ব্যবহার -এলপি অতিরিক্ত ইন্ডেন্টেশন যোগ করতে ফ্ল্যাগ খোলার পরে ডেটা শুরু করার জন্য
একটি সাব কল বা তালিকার বন্ধনী, অথবা একটি বেনামী অ্যারের বর্গাকার বন্ধনী খোলা, অথবা
একটি বেনামী হ্যাশের কোঁকড়া বন্ধনী খোলা। এই বিকল্পের সাথে, উপরের তালিকাটি হবে
হয়ে
# perltidy -lp
@month_of_year = (
'জান', 'ফেব্রুয়ারি', 'মার', 'এপ্রিল', 'মে', 'জুন',
'জুল', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'
);
যদি উপলব্ধ লাইন দৈর্ঘ্য (দেখুন -l=n ) এত বেশি জায়গার অনুমতি দেয় না
কম ব্যবহার করবে। সমাপ্তি বন্ধনীর বিকল্প স্থাপনের জন্য, পরবর্তী বিভাগটি দেখুন।
এই বিকল্পটি কোড ব্লকের উপর কোন প্রভাব ফেলে না, যেমন if/then/else ব্লক, যা সবসময়
যা দিয়ে নির্দিষ্ট করা আছে তা ব্যবহার করুন -i=n. এছাড়াও, লাইন ব্রেক এবং/অথবা ব্লকের অস্তিত্ব
খোলা এবং বন্ধ বন্ধনীর মধ্যে মন্তব্য সাময়িকভাবে perltidy হতে পারে
এর ডিফল্ট পদ্ধতিতে ফিরে যান।
নোট: দী -এলপি বিকল্পের সাথে একসাথে ব্যবহার করা যাবে না -t ট্যাব বিকল্প। হতে পারে,
যাইহোক, সঙ্গে ব্যবহার করা হবে -et=n ট্যাব পদ্ধতি।
উপরন্তু, উল্লেখযোগ্যভাবে perltidy এর ক্ষমতা সীমাবদ্ধ যে কোনো পরামিতি
নতুন লাইন নির্বাচন করুন সঙ্গে বিরোধ হবে -এলপি এবং কারণ হবে -এলপি নিষ্ক্রিয় করা এইগুলো
অন্তর্ভুক্ত করা -io, -fnl, - nanl, এবং -এনডিএনএল. কারণ হল যে -এলপি ইন্ডেন্টেশন শৈলী পারেন
মধ্যে বিরতি পয়েন্ট একটি নির্বিচারে সংখ্যক সতর্ক সমন্বয় প্রয়োজন
অনুক্রমিক তালিকা, এবং এই পতাকাগুলি তা প্রতিরোধ করতে পারে।
-cti=n, --ক্লোজিং-টোকেন-ইন্ডেন্টেশন
সার্জারির -cti=n পতাকা একটি ")", "]", বা a দিয়ে শুরু হওয়া একটি লাইনের ইন্ডেন্টেশন নিয়ন্ত্রণ করে
নন-ব্লক "}"। এই ধরনের একটি লাইন পায়:
-cti = 0 অতিরিক্ত ইন্ডেন্টেশন নেই (ডিফল্ট)
-cti = 1 অতিরিক্ত ইন্ডেন্টেশন যেমন ক্লোজিং টোকেন
এর খোলার টোকেনের সাথে সারিবদ্ধ করে।
-cti = 2 একটি অতিরিক্ত ইন্ডেন্টেশন স্তর যদি লাইনটি এরকম দেখায়:
); বা]; বা };
-cti = 3 একটি অতিরিক্ত ইন্ডেন্টেশন স্তর সর্বদা
পতাকা -cti=1 এবং -cti=2 সঙ্গে ভাল কাজ -এলপি পতাকা (পূর্ববর্তী বিভাগ)।
# perltidy -lp -cti=1
@month_of_year = (
'জান', 'ফেব্রুয়ারি', 'মার', 'এপ্রিল', 'মে', 'জুন',
'জুল', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'
);
# perltidy -lp -cti=2
@month_of_year = (
'জান', 'ফেব্রুয়ারি', 'মার', 'এপ্রিল', 'মে', 'জুন',
'জুল', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর', 'নভেম্বর', 'ডিসেম্বর'
);
এই পতাকাগুলি ফরম্যাটারের জন্য নিছক ইঙ্গিত এবং সেগুলি সর্বদা অনুসরণ করা নাও হতে পারে৷ ভিতরে
বিশেষ করে, যদি -lp ব্যবহার করা হচ্ছে না, এর জন্য ইন্ডেন্টেশন cti=1 হতে বাধ্য
একাধিক ইন্ডেন্টেশন লেভেল নয়।
যদি ইচ্ছা হয়, এই নিয়ন্ত্রণটি প্রতিটি বন্ধ পাত্রে স্বাধীনভাবে প্রয়োগ করা যেতে পারে
টোকেন প্রকার। আসলে, -cti=n জন্য একটি সংক্ষিপ্ত রূপ মাত্র -cpi=n -csbi=n -cbi=n,
কোথায়: -সিপিআই or --ক্লোজিং-প্যারেন-ইনডেন্টেশন নিয়ন্ত্রণগুলি )এর, -সিএসবিআই or
--ক্লোজিং-বর্গ-বন্ধনী-ইন্ডেন্টেশন নিয়ন্ত্রণগুলি ]এর, -সিবিআই or --ক্লোজিং-ব্রেস-ইনডেন্টেশন
নন-ব্লক নিয়ন্ত্রণ করে }'S।
-আইসিপি, --ইন্ডেন্ট-ক্লোজিং-প্যারেন
সার্জারির -আইসিপি পতাকা সমতুল্য -cti=2, পূর্ববর্তী বিভাগে বর্ণিত। দ্য -nicp
পতাকা সমতুল্য -cti=0. তারা পিছনের সামঞ্জস্য জন্য অন্তর্ভুক্ত করা হয়.
-icb, --ইন্ডেন্ট-ক্লোজিং-ব্রেস
সার্জারির -icb বিকল্প একটি বন্ধনীতে একটি অতিরিক্ত স্তরের ইন্ডেন্টেশন দেয় যা একটি বন্ধ করে দেয়
কোড ব্লক। উদাহরণ স্বরূপ,
যদি ($টাস্ক) {
yy();
} # -icb
অন্য {
zzz();
}
ডিফল্ট এটি করতে হবে না, দ্বারা নির্দেশিত -nicb.
-olq, --outdent-দীর্ঘ-উদ্ধৃতি
কখন -olq সেট করা হয়, লাইন যা একটি উদ্ধৃত স্ট্রিং মানের চেয়ে দীর্ঘ সর্বোচ্চ লাইন-
লম্বা তাদের আরও পঠনযোগ্য করতে তাদের ইন্ডেন্টেশন মুছে ফেলতে হবে। এই হল
ডিফল্ট. এই ধরনের আউট-denting প্রতিরোধ করতে, ব্যবহার করুন -নোলক or --nooutdent-লং-লাইন.
-ওল, --আউটডেন্ট-লং-লাইন
এই আদেশ সমতুল্য --outdent-দীর্ঘ-উদ্ধৃতি এবং --আউটডেন্ট-দীর্ঘ-মন্তব্য, এবং
এটি perltidy এর পূর্ববর্তী সংস্করণগুলির সাথে সামঞ্জস্যের জন্য অন্তর্ভুক্ত করা হয়েছে। এর অস্বীকার
এটিও কাজ করে, -নোল or --nooutdent-লং-লাইন, এবং সেটিং এর সমতুল্য -নোলক
এবং -nolc.
আউটডেন্টিং লেবেল: -ওলা, --আউটডেন্ট-লেবেল
এই কমান্ডটি লেবেলগুলিকে 2টি স্পেস দ্বারা আউটডেন্ট করে দেবে (বা যাই হোক না কেন -এই হয়েছে
সেট করুন), যদি সম্ভব হয়। এটি ডিফল্ট। উদাহরণ স্বরূপ:
আমার $i;
লুপ: যখন ( $i = ) {
চম্প($i);
পরবর্তী যদি না $i;
fixit($i);
}
ব্যবহার -নোলা আউটডেন্ট লেবেল না.
আউটডেন্টিং কীওয়ার্ড
-W ঠিক আছে, --outdent-কীওয়ার্ড
আদেশ -W ঠিক আছে কিছু লিডিং কন্ট্রোল কীওয়ার্ড 2 দ্বারা আউটডেন্ট হবে
স্পেস (বা যাই হোক না কেন -এই সেট করা হয়েছে), যদি সম্ভব হয়। ডিফল্টরূপে, এই কীওয়ার্ড
হল "পুনরায় করুন", "পরবর্তী", "শেষ", "গোটো", এবং "রিটার্ন"। উদ্দেশ্য এইসব করা
নিয়ন্ত্রণ কীওয়ার্ড দেখতে সহজ. আউটডেন্টেড হওয়া কীওয়ার্ডের এই তালিকাটি পরিবর্তন করতে,
পরবর্তী অধ্যায় দেখুন।
উদাহরণস্বরূপ, পূর্ববর্তী উদাহরণে "perltidy -okw" ব্যবহার করে দেয়:
আমার $i;
লুপ: যখন ( $i = ) {
চম্প($i);
পরবর্তী যদি না $i;
fixit($i);
}
ডিফল্ট এটা না করা.
আউটডেন্টেড কীওয়ার্ড নির্দিষ্ট করা: -okwl=স্ট্রিং, --outdent-keyword-list=string
এই কমান্ডটি ব্যবহার করা যেতে পারে এর সাথে আউটডেন্টেড কীওয়ার্ড পরিবর্তন করতে -W ঠিক আছে
আদেশ প্যারামিটার স্ট্রিং পার্ল কীওয়ার্ডের একটি প্রয়োজনীয় তালিকা, যা করা উচিত
একাধিক হলে উদ্ধৃতিতে স্থাপন করা হবে। নিজেই, এটি কোন কারণ না
ঘটতে outdenting, তাই -W ঠিক আছে কমান্ড এখনও প্রয়োজন.
উদাহরণস্বরূপ, "-okwl="next last redo goto" -okw" কমান্ডগুলি এই চারটি ঘটাবে
কিওয়ার্ড outdented করা. যে কোনো স্থাপন করা সম্ভবত সহজ -okwl একটি মধ্যে আদেশ
.perltidyrc ফাইল.
সাদা ব্যবধান নিয়ন্ত্রণ
হোয়াইটস্পেস বলতে ভেরিয়েবল, অপারেটর এবং অন্যান্য কোড টোকেনের মধ্যে ফাঁকা স্থান বোঝায়।
-fws, --ফ্রিজ-হোয়াইটস্পেস
এই পতাকা আপনার আসল হোয়াইটস্পেস অপরিবর্তিত থাকার কারণ, এবং বাকিগুলি ঘটায়৷
এই বিভাগে হোয়াইটস্পেস কমান্ড, কোড ইন্ডেন্টেশন বিভাগ এবং মন্তব্য
নিয়ন্ত্রণ বিভাগ উপেক্ষা করা হবে.
কোঁকড়া বন্ধনী, বন্ধনী এবং বর্গাকার বন্ধনীর আঁটসাঁটতা।
এখানে "সংকীর্ণতা" শব্দের অর্থ হবে ঘনিষ্ঠতা যা ঘেরা জোড়ার সাথে
টোকেন, যেমন বন্ধনী, এর মধ্যে পরিমাণ থাকে। একটি সংখ্যাসূচক মান 0,
1, বা 2 টাইটনেস সংজ্ঞায়িত করে, 0 ন্যূনতম টাইট এবং 2 সবচেয়ে টাইট।
পাত্রের মধ্যে স্থানগুলি সর্বদা প্রতিসম হয়, তাই যদি একটি "(" এর পরে একটি স্থান থাকে
সংশ্লিষ্ট ")" এর আগে একটি স্থান থাকবে।
সার্জারির -pt=n or --প্যারেন-টাইটনেস=n প্যারামিটার প্যারেন্সের মধ্যে স্থান নিয়ন্ত্রণ করে। দ্য
নীচের উদাহরণ তিনটি সম্ভাব্য মানের প্রভাব দেখায়, 0, 1, এবং 2:
যদি ( ( আমার $len_tab = দৈর্ঘ্য ( $tabstr ) ) > 0 ) { # -pt=0
যদি ( ( আমার $len_tab = length($tabstr) ) > 0 ) { # -pt=1 (ডিফল্ট)
যদি ((আমার $len_tab = length($tabstr)) > 0) { # -pt=2
যখন n 0 হয়, একটি '(' এবং একটি ')'-এর বাম দিকে সর্বদা একটি স্থান থাকে।
n=2 এর জন্য কখনই একটি স্থান নেই। n=1 এর জন্য, ডিফল্ট, একটি স্থান আছে যদি না হয়
প্যারেন্সের মধ্যে পরিমাণ হল একটি একক টোকেন, যেমন একটি শনাক্তকারী বা উদ্ধৃত স্ট্রিং।
একইভাবে, পরামিতি -sbt=n or -- বর্গাকার-বন্ধনী-নিজোড় = n স্থান নিয়ন্ত্রণ করে
বর্গাকার বন্ধনীর মধ্যে, নীচের চিত্রিত হিসাবে।
$প্রস্থ = $col[ $j + $k] - $col[ $j ]; # -sbt=0
$প্রস্থ = $col[ $j + $k] - $col[$j]; # -sbt=1 (ডিফল্ট)
$প্রস্থ = $col[$j + $k] - $col[$j]; # -sbt=2
কোঁকড়া ধনুর্বন্ধনী যা কোড ব্লক ধারণ করে না প্যারামিটার দ্বারা নিয়ন্ত্রিত হয় -bt=n or
--বন্ধনী-নিবিড়তা=n.
$obj->{ $parsed_sql->{ 'টেবিল' [0] }; # -bt=0
$obj->{ $parsed_sql->{'table'}[0] }; # -bt=1 (ডিফল্ট)
$obj->{$parsed_sql->{'table'}[0]}; # -bt=2
এবং অবশেষে, কোঁকড়া ধনুর্বন্ধনী যা কোড ব্লক ধারণ করে প্যারামিটার দ্বারা নিয়ন্ত্রিত হয়
-bbt=n or --ব্লক-বন্ধনী-নিষাঙ্গ = n নীচের উদাহরণে চিত্রিত হিসাবে।
%bf = মানচিত্র { $_ => -M $_ } grep { /\.deb$/ } dirents '.'; # -bbt=0 (ডিফল্ট)
%bf = মানচিত্র { $_ => -M $_ } grep {/\.deb$/} dirents '.'; # -bbt=1
%bf = মানচিত্র {$_ => -M $_} grep {/\.deb$/} dirents '.'; # -bbt=2
সমস্ত টাইটনেস ফ্ল্যাগের একই মান আছে এমন ক্ষেত্রে ইনপুট সহজ করার জন্য ,
প্যারামিটার <-act=n> বা --সমস্ত-পাত্র-নিবিড়তা=n এর জন্য একটি সংক্ষিপ্ত রূপ
সমন্বয় <-pt=n -sbt=n -bt=n -bbt=n>।
-tso, --টাইট-সিক্রেট-অপারেটর
পতাকাটি -tso নির্দিষ্ট পার্ল টোকেন সিকোয়েন্স (গোপন অপারেটর) ঘটায় যা হতে পারে
"আঁটসাঁটভাবে" (স্পেস ছাড়া) ফর্ম্যাট করার জন্য একটি একক অপারেটর হিসাবে বিবেচিত। দ্য
বর্তমানে এই পতাকা দ্বারা পরিবর্তিত অপারেটর হল:
0+ +0 ()x!! ~~<> , => =( )=
উদাহরণস্বরূপ ক্রম 0 +, যা একটি স্ট্রিংকে একটি সংখ্যায় রূপান্তর করে, ফর্ম্যাট করা হবে
একটি স্থান ছাড়া: 0+ যখন -tso পতাকা সেট করা হয়। এই পতাকা ডিফল্টরূপে বন্ধ আছে.
-sts, --স্পেস-টার্মিনাল-সেমিকোলন
কিছু প্রোগ্রামার সমস্ত টার্মিনাল সেমিকোলনের আগে একটি স্থান পছন্দ করে। ডিফল্ট কোন জন্য হয়
যেমন স্থান, এবং সঙ্গে নির্দেশিত হয় -এনএসটিএস or --নোস্পেস-টার্মিনাল-সেমিকোলন.
$i = 1; # -sts
$i = 1; # -nsts (ডিফল্ট)
-sfs, --সেমিকোলনের জন্য স্থান
ভিতরে সেমিকোলন উন্নত লুপগুলি কখনও কখনও দেখা কঠিন হতে পারে, বিশেষ করে যখন কমা হয়
এছাড়াও উপস্থিত। এই বিকল্পটি এই বিশেষ সেমিকোলনের উভয় পাশে শূন্যস্থান রাখে,
এবং ডিফল্ট। ব্যবহার করুন -এনএসএফএস or --নোস্পেস-এর জন্য-সেমিকোলন এটি নিষ্ক্রিয় করতে।
জন্য ( @a = @$ap, $u = শিফট @a ; @a ; $u = $v ) { # -sfs (ডিফল্ট)
জন্য ( @a = @$ap, $u = শিফট @a; @a; $u = $v ) { # -nsfs
-asc, --অ্যাড-সেমিকোলন
বিন্যাস -asc perltidy-কে a এর শেষে যেকোন অনুপস্থিত ঐচ্ছিক সেমিকোলন যোগ করার অনুমতি দেয়
লাইন যা পরবর্তী লাইনে একটি বন্ধ কোঁকড়া বন্ধনী দ্বারা অনুসরণ করা হয়। এই হল
ডিফল্ট, এবং এর সাথে নিষ্ক্রিয় করা হতে পারে -nasc or --noadd-সেমিকোলন.
-dsm, --মুছুন-সেমিকোলন
বিন্যাস -dsm perltidy অতিরিক্ত সেমিকোলন মুছে ফেলতে দেয় যা খালি
বিবৃতি এটি ডিফল্ট, এবং এর সাথে নিষ্ক্রিয় করা হতে পারে৷ -এনডিএসএম or
--নোডেলিট-সেমিকোলন. (যদিও, এই ধরনের সেমিকোলন মুছে ফেলা হয় না, যদি তারা করতে পারে
একটি ব্লক মন্তব্যে একটি পার্শ্ব মন্তব্য প্রচার করুন)।
-aws, --সাদা স্থান যোগ করুন
এই বিকল্পটি সেট করার ফলে পার্লটিডিকে নির্দিষ্ট হোয়াইটস্পেস উন্নত কোড যোগ করার অনুমতি দেয়
পঠনযোগ্যতা এটি ডিফল্ট। আপনি যদি কোন হোয়াইটস্পেস যোগ করতে চান না, তবে আছে
কিছু হোয়াইটস্পেস মুছে দিতে ইচ্ছুক, ব্যবহার করুন - naws. (ব্যবহার করুন -fws হোয়াইটস্পেস ছেড়ে যেতে
সম্পূর্ণ অপরিবর্তিত)।
-dws, --পুরানো-সাদা স্থান মুছুন
এই বিকল্পটি সেট করলে অক্ষরগুলির মধ্যে কিছু পুরানো হোয়াইটস্পেস মুছে ফেলার অনুমতি দেয়,
যদি প্রয়োজন হয় তাহলে. এটি ডিফল্ট। আপনি যদি কোনো পুরানো হোয়াইটস্পেস সরাতে না চান,
ব্যবহার -ndws or --নোডেলিট-পুরানো-হোয়াইটস্পেস.
টোকেনের চারপাশে বিস্তারিত হোয়াইটস্পেস নিয়ন্ত্রণ করে
যারা টোকেনের চারপাশে সাদা স্থানের উপর আরো বিস্তারিত নিয়ন্ত্রণ চান তাদের জন্য আছে
চারটি পরামিতি যা সরাসরি অন্তর্নির্মিত ডিফল্ট হোয়াইটস্পেস নিয়ম সংশোধন করতে পারে
কোনো টোকেনের জন্য perltidy. তারা হল:
-wls=s or --want-left-space=s,
-nwls=s or --nowant-left-space=s,
-wrs=s or --want-right-space=s,
-nwrs=s or --nowant-right-space=s.
এই পরামিতি প্রতিটি উদ্ধৃত স্ট্রিং দ্বারা অনুসরণ করা হয়, s, টোকেনের একটি তালিকা রয়েছে
প্রকার এই পরামিতিগুলির প্রতিটির একটির বেশি নির্দিষ্ট করা উচিত নয়, কারণ
একটি কমান্ড-লাইন পরামিতি পুনরাবৃত্তি সবসময় perltidy আগে পূর্ববর্তী একটি ওভাররাইট করে
কখনো এটা দেখে।
এইগুলি কীভাবে ব্যবহার করা হয় তা ব্যাখ্যা করার জন্য, মনে করুন যে কোনও স্থান নেই
টোকেন প্রকারের উভয় পাশে = + - / *. নিম্নলিখিত দুটি পরামিতি নির্দিষ্ট করবে
এই ইচ্ছা:
-nwls="= + - / *" -nwrs="= + - / *"
(মনে রাখবেন যে টোকেনের প্রকারগুলি উদ্ধৃতিতে রয়েছে এবং সেগুলি স্পেস দ্বারা পৃথক করা হয়েছে)।
এই পরিবর্তিত হোয়াইটস্পেস নিয়মগুলির সাথে, গণিতের নিম্নলিখিত লাইন:
$root = -$b + sqrt( $b * $b - 4. * $a * $c ) / ( 2. * $a);
এটি হয়ে যায়:
$root=-$b+sqrt( $b*$b-4.*$a*$c )/( 2.*$a);
এই পরামিতিগুলিকে নির্দিষ্ট নিয়মের পরিবর্তে পারলটিডির ইঙ্গিত হিসাবে বিবেচনা করা উচিত,
কারণ perltidy অবশ্যই তাদের এবং সকলের মধ্যে উদ্ভূত দ্বন্দ্ব সমাধান করার চেষ্টা করবে
অন্যান্য নিয়ম যা এটি ব্যবহার করে। একটি দ্বন্দ্ব যে উঠতে পারে তা হল যদি, দুটি টোকেনের মধ্যে,
বাম টোকেন একটি স্থান চায় এবং ডানটি চায় না। এই ক্ষেত্রে, টোকেন না
একটি স্থান চাই অগ্রাধিকার লাগে.
এই ধরনের তৈরি করার জন্য সমস্ত টোকেন প্রকারের একটি তালিকা থাকা প্রয়োজন
ইনপুট. এই ধরনের একটি তালিকা কমান্ড দ্বারা প্রাপ্ত করা যেতে পারে --ডাম্প-টোকেন-প্রকার. এছাড়াও চেষ্টা করুন
-D কোডের একটি ছোট স্নিপেটে ফ্ল্যাগ করুন এবং দেখতে .DEBUG ফাইলটি দেখুন
টোকেনাইজেশন
সতর্কতামূলক ভুল ব্যাখ্যা করা এড়াতে এই টোকেনগুলিকে উদ্ধৃতিতে রাখতে ভুলবেন না
আপনার কমান্ড শেল।
নির্দিষ্ট কীওয়ার্ড এবং খোলার বন্ধনীর মধ্যে স্থান
যখন একটি ওপেনিং প্যারেন একটি পার্ল কীওয়ার্ড অনুসরণ করে, তখন এর পরে কোনো স্থান প্রবর্তন করা হয় না
কীওয়ার্ড, যদি না এটি (ডিফল্টরূপে) এর মধ্যে একটি হয়:
আমার স্থানীয় আমাদের এবং বা eq ne if else elsif যতক্ষণ না পর্যন্ত
যখন foreach রিটার্ন সুইচ ক্ষেত্রে দেওয়া যখন
এই ডিফল্ট দুটি কমান্ড দিয়ে সংশোধন করা যেতে পারে:
-sak=s or --স্পেস-পর-কীওয়ার্ড=s কীওয়ার্ড যোগ করে।
-nsak=s or --নোস্পেস-পর-কীওয়ার্ড=s কীওয়ার্ড সরিয়ে দেয়।
কোথায় s এটি কীওয়ার্ডের একটি তালিকা (প্রয়োজনে উদ্ধৃতিতে)। উদাহরণ স্বরূপ,
আমার ( $a, $b, $c) = @_; # ডিফল্ট
আমার ($a, $b, $c) = @_; # -nsak="আমার স্থানীয় আমাদের"
সংক্ষিপ্তসার -nsak='*' উপরের সমস্ত কীওয়ার্ড অন্তর্ভুক্ত করার সমতুল্য
তালিকা।
যখন উভয় -nsak=s এবং -sak=s কমান্ড অন্তর্ভুক্ত করা হয়, -nsak=s আদেশ কার্যকর করা হয়
প্রথম যেমন, শুধু কিওয়ার্ডের (my, local, our) পরে স্পেস দিতে পারেন
ব্যবহার -nsak="*" -সাক = আমার স্থানীয় আমাদের".
সমস্ত কীওয়ার্ডের পরে একটি স্পেস দিতে, পরবর্তী আইটেমটি দেখুন।
সমস্ত কীওয়ার্ড এবং খোলার প্যারেনগুলির মধ্যে স্থান
যখন একটি ওপেনিং প্যারেন একটি ফাংশন বা কীওয়ার্ড অনুসরণ করে, তখন এর পরে কোনো স্থান প্রবর্তিত হয় না
পূর্ববর্তী আইটেমে উল্লিখিত কীওয়ার্ড ব্যতীত কীওয়ার্ড। সর্বদা একটি স্থান রাখা
একটি ফাংশন বা কীওয়ার্ড এবং এর ওপেনিং প্যারনের মধ্যে, কমান্ডটি ব্যবহার করুন:
-স্কপি or --স্পেস-কীওয়ার্ড-প্যারেন
আপনি সম্ভবত পতাকা ব্যবহার করতে চান -এসএফপি (পরবর্তী আইটেম) খুব.
সমস্ত ফাংশনের নাম এবং খোলার বন্ধনীর মধ্যে স্থান
যখন একটি ওপেনিং প্যারেন একটি ফাংশন অনুসরণ করে তখন ডিফল্ট একটি স্থান প্রবর্তন করা হয় না। প্রতি
একটি স্থান ব্যবহার চালু করার কারণ:
-এসএফপি or --স্পেস-ফাংশন-প্যারেন
myfunc($a, $b, $c); # ডিফল্ট
myfunc ( $a, $b, $c); # -sfp
আপনি সম্ভবত পতাকা ব্যবহার করতে চান -স্কপি (আগের আইটেম) খুব.
"qw" উদ্ধৃতিগুলির চারপাশে হোয়াইটস্পেস ছাঁটাই করা
-tqw or --ট্রিম-qw মাল্টি-লাইনের চারপাশে স্পেস ছাঁটাই করার ডিফল্ট আচরণ প্রদান করে
"qw" উদ্ধৃতি এবং যথাযথভাবে ইন্ডেন্ট করা।
-ntqw or --notrim-qw মাল্টি-লাইন "qw" এর চারপাশে অগ্রণী এবং পিছনের হোয়াইটস্পেস তৈরি করুন
উদ্ধৃতি অপরিবর্তিত রেখে যেতে হবে। এই বিকল্পটি সাধারণত প্রয়োজনীয় হবে না, কিন্তু ছিল
পরীক্ষার উদ্দেশ্যে যোগ করা হয়েছে, কারণ পার্লের কিছু সংস্করণে, "qw" উদ্ধৃতি ছাঁটাই করা হচ্ছে
সিনট্যাক্স ট্রি পরিবর্তন করে।
POD-এর লাইন থেকে ট্রামিং ট্রামিং হোয়াইটস্পেস
-trp or -- ট্রিম-পড POD এর লাইনগুলি থেকে ট্রেলিং হোয়াইটস্পেস মুছে ফেলবে। ডিফল্ট হয়
এটা না করতে।
মন্তব্য নিয়ন্ত্রণ
পার্লটিডির ব্লক কমেন্ট এবং সাইড উভয়ের চেহারা নিয়ন্ত্রণ করার অনেক উপায় রয়েছে
মন্তব্য পদ বাধা মন্তব্য এখানে একটি পূর্ণ-লাইন মন্তব্য বোঝায়, যেখানে পাশ মন্তব্য
একটি মন্তব্য উল্লেখ করবে যা কিছু কোডের ডানদিকে একটি লাইনে প্রদর্শিত হবে।
-আইবিসি, --ইন্ডেন্ট-ব্লক-মন্তব্য
ব্লক মন্তব্যগুলি সাধারণত ভাল দেখায় যখন সেগুলি কোডের মতো একই স্তরে ইন্ডেন্ট করা হয়
যা তাদের অনুসরণ করে। এটি ডিফল্ট আচরণ, কিন্তু আপনি ব্যবহার করতে পারেন -nibc ব্লক রাখা
মন্তব্য বাম-জায়েজ. এখানে একটি উদাহরণ:
# এই মন্তব্যটি ইন্ডেন্ট করা হয়েছে (-ibc, ডিফল্ট)
যদি ($টাস্ক) { yyy(); }
বিকল্পটি হ'ল -nibc:
# এই মন্তব্যটি ইন্ডেন্ট করা হয়নি (-nibc)
যদি ($টাস্ক) { yyy(); }
পরবর্তী আইটেমটিও দেখুন, -আইএসবিসি, পাশাপাশি হিসাবে -sbc, কিছু ইন্ডেন্ট আছে অন্যান্য উপায় জন্য
এবং কিছু পুরানো ব্লক মন্তব্য.
-আইএসবিসি, --ইন্ডেন্ট-স্পেস-ব্লক-মন্তব্য
যদি লাইনে কোন অগ্রণী স্থান না থাকে, তাহলে মন্তব্যটি ইন্ডেন্ট করা হবে না, এবং
অন্যথায় এটা হতে পারে.
যদি উভয় -আইবিসি এবং -আইএসবিসি সেট করা হয়, তারপর -আইএসবিসি অগ্রাধিকার নেয়।
-olc, --আউটডেন্ট-দীর্ঘ-মন্তব্য
কখন -olc সেট করা হয়েছে, যে লাইনগুলি পূর্ণ-লাইন (ব্লক) মন্তব্যগুলি মানের চেয়ে দীর্ঘ৷
সর্বোচ্চ-রেখা-দৈর্ঘ্য তাদের ইন্ডেন্টেশন মুছে ফেলা হবে। এটি ডিফল্ট; ব্যবহার
-nolc বহিঃপ্রকাশ রোধ করতে।
-msc=n, --মিনিমাম-স্পেস-টু-কমেন্ট=n
কোডের ডানদিকে বেশ কয়েকটি স্পেস লাইন আপ করলে পার্শ্ব মন্তব্যগুলি সবচেয়ে ভাল দেখায়। পার্লটিডি
ডানদিকে অন্তত n স্পেস মন্তব্য রাখার চেষ্টা করবে। ডিফল্ট হল n=4 স্পেস।
-fpsc=n, --স্থির-অবস্থান-পার্শ্ব-মন্তব্য=n
এই প্যারামিটারটি কলাম নম্বরে পাশের মন্তব্যগুলিকে সারিবদ্ধ করতে বলে n যখনই
সম্ভব. ডিফল্ট, n=0, এটি করবে না।
-iscl, --পাশ-মন্তব্য-দৈর্ঘ্য উপেক্ষা করুন
এই পরামিতিটি লাইন সেট করার সময় পার্শ্ব মন্তব্যের দৈর্ঘ্য উপেক্ষা করে
বিরতি. ডিফল্ট, - niscl, ব্রেক করার সময় পার্শ্ব মন্তব্যের দৈর্ঘ্য অন্তর্ভুক্ত করা হয়
লাইনগুলি দ্বারা নির্ধারিত দৈর্ঘ্যের মধ্যে থাকতে হবে -l=n সর্বোচ্চ লাইন দৈর্ঘ্য পরামিতি।
উদাহরণস্বরূপ, নিম্নলিখিত দীর্ঘ একক লাইন -l=80 এবং -iscl-এর সাথে অক্ষত থাকবে:
perltidy -l=80 -iscl
$vmsfile =~ s/;[\d\-]*$//; # ক্লিপ অফ সংস্করণ নম্বর; আমরা একটি নতুন সংস্করণও ব্যবহার করতে পারি
যেখানে -iscl পতাকা ছাড়া লাইনটি ভাঙ্গা হবে:
perltidy -l=80
$vmsfile =~ s/;[\d\-]*$//
; # ক্লিপ অফ সংস্করণ নম্বর; আমরা একটি নতুন সংস্করণও ব্যবহার করতে পারি
-এইচএসসি, -- ঝুলন্ত-পাশ-মন্তব্য
ডিফল্টরূপে, perltidy "হ্যাংিং সাইড কমেন্টস" শনাক্ত এবং সারিবদ্ধ করার চেষ্টা করে, যা হয়
এটার মতো কিছু:
আমার $IGNORE = 0; # এটি একটি পার্শ্ব মন্তব্য
# এটি একটি ঝুলন্ত পার্শ্ব মন্তব্য
#এবং তাই এই
একটি মন্তব্য একটি ঝুলন্ত পার্শ্ব মন্তব্য হিসাবে বিবেচিত হয় যদি (1) এটি অবিলম্বে অনুসরণ করে a
একটি পার্শ্ব মন্তব্য সহ লাইন, বা অন্য একটি ঝুলন্ত পার্শ্ব মন্তব্য, এবং (2) কিছু আছে
লাইনে অগ্রণী সাদা স্থান। এই বৈশিষ্ট্য নিষ্ক্রিয় করতে, ব্যবহার করুন -এনএইচএসসি or
--নোহিং-পার্শ্ব-মন্তব্য. যদি ব্লক মন্তব্যের আগে একটি ফাঁকা লাইন থাকে, বা না থাকে
অগ্রণী হোয়াইটস্পেস, তারা ঝুলন্ত পার্শ্ব মন্তব্য হিসাবে ভুল করা হবে না.
ক্লোজিং সাইড কমেন্ট
একটি ক্লোজিং সাইড কমেন্ট হল একটি বিশেষ মন্তব্য যা perltidy স্বয়ংক্রিয়ভাবে তৈরি করতে পারে
এবং একটি কোড ব্লকের বন্ধ বন্ধনীর পরে রাখুন। তারা কোড জন্য দরকারী হতে পারে
রক্ষণাবেক্ষণ এবং ডিবাগিং। আদেশ -csc (অথবা --ক্লোজিং-পার্শ্ব-মন্তব্য) যোগ করে বা
আপডেট বন্ধ পার্শ্ব মন্তব্য. উদাহরণস্বরূপ, এখানে একটি ছোট কোড স্নিপেট
উপ বার্তা {
যদি ( !সংজ্ঞায়িত ($_[0] ) ) {
প্রিন্ট ("হ্যালো, ওয়ার্ল্ড\n");
}
অন্য {
মুদ্রণ ($__[0], "\n");
}
}
এবং এখানে "perltidy -csc" এর সাথে প্রক্রিয়াকরণের ফলাফল:
উপ বার্তা {
যদি ( !সংজ্ঞায়িত ($_[0] ) ) {
প্রিন্ট ("হ্যালো, ওয়ার্ল্ড\n");
}
অন্য {
মুদ্রণ ($__[0], "\n");
}
} ## শেষ সাব মেসেজ
এই ক্ষেত্রে "সাব মেসেজ" এর জন্য একটি ক্লোজিং সাইড মন্তব্য যোগ করা হয়েছে, কিন্তু "যদি" এর জন্য নয়
এবং "অন্য" ব্লক, কারণ তারা ক্লোজিং যোগ করার জন্য 6 লাইন কাটঅফ সীমার নিচে ছিল
পার্শ্ব মন্তব্য। এই সীমার সাথে পরিবর্তন করা যেতে পারে -csci কমান্ড, নীচে বর্ণিত।
আদেশ -dcsc (অথবা --মুছুন-বন্ধ-পাশ-মন্তব্য) এই প্রক্রিয়াটিকে বিপরীত করে এবং
এই মন্তব্যগুলি সরিয়ে দেয়।
এই দুটি মৌলিক কমান্ডের আচরণ পরিবর্তন করার জন্য বেশ কয়েকটি কমান্ড উপলব্ধ,
-csc এবং -dcsc:
-csci=n, বা --ক্লোজিং-পার্শ্ব-মন্তব্য-ব্যবধান=n
যেখানে "n" হল ন্যূনতম সংখ্যক লাইন যা একটি ব্লকে a এর জন্য থাকা আবশ্যক
সমাপ্তির পার্শ্ব মন্তব্য যোগ করা হবে. ডিফল্ট মান হল "n=6"। বর্ণনা করা:
# perltidy -csci=2 -csc
উপ বার্তা {
যদি ( !সংজ্ঞায়িত ($_[0] ) ) {
প্রিন্ট ("হ্যালো, ওয়ার্ল্ড\n");
} ## শেষ হলে ( !সংজ্ঞায়িত ($__[0] ))
অন্য {
মুদ্রণ ($__[0], "\n");
} ## শেষ অন্য [ যদি ( !সংজ্ঞায়িত ($__[0] ))
} ## শেষ সাব মেসেজ
এখন "যদি" এবং "অন্যথায়" ব্লকগুলি মন্তব্য করা হয়। যাইহোক, এখন এটা খুব হয়ে গেছে
বিশৃঙ্খল
-cscp=স্ট্রিং, বা --ক্লোজিং-সাইড-কমেন্ট-প্রিফিক্স=স্ট্রিং
যেখানে স্ট্রিং হল ব্লক টাইপের নামের আগে ব্যবহৃত উপসর্গ। ডিফল্ট
উপরে দেখানো উপসর্গ হল "## শেষ"। এই স্ট্রিংটি ক্লোজিং সাইডে যোগ করা হবে
মন্তব্য, এবং এটি আপডেট, মুছে ফেলার জন্য তাদের চিনতেও ব্যবহার করা হবে,
এবং তাদের বিন্যাস. ক্লোজিং সাইড কমেন্ট হিসেবে চিহ্নিত যেকোন মন্তব্য করা হবে
এর ক্লোজিং ব্রেসের ডানদিকে একটি মাত্র স্থান।
-cscl=স্ট্রিং, বা --ক্লোজিং-সাইড-কমেন্ট-লিস্ট-স্ট্রিং
যেখানে "স্ট্রিং" হল ব্লক প্রকারের একটি তালিকা যা ক্লোজিং সাইড কমেন্টের সাথে ট্যাগ করা হবে।
ডিফল্টরূপে, একটি কীওয়ার্ড বা লেবেল দ্বারা পূর্বে সমস্ত কোড ব্লকের ধরন (যেমন "যদি",
"সাব", এবং তাই) ট্যাগ করা হবে। দ্য -সিএসসিএল কমান্ড ডিফল্ট তালিকা পরিবর্তন করে
কোন নির্বাচিত ব্লক প্রকার হতে হবে; "ব্লকের প্রকারগুলি নির্দিষ্ট করা" দেখুন। উদাহরণস্বরূপ, দ
নিম্নলিখিত কমান্ড অনুরোধ যে শুধুমাত্র "sub"'s, লেবেল, "BEGIN", এবং "END" ব্লক হতে হবে
কোন দ্বারা প্রভাবিত -csc or -dcsc অপারেশন:
-cscl="সাব: শুরু শেষ"
-csct=n, বা --ক্লোজিং-পার্শ্ব-মন্তব্য-সর্বোচ্চ-টেক্সট=n
নির্দিষ্ট ব্লকের সাথে যুক্ত করা পাঠ্য, যেমন একটি "যদি" ব্লক, যা মিথ্যা
ব্লক প্রবর্তনকারী কীওয়ার্ডের মধ্যে, যেমন "if", এবং খোলার বন্ধনী।
যেহেতু এটি একটি পার্শ্ব মন্তব্যের জন্য খুব বেশি পাঠ্য হতে পারে, তাই একটি সীমা থাকা দরকার,
এবং যে এই পরামিতি উদ্দেশ্য. ডিফল্ট মান হল "n=20", মানে
এই টেক্সটের দৈর্ঘ্য পৌঁছানোর পরে কোনও অতিরিক্ত টোকেন যুক্ত করা হবে না
20টি অক্ষর। বাদ দেওয়া পাঠ্য "..." দিয়ে নির্দেশিত হয়েছে। (টোকেন, সাব সহ
নামগুলি, কখনও ছাঁটাই করা হয় না, তবে, তাই প্রকৃত দৈর্ঘ্য এটি অতিক্রম করতে পারে)। প্রতি
ব্যাখ্যা করুন, উপরের উদাহরণে, প্রথম ব্লকের সংযোজিত পাঠ্যটি হল "(
!সংজ্ঞায়িত ($_[0])...। "n=20" এর বিদ্যমান সীমা এই পাঠ্যটিকে ঘটিয়েছে
কাটা, যেমন "..." দ্বারা নির্দেশিত। এর অতিরিক্ত নিয়ন্ত্রণের জন্য পরবর্তী পতাকা দেখুন
সংক্ষিপ্ত পাঠ্য।
-cscb, বা --ক্লোজিং-পার্শ্ব-মন্তব্য-ভারসাম্য
আগের আইটেমে আলোচনা করা হয়েছে, যখন সমাপ্তি-পার্শ্ব-মন্তব্য-সর্বোচ্চ পাঠ্য
সীমা অতিক্রম করেছে মন্তব্যের পাঠ্যটি অবশ্যই কেটে ফেলতে হবে। perltidy এর পুরানো সংস্করণ
তিনটি বিন্দু দিয়ে সমাপ্ত, এবং এটি এখনও -ncscb এর সাথে অর্জন করা যেতে পারে:
perltidy -csc -ncscb
} ## শেষ আমার $foo (বাছাই করুন { $b cmp $a ...
যাইহোক এটি সম্পাদকদের সাথে একটি সমস্যা সৃষ্টি করে যারা মন্তব্য চিনতে পারে না বা হয়
এটি করার জন্য কনফিগার করা হয়নি কারণ তারা পাঠ্যের চারপাশে "বাউন্স" করতে পারে না।
সার্জারির -cscb উপযুক্ত ভারসাম্য যুক্ত করে তাদের সাহায্য করার জন্য পতাকা যুক্ত করা হয়েছে
গঠন:
perltidy -csc -cscb
} ## শেষ আমার $foo (বাছাই করুন { $b cmp $a ... })
ডিফল্ট হয় -cscb.
-csce=n, বা --ক্লোজিং-সাইড-কমেন্ট-অন্য-পতাকা=n
ডিফল্ট, এন = 0, যেকোনো টার্মিনালের পরে খোলার "if" বিবৃতির পাঠ্য রাখে
"অন্য"
If এন = 2 ব্যবহার করা হয়, তারপর প্রতিটি "elsif"-কেও খোলার পাঠ্য দেওয়া হয় "if"
বিবৃতি এছাড়াও, একটি "অন্য" একটি পূর্ববর্তী "এলসিফ" এর পাঠ অন্তর্ভুক্ত করবে
বিবৃতি মনে রাখবেন যে এর ফলে কিছু দীর্ঘ ক্লোজিং সাইড মন্তব্য হতে পারে।
If এন = 1 ব্যবহার করা হয়, ফলাফল হিসাবে একই হবে এন = 2 যখনই ফলাফল রেখা
দৈর্ঘ্য সর্বাধিক অনুমোদিত চেয়ে কম। = আইটেম -cscb, বা
--ক্লোজিং-পার্শ্ব-মন্তব্য-ভারসাম্য
ক্লোজিং-পার্শ্ব-মন্তব্য, এবং ক্লোজিং-সাইড-মন্তব্য-সর্বোচ্চ-পাঠ্য সীমা ব্যবহার করার সময়
অতিক্রম করা হয়, তারপর মন্তব্য পাঠ্য সংক্ষিপ্ত করা আবশ্যক. এটি দিয়ে শেষ করা হয়
তিনটি বিন্দু যদি -cscb পতাকা অস্বীকার করা হয়:
perltidy -csc -ncscb
} ## শেষ আমার $foo (বাছাই করুন { $b cmp $a ...
এটি পুরানো সম্পাদকদের সাথে একটি সমস্যা সৃষ্টি করে যারা মন্তব্যগুলিকে স্বীকৃতি দেয় না
তারা সঠিকভাবে পাঠ্যের চারপাশে "বাউন্স" করতে পারে না। দ্য -cscb পতাকা সাহায্য করার চেষ্টা করে
উপযুক্ত টার্মিনাল ব্যালেন্সিং স্ট্রাকচার যোগ করে সেগুলি:
perltidy -csc -cscb
} ## শেষ আমার $foo (বাছাই করুন { $b cmp $a ... })
ডিফল্ট হয় -cscb.
-cscw, বা --ক্লোজিং-পার্শ্ব-মন্তব্য-সতর্কতা
এই পরামিতি ব্যবহার করার জন্য প্রাথমিক রূপান্তর করতে সাহায্য করার উদ্দেশ্যে করা হয়
ক্লোজিং সাইড কমেন্ট। একটি ক্লোজিং সাইড মন্তব্য হলে এটি দুটি জিনিস ঘটতে পারে
একটি বিদ্যমান, ভিন্ন ক্লোজিং সাইড কমেন্ট প্রতিস্থাপন করে: প্রথমত, একটি ত্রুটি বার্তা
জারি করা হবে, এবং দ্বিতীয়ত, মূল পাশের মন্তব্যটি একা রাখা হবে a তে
পরবর্তী মনোযোগের জন্য নতুন বিশেষভাবে চিহ্নিত মন্তব্য লাইন।
উদ্দেশ্য হ'ল বিদ্যমান হাতে লেখা পার্শ্ব মন্তব্যগুলিকে ক্লোবারিং এড়াতে যা ঘটতে পারে৷
ক্লোজিং সাইড কমেন্টের প্যাটার্নের সাথে মেলে। এই পতাকা শুধুমাত্র প্রয়োজন হবে
সঙ্গে প্রথম রান -csc.
গুরুত্বপূর্ণ নোট on সমাপনী পাশ মন্তব্যসমূহ:
· ক্লোজিং সাইড কমেন্টগুলি শুধুমাত্র ক্লোজিং ব্রেস দিয়ে শেষ করা লাইনে রাখা হয়।
কিছু ক্লোজিং শৈলী, যেমন cuddled elses ব্যবহার (-এই), বাদ দিন
কিছু ক্লোজিং সাইড মন্তব্য প্রজন্ম।
· অনুগ্রহ করে মনে রাখবেন যে ক্লোজিং সাইড কমেন্ট যোগ করা বা মুছে ফেলা শুধুমাত্র সঞ্চালিত হয়
আদেশের মাধ্যমে -csc or -dcsc. অন্যান্য কমান্ড, যদি ব্যবহার করা হয়, শুধুমাত্র সংশোধন করা হয়
এই দুটি আদেশের আচরণ.
· এটি সুপারিশ করা হয় যে -cscw সঙ্গে পতাকা ব্যবহার করতে হবে -csc প্রথম ব্যবহারের উপর
একটি প্রদত্ত ফাইলে perltidy. এটি কোন বিদ্যমান পার্শ্ব মন্তব্য ক্ষতি প্রতিরোধ করবে
যে ডেটাতে csc উপসর্গ থাকে।
· একবার ব্যবহার করুন -csc, আপনার এটি ব্যবহার করা চালিয়ে যাওয়া উচিত যাতে কোনো ক্লোজিং সাইড মন্তব্য করতে পারে
কোড পরিবর্তনের সাথে সাথে সঠিক থাকে। অন্যথায়, এই মন্তব্যগুলি ভুল হয়ে যাবে
কোড আপডেট করা হয় হিসাবে.
· যদি আপনি perltidy দ্বারা উত্পন্ন ক্লোজিং সাইড মন্তব্য সম্পাদনা করেন, তাহলে আপনাকে অবশ্যই পরিবর্তন করতে হবে
উপসর্গটি ক্লোজিং সাইড কমেন্ট প্রিফিক্স থেকে আলাদা হতে হবে। অন্যথায়, আপনার
আপনি perltidy এর সাথে পুনরায় রান করলে সম্পাদনাগুলি হারিয়ে যাবে৷ -csc. উদাহরণস্বরূপ, আপনি পারেন
শুধুমাত্র "## শেষ" পরিবর্তন করে "## শেষ" করুন, যেহেতু পরীক্ষাটি কেস সংবেদনশীল। আপনি পারেন
এছাড়াও ব্যবহার করতে চান -ssc এই পরিবর্তিত ক্লোজিং সাইড কমেন্ট স্পেস রাখতে ফ্ল্যাগ করুন
প্রকৃত সমাপনী পার্শ্ব মন্তব্য হিসাবে একই.
· সাময়িকভাবে ক্লোজিং সাইড কমেন্ট তৈরি করা অন্বেষণের জন্য একটি কার্যকর কৌশল
এবং/অথবা একটি পার্ল স্ক্রিপ্ট ডিবাগ করা, বিশেষ করে অন্য কারো দ্বারা লিখিত একটি। তুমি পারবে
সবসময় সঙ্গে তাদের অপসারণ -dcsc.
স্ট্যাটিক ব্লক মন্তব্য
স্ট্যাটিক ব্লক মন্তব্য হল একটি বিশেষ অগ্রণী প্যাটার্ন সহ ব্লক মন্তব্য, "##" দ্বারা
ডিফল্ট, যা অন্যান্য ব্লক মন্তব্য থেকে সামান্য ভিন্নভাবে বিবেচনা করা হবে। তারা
কার্যকরভাবে আচরণ করুন যেন তারা তাদের বাম এবং উপরের প্রান্ত বরাবর আঠালো, কারণ তারা
বাম প্রান্ত এবং পূর্ববর্তী লাইনে লেগে থাকুন যখন সেগুলিতে কোন ফাঁকা স্থান নেই
জায়গা. এই বিকল্পটি কমেন্ট করা কোড কেমন তা নিয়ন্ত্রণ করার জন্য বিশেষভাবে উপযোগী
প্রদর্শিত
-sbc, --স্ট্যাটিক-ব্লক-মন্তব্য
কখন -sbc ব্যবহৃত হয়, একটি বিশেষ অগ্রণী প্যাটার্ন সহ একটি ব্লক মন্তব্য, "##" দ্বারা
ডিফল্ট, বিশেষভাবে চিকিত্সা করা হবে.
চিহ্নিত মন্তব্যগুলিকে নিম্নরূপ বিবেচনা করা হয়:
· লাইনে লিডিং স্পেস না থাকলে কমেন্ট হবে না
ইন্ডেন্ট করা, এবং অন্যথায় এটি হতে পারে,
এই ধরনের মন্তব্যের আগে কোনো নতুন ফাঁকা লাইন ঢোকানো হবে না, এবং
এই ধরনের মন্তব্য কখনই ঝুলন্ত পার্শ্ব মন্তব্যে পরিণত হবে না।
উদাহরণস্বরূপ, ধরে নেওয়া হচ্ছে @month_of_year বাম-সামঞ্জস্য করা হয়েছে:
@month_of_year = ( # -sbc (ডিফল্ট)
'জান', 'ফেব্রুয়ারি', 'মার', 'এপ্রিল', 'মে', 'জুন', 'জুল', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর',
## 'ডিসেম্বর', 'নভেম্বর'
'নভেম্বর', 'ডিসেম্বর');
এই কনভেনশন ছাড়া, উপরের কোড হয়ে যাবে
@month_of_year = ( # -nsbc
'জান', 'ফেব্রুয়ারি', 'মার', 'এপ্রিল', 'মে', 'জুন', 'জুল', 'আগস্ট', 'সেপ্টেম্বর', 'অক্টোবর',
## 'ডিসেম্বর', 'নভেম্বর'
'নভেম্বর', 'ডিসেম্বর'
);
যা স্পষ্ট নয়। ডিফল্ট ব্যবহার করা হয় -sbc. এটি দিয়ে নিষ্ক্রিয় করা হতে পারে
-এনএসবিসি.
-sbcp=স্ট্রিং, --static-block-comment-prefix=string
এই প্যারামিটারটি স্ট্যাটিক ব্লক মন্তব্য সনাক্ত করতে ব্যবহৃত উপসর্গ সংজ্ঞায়িত করে যখন
-sbc পরামিতি সেট করা হয়। ডিফল্ট উপসর্গ হল "##", "-sbcp=##" এর সাথে সম্পর্কিত।
উপসর্গটি আসলে একটি পার্ল প্যাটার্নের অংশ যা লাইনের সাথে মেলে এবং এটি অবশ্যই করা উচিত
হয় "#" বা "^#" দিয়ে শুরু করুন। প্রথম ক্ষেত্রে একটি উপসর্গ ^\s* যোগ করা হবে
যেকোন অগ্রগণ্য হোয়াইটস্পেস মেলে, যখন দ্বিতীয় ক্ষেত্রে প্যাটার্নটি শুধুমাত্র মেলে
কোন নেতৃস্থানীয় হোয়াইটস্পেস ছাড়া মন্তব্য. উদাহরণস্বরূপ, হিসাবে সমস্ত মন্তব্য সনাক্ত করতে
স্ট্যাটিক ব্লক মন্তব্য, কেউ "-sbcp=#" ব্যবহার করবে। সমস্ত বাম সামঞ্জস্য সনাক্ত করতে
স্ট্যাটিক ব্লক মন্তব্য হিসাবে মন্তব্য, "-sbcp='^#'" ব্যবহার করুন।
দয়া করে মনে রাখবেন -sbcp শুধুমাত্র স্ট্যাটিক ব্লক সনাক্ত করতে ব্যবহৃত প্যাটার্ন সংজ্ঞায়িত করে
মন্তব্য সুইচ না হলে এটি ব্যবহার করা হবে না -sbc সেট করা হয় এছাড়াও, হতে হবে
সচেতন যে যেহেতু এই স্ট্রিংটি একটি পার্ল রেগুলার এক্সপ্রেশনে ব্যবহৃত হয় যা সনাক্ত করে
এই মন্তব্য, এটি একটি বৈধ রেগুলার এক্সপ্রেশন গঠন করতে সক্ষম হবে।
একটি প্যাটার্ন যা দরকারী হতে পারে:
-sbcp=^#{2,}[^\s#]
এই প্যাটার্নের জন্য একটি স্ট্যাটিক ব্লক মন্তব্য প্রয়োজন যাতে অন্তত একটি অক্ষর থাকে
একটি # বা স্থান নয়। এটি শুধুমাত্র '#' অক্ষর ধারণকারী একটি লাইন হতে অনুমতি দেয়
একটি স্ট্যাটিক ব্লক মন্তব্য হিসাবে প্রত্যাখ্যাত. এই ধরনের লাইন প্রায়ই শুরুতে ব্যবহার করা হয় এবং
সাবরুটিনে হেডার তথ্যের শেষ এবং থেকে আলাদা করা উচিত নয়
হস্তক্ষেপকারী মন্তব্য, যা সাধারণত শুধুমাত্র একটি '#' দিয়ে শুরু হয়।
-ওএসবিসি, --আউটডেন্ট-স্ট্যাটিক-ব্লক-মন্তব্য
আদেশ -ওএসবিসি স্ট্যাটিক ব্লক মন্তব্যগুলিকে 2টি স্পেস (বা
যাই হোক -ci=n সেট করা হয়েছে), যদি সম্ভব হয়।
স্ট্যাটিক সাইড মন্তব্য
স্ট্যাটিক পার্শ্ব মন্তব্য একটি বিশেষ অগ্রণী প্যাটার্ন সঙ্গে পার্শ্ব মন্তব্য. এই বিকল্প
কমেন্ট করা কোড কিভাবে প্রদর্শিত হয় তা নিয়ন্ত্রণ করার জন্য উপযোগী হতে পারে যখন এটি একটি পাশ থাকে
মন্তব্য।
-ssc, --স্ট্যাটিক-পার্শ্ব-মন্তব্য
কখন -ssc ব্যবহৃত হয়, একটি স্ট্যাটিক লিডিং প্যাটার্ন সহ একটি পার্শ্ব মন্তব্য, যা "##" দ্বারা
ডিফল্ট, পূর্ববর্তী অক্ষর থেকে শুধুমাত্র একটি স্থান ব্যবধান করা হবে, এবং এটি হবে
অন্য দিকের মন্তব্যের সাথে উল্লম্বভাবে সারিবদ্ধ হবে না।
ডিফল্ট হয় -nssc.
-sscp=স্ট্রিং, --static-side-comment-prefix=string
এই প্যারামিটারটি স্ট্যাটিক পার্শ্ব মন্তব্য সনাক্ত করতে ব্যবহৃত উপসর্গ সংজ্ঞায়িত করে যখন
-ssc পরামিতি সেট করা হয়। ডিফল্ট উপসর্গ হল "##", "-sscp=##" এর সাথে সম্পর্কিত।
দয়া করে মনে রাখবেন -sscp শুধুমাত্র স্ট্যাটিক দিক সনাক্ত করতে ব্যবহৃত প্যাটার্ন সংজ্ঞায়িত করে
মন্তব্য সুইচ না হলে এটি ব্যবহার করা হবে না -ssc সেট করা হয় এছাড়াও, নোট করুন যে এই
স্ট্রিং একটি পার্ল রেগুলার এক্সপ্রেশনে ব্যবহৃত হয় যা এই মন্তব্যগুলিকে চিহ্নিত করে, তাই এটি
একটি বৈধ রেগুলার এক্সপ্রেশন গঠন করতে সক্ষম হওয়া আবশ্যক।
কুঁদন নির্বাচিত সেকশনস of কোড
কোডের নির্বাচিত লাইনগুলি কোনো বিন্যাস ছাড়াই আউটপুটে মৌখিকভাবে পাস করা যেতে পারে। এই
বৈশিষ্ট্যটি ডিফল্টরূপে সক্রিয় থাকে তবে এর সাথে অক্ষম করা যেতে পারে --noformat-skipping or -এনএফএস
পতাকা মার্কার সহ লিটারিং কোড এড়াতে এটি অল্প ব্যবহার করা উচিত, তবে এটি হতে পারে
মাঝে মাঝে সমস্যা সমাধানের জন্য সহায়ক। উদাহরণস্বরূপ এটি জন্য দরকারী হতে পারে
পুরানো মন্তব্য কোডের ইন্ডেন্টেশন অপরিবর্তিত রাখা, লম্বা ইন্ডেন্টেশন রাখা
সারিবদ্ধ মন্তব্যের ব্লক অপরিবর্তিত, নির্দিষ্ট তালিকা বিন্যাস অপরিবর্তিত রাখা, বা
perltidy মধ্যে একটি ত্রুটি কাছাকাছি কাজ.
-এফএস, --ফরম্যাট-এড়িয়ে যাওয়া
এই পতাকা, যা ডিফল্টরূপে সক্রিয় থাকে, বিশেষ শুরু এবং এর মধ্যে যেকোন কোড সৃষ্টি করে
শেষ মন্তব্য মার্কার বিন্যাস ছাড়া আউটপুটে পাস করা হবে. ডিফল্ট
প্রারম্ভিক মার্কার হল #<<< এবং ডিফল্ট শেষ মার্কার হল #>>> তবে সেগুলি পরিবর্তন করা যেতে পারে
(নীচে পরবর্তী আইটেম দেখুন)। এই বিশেষ মন্তব্য লাইনে অতিরিক্ত পাঠ্য উপস্থিত হতে পারে
শর্ত থাকে যে এটি মার্কার থেকে কমপক্ষে একটি স্থান দ্বারা পৃথক করা হয়। উদাহরণ স্বরূপ
#<<< পারলটিডিকে এটি স্পর্শ করতে দেবেন না
আমার @তালিকা = (1,
1, 1,
1, 2, 1,
1, 3, 3, 1,
1, 4, 6, 4, 1,);
#>>>
মন্তব্য মার্কারগুলি যে কোনও স্থানে স্থাপন করা যেতে পারে যেখানে একটি ব্লক মন্তব্য প্রদর্শিত হতে পারে। যদি
তারা কাজ করছে বলে মনে হচ্ছে না, -log পতাকা ব্যবহার করুন এবং পরীক্ষা করুন .LOG ফাইল ব্যবহার করুন
-এনএফএস এই বৈশিষ্ট্য নিষ্ক্রিয় করতে.
-fsb=স্ট্রিং, --format-skipping-begin=স্ট্রিং
সার্জারির -fsb=স্ট্রিং পরামিতি বিন্যাসের জন্য প্রারম্ভিক মার্কার পরিবর্তন করতে ব্যবহার করা যেতে পারে
এড়িয়ে যাওয়া ডিফল্ট -fsb='#<<<' এর সমতুল্য। আপনি লিখতে হবে যে স্ট্রিং
একটি # দিয়ে শুরু করুন এবং এর কমান্ড শেল অতিক্রম করার জন্য প্রয়োজনীয় উদ্ধৃতিতে থাকা উচিত
আপনার সিস্টেম। এটি আসলে একটি প্যাটার্নের নেতৃস্থানীয় পাঠ্য যা দ্বারা নির্মিত হয়
একটি '\s' যুক্ত করা হচ্ছে, তাই অক্ষর নেওয়ার জন্য আপনাকে অবশ্যই ব্যাকস্ল্যাশ অন্তর্ভুক্ত করতে হবে
আক্ষরিক বরং নিদর্শন হিসাবে.
কিছু উদাহরণ দেখায় কিভাবে উদাহরণ স্ট্রিং নিদর্শন হয়:
-fsb='#\{\{\{' হয়ে যায় /^#\{\{\{\s/ যা #{{{ মেলে কিন্তু #{{{{ নয়
-fsb='#\*\*' হয়ে যায় /^#\*\*\s/ যা #** মেলে কিন্তু #*** নয়
-fsb='#\*{2,}' হয়ে যায় /^#\*{2,}\s/ যা #** এবং #***** মেলে
-fse=স্ট্রিং, --format-skipping-end=string
সার্জারির -fsb=স্ট্রিং এর সমাপ্তি চিহ্নিতকারী পরিবর্তন করতে ব্যবহৃত সংশ্লিষ্ট প্যারামিটার
ফরম্যাট এড়িয়ে যাওয়া। ডিফল্ট -fse='#<<<' এর সমতুল্য।
লাইন বিরতি নিয়ন্ত্রণ
এই বিভাগের নিয়ন্ত্রণের প্যারামিটারগুলি কোডের অ-খালি লাইনের পরে বিরতি দেয়। ফাঁকা লাইন
"ব্ল্যাঙ্ক লাইন কন্ট্রোল" বিভাগে পরামিতি দ্বারা পৃথকভাবে নিয়ন্ত্রিত হয়।
-fnl, --ফ্রিজ-নতুন লাইন
আপনি যদি আপনার স্ক্রিপ্টের কোডের লাইনের মধ্যে লাইন বিরতিতে কোনো পরিবর্তন না চান,
সেট -fnl, এবং তারা স্থির থাকবে, এবং এই বিভাগে বাকি কমান্ড এবং
বিভাগ "নিয়ন্ত্রিত তালিকা বিন্যাস", "বিদ্যমান লাইন বিরতি বজায় রাখা বা উপেক্ষা করা"।
আপনি ব্যবহার করতে পারেন -নোল এর সাথে.
দ্রষ্টব্য: আপনি যদি আপনার ফাঁকা লাইনগুলি ঠিক সেরকম রাখতে চান তবে আপনি ব্যবহার করতে পারেন
-fbl পতাকা যা "ব্ল্যাঙ্ক লাইন কন্ট্রোল" বিভাগে বর্ণিত হয়েছে।
-এই, --আলিঙ্গন-অন্য
"cuddled else" শৈলী সক্ষম করুন, যেখানে "else" এবং "elsif" অবিলম্বে অনুসরণ করা হয়
কোঁকড়া বন্ধনী পূর্ববর্তী ব্লক বন্ধ করার পরে. ডিফল্ট cuddled ব্যবহার করা হয় না
elses, এবং পতাকা দিয়ে নির্দেশিত হয় -nce or --nocuddled- else. এখানে একটি তুলনা
বিকল্পগুলির মধ্যে:
যদি ($টাস্ক) {
yy();
} অন্য { # -ce
zzz();
}
যদি ($টাস্ক) {
yy();
}
অন্য { # -nce (ডিফল্ট)
zzz();
}
-বিএল, --ওপেনিং-ব্রেস-অন-নতুন-লাইন
পতাকা ব্যবহার করুন -বিএল একটি নতুন লাইনে খোলার বন্ধনী স্থাপন করতে:
যদি ( $input_file eq '-' ) # -bl
{
গুরুত্বপূর্ণ_ফাংশন();
}
এই পতাকাটি সমস্ত কাঠামোগত ব্লকের জন্য প্রযোজ্য, নামযুক্ত সাব সহ (যদি না -sbl
পতাকা সেট করা হয়েছে -- পরবর্তী আইটেম দেখুন)।
ডিফল্ট শৈলী, -এনবিএল, কীওয়ার্ডের মতো একই লাইনে একটি খোলার বন্ধনী স্থাপন করে
এটা প্রবর্তন. উদাহরণ স্বরূপ,
যদি ( $input_file eq '-' ) { # -nbl (ডিফল্ট)
-sbl, --ওপেনিং-সাব-ব্রেস-অন-নতুন-লাইন
পতাকাটি -sbl এর মান ওভাররাইড করতে ব্যবহার করা যেতে পারে -বিএল নামের খোলার ধনুর্বন্ধনী জন্য
সাব এর উদাহরণ স্বরূপ,
perltidy -sbl
এই ফলাফল তৈরি করে:
উপ বার্তা
{
যদি (!সংজ্ঞায়িত($__[0])) {
প্রিন্ট ("হ্যালো, ওয়ার্ল্ড\n");
}
অন্য {
মুদ্রণ($__[0], "\n");
}
}
এই পতাকা সঙ্গে বর্জন করা হয় -এনএসবিএল। যদি -sbl নির্দিষ্ট করা নেই, এর মান -বিএল ব্যবহৃত হয়.
-asbl, --ওপেনিং-অনামী-সাব-ব্রেস-অন-নতুন-লাইন
পতাকাটি -asbl মত -sbl পতাকা ছাড়া এটি বেনামী সাব এর পরিবর্তে প্রযোজ্য
নামকৃত সদস্যদের উদাহরণ স্বরূপ
perltidy -asbl
এই ফলাফল তৈরি করে:
$a = সাব
{
যদি ( !সংজ্ঞায়িত ($_[0] ) ) {
প্রিন্ট ("হ্যালো, ওয়ার্ল্ড\n");
}
অন্য {
মুদ্রণ ($__[0], "\n");
}
};
এই পতাকা সঙ্গে বর্জন করা হয় -nasbl, এবং ডিফল্ট হয় -nasbl.
-ব্লি, --বন্ধনী-বাম-এবং-ইন্ডেন্ট
পতাকাটি -ব্লি হিসাবে একই -বিএল কিন্তু উপরন্তু এটি ধারাবাহিকতা একটি ইউনিট কারণ
ইন্ডেন্টেশন (দেখুন -এই ) একটি খোলার এবং বন্ধ বন্ধনী বন্ধনীর আগে স্থাপন করতে হবে।
উদাহরণ স্বরূপ,
যদি ( $input_file eq '-' ) # -bli
{
গুরুত্বপূর্ণ_ফাংশন();
}
ডিফল্টরূপে, এই অতিরিক্ত ইন্ডেন্টেশন প্রকারের ব্লকের জন্য ঘটে: if, elsif, আর, যদি না,
উন্নত , প্রতিটির জন্য, উপ, যখন, পর্যন্ত, এবং একটি পূর্ববর্তী লেবেল সহ। পরবর্তী আইটেম দেখায়
কিভাবে এটি পরিবর্তন করতে হবে।
-ব্লিল=স, --বন্ধনী-বাম-এবং-ইন্ডেন্ট-তালিকা=s
ব্লক ধনুর্বন্ধনী ধরনের পরিবর্তন করতে এই পরামিতি ব্যবহার করুন যার জন্য -ব্লি পতাকা
প্রযোজ্য; "ব্লকের প্রকারগুলি নির্দিষ্ট করা" দেখুন। উদাহরণ স্বরূপ, -blil='if elsif অন্য' প্রযোজ্য হবে
এটি শুধুমাত্র "if/elsif/else" ব্লকে।
-bar, --ওপেনিং-ব্রেস-সর্বদা-ডানদিকে
ডিফল্ট শৈলী, -এনবিএল খোলার কোড ব্লক ব্রেস একটি নতুন লাইনে স্থাপন করে যদি এটি করে
ওপেনিং কীওয়ার্ডের মতো একই লাইনে ফিট নয়, যেমন:
যদি ( $bigwasteofspace1 && $bigwasteofspace2
|| $bigwasteofspace3 && $bigwasteofspace4 )
{
big_waste_of_time();
}
খোলার বন্ধনীটি সর্বদা ডানদিকে থাকতে বাধ্য করতে, ব্যবহার করুন -bar পতাকা এই
ক্ষেত্রে, উপরের উদাহরণ হয়ে যায়
যদি ( $bigwasteofspace1 && $bigwasteofspace2
|| $bigwasteofspace3 && $bigwasteofspace4 ) {
big_waste_of_time();
}
উভয় ক্ষেত্রেই সংঘর্ষ হয় -বিএল এবং -bar নির্দিষ্ট করা হয়।
-otr, --ওপেনিং-টোকেন-ডান এবং সম্পর্কিত পতাকা
সার্জারির -otr পতাকা একটি ইঙ্গিত যে perltidy একটি কমা এবং একটি মধ্যে বিরতি স্থাপন করা উচিত নয়
খোলার টোকেন। উদাহরণ স্বরূপ:
# ডিফল্ট বিন্যাস
পুশ করুন @{ $self->{$module}{$key} },
{
accno => $ref->{accno},
description => $ref->{description}
};
# perltidy -otr
পুশ @{ $self->{$module}{$key} }, {
accno => $ref->{accno},
description => $ref->{description}
};
পতাকাটি -otr আসলে তিনটি অন্যান্য পতাকার সংক্ষিপ্ত রূপ যা ব্যবহার করা যেতে পারে
কন্ট্রোল প্যারেন, হ্যাশ ব্রেস, এবং বর্গাকার বন্ধনী আলাদাভাবে যদি ইচ্ছা হয়:
-opr বা --opening-paren-right
-ohbr বা --opening-hash-brace-right
-osbr বা --opening-square-bracket-right
নন-ব্লক কোঁকড়া ধনুর্বন্ধনী, বন্ধনী এবং বর্গাকার বন্ধনীগুলির উল্লম্ব নিবিড়তা।
এই পরামিতিগুলি নিয়ন্ত্রণ করে যাকে উল্লম্ব নিবিড়তা বলা হবে। এখানে প্রধান
পয়েন্ট:
খোলার টোকেন (ব্লক ধনুর্বন্ধনী বাদে) দ্বারা নিয়ন্ত্রিত হয় -vt=n, বা
--উল্লম্ব-নিবিড়তা=n, কোথায়
-vt=0 সর্বদা টোকেন খোলার পরে একটি লাইন ভাঙ্গুন (ডিফল্ট)।
-vt=1 ভাঙবেন না যদি না এটি একাধিক উত্পাদন করে
একটি লাইনে ইন্ডেন্টেশনে ধাপ।
-vt=2 টোকেন খোলার পরে একটি লাইন ভাঙবেন না
· আপনাকে অবশ্যই ব্যবহার করতে হবে -এলপি পতাকা যখন আপনি ব্যবহার করুন -ভিটি পতাকা কারণ ব্যাখ্যা করা হয়
নিচে.
· ক্লোজিং টোকেন (ব্লক ধনুর্বন্ধনী বাদে) দ্বারা নিয়ন্ত্রিত হয় -vtc=n, বা
--উল্লম্ব-নিবিড়তা-ক্লোজিং=n, কোথায়
-vtc=0 সর্বদা একটি ক্লোজিং টোকেন (ডিফল্ট) আগে একটি লাইন ভাঙ্গুন,
-vtc=1 ক্লোজিং টোকেন অনুসরণ করার আগে ভাঙবেন না
একটি সেমিকোলন বা অন্য ক্লোজিং টোকেন দ্বারা, এবং এর মধ্যে নেই৷
একটি তালিকা পরিবেশ।
-vtc=2 ক্লোজিং টোকেনের আগে কখনই ভাঙ্গবেন না।
জন্য নিয়ম -vtc=1 মধ্যে একটি যুক্তিসঙ্গত ভারসাম্য বজায় রাখার জন্য ডিজাইন করা হয়েছে
জটিল তালিকায় নিবিড়তা এবং পঠনযোগ্যতা।
· বিভিন্ন টোকেন প্রকারে বিভিন্ন নিয়ন্ত্রণ প্রয়োগ করা যেতে পারে, এবং এটিও
ব্লক বন্ধনী নিয়ন্ত্রণ করা সম্ভব; নিচে দেখ.
· পরিশেষে, অনুগ্রহ করে মনে রাখবেন যে এই উল্লম্ব টাইটনেস পতাকাগুলি কেবলমাত্র ইঙ্গিত দেয়
ফরম্যাটার, এবং এটি সর্বদা তাদের অনুসরণ করতে পারে না। জিনিস যা এটা কঠিন বা
অসম্ভবের মধ্যে রয়েছে মন্তব্য, ফাঁকা লাইন, তালিকার মধ্যে কোডের ব্লক, এবং
সম্ভবত অভাব -এলপি প্যারামিটার এছাড়াও, এই পতাকাগুলি খুব উপেক্ষা করা যেতে পারে
ছোট তালিকা (দৈর্ঘ্যে 2 বা 3 লাইন)।
এখানে কিছু উদাহরন:
# perltidy -lp -vt=0 -vtc=0
% romanNumerals = (
one => 'আমি',
দুই => 'II',
তিন => 'III',
চার => 'IV',
);
# perltidy -lp -vt=1 -vtc=0
% romanNumerals = ( one => 'I',
দুই => 'II',
তিন => 'III',
চার => 'IV',
);
# perltidy -lp -vt=1 -vtc=1
% romanNumerals = ( one => 'I',
দুই => 'II',
তিন => 'III',
চার => 'IV', );
দুইটার মধ্যে পার্থক্য -vt=1 এবং -vt=2 এখানে দেখানো হয়েছে:
# perltidy -lp -vt=1
$init->যোগ করুন(
mysprintf( "(void)find_threadsv(%s);",
cstring( $threadsv_names[ $op->targ ] )
)
);
# perltidy -lp -vt=2
$init->add( mysprintf( "(void)find_threadsv(%s);",
cstring( $threadsv_names[ $op->targ ] )
)
);
সঙ্গে -vt=1, "add(" এ শেষ হওয়া লাইনটি পরবর্তী লাইনের সাথে একত্রিত হয় না কারণ
পরবর্তী লাইন ভারসাম্যপূর্ণ নয়। এই পঠনযোগ্যতা সঙ্গে সাহায্য করতে পারেন, কিন্তু -vt=2 ব্যবহার করা যেতে পারে
এই নিয়ম উপেক্ষা করুন।
সবচেয়ে শক্ত, এবং সবচেয়ে কম পঠনযোগ্য, কোডটি "-vt=2" এবং "-vtc=2" উভয়ের সাথে তৈরি করা হয়:
# perltidy -lp -vt=2 -vtc=2
$init->add( mysprintf( "(void)find_threadsv(%s);",
cstring( $threadsv_names[ $op->targ ] ) ) );
এই সমস্ত উদাহরণের কোডটি কীভাবে উল্লম্বভাবে ভেঙে পড়ে তা লক্ষ্য করুন -ভিটি বৃদ্ধি,
কিন্তু ইন্ডেন্টেশন অপরিবর্তিত থাকে। এটি কারণ perltidy প্রয়োগ করে -ভিটি
প্রথম বিন্যাস দ্বারা পরামিতি যদি -vt=0, এবং তারপর কেবল একটি আউটপুট লাইন ওভাররাইট করা
পরবর্তী উপরে, যদি সম্ভব হয়, পছন্দসই উল্লম্ব নিবিড়তা অর্জন করতে। দ্য -এলপি
ইন্ডেন্টেশন শৈলী এই উল্লম্ব পতন ঘটতে অনুমতি দেওয়ার জন্য ডিজাইন করা হয়েছে, যা
কেন এটা জন্য প্রয়োজন -ভিটি প্যারামিটার।
সার্জারির -vt=n এবং -vtc=n প্যারামিটার প্রতিটি ধরনের ধারক টোকেন প্রযোজ্য. যদি ইচ্ছা হয়,
উল্লম্ব নিবিড়তা নিয়ন্ত্রণ প্রতিটি বন্ধে স্বাধীনভাবে প্রয়োগ করা যেতে পারে
ধারক টোকেন প্রকার।
বন্ধনী নিয়ন্ত্রণের পরামিতি হল -pvt=n or --প্যারেন-উল্লম্ব-নিরুদ্ধতা=n,
এবং -pcvt=n or --প্যারেন-উল্লম্ব-টাইটনেস-ক্লোজিং=n.
একইভাবে, বর্গাকার বন্ধনীর পরামিতিগুলি হল -sbvt=n or
--বর্গাকার-বন্ধনী-উল্লম্ব-নিজোড়তা=n, এবং -sbcvt=n or
--বর্গাকার-বন্ধনী-উল্লম্ব-নিরুদ্ধতা-ক্লোজিং=n.
অবশেষে, নন-কোড ব্লক বন্ধনী নিয়ন্ত্রণের পরামিতি হল -bvt=n or
--বন্ধনী-উল্লম্ব-নিবিড়তা=n, এবং -bcvt=n or --বন্ধনী-উল্লম্ব-নিরুদ্ধতা-ক্লোজিং=n.
আসলে, পরামিতি -vt=n আসলে জন্য একটি সংক্ষিপ্ত রূপ -pvt=n -bvt=n
sbvt=n, এবং একইভাবে -vtc=n এর জন্য একটি সংক্ষিপ্ত রূপ -pvtc=n -bvtc=n sbvtc=n.
-bbvt=n or --ব্লক-বন্ধনী-উল্লম্ব-নিরুদ্ধতা=n
সার্জারির -bbvt=n পতাকা ঠিক মত -vt=n পতাকা কিন্তু খোলার কোড ব্লক ধনুর্বন্ধনী প্রযোজ্য.
-bbvt=0 ব্লক ব্রেস খোলার পরে বিরতি (ডিফল্ট)।
-bbvt=1 ভাঙবেন না যদি না এটি একাধিক উত্পাদন করে
একটি লাইনে ইন্ডেন্টেশনে ধাপ।
-bbvt=2 ব্লক ব্রেস খোলার পরে ভাঙ্গবেন না।
এটি উভয় ব্যবহার করা প্রয়োজন -বিএল or -ব্লি এই কাজ করার জন্য, কারণ, সঙ্গে হিসাবে
অন্যান্য উল্লম্ব নিবিড়তা নিয়ন্ত্রণ, এটি কেবল একটি লাইন ওভাররাইট করে প্রয়োগ করা হয়
পরবর্তী লাইনের সাথে একটি খোলার ব্লক ব্রেস দিয়ে শেষ। উদাহরণ স্বরূপ:
# perltidy -bli -bbvt=0
যদি ( খুলুন ( FILE , "< $File" ) )
{
যখন ( $ফাইল = )
{
$In .= $File;
$count++;
}
বন্ধ (ফাইল);
}
# perltidy -bli -bbvt=1
যদি ( খুলুন ( FILE , "< $File" ) )
{ যখন ( $ফাইল = )
{ $In .= $File;
$count++;
}
বন্ধ (ফাইল);
}
ডিফল্টরূপে এটি কীওয়ার্ডের সাথে যুক্ত ব্লকের ক্ষেত্রে প্রযোজ্য if, elsif, আর, যদি না,
উন্নত , প্রতিটির জন্য, উপ, যখন, পর্যন্ত, এবং একটি পূর্ববর্তী লেবেল সহ। এই পরিবর্তন করা যেতে পারে
পরামিতি সহ -bbvtl=স্ট্রিং, বা --block-brace-vertical-tightness-list=string,
কোথায় স্ট্রিং ব্লক প্রকারের একটি স্থান-বিচ্ছিন্ন তালিকা। আরো তথ্যের জন্য
এই স্ট্রিং এর সম্ভাব্য মান, দেখুন "ব্লক প্রকার নির্দিষ্ট করা"
উদাহরণস্বরূপ, যদি আমরা এই স্টাইলটি শুধুমাত্র "if", "elsif" এবং "else" ব্লকগুলিতে প্রয়োগ করতে চাই,
আমরা "perltidy -bli -bbvt=1 -bbvtl='if elsif else'" ব্যবহার করতে পারি।
ব্লক বন্ধনী বন্ধ করার জন্য কোন উল্লম্ব নিবিড়তা নিয়ন্ত্রণ নেই; একটি ব্যতিক্রম সঙ্গে
তাদের আলাদা লাইনে স্থাপন করা হবে। ব্যতিক্রম যে বন্ধ একটি ক্যাসকেড
ব্লক বন্ধনী একটি একক লাইনে স্ট্যাক করা হতে পারে। দেখা -scbb.
-সোট, --স্ট্যাক-ওপেনিং-টোকেন এবং সম্পর্কিত পতাকা
সার্জারির -সোট পতাকা লাইন এড়াতে সম্ভব হলে খোলার টোকেন "স্ট্যাক" করতে perltidy বলে
বিচ্ছিন্ন খোলার টোকেন সহ।
উদাহরণ স্বরূপ:
# ডিফল্ট
$opt_c = পাঠ্য::CSV_XS->নতুন(
{
বাইনারি => 1,
sep_char => $opt_c,
সর্বদা_উদ্ধৃতি => 1,
}
);
# -সোট
$opt_c = পাঠ্য::CSV_XS->নতুন( {
বাইনারি => 1,
sep_char => $opt_c,
সর্বদা_উদ্ধৃতি => 1,
}
);
পৃথক ক্লোজিং টোকেনগুলির বিস্তারিত নিয়ন্ত্রণের জন্য নিম্নলিখিত নিয়ন্ত্রণগুলি ব্যবহার করা যেতে পারে:
-sop বা --stack-opening-paren
-sohb বা --স্ট্যাক-ওপেনিং-হ্যাশ-বন্ধনী
-sosb বা --স্ট্যাক-ওপেনিং-স্কয়ার-বন্ধনী
-সোব বা --স্ট্যাক-ওপেনিং-ব্লক-ব্রেস
পতাকাটি -সোট এর জন্য একটি সংক্ষিপ্ত রূপ -সপ -সোহব -sosb.
পতাকাটি - কান্না এর জন্য একটি সংক্ষিপ্ত রূপ -bbvt=2 -bbvtl='*'. এই কেস একটি ক্যাসকেড হবে
খোলার ব্লক ধনুর্বন্ধনী একটি একক লাইনে প্রদর্শিত হবে, যদিও এটি একটি অস্বাভাবিক ঘটনা
পরীক্ষার স্ক্রিপ্ট ছাড়া।
-sct, --স্ট্যাক-ক্লোজিং-টোকেন এবং সম্পর্কিত পতাকা
সার্জারির -sct পতাকা লাইন এড়াতে সম্ভব হলে ক্লোজিং টোকেনগুলিকে "স্ট্যাক" করতে বলে
বিচ্ছিন্ন ক্লোজিং টোকেন সহ।
উদাহরণ স্বরূপ:
# ডিফল্ট
$opt_c = পাঠ্য::CSV_XS->নতুন(
{
বাইনারি => 1,
sep_char => $opt_c,
সর্বদা_উদ্ধৃতি => 1,
}
);
# -sct
$opt_c = পাঠ্য::CSV_XS->নতুন(
{
বাইনারি => 1,
sep_char => $opt_c,
সর্বদা_উদ্ধৃতি => 1,
});
সার্জারির -sct পতাকা কিছুটা অনুরূপ -ভিটিসি পতাকা, এবং কিছু ক্ষেত্রে এটি একটি দিতে পারে
অনুরূপ ফলাফল। পার্থক্য হল যে -ভিটিসি পতাকা নেতৃস্থানীয় সঙ্গে লাইন এড়াতে চেষ্টা করুন
আগের লাইনের শেষে টোকেনগুলিকে "লুকিয়ে" দিয়ে খোলা, যেখানে -sct পতাকা
স্রেফ স্ট্যাকিং করে বিচ্ছিন্ন ক্লোজিং টোকেন সহ লাইনের সংখ্যা কমানোর চেষ্টা করে
তাদের কিন্তু লুকানোর চেষ্টা করে না। উদাহরণ স্বরূপ:
# -vtc=2
$opt_c = পাঠ্য::CSV_XS->নতুন(
{
বাইনারি => 1,
sep_char => $opt_c,
সর্বদা_উদ্ধৃতি => 1, });
পৃথক ক্লোজিং টোকেনগুলির স্ট্যাকিংয়ের বিস্তারিত নিয়ন্ত্রণের জন্য নিম্নলিখিতগুলি
নিয়ন্ত্রণ ব্যবহার করা যেতে পারে:
-scp বা --stack-closing-paren
-schb বা --stack-closing-hash-brace
-scsb বা --stack-closing-square-bracket
-scbb বা --stack-closing-block-brace
পতাকাটি -sct নন-ব্লক ক্লোজিং টোকেন স্ট্যাক করার জন্য একটি সংক্ষিপ্ত রূপ, -scp -schb
-scsb.
বন্ধ বন্ধনী বন্ধনীর স্ট্যাকিং, -scbb, বিচ্ছিন্ন ক্লোজিং ব্লকের একটি ক্যাসকেড ঘটায়
নিচের উদাহরণের মতো একটি একক লাইনে ব্রেসগুলিকে একত্রিত করতে হবে:
# -scbb:
$w1 (@w1) {এর জন্য
$w2 (@w2) {এর জন্য
$w3 (@w3) {এর জন্য
$w4 (@w4) {এর জন্য
ধাক্কা (@লাইন, "$w1 $w2 $w3 $w4\n");
} } } }
ইনপুট আরও সহজ করার জন্য যে ক্ষেত্রে খোলা এবং বন্ধ উভয়ই অ-
ব্লক পাত্রে স্তুপীকৃত হয়, পতাকা -থলি or --স্ট্যাক-সমস্ত-পাত্র একটি
জন্য সংক্ষেপণ -সোট -সোট.
-dnl, --মুছে ফেলুন-পুরাতন-নতুন লাইন
ডিফল্টরূপে, perltidy প্রথমে সমস্ত পুরানো লাইন বিরতি অবস্থান মুছে দেয়, এবং তারপর এটি সন্ধান করে
ভাল বিরতি পয়েন্ট পছন্দসই লাইন দৈর্ঘ্য মেলে. ব্যবহার করুন -এনডিএনএল or
--নোডেলিট-পুরাতন-নতুন লাইন সমস্ত পুরানো লাইন ব্রেক পয়েন্ট ধরে রাখতে পারলটিডিকে বাধ্য করা।
-আনল, --অ্যাড-নতুন লাইন
ডিফল্টরূপে, perltidy এর ধারাবাহিকতা তৈরি করতে প্রয়োজন হলে লাইন বিরতি যোগ করবে
দীর্ঘ লাইন এবং স্ক্রিপ্ট চেহারা উন্নত. ব্যবহার করুন - nanl or --noadd-newlines থেকে
কোনো নতুন লাইন বিরতি প্রতিরোধ করুন।
এই পতাকা বিদ্যমান লাইন বিরতি দূর করা থেকে perltidy প্রতিরোধ করে না; দেখা
--ফ্রিজ-নতুন লাইন লাইন বিরতি পয়েন্ট পরিবর্তন সম্পূর্ণরূপে প্রতিরোধ.
অপারেটর আগে বা পরে perltidy বিরতি কিনা নিয়ন্ত্রণ
চারটি কমান্ড লাইন পরামিতি একটি লাইন বিরতি হওয়া উচিত কিনা তার উপর কিছু নিয়ন্ত্রণ প্রদান করে
নির্দিষ্ট টোকেন প্রকারের আগে বা পরে। দুটি পরামিতি বিস্তারিত নিয়ন্ত্রণ দেয়:
-wba=s or --want-break-after=s, এবং
-wbb=s or --want-break-before=s.
এই পরামিতি প্রতিটি উদ্ধৃত স্ট্রিং দ্বারা অনুসরণ করা হয়, s, টোকেনের একটি তালিকা রয়েছে
প্রকারগুলি (শুধুমাত্র স্পেস দ্বারা পৃথক)। এই পরামিতিগুলির প্রতিটির একটির বেশি হওয়া উচিত নয়
নির্দিষ্ট করা হবে, কারণ একটি কমান্ড-লাইন পরামিতি পুনরাবৃত্তি করা সর্বদা ওভাররাইট করে
আগের এক আগে perltidy কখনও এটা দেখে.
ডিফল্টরূপে, perltidy বিরতি পরে এই টোকেন প্রকার:
% + - * / x != == >= <= =~ !~ < > | এবং
= **= += *= &= <<= &&= -= /= |= >>= ||= //= .= %= ^= x=
এবং perltidy বিরতি আগে এই টোকেন প্রকারগুলি ডিফল্টরূপে:
. << >> -> && || //
ব্যাখ্যা করার জন্য, একটি সংযোজন অপারেটরের পরে একটি বিরতি ঘটাতে, '.', পরিবর্তে
এর আগে, কমান্ড লাইন হবে
-wba="।"
আরেকটি উদাহরণ হিসাবে, নিম্নলিখিত কমান্ডটি গণিত অপারেটরদের আগে একটি বিরতির কারণ হবে
'+', '-', '/', এবং '*':
-wbb="+ - / *"
এই কমান্ডগুলি বেশিরভাগ টোকেন প্রকারের জন্য ভাল কাজ করা উচিত যা perltidy ব্যবহার করে (use
--ডাম্প-টোকেন-প্রকার একটি তালিকার জন্য)। এছাড়াও চেষ্টা করুন -D কোডের একটি ছোট স্নিপেটে পতাকা এবং
টোকেনাইজেশন দেখতে .DEBUG ফাইলটি দেখুন। যাইহোক, সেখানে কয়েক ধরনের টোকেন জন্য
হার্ডওয়্যারযুক্ত যুক্তির সাথে দ্বন্দ্ব হতে পারে যা অপ্রত্যাশিত ফলাফল সৃষ্টি করে। একটি উদাহরণ হল
কোঁকড়া ধনুর্বন্ধনী, যা পরামিতি দিয়ে নিয়ন্ত্রণ করা উচিত bl যে জন্য প্রদান করা হয়
উদ্দেশ্য।
সতর্কতামূলক ভুল ব্যাখ্যা করা এড়াতে এই টোকেনগুলিকে উদ্ধৃতিতে রাখতে ভুলবেন না
আপনার কমান্ড শেল।
দুটি অতিরিক্ত পরামিতি পাওয়া যায়, যদিও তারা আর কিছু দেয় না
ক্ষমতা, ইনপুট সহজ করতে পারেন:
-বাও or --ব্রেক-আফটার-অল-অপারেটর,
-bbao or --ব্রেক-আগে-সব-অপারেটর.
-baao নিম্নলিখিত সমস্ত অপারেটরগুলির পরে বিরতির জন্য ডিফল্ট সেট করে:
% + - * / x != == >= <= =~ !~ < > | এবং
= **= += *= &= <<= &&= -= /= |= >>= ||= //= .= %= ^= x=
. :? && || এবং বা ভুল xor
এবং শীর্ষ XNUMX গ্লোবাল HR এক্সিলেন্স অ্যাওয়ার্ডের -bbao ফ্ল্যাগ এই সমস্ত অপারেটরের আগে বিরতি ডিফল্ট সেট করে। এগুলো পারে
একটি প্রাথমিক বিরতি পছন্দ সংজ্ঞায়িত করতে ব্যবহার করা হবে যা এর সাথে সূক্ষ্ম-টিউন করা যেতে পারে -wba
এবং -wbb পতাকা উদাহরণস্বরূপ, একটি ছাড়া সব অপারেটর আগে বিরতি = এক ব্যবহার করতে পারে
--bbao -wba='=' ছাড়া প্রতিটি একক পার্ল অপারেটরকে তালিকাভুক্ত করার পরিবর্তে = a -wbb-এ
পতাকা।
নিয়ামক তালিকা বিন্যাস
Perltidy টেবিলে কমা-বিচ্ছিন্ন মানগুলির বিন্যাস রাখার চেষ্টা করে যা দেখতে ভাল।
এটির ডিফল্ট অ্যালগরিদমগুলি সাধারণত ভাল কাজ করে এবং প্রতিটি রিলিজের সাথে তারা উন্নতি করছে,
কিন্তু তালিকা বিন্যাস নিয়ন্ত্রণ করতে বেশ কিছু পরামিতি উপলব্ধ।
-বোক, --ব্রেক-এ-পুরানো-কমা-ব্রেকপয়েন্ট
এই পতাকা সব পুরানো কমা ভাঙার চেষ্টা করার জন্য perltidy বলে. এটি ডিফল্ট নয়।
সাধারণত, perltidy তালিকা বিন্যাসে একটি সর্বোত্তম অনুমান করে এবং খুব কমই পুরানো কমা ব্যবহার করে
ব্রেকপয়েন্ট সাধারণত এটি ভাল কাজ করে, কিন্তু বিবেচনা করুন:
আমার @তালিকা = (1,
1, 1,
1, 2, 1,
1, 3, 3, 1,
1, 4, 6, 4, 1,);
ডিফল্ট বিন্যাস এটিকে এক লাইনে সমতল করবে:
# পারলটিডি (ডিফল্ট)
আমার @তালিকা = ( 1, 1, 1, 1, 2, 1, 1, 3, 3, 1, 1, 4, 6, 4, 1, );
যা কাঠামো লুকিয়ে রাখে। ব্যবহার -বোক, প্লাস অতিরিক্ত পতাকা মূল ধরে রাখতে
শৈলী, ফলন
# perltidy -boc -lp -pt=2 -vt=1 -vtc=1
আমার @তালিকা = (1,
1, 1,
1, 2, 1,
1, 3, 3, 1,
1, 4, 6, 4, 1,);
এই পতাকার একটি অসুবিধা হল যে ফাইলের সমস্ত টেবিল ইতিমধ্যেই সুন্দর হতে হবে
বিন্যাসিত অন্য একটি সম্ভাবনার জন্য "এর নির্বাচিত বিভাগগুলি এড়িয়ে যাওয়া-এ -fs পতাকা দেখুন
কোড"।
-mft=n, --সর্বোচ্চ-ক্ষেত্র-প্রতি-টেবিল=n
যদি কোনো টেবিলের জন্য ফিল্ডের গণনা করা সংখ্যা অতিক্রম করে n, তারপর এটি হ্রাস করা হবে
n. এর জন্য ডিফল্ট মান n একটি বড় সংখ্যা, 40. যদিও এই মান সম্ভবত উচিত
একটি সাধারণ নিয়ম হিসাবে অপরিবর্তিত রেখে দিন, এটি কোডের একটি ছোট বিভাগে ব্যবহার করা যেতে পারে
একটি তালিকাকে প্রতি লাইনে একটি নির্দিষ্ট সংখ্যক ক্ষেত্র থাকতে বাধ্য করুন এবং তারপর হয় -বোক
পতাকা এই বিন্যাস ধরে রাখতে ব্যবহার করা যেতে পারে, অথবা একটি একক মন্তব্য চালু করা যেতে পারে
কোথাও perltidy এর ভবিষ্যতের অ্যাপ্লিকেশনগুলিতে বিন্যাস হিমায়িত করতে।
# perltidy -mft = 2
@month_of_year = (
'জানুয়ারি', 'ফেব্রুয়ারি',
'মার', 'এপ্রিল',
'মে', 'জুন',
'জুলাই', 'আগস্ট',
'সেপ্টেম্বর', 'অক্টোবর',
'নভেম্বর', 'ডিসেম্বর'
);
-cab=n, --কমা-তীর-ব্রেকপয়েন্ট=n
একটি কমা যা একটি কমা তীর অনুসরণ করে, '=>', বিশেষ বিবেচনা করা হয়। একটি দীর্ঘ মধ্যে
তালিকা, এই ধরনের সব কমা ভাঙ্গা সাধারণ. এই পরামিতি নিয়ন্ত্রণ করতে ব্যবহার করা যেতে পারে
কিভাবে perltidy এই কমা এ বিরতি. (তবে পুরাতন কমা থাকলে এর কোন প্রভাব থাকবে না
বিরতি বাধ্য করা হচ্ছে কারণ -বোক ব্যবহৃত হয়). এর সম্ভাব্য মান n হয়:
n=0 => পরে সমস্ত কমা বিরতি
n=1 স্থিতিশীল: ধারক খোলা থাকলে => পরে সমস্ত কমা ভাঙুন,
এক লাইন পাত্রে ছাড়া
n=2 => পরে সব কমা বিরতি, কিন্তু সর্বোচ্চ গঠন করার চেষ্টা করুন
সর্বাধিক এক-লাইন ধারক দৈর্ঘ্য
n=3 => বিশেষভাবে পরে কমা ব্যবহার করবেন না
n=4 সবকিছু ভাঙ্গুন: যেমন n=0 কিন্তু এর সাথে একটি ছোট পাত্রও ভাঙ্গুন
a => কমা দ্বারা অনুসরণ করা হয় না যখন -vt=0 ব্যবহার করা হয়
n=5 স্থিতিশীল: যেমন n=1 কিন্তু এছাড়াও খোলা এক-লাইন পাত্রে বিরতি যখন
-vt=0 ব্যবহৃত হয় (ডিফল্ট)
উদাহরণস্বরূপ, নিম্নলিখিত একক লাইন দেওয়া, ডিফল্টরূপে perltidy কোনো যোগ করবে না
লাইন বিরতি কারণ এটি বিদ্যমান এক-লাইন ধারককে ভেঙে দেবে:
আশীর্বাদ করুন { B => $B, Root => $Root } => $package;
ব্যবহার -ক্যাব = 0 প্রতিটি কমা-তীর আইটেমের পরে একটি বিরতি জোর করবে:
# perltidy -cab=0:
আশীর্বাদ
B => $B,
রুট => $রুট
} => $প্যাকেজ;
যদি perltidy পরবর্তীতে এই ধারক ভাঙ্গা দিয়ে চালানো হয়, তাহলে ডিফল্টরূপে এটি হবে
প্রতিটি '=>' এর পরে বিরতি করুন কারণ পাত্রটি এখন ভেঙে গেছে। একটি এক লাইন সংস্কার করতে
ধারক, পরামিতি -ক্যাব = 2 ব্যবহৃত হতে পারে.
পতাকাটি -ক্যাব = 3 এই কমাগুলিকে বিশেষভাবে চিকিত্সা করা থেকে প্রতিরোধ করতে ব্যবহার করা যেতে পারে। ভিতরে
এই ক্ষেত্রে, একটি আইটেম যেমন "01" => 31 একটি টেবিলে একটি একক আইটেম হিসাবে বিবেচিত হয়। দ্য
এই টেবিলের ক্ষেত্রের সংখ্যা একই নিয়ম দ্বারা নির্ধারিত হবে যা এর জন্য ব্যবহৃত হয়
অন্য কোনো টেবিল। এখানে একটি উদাহরণ.
# পারলটিডি -ক্যাব = 3
আমার % শেষ_দিন = (
"01" => 31, "02" => 29, "03" => 31, "04" => 30,
"05" => 31, "06" => 30, "07" => 31, "08" => 31,
"09" => 30, "10" => 31, "11" => 30, "12" => 31
);
ধারনকারী or উপেক্ষা বর্তমান লাইন বিরতি
কোন লাইনের পরিমাণ নিয়ন্ত্রণ করার জন্য বেশ কিছু অতিরিক্ত পরামিতি উপলব্ধ
ইনপুট স্ক্রিপ্টে বিরতি আউটপুট স্ক্রিপ্টকে প্রভাবিত করে। বেশিরভাগ ক্ষেত্রে, ডিফল্ট
পরামিতি মান সেট করা হয় যাতে, যদি একটি পছন্দ সম্ভব হয়, আউটপুট শৈলী অনুসরণ করে
ইনপুট শৈলী। উদাহরণস্বরূপ, যদি ইনপুট স্ক্রিপ্টে একটি সংক্ষিপ্ত লজিক্যাল ধারক ভাঙ্গা হয়,
তারপর ডিফল্ট আচরণ হল আউটপুট স্ক্রিপ্টে ভাঙা থাকার জন্য।
এই বিভাগের বেশিরভাগ প্যারামিটার শুধুমাত্র একবারের রূপান্তরের জন্য প্রয়োজন হবে
সংক্ষিপ্ত ধারক দৈর্ঘ্য থেকে দীর্ঘ কন্টেইনার দৈর্ঘ্য পর্যন্ত একটি স্ক্রিপ্ট। বিপরীত প্রভাব,
দীর্ঘ পাত্রের দৈর্ঘ্যকে ছোট দৈর্ঘ্যে রূপান্তর করার, সাময়িকভাবে প্রাপ্ত করা যেতে পারে
একটি ছোট সর্বোচ্চ লাইন দৈর্ঘ্য ব্যবহার করে।
-বোল, --ব্রেক-এ-পুরাতন-লজিক্যাল-ব্রেকপয়েন্ট
ডিফল্টরূপে, যদি একটি লজিক্যাল এক্সপ্রেশন একটি "&&", "||", "এবং", বা "অথবা" এ ভাঙ্গা হয়
ধারক ভাঙ্গা থাকবে। এছাড়াও, অভ্যন্তরীণ কীওয়ার্ড "if" এবং "unless" এ বিরতি
সাধারণত রাখা হবে। এটি প্রতিরোধ করতে, এবং এইভাবে দীর্ঘ লাইন তৈরি করুন, ব্যবহার করুন -এনবোল.
-বক, --ব্রেক-এ-পুরানো-কীওয়ার্ড-ব্রেকপয়েন্ট
ডিফল্টরূপে, perltidy কীওয়ার্ডের আগে একটি ব্রেকপয়েন্ট বজায় রাখবে যা তালিকা ফেরত দিতে পারে,
যেমন "বাছাই" এবং . এটি এই অপারেটরগুলির চেইনগুলিকে একটি প্রদর্শন করার অনুমতি দেয়
প্রতি লাইন ব্যবহার করুন -nbok এই ব্রেকপয়েন্ট ধরে রাখা প্রতিরোধ করতে।
-বট, --ব্রেক-এ-পুরানো-টার্নারি-ব্রেকপয়েন্ট
ডিফল্টরূপে, যদি একটি শর্তসাপেক্ষ (টার্নারি) অপারেটর একটি ":" এ ভাঙ্গা হয়, তাহলে তা হবে
ভাঙ্গা থাকা এটি প্রতিরোধ করতে, এবং এর ফলে দীর্ঘ লাইন তৈরি করুন, ব্যবহার করুন -nbot.
-বোয়া, --ব্রেক-এ-পুরানো-অ্যাট্রিবিউট-ব্রেকপয়েন্ট
ডিফল্টরূপে, যদি উৎস ফাইলের একটি ":" এ অ্যাট্রিবিউট তালিকা ভাঙা হয়, তাহলে তা হবে
ভাঙ্গা থাকা উদাহরণস্বরূপ, নিম্নলিখিত কোড দেওয়া হলে, লাইনটি ':'-এ ভেঙে যায়
রাখা হবে:
আমার @ক্ষেত্র
: ক্ষেত্র
: ডিফল্ট(1)
: Get('Name' => 'foo'): Set('Name');
যদি অ্যাট্রিবিউটগুলি সোর্স কোডের একক লাইনে থাকে তবে সেগুলি a-তে থাকবে
সম্ভব হলে একক লাইন।
এটি প্রতিরোধ করতে, এবং এর ফলে সর্বদা দীর্ঘ লাইন তৈরি করুন, ব্যবহার করুন -nboa.
-আইওবি, --পুরনো ব্রেকপয়েন্ট উপেক্ষা করুন
এই পতাকা ব্যবহার করুন perltidy বলতে বিদ্যমান লাইন বিরতিগুলিকে সর্বাধিক পরিমাণে উপেক্ষা করতে
সম্ভব. এটি নির্বিশেষে দীর্ঘতম সম্ভাব্য পাত্রে উত্পাদন করতে থাকে
টাইপ, যা লাইনের দৈর্ঘ্যের সীমা অতিক্রম করে না।
-কিস, --কিপ-অভ্যন্তরীণ-সেমিকোলন
ব্যবহার -কিস একটি সেমিকোলনে ভাঙ্গন রোধ করতে পতাকা যদি সেখানে কোন বিরতি না থাকে
ইনপুট ফাইল। সাধারণত perltidy প্রতিটি সেমিকোলনের পরে একটি নতুন লাইন রাখে যা
একটি বিবৃতি বন্ধ করে, যদি না একাধিক বিবৃতি একটি এক-লাইন বন্ধনীর মধ্যে থাকে
ব্লক ব্যাখ্যা করার জন্য, নিম্নলিখিত ইনপুট লাইনগুলি বিবেচনা করুন:
dbmclose(%verb_delim); undef %verb_delim;
dbmclose(% সম্প্রসারিত); undef % প্রসারিত;
ডিফল্ট প্রতিটি বিবৃতি পরে বিরতি, প্রদান
dbmclose(%verb_delim);
undef %verb_delim;
dbmclose(% সম্প্রসারিত);
undef % প্রসারিত;
সঙ্গে পার্লটিডি -কিস একাধিক বিবৃতি রাখা হয়:
dbmclose(%verb_delim); undef %verb_delim;
dbmclose(% সম্প্রসারিত); undef % প্রসারিত;
বিবৃতি এখনও নির্দিষ্ট মান সাপেক্ষে সর্বোচ্চ-রেখা-দৈর্ঘ্য এবং
এই সর্বোচ্চ অতিক্রম করা হলে ভাঙ্গা হবে.
ফাঁকা লাইন নিয়ন্ত্রণ
ব্ল্যাঙ্ক লাইনগুলি একটি স্ক্রিপ্টের পঠনযোগ্যতা উন্নত করতে পারে যদি সেগুলি যত্ন সহকারে স্থাপন করা হয়।
পারলটিডির সন্নিবেশ, ধারণ এবং অপসারণ নিয়ন্ত্রণের জন্য বেশ কয়েকটি কমান্ড রয়েছে
ফাঁকা লাইন।
-fbl, --ফ্রিজ-ফাঁকা-লাইন
সেট -fbl আপনি যদি চান আপনার স্ক্রিপ্টের ফাঁকা লাইনগুলি ঠিক সেরকমই থাকতে।
এই বিভাগে বাকি প্যারামিটারগুলি উপেক্ষা করা যেতে পারে। (দ্রষ্টব্য: সেট করা
-fbl পতাকা সেট করার সমতুল্য -mbl=0 এবং -kbl=2).
-বিবিসি, --খালি-কমেন্টের আগে
একটি পূর্ণ-লাইন মন্তব্যের আগে একটি ফাঁকা লাইন চালু করা হবে। এটি ডিফল্ট। ব্যবহার করুন
-এনবিবিসি or --নোব্রাঙ্ক-আগে-মন্তব্য থেকে এই ধরনের ফাঁকা লাইন প্রতিরোধ করতে
পরিচয় করিয়ে দেন।
-blbs=n, --খালি-লাইন-পূর্ব-সাবস=n
প্যারামিটার -blbs=n যে অন্তত অনুরোধ n ফাঁকা লাইন একটি উপ সংজ্ঞা আগে যা
একটি মন্তব্য অনুসরণ করে না এবং যা এক লাইনের বেশি দীর্ঘ। ডিফল্ট হয়
<-blbs=1>। BEGIN এবং শেষ ব্লক অন্তর্ভুক্ত করা হয়।
খালি স্টেটমেন্টের অনুরোধ করা সংখ্যার মান নির্বিশেষে সন্নিবেশ করা হবে
--সর্বোচ্চ-পরপর-খালি-লাইন=n (-mbl=n) ব্যতিক্রম যে যদি -mbl=0 তাহলে না
খালি আউটপুট হবে।
এই প্যারামিটারটি মানের সাথে ইন্টারঅ্যাক্ট করে k প্যারামিটারের
--সর্বোচ্চ-পরপর-খালি-লাইন=k (-mbl=k) নিম্নরূপ:
1। যদি -mbl=0 তাহলে কোন ফাঁকা আউটপুট হবে না। এটি সমস্ত ফাঁকাগুলিকে দমন করার অনুমতি দেয়
একটি একক পরামিতি সহ। অন্যথায়,
2. যদি স্ক্রিপ্টে পুরানো ফাঁকা লাইনের সংখ্যা কম হয় n তারপর অতিরিক্ত
টোটাল করতে খালি জায়গা ঢোকানো হবে n এর মান নির্বিশেষে -mbl=k.
3. যদি স্ক্রিপ্টে পুরানো ফাঁকা লাইনের সংখ্যা সমান বা তার বেশি হয় n তারপর এই
প্যারামিটারের কোন প্রভাব নেই, তবে মোটের উপর উল্লিখিত মান অতিক্রম করবে না
-mbl=k পতাকা।
-blbp=n, --blank-lines-before-packages=n
প্যারামিটার -blbp=n যে অন্তত অনুরোধ n ফাঁকা লাইন একটি প্যাকেজের আগে যা করে
একটি মন্তব্য অনুসরণ না. ডিফল্ট হল <-blbp=1>।
এই প্যারামিটারটি মানের সাথে ইন্টারঅ্যাক্ট করে k প্যারামিটারের
--সর্বোচ্চ-পরপর-খালি-লাইন=k (-mbl=k) জন্য বর্ণিত হিসাবে একই ভাবে
আগের আইটেম -blbs=n.
-বিবিএস, --খালি-সাবস-এর আগে
পূর্ববর্তী সংস্করণগুলির সাথে সামঞ্জস্যের জন্য, -বিবিএস or --খালি-সাবস-এর আগে সমতুল্য
থেকে -blbp=1 এবং -blbs=1.
একইভাবে, -এনবিবিএস or --নোব্রাঙ্ক-বিফোর-সাবস সমতুল্য -blbp=0 এবং -blbs=0.
-বিবিবি, --ব্লক-এর আগে-ব্লক
কোডিং এর দ্বারা সীমাবদ্ধ ব্লকের আগে একটি ফাঁকা লাইন চালু করা হবে উন্নত , প্রতিটির জন্য,
যখন, পর্যন্ত, এবং if, যদি না, নিম্নলিখিত পরিস্থিতিতে:
ব্লকটি একটি মন্তব্য দ্বারা পূর্বে নয়।
ব্লকটি এক লাইনের ব্লক নয়।
· বর্তমান ইন্ডেন্টেশন গভীরতায় পরপর অ-ফাঁকা লাইনের সংখ্যা এখানে
অন্তত -lbl (পরবর্তী বিভাগ দেখুন)।
এটি ডিফল্ট। এই বিকল্পের উদ্দেশ্য হল ভিতরে কিছু স্থান প্রবর্তন করা
ঘন কোডিং এই সঙ্গে অস্বীকার করা হয় -এনবিবিবি or --নোব্রাঙ্ক-বিফোর-ব্লক.
-lbl=n --লং-ব্লক-লাইন-গণনা=n
এটি নিয়ন্ত্রণ করে কত ঘন ঘন perltidy নির্দিষ্ট ব্লকের আগে ফাঁকা লাইন যোগ করার অনুমতি দেয়
প্রকার (পূর্ববর্তী বিভাগ দেখুন)। ডিফল্ট হল 8। এর মান প্রবেশ করানো হচ্ছে 0 সমতুল্য
একটি খুব বড় সংখ্যা প্রবেশ করতে.
-mbl=n --সর্বোচ্চ-পরপর-খালি-লাইন=n
এই প্যারামিটারটি পরপর ফাঁকা লাইনের সর্বাধিক সংখ্যা নির্দিষ্ট করে যা হবে
একটি স্ক্রিপ্টের কোড বিভাগের মধ্যে আউটপুট। ডিফল্ট হল n=1। ইনপুট ফাইল থাকলে
পরপর n-এর বেশি ফাঁকা লাইন, উল্লেখ করা ছাড়া সংখ্যাটি n-এ কমে যাবে
জন্য উপরে -বিএলবিপি এবং -blbs পরামিতি যদি এন = 0 তাহলে কোন ফাঁকা লাইন আউটপুট হবে না
(যদি না সমস্ত পুরানো ফাঁকা লাইনগুলি এর সাথে ধরে রাখা হয় -kbl=2 পরবর্তী বিভাগের পতাকা)।
এই পতাকাটি স্পষ্টতই পড বিভাগ, এখানে-নথিপত্র এবং উদ্ধৃতিগুলির ক্ষেত্রে প্রযোজ্য নয়৷
-kbl=n, --কিপ-পুরানো-খালি-লাইন=n
সার্জারির -kbl=n পতাকা আপনাকে আপনার বিদ্যমান ফাঁকা লাইনগুলি কীভাবে আচরণ করা হয় তার উপর নিয়ন্ত্রণ দেয়।
এর সম্ভাব্য মান n হয়:
n=0 সমস্ত পুরানো ফাঁকা লাইন উপেক্ষা করুন
n=1 স্থিতিশীল: পুরানো ফাঁকা রাখুন, কিন্তু B<-mbl=n> পতাকার মান দ্বারা সীমিত
n=2 সমস্ত পুরানো ফাঁকা লাইন রাখুন, B<-mbl=n> পতাকার মান নির্বিশেষে
ডিফল্ট হয় এন = 1.
-কাঁদন, --swallow-ঐচ্ছিক-শূন্য-লাইন
এই সমতুল্য kbl=0 এবং পূর্ববর্তী সংস্করণগুলির সাথে সামঞ্জস্যের জন্য অন্তর্ভুক্ত।
-nsob, --noswallow-ঐচ্ছিক-খালি লাইন
এই সমতুল্য kbl=1 এবং পূর্ববর্তী সংস্করণগুলির সাথে সামঞ্জস্যের জন্য অন্তর্ভুক্ত।
স্টাইলস
একটি শৈলী বিদ্যমান পরামিতিগুলির একটি সুবিধাজনক সংগ্রহকে বোঝায়।
-গ্নু, --gnu-শৈলী
-গ্নু GNU কোডিং স্ট্যান্ডার্ডের একটি আনুমানিকতা দেয় (যা পার্লের ক্ষেত্রে প্রযোজ্য নয়)
যেমন তারা কখনও কখনও বাস্তবায়িত হয়. বর্তমানে, এই শৈলীটি ডিফল্ট শৈলীকে ওভাররাইড করে
নিম্নলিখিত পরামিতি সহ:
-lp -bl -noll -pt=2 -bt=2 -sbt=2 -icp
-পিবিপি, --পারল-সেরা-অভ্যাস
-পিবিপি বইয়ের পরামিতিগুলির জন্য একটি সংক্ষিপ্ত রূপ পার্ল সেরা অভ্যাস ড্যামিয়ান দ্বারা
কনওয়ে:
-l=78 -i=4 -ci=4 -st -se -vt=2 -cti=0 -pt=1 -bt=1 -sbt=1 -bbt=1 -nsfs -nolq
-wbb="% + - * / x != == >= <= =~ !~ < > | & =
**= += *= &= <<= &&= -= /= |= >>= ||= //= .= %= ^= x="
অনুগ্রহ করে মনে রাখবেন যে এই প্যারামিটার সেটটিতে -st এবং -se পতাকা রয়েছে, যা perltidy করে
শুধুমাত্র একটি ফাইলে একটি ফিল্টার হিসাবে কাজ করুন। এই স্থাপন দ্বারা ওভাররাইড করা যেতে পারে -nst এবং / অথবা -এনসে
-pbp প্যারামিটারের পরে।
এছাড়াও মনে রাখবেন যে ধারাবাহিকতা ইন্ডেন্টেশনের মান, -ci=4, এর মানের সমান
সম্পূর্ণ ইন্ডেন্টেশন, -i=4। কিছু জটিল বিবৃতি মধ্যে perltidy সুন্দর উত্পাদন হবে
-ci=2 সহ ফলাফল। এটি -pbp-এর পরে -ci=2 অন্তর্ভুক্ত করে বাস্তবায়ন করা যেতে পারে
প্যারামিটার উদাহরণ স্বরূপ,
# perltidy -pbp
$self->{_text} = (
!$বিভাগ? '
: $type eq 'আইটেম'? "$সেকশন এন্ট্রি"
: "$বিভাগের বিভাগ"
)
. (
$পৃষ্ঠা
? ( $section ? ' in ' : '' )। "$page$page_ext ম্যানপেজ"
: 'এই নথির অন্যত্র'
);
# perltidy -pbp -ci=2
$self->{_text} = (
!$বিভাগ? '
: $type eq 'আইটেম'? "$সেকশন এন্ট্রি"
: "$বিভাগের বিভাগ"
)
. (
$পৃষ্ঠা
? ( $section ? ' in ' : '' )। "$page$page_ext ম্যানপেজ"
: 'এই নথির অন্যত্র'
);
অন্যান্য নিয়ন্ত্রণ
নির্বাচিত পাঠ্য মুছে ফেলা হচ্ছে
Perltidy বেছে বেছে মন্তব্য এবং/অথবা পড ডকুমেন্টেশন মুছে ফেলতে পারে। আদেশ -dac
or --মুছুন-সমস্ত-মন্তব্য সব মন্তব্য মুছে ফেলবে এবং সব পড ডকুমেন্টেশন, ছেড়ে
শুধু কোড এবং কোন নেতৃস্থানীয় সিস্টেম নিয়ন্ত্রণ লাইন.
আদেশ -ডিপি or --মুছুন-পড সমস্ত পড ডকুমেন্টেশন মুছে ফেলবে (কিন্তু মন্তব্য নয়)।
দুটি কমান্ড যা মন্তব্যগুলি সরিয়ে দেয় (কিন্তু পড নয়) হল: -ডিবিসি or --মুছুন-ব্লক-মন্তব্য
এবং -dsc or --পাশ-মন্তব্য মুছুন. (ঝুলন্ত পার্শ্ব মন্তব্য মুছে ফেলা হবে
এখানে মন্তব্য ব্লক করুন।)
এই কমান্ডগুলির নেতিবাচকগুলিও কাজ করে এবং ডিফল্ট। কমেন্ট ব্লক করলে
মুছে ফেলা হয়, যে কোনো নেতৃস্থানীয় 'হ্যাশ-ব্যাং' বজায় রাখা হবে। এছাড়াও, যদি -x পতাকা ব্যবহার করা হয়,
একটি লিডিং হ্যাশ-ব্যাং এর আগে যেকোন সিস্টেম কমান্ডগুলি বজায় রাখা হবে (এমনকি যদি সেগুলি থাকে
মন্তব্যের ফর্ম)।
একটি ফাইলে নির্বাচিত পাঠ্য লেখা
যখন perltidy একটি ফরম্যাট করা টেক্সট ফাইল লেখে, তখন এটি নির্বাচিত পাঠানোর ক্ষমতাও রাখে
a দিয়ে একটি ফাইলে টেক্সট করুন .TEE এক্সটেনশন এই পাঠ্যটিতে মন্তব্য এবং পড অন্তর্ভুক্ত থাকতে পারে
ডকুমেন্টেশন।
আদেশ -tac or --tee-সমস্ত-মন্তব্য সব মন্তব্য লিখবে এবং সব পড
ডকুমেন্টেশন।
আদেশ -টিপি or --টি-পড সমস্ত পড ডকুমেন্টেশন লিখবে (কিন্তু মন্তব্য নয়)।
যে কমান্ডগুলি মন্তব্য লিখছে (কিন্তু পড নয়) হল: -টিবিসি or --টি-ব্লক-মন্তব্য এবং
-টিএসসি or --টি-পার্শ্ব-মন্তব্য. (ঝুলন্ত পার্শ্ব মন্তব্য ব্লক দিয়ে লেখা হবে
এখানে মন্তব্য করুন।)
এই কমান্ডগুলির নেতিবাচকগুলিও কাজ করে এবং ডিফল্ট।
ব্যবহার করে একটি .perltidyrc কমান্ড ফাইল
আপনি যদি ঘন ঘন perltidy ব্যবহার করেন, আপনি সম্ভবত একটি তৈরি না করা পর্যন্ত খুশি হবেন না
.perltidyrc সাধারণত ব্যবহৃত প্যারামিটার টাইপ করা এড়াতে ফাইল। পার্লটিডি প্রথম দেখবে
নামের একটি কমান্ড ফাইলের জন্য আপনার বর্তমান ডিরেক্টরিতে .perltidyrc. যদি খুঁজে না পাওয়া যায়
এক, এটি অন্য স্ট্যান্ডার্ড অবস্থানে একটি খুঁজতে থাকবে।
এই অন্যান্য অবস্থানগুলি সিস্টেম-নির্ভর, এবং কমান্ডের সাথে প্রদর্শিত হতে পারে
"perltidy -dpro"। ইউনিক্স সিস্টেমের অধীনে, এটি প্রথমে একটি পরিবেশ পরিবর্তনশীল সন্ধান করবে
পারলটিডি. তারপর এটি একটি সন্ধান করবে .perltidyrc হোম ডিরেক্টরিতে ফাইল, এবং তারপর
একটি সিস্টেম-ব্যাপী ফাইলের জন্য /usr/local/etc/perltidyrc, এবং তারপর এটি সন্ধান করবে
/etc/perltidyrc. মনে রাখবেন যে এই শেষ দুটি সিস্টেম-ওয়াইড ফাইলের কোনো লিডিং নেই
বিন্দু আরও সিস্টেম-নির্ভর তথ্য ইন্সটল ফাইলে পাওয়া যাবে
perltidy সঙ্গে বিতরণ.
উইন্ডোজের অধীনে, perltidy perltidy.ini নামে একটি কনফিগারেশন ফাইলও অনুসন্ধান করবে
যেহেতু উইন্ডোজ লিডিং পিরিয়ড (.) সহ ফাইলগুলিকে অনুমতি দেয় না। এর জন্য "perltidy -dpro" ব্যবহার করুন
আপনার সিস্টেমের জন্য সম্ভাব্য অবস্থানগুলি দেখুন। একটি উদাহরণ হতে পারে C:\নথিপত্র এবং
সেটিংস\সব ব্যবহারকারীদের\perltidy.ini.
আরেকটি বিকল্প হল PERLTIDY পরিবেশ পরিবর্তনশীল ব্যবহার। এর জন্য পদ্ধতি
এনভায়রনমেন্ট ভেরিয়েবল সেট করা উইন্ডোজের সংস্করণের উপর নির্ভর করে যা আপনি ব্যবহার করছেন।
Windows 95 এবং পরবর্তী সংস্করণগুলির জন্য নির্দেশাবলী এখানে পাওয়া যাবে:
http://www.netmanage.com/000/20021101_005_tcm21-6336.pdf
Windows NT/2000/XP-এর অধীনে PERLTIDY এনভায়রনমেন্ট ভেরিয়েবল যেকোন একটিতে স্থাপন করা যেতে পারে
ব্যবহারকারী বিভাগ বা সিস্টেম বিভাগ। পরবর্তীতে কনফিগারেশন ফাইলটিকে সাধারণ করে তোলে
মেশিনের সমস্ত ব্যবহারকারীদের কাছে। কনফিগারেশন ফাইলের সম্পূর্ণ পাথ প্রবেশ করতে ভুলবেন না
পরিবেশ পরিবর্তনশীল মান. যেমন PERLTIDY=C:\নথিপত্র এবং
সেটিংস\perltidy.ini
কনফিগারেশন ফাইলটি বিনামূল্যের বিন্যাস, এবং কেবলমাত্র পরামিতিগুলির একটি তালিকা, ঠিক তাদের মতো
একটি কমান্ড লাইনে প্রবেশ করা হবে। যেকোন সংখ্যক লাইন ব্যবহার করা যেতে পারে, যেকোনো সংখ্যার সাথে
প্রতি লাইনের পরামিতিগুলির, যদিও এটি প্রতি একটি প্যারামিটার দিয়ে পড়া সবচেয়ে সহজ হতে পারে
লাইন মন্তব্য পাঠ্য একটি # দিয়ে শুরু হয় এবং # এর আগে একটি স্থানও থাকতে হবে
পার্শ্ব মন্তব্য। জটিল প্যারামিটারগুলিকে একক বা দ্বিগুণে রাখা একটি ভাল ধারণা
কোট।
এখানে একটি উদাহরণ .perltidyrc ফাইল:
# এটি একটি .perltidyrc কনফিগারেশন ফাইলের একটি সাধারণ
# এটি একটি উচ্চ ব্যবধানযুক্ত শৈলী প্রয়োগ করে
-se # এরর থেকে স্ট্যান্ডার্ড এরর আউটপুট
-w # সমস্ত সতর্কতা দেখান
-bl # নতুন লাইনে বন্ধনী
-pt=0 # বন্ধনী মোটেই আঁটসাঁট নয়
-bt=0 # বন্ধনী আঁটসাঁট নয়
-sbt=0 # বর্গাকার বন্ধনী টাইট নয়
মধ্যে পরামিতি .perltidyrc ফাইলটি প্রথমে ইনস্টল করা হয়, তাই যেকোনো প্যারামিটার দেওয়া হয়
কমান্ড লাইন তাদের উপর অগ্রাধিকার হবে.
বিভ্রান্তি এড়াতে, perltidy .perltidyrc ফাইলের যেকোনো কমান্ড উপেক্ষা করে যা হবে
এক ধরনের ডাম্প এবং একটি প্রস্থান কারণ. এইগুলো:
-h -v -ddf -dln -dop -dsn -dtt -dwls -dwrs -ss
ডিবাগ করার জন্য বেশ কয়েকটি বিকল্প সহায়ক হতে পারে .perltidyrc ফাইল:
একটি খুব সহায়ক আদেশ হল --ডাম্প-প্রোফাইল or -dpro. এটা সব একটি তালিকা লিখে
কনফিগারেশন ফাইলের নাম স্ট্যান্ডার্ড আউটপুট পরীক্ষা করা হয়, এবং যদি একটি ফাইল পাওয়া যায়, এটি
প্রস্থান করার আগে বিষয়বস্তুকে স্ট্যান্ডার্ড আউটপুটে ডাম্প করে। সুতরাং, কোথায় খুঁজে বের করতে
perltidy তার কনফিগারেশন ফাইলের জন্য দেখায়, এবং কোনটি যদি এটি নির্বাচন করে, শুধু
প্রবেশ করান
perltidy -dpro
· বিকল্প নাম সহ কনফিগারেশন ফাইলগুলি বিকাশ এবং পরীক্ষা করা সহজ হতে পারে,
এবং সঙ্গে তাদের আহ্বান -প্রো = ফাইলের নাম কমান্ড লাইনে। তারপর পছন্দসই নাম পরিবর্তন করুন
ফাইলের জন্য .perltidyrc যখন শেষ হবে.
· মধ্যে পরামিতি .perltidyrc ফাইলটি দিয়ে সুইচ অফ করা যায় -এনপ্রো বিকল্প।
· আদেশ --ডাম্প-বিকল্প, --ডাম্প-ডিফল্ট, --ডাম্প-দীর্ঘ-নাম, এবং
--ডাম্প-ছোট-নাম, নীচে বর্ণিত সমস্ত, সব সহায়ক হতে পারে.
একটি নতুন সংক্ষেপণ তৈরি করা হচ্ছে
একটি তে ব্যবহারের জন্য একটি বিশেষ স্বরলিপি পাওয়া যায় .perltidyrc একটি তৈরি করার জন্য ফাইল
বিকল্পগুলির একটি গ্রুপের সংক্ষিপ্ত রূপ। এটি একজনের জন্য একটি শর্টহ্যান্ড তৈরি করতে ব্যবহার করা যেতে পারে
বা আরও শৈলী যা প্রায়শই ব্যবহৃত হয়, কিন্তু সবসময় নয়। স্বরলিপি গ্রুপ করা হয়
কোঁকড়া ধনুর্বন্ধনীর মধ্যে বিকল্পগুলি যা উপনামের নামের আগে থাকে (ব্যতীত
নেতৃস্থানীয় ড্যাশ), এই মত:
নতুন শব্দ {
-opt1
-opt2
}
কোথায় নতুন শব্দ সংক্ষেপণ, এবং অপ্ট 1, ইত্যাদি, বিদ্যমান পরামিতি or অন্যান্য
শব্দ সংক্ষেপ. মূল সিনট্যাক্সের প্রয়োজনীয়তা হল নতুন সংক্ষিপ্ত রূপটি শুরু হতে হবে
একটি নতুন লাইন। কোঁকড়া ধনুর্বন্ধনীর আগে এবং পরে স্থান ঐচ্ছিক। একটি নির্দিষ্ট জন্য
উদাহরণ, নিম্নলিখিত লাইন
বাতাসযুক্ত {-bl -pt=0 -bt=0 -sbt=0}
একটি স্থাপন করা যেতে পারে .perltidyrc ফাইল, এবং তারপর ইচ্ছামত আমন্ত্রণ
perltidy -airy somefile.pl
(হয় "-বায়ুযুক্ত" বা "-বায়ুযুক্ত" ব্যবহার করা যেতে পারে)।
এর সাথে অগ্রণী নন-পার্ল কমান্ড এড়িয়ে যাওয়া -x or --হ্যাশ-ব্যাং-এর জন্য সন্ধান করুন
যদি আপনার স্ক্রিপ্টে সিস্টেম কমান্ডের অগ্রণী লাইন বা অন্য পাঠ্য থাকে যা বৈধ নয়
পার্ল কোড, এবং যা একটি "হ্যাশ-ব্যাং" দ্বারা পার্ল কোডের শুরু থেকে পৃথক করা হয়
লাইন, ( "#!...perl" ফর্মের একটি লাইন), আপনাকে অবশ্যই ব্যবহার করতে হবে -x perltidy বলতে পতাকা
"হ্যাশ-ব্যাং" লাইনের আগে কোনো লাইন পার্স এবং ফরম্যাট না করা। এই বিকল্পটিও
সিনট্যাক্স চেক করার সময় একটি -x পতাকা সহ পার্ল আহ্বান করে। এই বিকল্পটি মূলত ছিল
পারলটিডিকে ইন্টারেক্টিভ ভিএমএস স্ক্রিপ্ট পার্স করার অনুমতি দেওয়ার জন্য যোগ করা হয়েছে, তবে এটি এর জন্য ব্যবহার করা উচিত
যেকোনো স্ক্রিপ্ট যা সাধারণত "perl -x" দিয়ে আহ্বান করা হয়।
একটি ফাইল অপঠনযোগ্য করা
perltidy এর লক্ষ্য হল ফাইলের পঠনযোগ্যতা উন্নত করা, কিন্তু দুটি আছে
কমান্ড যার বিপরীত প্রভাব আছে, --মঙ্গল এবং -- এক্সট্রুড. তারা আসলে
অন্যান্য পরামিতিগুলির সংমিশ্রণের জন্য শুধুমাত্র উপনাম। এই ফালা সব সম্ভব
হোয়াইটস্পেস, কিন্তু মন্তব্য এবং পড নথি ছেড়ে দিন, যাতে তারা মূলত হয়
বিপরীত এগুলোর মধ্যে পার্থক্য হলো এটাই --মঙ্গল সম্ভব কম রাখে
একটি স্ক্রিপ্ট যখন লাইন বিরতি -- এক্সট্রুড সর্বোচ্চ সম্ভব রাখে। উল্লেখ্য যে এই
বিকল্প কোন অর্থপূর্ণ অস্পষ্টতা প্রদান করে না, কারণ perltidy ব্যবহার করা যেতে পারে
ফাইলগুলি পুনরায় ফর্ম্যাট করুন। এগুলি মূলত টোকেনাইজেশন পরীক্ষা করতে সহায়তা করার জন্য তৈরি করা হয়েছিল
perltidy যুক্তি, কিন্তু তাদের অন্যান্য ব্যবহার আছে. জন্য এক ব্যবহার --মঙ্গল নিম্নলিখিত:
perltidy --mangle myfile.pl -st | perltidy -o myfile.pl.new
এটি সর্বাধিক সম্ভাব্য এক-লাইন ব্লক তৈরি করবে (পরবর্তী বিভাগটি দেখুন), এবং
কখনও কখনও একটি খারাপভাবে ফর্ম্যাট করা স্ক্রিপ্ট পরিষ্কার করতে সাহায্য করতে পারে।
একটি অনুরূপ কৌশল সঙ্গে ব্যবহার করা যেতে পারে -- এক্সট্রুড পরিবর্তে --মঙ্গল সর্বনিম্ন করতে
এক-লাইন ব্লকের সংখ্যা।
জন্য আরেকটি ব্যবহার --মঙ্গল সঙ্গে এটি একত্রিত করা হয় -dac একটি পার্লের ফাইলের আকার কমাতে
লিপি.
এক লাইন ব্লক
এক-লাইন ব্লক সংক্রান্ত কয়েকটি বিষয় লক্ষ্য করা যায়। একটি এক লাইন ব্লক হয়
এটার মতো কিছু,
যদি ($x > 0) { $y = 1 / $x }
যেখানে কোঁকড়া ধনুর্বন্ধনীর মধ্যে বিষয়বস্তু একটি একক লাইনে ফিট করার জন্য যথেষ্ট ছোট।
কিছু ব্যতিক্রম ছাড়া, পারলটিডি বিদ্যমান এক-লাইন ব্লক ধরে রাখে, যদি এটি সম্ভব হয়
লাইন-দৈর্ঘ্যের সীমাবদ্ধতার মধ্যে, কিন্তু এটি নতুনগুলি গঠন করার চেষ্টা করে না। অন্যান্য
শব্দ, perltidy ইনপুট ফাইলের এক-লাইন ব্লক শৈলী অনুসরণ করার চেষ্টা করবে।
যদি একটি বিদ্যমান এক-লাইন ব্লক সর্বোচ্চ লাইন দৈর্ঘ্যের চেয়ে দীর্ঘ হয়, তবে, এটি হবে
একাধিক লাইনে ভাঙ্গা হবে। যখন এটি ঘটবে, perltidy চেক করে যেকোনও যোগ করে
ঐচ্ছিক সমাপ্তি সেমিকোলন (যদি না -nasc বিকল্প ব্যবহার করা হয়) যদি ব্লক হয় a
কোড ব্লক।
প্রধান ব্যতিক্রম হল যে perltidy নিম্নলিখিত নতুন এক-লাইন ব্লক গঠন করার চেষ্টা করবে
কীওয়ার্ডগুলি "মানচিত্র", "ইভাল", এবং "সর্ট", কারণ এই কোড ব্লকগুলি প্রায়শই ছোট এবং
একটি একক লাইনে সবচেয়ে স্পষ্টভাবে প্রদর্শিত হয়।
এক-লাইন ব্লকের নিয়ম কাড্ড-অন্য বিকল্পের সাথে বিরোধ করতে পারে। যখন cuddled-অন্য
বিকল্প ব্যবহার করা হয়, perltidy বিদ্যমান এক-লাইন ব্লক ধরে রাখে, এমনকি যদি তারা মেনে না নেয়
cuddled-অন্য বিন্যাস.
মাঝে মাঝে, যখন এক-লাইন ব্লক ভেঙে যায় কারণ তারা উপলব্ধ লাইন অতিক্রম করে
দৈর্ঘ্য, বিন্যাস অনুরোধকৃত বন্ধনী শৈলী লঙ্ঘন করবে। যদি এমন হয়,
দ্বিতীয়বার স্ক্রিপ্টটি পুনরায় ফর্ম্যাট করলে সমস্যাটি সংশোধন করা উচিত।
ডিবাগ করা
নিম্নলিখিত পতাকাগুলি ডিবাগিংয়ের জন্য উপলব্ধ:
--ডাম্প-ডিফল্ট or -ডিডিএফ স্ট্যান্ডার্ড আউটপুটে ডিফল্ট বিকল্প লিখবে এবং প্রস্থান করবে
--ডাম্প-প্রোফাইল or -dpro বর্তমান কনফিগারেশন ফাইলের নাম এবং এর নাম লিখবে
বিষয়বস্তু স্ট্যান্ডার্ড আউটপুটে এবং প্রস্থান করুন।
--ডাম্প-বিকল্প or -ডপ স্ট্যান্ডার্ড আউটপুটে বর্তমান বিকল্প লিখবে এবং প্রস্থান করবে।
--ডাম্প-দীর্ঘ-নাম or -dln সমস্ত কমান্ড লাইন দীর্ঘ নাম লিখবে (এ পাস করা হয়েছে
Get_options) স্ট্যান্ডার্ড আউটপুটে এবং প্রস্থান করুন।
--ডাম্প-ছোট-নাম or -ডিএসএন স্ট্যান্ডার্ড আউটপুটে সমস্ত কমান্ড লাইন সংক্ষিপ্ত নাম লিখবে
এবং প্রস্থান.
--ডাম্প-টোকেন-প্রকার or -dtt স্ট্যান্ডার্ড আউটপুটে সমস্ত টোকেন প্রকারের একটি তালিকা লিখবে
এবং প্রস্থান.
--ডাম্প-চাই-বাম-স্থান or -dwls স্ট্যান্ডার্ডে হ্যাশ %want_left_space লিখবে
আউটপুট এবং প্রস্থান করুন। টোকেনের চারপাশে সাদা স্থান নিয়ন্ত্রণ করার বিভাগটি দেখুন।
--ডাম্প-ওয়ান্ট-ডান-স্পেস or -dwrs স্ট্যান্ডার্ডে হ্যাশ %want_right_space লিখবে
আউটপুট এবং প্রস্থান করুন। টোকেনের চারপাশে সাদা স্থান নিয়ন্ত্রণ করার বিভাগটি দেখুন।
--নো-স্মরণ করা or -nmem মুখস্থ করা শুরু হবে। Memoization রান সময় কমাতে পারে যখন
একটি একক প্রক্রিয়ায় বারবার perltidy চলমান। এটি ডিফল্টরূপে চালু থাকে তবে হতে পারে
সঙ্গে পরীক্ষার জন্য নিষ্ক্রিয় করা হয়েছে -nmem.
-ডিবাগ এক্সটেনশন সহ একটি ফাইল লিখবে ডিবাগ দেখানো প্রতিটি ইনপুট ফাইলের জন্য
কোডের সমস্ত লাইনের টোকেনাইজেশন।
মেকমেকার, অটোলোডার এবং সেলফলোডারের সাথে কাজ করা
একটি ফাইলের প্রথম $VERSION লাইন যা মেকমেকার দ্বারা ইভাল'ড হতে পারে তা পাস করা হয়৷
ইন্ডেন্টেশন ছাড়া অপরিবর্তিত। ব্যবহার করুন --nopass-সংস্করণ-লাইন, বা -এনপিভিএল, নিষ্ক্রিয় করতে
এই বৈশিষ্ট্য.
অটোলোডার মডিউল ব্যবহার করা হলে, perltidy দেখার পরে কোড ফরম্যাটিং চালিয়ে যাবে
একটি __END__ লাইন। ব্যবহার করুন --নোলক-ফর-অটোলোডার, বা -নলাল, এই বৈশিষ্ট্য নিষ্ক্রিয় করতে.
একইভাবে, SelfLoader মডিউল ব্যবহার করা হলে, perltidy কোড ফরম্যাটিং চালিয়ে যাবে
একটি __DATA__ লাইন দেখার পর। ব্যবহার করুন --নোলক-ফর-সেল্ফলোডার, বা -এনএলএসএল, নিষ্ক্রিয় করতে
এই বৈশিষ্ট্য.
পার্লের পুরানো সংস্করণের সাথে সমস্যার সমাধান করা
পার্লটিডিতে অনেকগুলি নিয়ম রয়েছে যা পরিচিত সূক্ষ্মতা এবং সমস্যাগুলি এড়াতে সহায়তা করে
পার্লের পুরানো সংস্করণগুলির সাথে, এবং এই নিয়মগুলি সর্বদা যাই হোক না কেন অগ্রাধিকার দেয়
বিন্যাস পতাকা সেট করা হয়েছে. উদাহরণস্বরূপ, perltidy সাধারণত একটি শুরু করা এড়াবে
একটি বেয়ারওয়ার্ড সহ নতুন লাইন, কারণ এটি সমস্যা সৃষ্টি করতে পারে যদি "ব্যবহার কঠোর" সক্রিয় থাকে।
এই নিয়ম ওভাররাইড করার কোন উপায় নেই.
এইচটিএমএল বিকল্প
সার্জারির -html মাস্টার সুইচ
পতাকাটি -html এক্সটেনশন সহ একটি এইচটিএমএল ফাইল লিখতে perltidy কারণ .html. অনেক দূরে
উদাহরণ, নিম্নলিখিত কমান্ড
perltidy -html somefile.pl
নামের একটি সিনট্যাক্স-রঙের এইচটিএমএল ফাইল তৈরি করবে somefile.pl.html যা দেখা যেতে পারে
একটি ব্রাউজার সহ।
অনুগ্রহ করে বিঃদ্রঃ: এই ক্ষেত্রে, perltidy ইনপুট ফাইলে কোনো ফরম্যাটিং করে না, এবং
এটি এক্সটেনশন সহ একটি ফরম্যাট করা ফাইল লেখে না .tdy. এর মানে হল যে দুটি perltidy
একটি স্ক্রিপ্টের সম্পূর্ণরূপে পুনরায় ফর্ম্যাট করা, এইচটিএমএল কপি তৈরি করতে রান প্রয়োজন।
সার্জারির -পূর্ব কোড স্নিপেট জন্য পতাকা
যখন -পূর্ব পতাকা দেওয়া হয়, শুধুমাত্র প্রাক-ফরম্যাট করা অংশ, এর মধ্যে এবং
ট্যাগ, আউটপুট হবে। এটি অন্যান্য ফাইলে আউটপুট অন্তর্ভুক্ত করা সহজ করে।
ডিফল্ট হল একটি সম্পূর্ণ ওয়েব পেজ আউটপুট করা।
সার্জারির -এনএনএন লাইন সংখ্যার জন্য পতাকা
যখন -এনএনএন পতাকা দেওয়া হয়, আউটপুট লাইন সংখ্যা করা হবে।
সার্জারির -toc, বা --html-সারণী-বিষয়বস্তু পতাকা
ডিফল্টরূপে, প্যাকেজ এবং সাবরুটিনে বিষয়বস্তুর একটি সারণী লেখা হবে
html আউটপুট শুরু। ব্যবহার করুন -ntoc এটি প্রতিরোধ করতে। এটি দরকারী হতে পারে, উদাহরণস্বরূপ,
একটি পড ডকুমেন্টের জন্য যাতে অনেকগুলি সম্পর্কহীন কোড স্নিপেট থাকে। শুধুমাত্র এই পতাকা
বিষয়বস্তুর কোড টেবিল প্রভাবিত করে; বিষয়বস্তুর কোনো সারণীতে এর কোনো প্রভাব নেই
pod2html দ্বারা উত্পাদিত (পরবর্তী আইটেম দেখুন)।
সার্জারির -পড, বা --pod2html পতাকা
পড ডকুমেন্টেশন ফর্ম্যাট করার জন্য দুটি বিকল্প আছে। ডিফল্ট পাস করা হয়
Pod::Html মডিউলের মাধ্যমে pod (যা pod2html ইউটিলিটির ভিত্তি তৈরি করে)। যে কোন
কোড বিভাগগুলি perltidy দ্বারা ফর্ম্যাট করা হয় এবং ফলাফলগুলি তারপর একত্রিত হয়। দ্রষ্টব্য: perltidy
যখন Pod::Html ব্যবহার করা হয় তখন একটি অস্থায়ী ফাইল তৈরি করে; "FILES" দেখুন। এছাড়াও, Pod::Html তৈরি করে
এর ক্যাশের জন্য অস্থায়ী ফাইল।
দ্রষ্টব্য: Perltidy "=cut" লাইনের সংখ্যা গণনা করে, এবং হয় পড টেক্সটকে এতে স্থানান্তরিত করে
এইচটিএমএল ফাইলের উপরে যদি একটি "=কাট" থাকে, অথবা পড টেক্সটটিকে মূলে রেখে দেয়
অন্যথায় অর্ডার (কোডের সাথে ইন্টারলিভড)।
pod2html দ্বারা গৃহীত বেশিরভাগ পতাকা perltidy কমান্ড লাইনে অন্তর্ভুক্ত হতে পারে,
এবং সেগুলি pod2html এ পাঠানো হবে। কিছু ক্ষেত্রে, পতাকাগুলির একটি উপসর্গ "পড" থাকে
জোর দিন যে তারা pod2html এর জন্য, এবং এই উপসর্গটি তাদের আগে মুছে ফেলা হবে
pod2html এ পাস করা হয়। যে পতাকাগুলিতে অতিরিক্ত "পড" উপসর্গ রয়েছে তা হল:
--[না]পডহেডার --[না]পডিনডেক্স --[না]পডরেকারস --[না]পডকিয়েট
--[না]পডভারবোস --পডফ্লাশ
যে পতাকাগুলি pod2html এ তাদের ব্যবহার থেকে অপরিবর্তিত রয়েছে তা হল:
--backlink=s --cachedir=s --htmlroot=s --libpods=s --title=s
--podpath=s --podroot=s
যেখানে 's' একটি উপযুক্ত অক্ষর স্ট্রিং। এই পতাকা সব পাওয়া যায় না
Pod::Html এর পুরোনো সংস্করণ। আরও তথ্যের জন্য আপনার Pod::Html ডকুমেন্টেশন দেখুন।
বিকল্প, সঙ্গে নির্দেশিত -npod, Pod::Html ব্যবহার করা নয়, বরং বিন্যাস করার জন্য
বিশেষ এইচটিএমএল ছাড়াই তির্যক (অথবা স্টাইলশীট যা নির্দেশ করে) পড টেক্সট
মার্কআপ. এটি দরকারী, উদাহরণস্বরূপ, যদি পড একটি বিকল্প উপায় হিসাবে ব্যবহার করা হচ্ছে
মন্তব্য লিখুন
সার্জারির -ফর্ম, বা --ফ্রেম পতাকা
ডিফল্টরূপে, একটি একক এইচটিএমএল আউটপুট ফাইল তৈরি করা হয়। এটি দিয়ে পরিবর্তন করা যেতে পারে -ফর্ম
বিকল্প, যা বাম প্যানেলে বিষয়বস্তুর একটি টেবিল ধারণ করে একটি ফ্রেম তৈরি করে এবং
ডান পাশে সোর্স কোড। এটি কোড ব্রাউজিংকে সহজ করে। অনুমান, উদাহরণস্বরূপ,
যে ইনপুট ফাইল হয় MyModule.pm. তারপর, ডিফল্ট ফাইল এক্সটেনশন পছন্দের জন্য, এই
তিনটি ফাইল তৈরি করা হবে:
MyModule.pm.html - ফ্রেম
MyModule.pm.toc.html - বিষয়বস্তুর সারণী
MyModule.pm.src.html - ফর্ম্যাট করা সোর্স কোড
স্পষ্টতই এই ফাইলের নামকরণ স্কিমটির প্রয়োজন যে আউটপুটটিকে একটি বাস্তব ফাইলে নির্দেশিত করা হবে (যেমন
বিরোধী, বলুন, আদর্শ আউটপুট)। যদি এই ক্ষেত্রে না হয়, বা যদি ফাইল এক্সটেনশন
অজানা, -ফর্ম বিকল্প উপেক্ষা করা হবে।
সার্জারির -পাঠ্য=s, বা --html-toc-এক্সটেনশন পতাকা
বিষয়বস্তু ফাইলের অতিরিক্ত ফাইল এক্সটেনশন নির্দিষ্ট করতে এই পতাকা ব্যবহার করুন যখন
html ফ্রেম ব্যবহার করা হয়। ডিফল্ট হল "toc"। "ফাইল এক্সটেনশন নির্দিষ্ট করা" দেখুন।
সার্জারির -sext=s, বা --html-src-এক্সটেনশন পতাকা
html ফ্রেম করার সময় বিষয়বস্তু ফাইলের অতিরিক্ত ফাইল এক্সটেনশন নির্দিষ্ট করতে এই পতাকাটি ব্যবহার করুন
ব্যবহৃত. ডিফল্ট হল "src"। "ফাইল এক্সটেনশন নির্দিষ্ট করা" দেখুন।
সার্জারির -হেন্ট, বা --html-সত্তা পতাকা
এই পতাকাটি এইচটিএমএল বিন্যাসের জন্য এইচটিএমএল::সত্তার ব্যবহার নিয়ন্ত্রণ করে। ডিফল্টরূপে,
মডিউল Html::Entities বিশেষ চিহ্ন এনকোড করতে ব্যবহৃত হয়। এটা ঠিক নাও হতে পারে
কিছু ব্রাউজার/ভাষার সমন্বয়ের জন্য জিনিস। --nohtml-entities বা -nhent to ব্যবহার করুন
এটি প্রতিরোধ করুন।
স্টাইল শীট
শৈলী শীট html এর চেহারা নিয়ন্ত্রণ এবং সামঞ্জস্য করা খুব সুবিধাজনক করে তোলে
পৃষ্ঠাগুলি ডিফল্ট আচরণ হল একটি এমবেডেড স্টাইল শীট সহ html এর একটি পৃষ্ঠা লেখা।
একটি এমবেডেড স্টাইল শীটের একটি বিকল্প হল একটি লিঙ্ক সহ একটি পৃষ্ঠা তৈরি করা৷
বাহ্যিক শৈলী শীট। এই সঙ্গে নির্দেশিত হয় -css=ফাইলের নাম, যেখানে বাহ্যিক
শৈলী শীট হয় ফাইলের নাম. বাহ্যিক শৈলী শীট ফাইলের নাম তৈরি করা হবে যদি এবং
শুধুমাত্র যদি এটি বিদ্যমান না থাকে। থেকে একাধিক পৃষ্ঠা নিয়ন্ত্রণ করার জন্য এই বিকল্পটি কার্যকর
একটি একক স্টাইল শীট।
প্রমিত আউটপুটে একটি স্টাইল শীট লিখতে এবং প্রস্থান করার জন্য perltidy করতে, ব্যবহার করুন -এসএস, বা
--স্টাইলশীট, পতাকা। এটি দরকারী যদি স্টাইল শীট কারো জন্য লেখা না যায়
কারণ, যেমন যদি -পূর্ব পতাকা ব্যবহার করা হয়েছিল। সুতরাং, উদাহরণস্বরূপ,
perltidy -html -ss >mystyle.css
ফাইলে ডিফল্ট বৈশিষ্ট্য সহ একটি স্টাইল শীট লিখবে mystyle.css.
স্টাইল শীট ব্যবহার উত্সাহিত করা হয়, কিন্তু একটি স্টাইল শীট ছাড়া একটি ওয়েব পৃষ্ঠা হতে পারে
পতাকা দিয়ে তৈরি -এনএসএস. এই বিকল্পটি ব্যবহার করুন যদি আপনি নিশ্চিত হতে চান যে পুরোনো
ব্রাউজার (মোটামুটিভাবে বলতে গেলে, নেটস্কেপ নেভিগেটর এবং ইন্টারনেটের 4.0 এর আগের সংস্করণ
এক্সপ্লোরার) এইচটিএমএল ফাইলের সিনট্যাক্স-রঙ প্রদর্শন করতে পারে।
HTML বৈশিষ্ট্য নিয়ন্ত্রণ
দ্রষ্টব্য: সাধারণত ডিফল্ট বৈশিষ্ট্যগুলি গ্রহণ করা এবং তারপর সম্পাদনা করা আরও সুবিধাজনক
স্টাইলশীট যা উত্পাদিত হয়। যাইহোক, এই বিভাগে দেখায় কিভাবে নিয়ন্ত্রণ করতে হয়
পতাকা সহ বৈশিষ্ট্য perltidy.
সিনট্যাক্সের রঙগুলি তাদের ডিফল্ট মান থেকে লং-এর পতাকা দ্বারা পরিবর্তিত হতে পারে
গঠন -html-রঙ-xxxxxx=n, বা আরও সুবিধাজনকভাবে সংক্ষিপ্ত ফর্ম, -hcx=n, কোথায় xxxxxx
নিম্নলিখিত শব্দগুলির মধ্যে একটি, এবং x সংশ্লিষ্ট সংক্ষেপণ হল:
টোকেন টাইপ xxxxxx x
---------- -----------
মন্তব্য মন্তব্য গ
সংখ্যা সংখ্যাসূচক n
শনাক্তকারী শনাক্তকারী i
bareword, ফাংশন bareword w
কীওয়ার্ড কীওয়ার্ড k
বেশ, প্যাটার্ন উদ্ধৃতি q
এখানে ডক টেক্সট এখানে-ডক-টেক্সট জ
এখানে ডক টার্গেট এখানে-ডক-টার্গেট এইচএইচ
বিরাম চিহ্ন বিরাম চিহ্ন pu
বন্ধনী বন্ধনী p
কাঠামোগত ধনুর্বন্ধনী গঠন গুলি
সেমিকোলন সেমিকোলন sc
কোলন কোলন কো
কমা কমা সেমি
লেবেল লেবেল জে
উপ সংজ্ঞা নাম সাবরুটিন মি
পড টেক্সট পড-টেক্সট পিডি
রঙের একটি ডিফল্ট সেট সংজ্ঞায়িত করা হয়েছে, তবে মান প্রদান করে সেগুলি পরিবর্তন করা যেতে পারে
নিম্নলিখিত পরামিতিগুলির যেকোনো একটিতে, যেখানে n হয় একটি 6 সংখ্যার হেক্স RGB রঙের মান বা
একটি রঙের জন্য একটি ascii নাম, যেমন 'লাল'।
ব্যাখ্যা করার জন্য, নিম্নলিখিত কমান্ডটি একটি html ফাইল তৈরি করবে somefile.pl.html সঙ্গে
"aqua" কীওয়ার্ড:
perltidy -html -hck=00ffff somefile.pl
এবং এটি বেশিরভাগ ব্রাউজারগুলির জন্য সমতুল্য হওয়া উচিত:
perltidy -html -hck=aqua somefile.pl
পার্লটিডি শুধুমাত্র এইচটিএমএল ফাইলে যে কোনো নন-হেক্স নাম লেখে। অনুসরণ
HTML 16 স্ট্যান্ডার্ডে 3.2টি রঙের নাম সংজ্ঞায়িত করা হয়েছে:
কালো => 000000,
রূপা => c0c0c0,
ধূসর => 808080,
সাদা => ffffff,
মেরুন => 800000,
লাল => ff0000,
বেগুনি => 800080,
fuchsia => ff00ff,
সবুজ => 008000,
চুন => 00ff00,
জলপাই => 808000,
হলুদ => ffff00
নৌবাহিনী => 000080,
নীল => 0000ff,
টিল => 008080,
aqua => 00ffff,
আরো অনেক নাম নির্দিষ্ট ব্রাউজারে সমর্থিত, কিন্তু হেক্স ব্যবহার করা সবচেয়ে নিরাপদ
অন্যান্য রঙের জন্য কোড। একটি ইন্টারনেট অনুসন্ধানের সাহায্যে সহায়ক রঙের টেবিলগুলি অবস্থিত হতে পারে
"HTML কালার টেবিল" এর জন্য।
রঙ ছাড়াও, আরও দুটি অক্ষর বৈশিষ্ট্য সেট করা যেতে পারে: গাঢ় এবং তির্যক। সেট করা a
বোল্ড ব্যবহার করতে টোকেন টাইপ, পতাকা ব্যবহার করুন --html-বোল্ড-xxxxxx or -এইচবিএক্স, কোথায় xxxxxx or x হয়
উপরের টেবিল থেকে লম্বা বা ছোট নাম। বিপরীতভাবে, একটি টোকেন টাইপ NOT সেট করতে
সাহসী ব্যবহার করুন, ব্যবহার করুন --nohtml-বোল্ড-xxxxxx or -এনএইচবিএক্স.
একইভাবে, একটি ইটালিক ফন্ট ব্যবহার করার জন্য একটি টোকেন টাইপ সেট করতে, পতাকা ব্যবহার করুন --html-ইটালিক-xxxxxx
or -হিক্স, আবার কোথায় xxxxxx or x উপরের টেবিলের লম্বা বা ছোট নাম।
এবং ইটালিক ব্যবহার না করার জন্য একটি টোকেন টাইপ সেট করতে, ব্যবহার করুন --nohtml-italic-xxxxxx or -এনআইক্স.
উদাহরণস্বরূপ, গাঢ় ধনুর্বন্ধনী এবং চুনের রঙ ব্যবহার করতে, নন-বোল্ড, তির্যক কীওয়ার্ড
নিম্নলিখিত কমান্ড ব্যবহার করা হবে:
perltidy -html -hbs -hck=00FF00 -nhbk -hik somefile.pl
ব্যাকগ্রাউন্ড কালার দিয়ে নির্দিষ্ট করা যায় --html-color-background=n, বা -hcbg=n উন্নত
সংক্ষিপ্ত, যেখানে n একটি 6 অক্ষরের হেক্স RGB মান। পাঠ্যের ডিফল্ট রঙ হল মান
দেওয়া যতিচিহ্নসিন্নিবেশ, যা একটি ডিফল্ট হিসাবে কালো।
এখানে কিছু নোট এবং ইঙ্গিত আছে:
1. আপনি যদি এই প্যারামিটারগুলির একটি পছন্দসই সেট খুঁজে পান, তাহলে আপনি একটি তৈরি করতে চাইতে পারেন
.perltidyrc তাদের ধারণকারী ফাইল. একটি ব্যাখ্যা জন্য perltidy ম্যান পৃষ্ঠা দেখুন.
2. এই পরামিতিগুলির জন্য মান নির্দিষ্ট করার পরিবর্তে, এটি গ্রহণ করা সম্ভবত সহজ
ডিফল্ট এবং তারপর একটি স্টাইল শীট সম্পাদনা করুন। স্টাইল শীটে মন্তব্য রয়েছে যা
এই সহজ করা উচিত.
3. সিনট্যাক্স-রঙের এইচটিএমএল ফাইলগুলি খুব বড় হতে পারে, তাই এটি বড় বিভক্ত করা ভাল হতে পারে
ডাউনলোডের সময় উন্নত করতে ফাইলগুলিকে ছোট ছোট টুকরা করুন।
কিছু সাধারণ ইনপুট কনভেনশন
নির্দিষ্ট করা বাধা প্রকারভেদ
বেশ কিছু প্যারামিটার যা কোড ব্লকের ধরন উল্লেখ করে একটি নির্দিষ্ট করে কাস্টমাইজ করা যেতে পারে
ব্লক প্রকারের সম্পর্কিত তালিকা। একটি ব্লকের প্রকার কীওয়ার্ডের নাম যা
যে ব্লক প্রবর্তন, যেমন if, আর, বা উপ. একটি ব্যতিক্রম একটি লেবেল ব্লক, যা
কোন কীওয়ার্ড নেই, এবং শুধুমাত্র একটি কোলন দিয়ে নির্দিষ্ট করা উচিত। সব ব্লক ব্যবহার নির্দিষ্ট করতে '*'.
উদাহরণস্বরূপ, নিম্নলিখিত প্যারামিটারটি "সাব", লেবেল, "শুরু" এবং "শেষ" ব্লকগুলি নির্দিষ্ট করে:
-cscl="সাব: শুরু শেষ"
(-cscl প্যারামিটারের অর্থ উপরে বর্ণিত হয়েছে।) উল্লেখ্য যে উদ্ধৃতি প্রয়োজন
শূন্যস্থানের কারণে ব্লক প্রকারের তালিকার চারপাশে। অন্য উদাহরণের জন্য, নিম্নলিখিত
তালিকা উল্লম্ব নিবিড়তার জন্য সমস্ত ব্লক প্রকার নির্দিষ্ট করে:
-bbvtl='*'
নির্দিষ্ট করা ফাইল এক্সটেনশানগুলি
বেশ কিছু প্যারামিটার ডিফল্ট ফাইল এক্সটেনশনকে ওভাররাইড করার অনুমতি দেয়। উদাহরণস্বরূপ, একটি ব্যাকআপ
ফাইল এক্সটেনশন এর সাথে নির্দিষ্ট করা যেতে পারে -bext=ext, কোথায় EXT কিছু নতুন এক্সটেনশন. ক্রমানুসারে
ব্যবহারকারীকে কিছু নমনীয়তা প্রদান করতে, নিম্নলিখিত কনভেনশনটি সমস্ত ক্ষেত্রে ব্যবহার করা হয়
যদি একটি নেতৃস্থানীয় '.' ব্যবহার করা উচিত. এক্সটেনশন "এক্সট" যদি "AZ", "az" দিয়ে শুরু হয়
অথবা "0-9", তারপর এটি একটি অন্তর্বর্তী '.' সহ ফাইলের নামের সাথে যুক্ত করা হবে। (বা সম্ভবত একটি
VMS সিস্টেমে '_')। অন্যথায়, এটি সরাসরি যুক্ত করা হবে।
উদাহরণস্বরূপ, ধরুন ফাইলটি somefile.pl. "-bext=old" এর জন্য, a '.' দিতে যোগ করা হয়
somefile.pl.old. "-bex=.old" এর জন্য, কোন অতিরিক্ত '।' যোগ করা হয়, তাই আবার ব্যাকআপ ফাইল
is somefile.pl.old. "-bext=~" এর জন্য, তারপর কোন ডট যোগ করা হবে না, এবং ব্যাকআপ ফাইল হবে
somefile.pl~ .
সুইচ যা মে BE নেগেটেড
নিম্নলিখিত তালিকাটি সমস্ত ছোট প্যারামিটার নাম দেখায় যা একটি উপসর্গ 'n' তৈরি করতে দেয়
নেতিবাচক ফর্ম:
D anl asc aws b bbb bbc bbs bl bli boc bok bok bol bot CE
সিএসসি ড্যাক ডিবিসি ডিসিএসসি ডিডিএফ ডিএলএন ডিএনএল ডপ ডিপি ডিপ্রো ডিএসসি ডিএসএম ডিএসএন ডিটিটি ডব্লিউএলএস
dwrs dws f fll frm fs hsc html ibc icb icp iob isbc লাল লগ
lp lsl ohbr okw ola oll opr opt osbr otr ple pod pvl q
sbc sbl schb scp scsb sct se sfp sfs skp sob sohb sop sosb sot
ssc st sts syn t tac tbc toc tp tqw tsc wx বার কিস
সমানভাবে, সংশ্লিষ্ট দীর্ঘ নামের উপর 'না' বা 'না-' উপসর্গ ব্যবহার করা যেতে পারে।
সীমাবদ্ধতা
পার্সিং সীমাবদ্ধতা
বেশিরভাগ পার্ল স্ক্রিপ্টে Perltidy সঠিকভাবে কাজ করা উচিত। এটা অনেক স্ব-পরীক্ষা করে,
কিন্তু তবুও, এটা সম্ভব যে একটি ত্রুটি প্রবর্তন করা যেতে পারে এবং সনাক্ত করা যায় না।
অতএব, সাবধানে ব্যাকআপ করা এবং পুনরায় ফর্ম্যাট করা স্ক্রিপ্ট পরীক্ষা করা অপরিহার্য।
প্রধান বর্তমান সীমাবদ্ধতা হল যে perltidy 'ব্যবহার' এর সাথে অন্তর্ভুক্ত মডিউলগুলি স্ক্যান করে না
বিবৃতি এটি প্রবর্তিত কোনো খালি শব্দের প্রেক্ষাপট অনুমান করা প্রয়োজন করে তোলে
এই ধরনের মডিউল দ্বারা। পার্লটিডির ভাল অনুমান করার অ্যালগরিদম রয়েছে, তবে সেগুলি ভুল নয়।
যখন এটি অনুমান করতে হবে, এটি লগ ফাইলে একটি বার্তা ছেড়ে যায়।
আপনি একটি বাগ সম্মুখীন হলে, এটি রিপোর্ট করুন.
কি perltidy পার্স এবং বিন্যাস না
Perltidy ইন্ডেন্ট কিন্তু মন্তব্য এবং "qw" উদ্ধৃতি পুনরায় ফর্ম্যাট করে না। পার্লটিডি প্রবেশ করে না
যে কোনো উপায়ে এখানে নথিপত্র বা উদ্ধৃত পাঠ্যের বিষয়বস্তু পরিবর্তন করুন, এমনকি যদি সেগুলি থাকে
সোর্স কোড. (আপনি, যাইহোক, তাদের আলাদাভাবে পুনর্বিন্যাস করতে পারেন)। পারলটিডি করে না
বিন্যাস 'ফরম্যাট' বিভাগ যে কোনো উপায়ে. এবং, অবশ্যই, এটি পড পরিবর্তন করে না
নথি।
onworks.net পরিষেবা ব্যবহার করে অনলাইনে perltidyp ব্যবহার করুন