TAGS ফাইলগুলির সংজ্ঞা রয়েছে
একটি TAGSফাইলে যেখানে ফাংশন এবং ক্লাস সংজ্ঞায়িত করা হয় তার একটি তালিকা থাকে। এটি সাধারণত কোনও প্রকল্পের গোড়ায় স্থাপন করা হয় এবং এর মতো দেখায়:
^L
configure,3945
as_fn_success () { as_fn_return 0; }^?as_fn_success^A180,5465
as_fn_failure () { as_fn_return 1; }^?as_fn_failure^A181,5502
as_fn_ret_success () { return 0; }^?as_fn_ret_success^A182,5539
as_fn_ret_failure () { return 1; }^?as_fn_ret_failure^A183,5574
এটি ইম্যাক্সকে সংজ্ঞাগুলি সন্ধান করতে সক্ষম করে। বেসিক নেভিগেশন অন্তর্নির্মিত হয় find-tag, তবে etags-selectএকাধিক ম্যাচ থাকলে একটি ভাল ইউআই সরবরাহ করে।
কোড সমাপ্তির জন্য আপনি TAGS ফাইলগুলিও ব্যবহার করতে পারেন। উদাহরণস্বরূপ, সংস্থার etags ব্যাকএন্ডে TAGS ফাইলগুলি ব্যবহার করা হয় ।
TAGS ফাইলগুলি বিভিন্ন সরঞ্জাম দ্বারা নির্মিত যেতে পারে
ctags(পূর্বে 'ইউনিভার্সাল ctags' বা 'বিস্তৃত ctags' নামে পরিচিত) TAGS ফাইল তৈরি করতে পারে এবং ভাষার বিস্তৃত পরিসরকে সমর্থন করে। এটি সক্রিয়ভাবে গিথুবে রক্ষণাবেক্ষণ করা হয়।
দুই প্রোগ্রাম ট্যাগগুলি ফাইল জেনারেট বলা সঙ্গে এ গিয়ে Emacs জাহাজ etagsএবং ctags। এ গিয়ে Emacs ' ctagsঠিক হয় etagsসার্বজনীন ctags হিসাবে একই CLI ইন্টারফেসের সাথে। বিভ্রান্তি এড়াতে, অনেকগুলি ডিস্ট্রো এই প্রোগ্রামগুলির নাম পরিবর্তন করে (উদাহরণস্বরূপ ctags.emacs24দেবিয়ান)।
TAGS ফাইল তৈরির জন্য ভাষা নির্দিষ্ট সরঞ্জামও রয়েছে, যেমন jsctagsএবং hasktags।
অন্যান্য ফাইল ফর্ম্যাট
ebrowseইমাস সহ শিপ করা একটি সি প্রোগ্রাম। এটি সি / সি ++ কোড সূচী করে এবং একটি BROWSEফাইল উত্পন্ন করে । ebrowse.el সাধারণত অনুসন্ধান সংজ্ঞা এবং সমাপ্তি সরবরাহ করে। BROWSEক্লাস / ফাংশনটির সংক্ষিপ্ত বিবরণ একটি কোডবেস সংজ্ঞায়িত করতে আপনি সরাসরি ফাইলটি ইমাসে খুলতে পারেন ।
গনুহ গ্লোবাল নিজস্ব ডাটাবেসের ফরম্যাট, একটি নিয়ে গঠিত যা হয়েছে GTAGS, GRTAGSএবং GPATHফাইল। আপনি gtagsকমান্ডের সাহায্যে এই ফাইলগুলি তৈরি করতে পারেন যা সি / সি ++ কোড পার্স করে। অন্যান্য ভাষার জন্য, জিএনইউ গ্লোবাল সর্বজনীন ctags দ্বারা উত্পন্ন ফাইলগুলি পড়তে পারে।
জিএনইউ গ্লোবাল আরও পরিশীলিত প্রশ্ন জিজ্ঞাসার জন্য একটি সি এল এল ইন্টারফেসও সরবরাহ করে, যেমন 'এই চিহ্নটির উল্লেখ কোথায়?' এটি একটি ইম্যাক্স প্যাকেজ gtags.el সহ পাঠায় তবে জিএনইউ গ্লোবাল ডাটাবেসগুলি অ্যাক্সেস করার জন্যও ggtags.el জনপ্রিয়।
জিএসইউ গ্লোবালের সাথে সিস্কোপ একইরকম: এটি সি / সি ++ এর নিজস্ব ডাটাবেস ফর্ম্যাটে পার্স করে। এটি 'এই ফানসিটনের সমস্ত কলার / কলিগুলি অনুসন্ধান করুন' এর মতো প্রশ্নের উত্তরও দিতে পারে।
বৈশ্বিক এবং cscope এর সাথে তুলনা করে এই এইচএন আলোচনাটিও দেখুন ।
ক্লায়েন্ট / সার্ভার প্রকল্পগুলি
অবিচ্ছিন্ন সার্ভার ব্যবহার করে rtags পার্স এবং সূচি সি / সি ++। এটি ক্ল্যাং পার্সার ব্যবহার করে, সুতরাং এটি সি ++ কে সত্যিই ভাল পরিচালনা করে। এটি সার্ভারের জিজ্ঞাসা করতে ইমাস প্যাকেজ সহ পাঠায়।
google-gtags একটি প্রকল্প ছিল যেখানে একটি সার্ভারে একটি বড় TAGS ফাইল সংরক্ষণ করা হত। আপনি যখন সার্ভারটি জিজ্ঞাসা করেছিলেন, এটি আপনার অনুসন্ধানের সাথে প্রাসঙ্গিক TAGS ফাইলের একটি উপসেট সরবরাহ করবে।
শব্দার্থবিজ্ঞান (সিডিইটি)
সিমেন্টিক হ'ল একটি অন্তর্নির্মিত ইমাস প্যাকেজ যা সি / সি ++ এর জন্য পার্সার রয়েছে, সুতরাং এটি সংজ্ঞাগুলিও সন্ধান করতে পারে। এটি TAGS ফাইল, csope ডাটাবেস এবং অন্যান্য উত্স থেকে ডেটা আমদানি করতে পারে। সিইডিইটিতে আইডিই শৈলীর কার্যকারিতা অন্তর্ভুক্ত রয়েছে যা এই ডেটা ব্যবহার করে, যেমন শ্রেণি শ্রেণিবিন্যাসের ইউএমএল ডায়াগ্রাম তৈরি করা।
GTagsআপনি যে প্রকল্পটি যুক্ত করেছেন সেটি বেশ মরে গেছে। যদি কারও বিষয়ে কথা হয়gtags, তারা সম্ভবত জিএনইউ গ্লোবালকে উল্লেখ করছেন।