মেকফিলগুলিতে কীভাবে মাল্টি লাইন মন্তব্য যুক্ত করা যায়


113

সি সিনট্যাক্সের মতো মেকফাইলে একাধিক লাইন মন্তব্য করার কোনও উপায় আছে কি /* */?


আপনি কোন সংস্করণ ব্যবহার করছেন?
egrunin

উত্তর:


152

না, /* */মেকফিলগুলিতে সি স্টাইলের মন্তব্যের মতো কিছুই নেই । অন্য কারও পরামর্শ মত, আপনি লাইন ধারাবাহিকতা ব্যবহার করে একটি বহু-লাইন মন্তব্য করতে পারেন। উদাহরণ স্বরূপ:

# This is the first line of a comment \
and this is still part of the comment \
as is this, since I keep ending each line \
with a backslash character

তবে, আমি কল্পনা করেছি যে আপনি সম্ভবত ডিবাগিং কারণে আপনার মেকফিলের কিছু অংশ অস্থায়ীভাবে মন্তব্য করতে চেয়েছেন, এবং প্রতিটি লাইনে একটি ব্যাকস্ল্যাশ যুক্ত করা আসলে ব্যবহারিক নয়। আপনি যদি জিএনইউ মেক ব্যবহার করছেন তবে আমি পরামর্শ দিচ্ছি আপনি ifeqইচ্ছাকৃতভাবে মিথ্যা অভিব্যক্তি দিয়ে নির্দেশটি ব্যবহার করুন । উদাহরণ স্বরূপ:

ifeq ("x","y")
# here's all your 'commented' makefile content...
endif

আশা করি এইটি কাজ করবে.


3
দ্রষ্টব্য, আপনি যদি কোনও নিয়মে লাইনগুলিকে "মন্তব্য করতে" চান তবে ifeq, endif লাইনগুলিকে ইনডেন্ট করবেন না।
সাইমন মার্টন

13

আমি বিশ্বাস করি উত্তরটি হ'ল না। আমি খুঁজে পেতে পারি শুধুমাত্র মন্তব্য স্টাইলিং প্রতিটি লাইনের জন্য # বা প্রথম লাইন মোড়ানোর জন্য \ ব্যবহার করুন।


10

ifeqমেক (1) এ মাল্টি-লাইন মন্তব্য করতে ব্যবহার করার ধারণা সম্পর্কে একটি নোট । আপনি নিম্নলিখিতটি লিখলে সেগুলি খুব ভাল কাজ করে না:

ifeq (0,1)
    do not risk ifeq comments
    else trouble will find you
    ifeq is even worse
endif

ইফেক এবং এন্ডিফের মধ্যবর্তী পাঠ্যটি এখনও তৈরি করে বিশ্লেষণ করা হবে যার অর্থ আপনি যে বিভাগে যা চান তা লিখতে পারবেন না। এবং আপনি যদি একটি দীর্ঘ মন্তব্য লিখতে চান এবং মন্তব্যে যা চান তা লিখতে চান ($ চিহ্নগুলি, কলোন এবং আরও যা যা করার জন্য একটি অর্থ রয়েছে) সহ আপনাকে অবশ্যই প্রতিটি এক লাইনে মন্তব্য করতে হবে। তাহলে কেন ifeq... :)


এটি সঠিক নয়। ইফেকের ভিতরে থাকা পাঠ্যের একমাত্র "পার্সিং" গেমেকটি একটি এন্ডিফ সন্ধান করতে হয়। আপনি ইফেকের ভিতরে কিছু বোগাস সিনট্যাক্স রয়েছে এমন কোনও মেকফাইলের সাহায্যে এটি সহজেই যাচাই করতে পারেন। যতক্ষণ পর্যন্ত ইফেকের শর্তটি মিথ্যা হিসাবে মূল্যায়ন করে না ততক্ষণ গেমেক ইফকের অভ্যন্তরে সিনট্যাক্স ত্রুটিগুলি আনন্দে উপেক্ষা করবে।
এরিক মেলস্কি

3
এটি সঠিক নয়। নিম্নলিখিত উদাহরণটি ব্যবহার করে দেখুন: ifeq (0, 1) ifeq মন্তব্যগুলি ঝুঁকিপূর্ণ করবেন না অন্যথায় সমস্যাটি আপনাকে শেষ পর্যন্ত দেখতে পাবে লাইনটি শুরু করার পরে অন্যটি ত্রুটিগুলিতে পরিণত হয়। তাই অন্য , ifeq , ifneq এবং সম্ভবত অন্যান্য অনেক প্রতীক যা আমি আপনার সমস্যা দেব জবাব দিই।
মার্ক ভেল্টজার

এটি মোটামুটি বিষয়, তবে বেশিরভাগ সিন্ট্যাক্টিক ত্রুটি উপেক্ষা করা হবে।
এরিক মেলস্কি

5
define BOGUS
lines
.....
endef

1
ifeqআমি যেমন মনে করি ঠিক তেমন সাবধানী , তবে আমার পক্ষে কাজ করে। ধন্যবাদ!
jcomeau_ictx

3

আপনি যা খুঁজছেন ঠিক তেমন নয়, তবে আত্মার মতো similar আমি এটি গ্রহণযোগ্য উত্তর বলে আশা করি না তবে এটি কারওর পক্ষে সহায়তা করতে পারে।

ধরে নিই যে আপনি ভিআইএম-এ আপনার মেকফিলগুলি সম্পাদনা করছেন:
আপনি কোন লাইনে মন্তব্য করতে চান তা সিদ্ধান্ত নিন বা তাদের 'ভি' দিয়ে নির্বাচন করুন।

তারপরে আপনি s/^/#/লাইনগুলি মন্তব্য করতে
এবং s/^#//সেগুলি প্রত্যাহার করতে রেজেক্স ব্যবহার করতে পারেন ।

--মন্তব্য--

  • ভিম কমান্ড লাইন খুলতে টিপুন :(কোলন)
  • পরবর্তী 'এন' লাইনের জন্য কমান্ডটি প্রস্তুত করতে, ব্যবহার করুন .,+n
  • "ভি" ব্যবহার করে একটি নমুনা রেখা দেখতে দেখতে: '<,'>s/^/#/

2
পরিবর্তে ব্লক মোড ব্যবহার করা সহজ। মন্তব্য করতে প্রথম লাইনের শুরুতে যান, সিটিআরএল-ভি, তীর পর্যন্ত নীচে অবধি, মূলধন I, #, পলায়ন। মন্তব্যগুলি মুছতে:
সিটিআরটিএল

1

ইমাসে, আপনি যে অঞ্চলটি মন্তব্য করতে চান তা চিহ্নিত করতে পারেন এবং আঘাত করতে পারেন M-;(যা চালায় comment-dwim)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.