অবশ্যই উত্তরটি অনেকগুলি বিষয়ের উপর নির্ভর করে, তবে আমরা যদি সঠিক, ভাল ফর্ম্যাটেড প্লেইন কোড দিয়ে শুরু করি , তবে এখানে কেউ কমবেশি জিনিসগুলিকে সাধারণীকরণ করতে পারে।
উত্স পাঠ্যের প্রাথমিক 'ফর্ম্যাটিং' হ'ল :
নতুন লাইন , স্থান এবং ট্যাব অক্ষর। নোট করুন যে নতুন লাইন এবং ম্যানুয়াল লাইন ব্রেক (ডিটিপি সফ্টওয়্যার হিসাবে) একই জিনিস নয় এবং তদ্বিপরীত, কিছু বিরল ভাষা
অন্যান্য ফর্ম্যাটিং চরিত্রগুলিকে মঞ্জুরি দিতে পারে , যদিও আমি এর আগে কখনও শুনিনি।
মন্তব্যগুলি কোডের নির্বাহযোগ্য অংশ নয়, সুতরাং এগুলি খুব ঝুঁকি ছাড়াই পুনরায় ফর্ম্যাট করা যেতে পারে, যদি কেউ জানে যে এটি সত্যই কোনও মন্তব্য কিনা। সুতরাং প্রথমে দেখার বিষয় হল মন্তব্যগুলি কীভাবে ট্যাগ করা হয়।
প্রাথমিক প্লেইনেক্সট ফর্ম্যাটিং সম্পর্কে কিছু বুনিয়াদি জেনে রাখা ভাল। উদাহরণস্বরূপ, পাইথনের জন্য, এখানে PEP8 শৈলীর গাইড রয়েছে । পাইথনের জন্য তৈরি করার সময়, এই ফর্ম্যাট গাইডটি প্রধান ভাষা যেমন সি / সি ++ এবং জাভা হিসাবে উল্লেখ হিসাবে ব্যবহার করা যেতে পারে। সন্দেহজনক যখন বিভিন্ন উদাহরণ প্রকল্পে সন্ধান করা সাহায্য করতে পারে।
সুতরাং, প্রথম নীতিটি হ'ল: উত্স পাঠ্যটি পরিবর্তন করবেন না।
আমি একটি চেকলিস্ট দিয়ে যাব - নিশ্চিত করুন যে:
- কোনও পর্যায়ে কোনও চরিত্রের অটোরিপ্লেসিং হয় না ।
- পাঠ্যে কোনও সম্পাদনা করা হয় না (যদি না আপনি 100% নিশ্চিত হন তবে অবশ্যই সেগুলি করা উচিত)।
- কোনও লাইন মোড়ক উপস্থিত হয় না।
- সূচকগুলি দর্শনীয়ভাবে সংরক্ষণ করা হয় এবং সুসংগত হয় ( ইনডেন্টেশনের স্তর অনুসারে চার x প্রস্থ)।
- প্রাথমিক (শূন্য) ইনডেন্ট স্তরটি দৃশ্যমান হওয়া উচিত।
- সংজ্ঞায়িত শৈলীগুলি সিনট্যাক্সের বিন্যাসটি ধ্বংস করে না (যদি সিনট্যাক্স হাইলাইটিং ব্যবহার করা হয়)।
- উত্স পাঠ্যে উত্সটির একটি ব্যাকআপ রাখুন, যাতে মূল ফর্ম্যাটটি পুনরায় পরীক্ষা করতে বা নতুন করে শুরু করতে সক্ষম হয়।
- লাইন নম্বরগুলি উপস্থিত থাকলে অক্ষত থাকতে হবে বিশেষত যদি সেগুলি ব্যাখ্যায় উল্লেখ করা হয়।
আসলে যদি মূল উত্সটি সঠিকভাবে ফর্ম্যাট করা থাকে তবে কোনও লাইন মোড়ক দেওয়া উচিত নয় be যদি আবৃত রেখাগুলি এখনও উপস্থিত হয় এবং অনিবার্য হয় তবে এক-স্তরের ঝুলন্ত ইন্ডেন্টটি সর্বাধিক সাধারণ সমাধান (উপরে সংযুক্ত পিইপি দেখুন)। লাইন ব্রেকিং যদি প্রয়োজন হয় - ভাল স্টাইল গাইড বা লেখকের সাথে পরামর্শ করুন।
এখনও কিছু ছোটখাটো 'সাদা জায়গা' অক্ষরের পরিবর্তনের প্রয়োজন হতে পারে। যেহেতু উত্সটি ট্যাব অক্ষরগুলি অন্তর্ভুক্ত করতে পারে, অবশ্যই এর অর্থ হ'ল টাইপসেটর অবশ্যই নিশ্চিত করতে হবে যে প্রতিটি লাইনের শুরুতে সমস্ত ট্যাবগুলি সামঞ্জস্যপূর্ণ, অর্থাৎ নেস্টেড ইনডেন্টেশনগুলি দৃশ্যত সংরক্ষণ করা হবে এবং প্রতিটি পরবর্তী স্তর ইনডেন্টেশন একই প্রস্থের (সিএ চার x) ইন্ডেন্টেশনের এক স্তরের প্রস্থ)।
আদর্শভাবে, স্পেস অক্ষর বা মিশ্র স্পেস এবং ট্যাবগুলির সাহায্যে তৈরি করা ইনডেন্টেশনগুলি ট্যাবুলেশনের মাধ্যমে প্রতিস্থাপন করা উচিত (বা ডিটিপি সফ্টওয়্যার নেস্টেড ইনডেন্টেশনের জন্য আরও ভাল কী করতে পারে), সুতরাং, প্রয়োজনে ইনডেন্টেশন সামঞ্জস্য করা সহজ হতে পারে।
অবশ্যই কেউ ফাঁকা স্থান ছেড়ে দিতে পারে, তবে ফন্টটি পরিবর্তন করার সময় তাদের প্রস্থটি পরিচালনা করা আরও কঠিন এবং টেবিল কলামগুলির মতো অভ্যন্তরীণ-লাইন ইন্ডেন্টেশনগুলি সারিবদ্ধ করা আরও শক্ত।
মনসপাসেড ফন্ট + স্পেস
মনে রাখবেন যে উত্সটি যদি ইচ্ছাকৃতভাবে ফাঁকা জায়গাগুলির সাথে ফর্ম্যাট করা হয় এবং কেবল মনোস্পিড ফন্টে পড়ার উদ্দেশ্য ছিল, (উদাহরণস্বরূপ ASCII-diagram বা ASCII-art) কোনওটি ফাঁকা স্থানগুলি সম্পূর্ণ অপরিবর্তিত রাখা উচিত , তবে এই সিদ্ধান্তটি শুরু থেকেই নেওয়া উচিত। এই ক্ষেত্রে "কুরিয়ার নতুন" ফন্টটি সর্বাধিক সাধারণ। তবুও যদি সত্যিই প্রয়োজন না হয় তবে আমি মনসপ্যাসের বিরুদ্ধে পরামর্শ দিই, কারণ কম কোড কম লোকেরা আজ কোডিংয়ের জন্য মনসপ্যাসিকে বেছে নেয় এবং প্রুফরিডিংয়ের ক্ষেত্রে আনুপাতিক ফন্টগুলি আরও ভাল পড়ার অভিজ্ঞতা দেয়।
সাধারণভাবে, ঘনীভূত (যেমন আড়িয়াল সরু) বা আরও ছোট ফন্টগুলি আরও ভালভাবে কাজ করতে পারে: এটি শরীরের পাঠ্যের বিপরীতে আরও বেশি জোর দেয়, এটি কোডকে আরও কমপ্যাক্ট করে তুলবে এবং এভাবে অবাঞ্ছিত লাইন মোড়ানোর বিষয়টি কম দেখা যায়।
আমি মনে করি যে এখানে একটি লাইন আঁকতে পারে, এবং উপরেরটি করা হয়ে গেলে, 99% সম্ভাবনা রয়েছে যে সবকিছু ঠিকঠাক হওয়া উচিত, কমপক্ষে রং ছাড়াই একটি সরল একক-ফন্ট কোড ব্লকের জন্য।
সরঞ্জাম এবং উন্নত বিন্যাস
তদ্ব্যতীত সিনট্যাক্স হাইলাইট ব্যবহার করে চেহারাটি উল্লেখযোগ্যভাবে উন্নত করা যায়।
রঙিন মুদ্রণ বা স্ক্রিন ভিউ: সম্পূর্ণ রঙের বিন্যাসে হাইলাইটের প্রতিটি বৈশিষ্ট্য ব্যবহার করা যেতে পারে, তাই এটি সেরা-কেস দৃশ্য, তবে মুদ্রণ কিছু রঙ পরিবর্তন করতে পারে।
গ্রেস্কেল বা বি / ডাব্লু প্রিন্ট: অবশ্যই এখানে কেউ গা bold় (উদাহরণস্বরূপ কীওয়ার্ডস) বা ইটালিকস (উদাহরণস্বরূপ মন্তব্য) ব্যবহার করতে পারে তবে নোট করুন যে রঙগুলি সমস্ত পরিণতিতে ধূসর রূপান্তরিত হবে। উদাহরণস্বরূপ গ্রে গ্রেড আউট মন্তব্যগুলি ডিসপ্লেতে দুর্দান্ত লাগতে পারে তবে কাগজে খুব ফ্যাকাশে হয়ে যেতে পারে।
সর্বাধিক গুরুত্বপূর্ণ প্রশ্নটি হচ্ছে, লেআউট নির্মাতাদের এমন কোনও সরঞ্জাম রয়েছে যা কোনও পাঠযোগ্য ফর্মের মধ্যে কোডটি উপস্থাপন করতে পারে। ভাগ্যক্রমে, কোড সম্পাদনার জন্য অনেকগুলি নিখরচায় সরঞ্জাম রয়েছে, সর্বাধিক বিশিষ্ট (উইন্ডোজের জন্য) হ'ল : নোটপ্যাড ++, ভিএসকোড, ভিজ্যুয়াল স্টুডিও । তবে স্পেসগুলিতে ট্যাবগুলির সম্ভাব্য অন্তর্নিহিত স্বয়ংক্রিয় রূপান্তর সম্পর্কে সচেতন হন।
নোটপ্যাড ++ এ আরটিএফ হিসাবে কোডটি রফতানি করার একটি বিকল্প রয়েছে যা উত্সের সমস্ত ফর্ম্যাট এবং সিনট্যাক্স হাইলাইটিং সংরক্ষণ করবে।
যদি লেআউটের কোড উপস্থাপনায় পাঠ্য প্রবাহের পরিবর্তনের প্রয়োজন না হয় তবে সরাসরি চিত্র (স্ক্রিনশট) ব্যবহার করা যেতে পারে - এটি পাঠ্যের মতো নমনীয় নয়, তবে এটি 100% বিন্যাস এবং লাইন নম্বর সংরক্ষণ করবে এবং অনেক সময় সাশ্রয় করতে পারে। উদাহরণস্বরূপ, লাইন নম্বরগুলি পাঠ্য আকারে সংরক্ষণ করা জটিল y এছাড়াও পিডিএফ রফতানি করা একটি ভাল বিকল্প - তবে সমস্ত ডিটিপি সফ্টওয়্যার পিডিএফ এম্বেড করতে পারে না এবং পিডিএফ প্রিন্ট করার সময় কিছু ফর্ম্যাটিং হারাতে পারে না।
উদাহরণস্বরূপ, নোটপ্যাডে পাইথন কোডের জন্য আমার সেটআপটি ++ এর মতো দেখতে:
এটি কেবল উদাহরণস্বরূপ, যে কেউ সরাসরি স্ক্রিনশট ব্যবহার করতে পারে এবং এটি আসলে সবচেয়ে সহজ পদ্ধতি হতে পারে। এমন বিভিন্ন সরঞ্জাম রয়েছে যা স্ক্রিন ক্যাপচারে সহায়তা করতে পারে - উচ্চতর রেজোলিউশন চিত্রগুলির জন্য একজনের পর্দা 'সেলাই' দরকার হতে পারে।
রঙের স্কিমটি অবশ্যই পৃথকভাবে সম্পাদকের স্টাইল কনফিগারারে সংজ্ঞায়িত, যা ইতিমধ্যে সমর্থিত ভাষা সম্পর্কে অবগত, সুতরাং বাক্য গঠনটি না জানা থাকলেও মিথ্যা ফর্ম্যাটিং করা শক্ত করে তোলে। এখানে সাধারণ টাইপোগ্রাফির নিয়মগুলি কাজ করা উচিত: খুব বেশি রঙ নয়, ধারাবাহিক ফন্ট, ইন্ডেন্টেশন, আরামদায়ক লাইন ব্যবধান।
কাস্টম ভাষার সংজ্ঞাগুলির জন্য অতিরিক্ত সরঞ্জাম / প্লাগইনগুলিও সাধারণ, তবে সেগুলির জন্য বাক্য গঠন জ্ঞান প্রয়োজন।