ইম্যাক্সকে পুরো বৈশিষ্ট্যযুক্ত সি / সি ++ আইডিই হিসাবে ব্যবহার করা হচ্ছে


50

ইমাসকে সি / সি ++ আইডিই হিসাবে ব্যবহার করতে আমি এক বছরেরও বেশি সময় ধরে চেষ্টা করে যাচ্ছি। আমি এখন পর্যন্ত কেবলমাত্র প্রান্তিকভাবে সফল হয়েছি, তবে কয়েক ইটের প্রাচীরের মধ্যে দিয়ে চলেছি। বর্তমানে আমি সিইডিইটি ব্যবহার করার চেষ্টা করছি, তবে কীভাবে এটি কার্যকরভাবে ব্যবহার করতে হয় তা বোঝার জন্য আমি মোটামুটি সময় পার করছি।

আইডিইতে আমি যে বৈশিষ্ট্যগুলি সন্ধান করছি সেগুলি নিম্নরূপ:

  1. সফ্টওয়্যার পরিচালনা "প্রকল্প।" আমি চাই যে আমার আইডিইতে আমার বর্তমান প্রকল্পটি তৈরি করা সমস্ত ফাইলের একটি ধারণা থাকতে হবে যাতে আমি আমার প্রকল্পের মধ্যে সন্ধান এবং প্রতিস্থাপনের মতো ফাংশন সম্পাদন করতে পারি। (খুব ভাল লাগবে যদি আমি প্রচুর সাপোর্ট ফাইলের সাহায্যে আমার উত্স গাছের টুকরা ছাড়াই এটি অর্জন করতে পারি without তবে প্রতি প্রকল্পে আমার কেন একাধিক কেন্দ্রীভূত প্রকল্প ফাইলের প্রয়োজন হবে?)
  2. আমি বর্তমানে কোন বাফারটি ঘুরে দেখছি তা নির্বিশেষে আইডিইর মধ্যে থেকে বর্তমান প্রকল্পটি তৈরির ক্ষমতা। আমার একটি কী বাঁধতে সক্ষম হতে হবে যা বর্তমান প্রকল্পটি তৈরি করবে।
  3. ভূল প্রতিবেদন. বিল্ড সরঞ্জামগুলি দ্বারা প্রতিবেদন করা ত্রুটিগুলি খুঁজে পেতে আমি 500+ আউটপুট লাইনের মাধ্যমে পড়তে চাই না। সাধারণত, ত্রুটিগুলি ত্রুটি প্রতি এক লাইনের সাথে তাদের নিজস্ব বাফারে প্রদর্শিত হয়।
  4. প্রকল্পের মধ্যে চিহ্নগুলির সচেতনতা এবং সেগুলি সংজ্ঞায়িত করা হয়। আমি আমার প্রকল্পের ফাইলগুলিতে বা সিস্টেমের মধ্যে ফাইল অন্তর্ভুক্ত থাকুক না কেন প্রতীক সংজ্ঞাতে যেতে চাই।
  5. ভিজ্যুয়াল ডিবাগিং। আমি কোডের মাধ্যমে পদক্ষেপ নেওয়ার সাথে সাথে স্থানীয় ভেরিয়েবলগুলির একটি ঘড়ির তালিকা পেতে চাই যা স্বয়ংক্রিয়ভাবে আপডেট হয়। আমি কোডে ব্রেকপয়েন্টগুলি সেট করতে সক্ষম হতে চাই যে কোডটির পরবর্তী লাইনটি কার্যকর করা হবে।

আমি জানি যে এই বৈশিষ্ট্যগুলির প্রত্যেকটিই বিদ্যমান কারণ আমি প্রত্যেকে ইডিই, শব্দার্থক, জিডিবি ইত্যাদি ব্যবহার করে এক সময় বা অন্য সময়ে কাজ করেছি had সমস্যাটি হ'ল আমি কখনই এই সমস্ত বৈশিষ্ট্যগুলি একই সাথে কাজ করতে সক্ষম হইনি , কারণ প্রতিটি টুকরোগুলি সাধারণত নিজেই কনফিগার করতে হয় এবং কীভাবে সেগুলি একবারে কনফিগার করা যায় এবং সেগুলি একসাথে কাজ করা যায় তা নির্ধারণ করা খুব বেশি কাজ।

ইমাকসকে একটি পূর্ণ বৈশিষ্ট্যযুক্ত সি / সি ++ আইডিইতে রূপান্তর করার জন্য কী সমাধান রয়েছে? আপনার কি সবসময় টুকরোচর সব কিছুর কনফিগার করতে হবে, বা একসাথে সমস্ত বৈশিষ্ট্য সেট আপ করার কোনও উপায় আছে?

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


6
এই প্রশ্নটি বেশ কয়েকটি মধ্যে বিভক্ত ভাল হতে পারে। আপনি আংশিক জবাবের একগুচ্ছ সমাপ্ত হতে পারেন, যেখানে কোনও আইটেমই তাদের প্রাপ্য মনোযোগ দেওয়া হয় না।
মালবারবা


6
@ মালবারবা: আমি যদি পাঁচটি পৃথক প্রশ্ন জিজ্ঞাসা করি তবে এটি একটি নকল হতে পারে। এই প্রশ্নের পুরো বিষয়টি হ'ল এখানে পাঁচটি পৃথক প্যাকেজ থাকতে পারে যা পাঁচটি পৃথক লক্ষ্য অর্জন করে, তবে একে অপরের সাথে সুন্দরভাবে খেলতে সমস্ত পাঁচটি কনফিগার করা প্রায় অসম্ভব বলে মনে হয়। যদি উত্তরটি ফিরে আসে তবে "ইমাসগুলি একটি সম্পূর্ণ বৈশিষ্ট্যযুক্ত আইডিই হিসাবে কাজ করতে পারে না কারণ এটি কনফিগার করতে অসম্ভব সময় লাগে।" তারপর তাই এটা হতে.
নিসপিও

4
পয়েন্টগুলির প্রতিটি এটি নিজস্ব প্রশ্ন (সম্ভাব্য নকল) হতে পারে, সেগুলিকে এক প্রশ্নের মধ্যে একসাথে রাখলে প্যাকেজ মিথস্ক্রিয়তার কারণে মাঝে মাঝে বিভিন্ন উত্তর হতে পারে।
জোনাথন লিচ-পেপিন

উত্তর:


27

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

  1. আসল আইডিই-এর মতো অভিজ্ঞতা সরবরাহের সবচেয়ে কাছের প্যাকেজ হ'ল প্রজেক্টাইল । এটি প্রতি প্রকল্পের ভিত্তিতে এক টন কার্যকর কার্যকারিতা সরবরাহ করে। আপনি সম্ভবত কিছু প্রকারের উইন্ডো / ওয়ার্কস্পেস পরিচালনাও চাইবেন; আমি ওয়াকস্পেস নামক নিজস্ব সমাধানটি ব্যবহার করি , তবে অন্যান্য ভাল সমাধানগুলির মধ্যে দৃষ্টিভঙ্গি , ওয়ার্কগ্রুপ এবং এলস স্ক্রিন অন্তর্ভুক্ত রয়েছে ।
  2. একটি "বিল্ড" কী তা সম্পর্কে বিভিন্ন ভাষার বিভিন্ন ধারণা রয়েছে তবে M-x compileএটি বেশ কিছু কিছু সমন্বিত করতে পারে এবং ত্রুটির মধ্য দিয়ে পেজিং সহজ করে তোলে (কেবল ব্যবহার করুন next-error)। সেট করতে ডিরেক্টরি ভেরিয়েবলগুলি ব্যবহার করে আপনি সহজেই প্রতি-প্রকল্পের ভিত্তিতে কাস্টমাইজ করতে পারেন compile-command। আপনি ( ) compileব্যবহার করে প্রক্ষেপণ দিয়ে চালাতে পারেন ।projectile-compile-projectC-c p c
  3. M-x compileএছাড়াও আপনি এখানে আচ্ছাদন করেছেন - ত্রুটিগুলি সাধারণত *compilation*বাফারে প্রতিটি লাইন প্রতি সহজেই পেজিং সহ শেষ হয় next-error
  4. প্রতীকটিতে ঝাঁপিয়ে পড়া "আপনার কোড বোঝা" জড়িত, এবং এটি হ'ল ভাষাগুলিতে সমর্থনটি প্রচুর পরিমাণে পরিবর্তিত হয়। এলিস্পের জন্য, আপনি দুর্দান্ত এলিস্প-স্লাইম-নাভি ব্যবহার করতে পারেন , এবং তারপরে M-.সংজ্ঞাটিতে যেতে পারেন। এখানে কিছু প্যাকেজ রয়েছে যা অন্যান্য ভাষার জন্য একই রকম সমর্থন সরবরাহ করে: সিডার (ক্লোজারের জন্য); স্লাইম (কমন লিস্পের জন্য); রোব (রুবির জন্য); সি / সি ++ এর জন্য অর্থপূর্ণ বা ঝনঝন ট্যাগগুলি (অস্বীকৃতি: আমি কখনও ব্যবহার করিনি, সুতরাং তারা ভালভাবে কাজ করে কিনা সে সম্পর্কে আমার কোনও ধারণা নেই)। অন্য সমস্ত কিছু যদি ব্যর্থ হয় তবে আপনি ই এমাক্সের অন্তর্নির্মিত ট্যাগএসএসএস সুবিধাগুলি উত্সাহী সিটি্যাগের মতো কিছু ব্যবহার করেও ব্যবহার করতে পারেন , তবে ট্যাগস সহ আমার গ্রহণযোগ্য ফলাফলের কাছাকাছি আমি আর কোথাও পাই নি।
  5. ইমা্যাকগুলির ডিবাগারগুলির জন্য খুব ছড়িয়ে ছিটিয়ে থাকা সমর্থন রয়েছে। জিইউডি সহ জিডিবি সি-জাতীয় ভাষার জন্য আপনার সেরা বাজি; অন্যথায়, এটি প্রতি ভাষা ভিত্তিতে পুরোপুরি পুরোপুরি। (আমি মনে করি না যে ক্রস-ভাষা ভিজ্যুয়াল ডিবাগিং সত্যিই একটি বাস্তব লক্ষ্য))

4
পার্শ্ব-নোড হিসাবে প্রকল্প স্যুইচটিতে একটি স্বয়ংক্রিয়ভাবে তৈরির projectileসাথে সরাসরি সংহত করতে পারে। perspectiveperspective-per-project
জোনাথন লিচ-পেপিন

আমি semantic# 4 এ নোট যুক্ত করব , শব্দার্থকতা একটি দুর্দান্ত প্যাকেজ, এটি আপনার কোড বোঝে এবং সেই তথ্য দিয়ে অনেক দরকারী জিনিস করতে পারে।
জর্ডন বিয়নদো

আমি সত্যিই কখনও ব্যবহার করি নি semanticএবং আমি মনে করি আমার মনে আছে এটির অসম্পূর্ণ সি ++ সমর্থন রয়েছে তবে আমি এটি উত্তরে যুক্ত করেছি।
shosti

15

আমি ইমাসকে সি ++ আইডিই হিসাবে ব্যবহার শুরু করতে এই গাইডটি ব্যবহার করেছি। এটি হেলম এবং প্রজেক্টাইল প্রবর্তন করে যা আপনার অনেক প্রশ্নের উত্তর দিতে সহায়তা করে। বুদ্ধিমান,

  1. প্রজেক্টাইল প্রকল্প পরিচালনা করে। বর্তমান প্রকল্পের সাথে সম্পর্কিত ফাইলগুলি স্বয়ংক্রিয়ভাবে শিখতে এটি একটি মেকফিল, এসসিস্ট্রস্ট্রাক্ট, গিট রেপো, এসভিএন রেপো এবং সম্ভবত কিছু বিল্ড সিস্টেম বা সংস্করণ নিয়ন্ত্রণ ফাইলের জন্য ডিরেক্টরি ট্রি অনুসন্ধান করে। উদাহরণস্বরূপ, বর্তমান প্রকল্পে একটি ফাইল সন্ধান করতে হেলম ব্যবহার করে এমন রানগুলি C-c p hrunshelm-projectile

  2. প্রজেক্টাইল আপনার প্রকল্পগুলি তৈরি করতে পারে। উপলব্ধ ফাইলগুলির ভিত্তিতে মেক / এসসিএন / সিএমকে চালানোর চেষ্টা করে যা C-c p cচালায় projectile-compile-project। আমাকে এটি কনফিগার করতে হয়নি; এটি সর্বদা জেনে গেছে কী করা উচিত।

  3. আপনি দৌড়ানোর সময় ত্রুটিগুলি তাদের নিজের বাফারে প্রদর্শিত হবে projectile-compile-projectতবে আমি নিশ্চিত নই যে এটি আপনি যেমন চান তেমন সুন্দর।

  4. আপনি প্রোগ্রামটি (যা আপনার সিস্টেমে উপলব্ধ থাকতে হবে) এর helm-gtagsসাথে ইন্টারফেস করে এমন প্যাকেজটি ব্যবহার করতে পারেন gtags। নোট করুন যে gtags একটি GNU প্রকল্প এবং তাই উইন্ডোজটিতে অবিলম্বে কাজ করার সম্ভাবনা নেই।

    একবার কনফিগার হয়ে গেলে, হেলম প্রকল্পের প্রতীক সম্পর্কে সচেতন হয় এবং সংজ্ঞাগুলিতে নেভিগেট করতে এবং অবস্থানগুলি ব্যবহার করতে পারে। উদাহরণস্বরূপ helm-gtags-dwimকোনও চলক বা ফাংশনের যে কোনও ব্যবহারে লাফিয়ে উঠতে পারে এবং যখন একটি শিরোনাম ফাইল চালানো হয় তখন সেই শিরোনাম ফাইলটি খোলে।

  5. আমি এখনও এটি চেষ্টা করিনি।

তালিকাভুক্ত গাইডটি কীভাবে শুরু করবেন সে সম্পর্কে খুব সুস্পষ্ট কনফিগারেশন তথ্য দেয়।


আমি সেই গাইডকেও হোঁচট খেয়েছি এবং প্রয়োগ করেছি। আইএমএইচও এটি কোনওভাবে হেভিওয়েট এবং প্রচুর পরিমাণে মৌলিক ইমাস ইন্টারঅ্যাকশন পরিবর্তন করে। আমি বেশিরভাগ হেলম-সম্পর্কিত কনফিগারেশন অক্ষম করেছি কারণ তারা স্বাভাবিক শর্টকাটগুলিতে হস্তক্ষেপ করে (যেমন কোনও বাফারে সহজেই বর্তমান ডিরেক্টরিটি খোলার জন্য, বা কয়েকটি কী-স্ট্রোক সহ একটি সাব সাব ডাইর মধ্যে ফাইল খোলার মতো)। এক নজরে মূল্যহীন, তবে সম্ভবত পুরোপুরি নয়, ধাপে ধাপে চেষ্টা করা উচিত।
স্টাফেন গৌরিচন

9

যেহেতু আপনি এখন একটি সম্পূর্ণ বৈশিষ্ট্যযুক্ত সি / সি ++ আইডিই চাইছেন, আমি সম্ভবত যোগ্য হয়ে উঠতে পারি।

আমি ভিসি 4 থেকে ভিজুয়াল স্টুডিও 2010 পর্যন্ত সমস্ত এমএস আইডিই ব্যবহার করেছি, তাই আপনি কী চান তা আমি পুরোপুরি বুঝতে পারি।

সুসংবাদটি হ'ল ইমাকগুলি ভিজ্যুয়াল স্টুডিওর মতো 95% ভাল হতে পারে এবং এটি আরও অনেক কিছু করতে পারে। তবে আপনি "আরও" অংশে আগ্রহী নাও হতে পারেন। সুতরাং আমি কেবল আপনার প্রশ্নগুলিতে ফোকাস করব।

এখন মূল বিষয়, আপনি সিএমকে ব্যবহার করা উচিত , এমনকি আপনার সি ++ অ্যাপ্লিকেশনটি কেবল উইন্ডোজের জন্য! গল্পের শেষে. অন্য কোন পছন্দ নেই, আমি জানি আমি কী সম্পর্কে কথা বলছি। আপনি যদি সিএমকে ব্যবহার না করেন, তবে এটি চালিয়ে যাওয়া অর্থহীন।

প্রশ্নের উত্তর 1 : আপনার কিছু সেট আপ করার দরকার নেই, সিপুটিলস-সিমেক ইনস্টল করুন ( https://github.com/redguardtoo/cpputils-cmake ) যা অন্য প্লাগইন সেট আপ করে। এটি ভিজ্যুয়াল স্টুডিওর থেকেও বেশি সুবিধাজনক। সুতরাং প্রতি প্রকল্প সেটআপ প্রয়োজন হয় না। অনুসন্ধান প্রতিস্থাপন জিনিসটির জন্য, আমি বাশ / পার্ল / গিট এবং পারকোল ( https://github.com/mooz/percol ) এর শক্তিটি একত্রিত করি , যা কোনও আইডিইর চেয়ে অনেক ভাল। আমার ব্লগ ( http://blog.binchen.org/categories/emacs.html ) এবং আমার ~ / .bashrc ( https://gist.github.com/redguardtoo/01868d7a13817c9845e8#file-bashrc ) দেখুন। উদাহরণস্বরূপ, আমি নির্দিষ্ট প্রতিশ্রুতিবদ্ধ ফাইলগুলি প্রতিস্থাপন করতে পারি।

প্রশ্নের 2 এর উত্তর : এটি ইতিমধ্যে cpputils-cmake দ্বারা সেটআপ করা হয়েছে, আপনার ঠিক M-x compileযথারীতি প্রয়োজন ।

3 নং প্রশ্নের উত্তর : 2 প্রশ্নের মতোই I আমি জানি না কেন এটি একটি সমস্যা। এটি আরও ভাল কী বাইন্ডিং সহ ঠিক ভিএস-এর মতোই আচরণ।

নম্বরের প্রশ্নের উত্তর : এখন বেশিরভাগ লোকেরা কেবল গ্নু গ্লোবাল ব্যবহার করেন যা সিপুটিলেটস-সিমেকের সাথে মিলিত হতে পারে। আমি বুঝতে পারি আসল সমস্যাটি স্বয়ংক্রিয়ভাবে সমস্ত অন্তর্ভুক্ত সি ++ শিরোনামযুক্ত ডিরেক্টরিগুলি সনাক্ত করা । এটি সিপুইটিলস-সিমেক দিয়ে করা যেতে পারে, অন্য সব কিছুই সহজ। দয়া করে man globalশেল এবং এনভায়রনমেন্ট ভেরিয়েবল GTAGSLIBPATH সম্পর্কে ম্যানুয়াল পড়ুন। কোড নেভিগেশনের জন্য গ্লোবাল উপর ভিত্তি করে সুন্দর ইউএক্স সরবরাহ করার জন্য অনেক প্লাগইন রয়েছে, আমি ggtags.el সুপারিশ করি

5 নম্বরের প্রশ্নের উত্তর : ভিজ্যুয়াল ডিবাগিং, অনেকে সুপারিশ করেছেন M-x gdb-many-window, আমি চেষ্টা করেছিলাম কিন্তু এটি কার্যকর হয়নি। এটি কেবল কারণ আমার জিডিবি সংস্করণটি পুরানো because তবে জিইউডি ঠিক আছে। আমি সম্পাদক উইন্ডোতে আমার জন্য ভেরিয়েবল মুদ্রণের জন্য কিছু সংক্ষিপ্ত কী তৈরি করি। সমস্ত ডিবাগ স্টাফ ব্যবহারযোগ্য। এটিতে ভিএস হিসাবে সারণী ইউএক্স লেআউট নেই তবে তোমার সাথে সৎ হতে হবে মাইক্রোসফ্টের ডিবাগার ইউএক্সও বিশ্বের সেরা নয়। সেরা ব্যবহারকারী বান্ধব ডিবাগার হ'ল ডিডিডি ( http://www.gnu.org/software/ddd/)। গুড এবং ভিএস উভয়ই এই বিষয়টিকে স্তন্যপান করে। আজকাল আমি কেবল ইয়াসনিপেটের সাথে লগিং কোডটি সন্নিবেশ করলাম যা অন্য একটি ইমাস প্লাগইন। স্পষ্ট করার জন্য, আমি ব্রেকপয়েন্ট সম্পর্কে সমস্ত উন্নত কৌশল জানি, এটি কেবল কারণ আমি এই কৌশলগুলি প্রয়োগ করতে খুব অলস। ইমাসে লগিং কোড প্রবেশ করানো অনেক সহজ much

আইডিই সম্পর্কে আরও অনেক বিষয় রয়েছে: কোড সমাপ্তি? সংস্থা-মোড ব্যবহার করুন, কোনও সেটআপের প্রয়োজন নেই। রিয়েল টাইম সিনট্যাক্স চেক? cpputils-cmake ব্যবহার করুন, তাহলে(flymake-mode 1)

সবচেয়ে ভাল কথাটি হল, আপনি যদি আমার সেটআপটি ব্যবহার করেন তবে আপনাকে ভিএস-এর চেয়ে কম সেটআপ করা দরকার ( https://github.com/redguardtoo/emacs.d ) সেই সেটআপটিতে "পুরসেলের ইমাস কনফিগারেশন প্লাস সি / সি ++ সমর্থন" শিরোনাম রয়েছে ।

এখন আমার এমন কিছু বিষয়কে জোর দেওয়ার দরকার রয়েছে, ইমাস আপনাকে সম্পূর্ণ স্বাধীনতা দেয় । আপনি যে কোনও উপায় শুরু করতে পারেন। হার্ড উপায় বা সহজ উপায়।

সহজ উপায়টি হ'ল আমার সেটআপটি অনুলিপি করুন (বা গিথুবে কারওর সেটআপ, তারারগুলি প্রথমে গণনা করুন), 5 মিনিটের মধ্যে আপনার একটি সম্পূর্ণ কার্যকরী সি ++ আইডিই হবে। ভিএস যে 5 মিনিটের মধ্যে শুরু শেষ করেনি।

শক্ত উপায়টি শুরু থেকে সেটআপটিকে টুইট করছে। আপনি যদি শক্ত উপায়টি চয়ন করেন তবে ইমাকগুলিতে অভিযোগ করবেন না । এটা তোমার পছন্দ.

বিটিডাব্লু, দীর্ঘকালীন সময়ে, কিছুটা ইমাস লিস্প জ্ঞান সহায়ক হতে পারে helpful আমি মনে করি যে পেশাদার সি ++ বিকাশকারীকে এমএস শ * টিতে আমি যে সময় নষ্ট করেছি তার তুলনায় এটি ক্ষুদ্র। বহু বছর আগে এমএস নীরবে কিছু উইন্ডোজ আপডেটে তাদের ভিসি রানটাইম আপগ্রেড করেছে। এটি আমার পণ্যটি সংস্থাগুলির মেশিনে ওকে চলছে, কিন্তু গ্রাহকদের কম্পিউটারে ক্র্যাশ করেছে

এই ঘটনার পরে আমি রিচার্ড স্টলম্যানকে বুঝতে শুরু করি।


1
মজাদার. "আপনাকে সিএমকে ব্যবহার করা আবশ্যক" -> সুতরাং, আপনি বলছেন যে অটোকনফ বা ব্যক্তিগত স্ক্রিপ্ট ব্যবহার করে এমন একটি এলোমেলো ফ্রি সফটওয়্যার প্যাকেজটিতে কাজ করার সময়, কোনও একটি র‌্যাপার লিখতে হবে CMakeLists.txt?
স্টাফেন গ্যারিচন

1
আপনি এর পরিবর্তে জিএনইউ গ্লোবাল ব্যবহার করতে পারেন, চটকদার সমাধানের মতো নিখুঁত not তবে আরও নমনীয়, দেখুন blog.binchen.org/posts/emacs-as-c-ide-easy-way.html
চেন বিন

5

# 4 এর জন্য, আমি উচ্ছ্বসিত- ctags এবং অন্তর্নির্মিত ট্যাগগুলি সমর্থন সমর্থন করার জন্য সুপারিশ করি, যা আমি বছরের পর বছর ধরে ব্যবহার করি। বিকল্পভাবে, আমি সম্প্রতি সম্প্রতি জিএনইউ গ্লোবাল এবং জিজিটি্যাগগুলি প্যাকেজটি ব্যবহার করতে স্যুইচ করেছি এবং সেগুলি কিছুটা উচ্চতর হিসাবে পেয়েছি; যদিও, তারা প্রায় একইভাবে কাজ করে। উভয় প্রায় কোনও কনফিগারেশন নিয়ে কাজ করে। অন্যান্য আইডিই বৈশিষ্ট্যগুলির জন্য, আমি অটো-সম্পূর্ণ প্যাকেজটিও পছন্দ করি। তেমনি, আমি M-x compileব্যাপকভাবে ব্যবহার করি এবং পরবর্তী এবং পূর্ববর্তী ত্রুটির জন্য গ্লোবাল কীগুলি আবদ্ধ করি । "প্রকল্পগুলির" মধ্যে অনুসন্ধানের জন্য, আমি সাধারণত ব্যবহার করি M-x find-grep। নোট করুন যে এটি পরবর্তী এবং পূর্ববর্তী ত্রুটির জন্য একই কী বাইন্ডিংগুলি ব্যবহার করবে।


4

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

প্রজেক্টাইলটি ইমাসে প্রকল্প পরিচালনার জন্য সেরা বিকল্প বলে মনে হয়। এটি অত্যন্ত হালকা ওজনের, আপনার প্রকল্পে আপনার কোনও অতিরিক্ত ফাইল যুক্ত করার দরকার নেই। এটি নির্দিষ্ট কিছু ফাইলের উপস্থিতির ভিত্তিতে আপনার জন্য প্রকল্পগুলি স্বয়ংক্রিয়ভাবে সনাক্ত করার চেষ্টা করবে। উদাহরণস্বরূপ - আপনি যদি গিট রেপোতে কাজ করে থাকেন তবে প্রজেক্টাইল এটিকে একটি প্রকল্প হিসাবে বিবেচনা করবে (গিট দ্বারা ট্র্যাক হওয়া যে কোনও ফাইলই প্রকল্পের অংশ হিসাবে গণ্য হবে), তবে আপনি যে projectile-find-fileকোনও ফাইল প্রকল্প খোলার মতো আদেশ ব্যবহার করতে সক্ষম হবেন । এটিতে অন্যান্য কমান্ডের একটি গোছা রয়েছে যা প্রতি প্রকল্পের ভিত্তিতে পরিচালিত হয়।

ভূল প্রতিবেদন. বিল্ড সরঞ্জামগুলি দ্বারা প্রতিবেদন করা ত্রুটিগুলি খুঁজে পেতে আমি 500+ আউটপুট লাইনের মাধ্যমে পড়তে চাই না। সাধারণত, ত্রুটিগুলি ত্রুটি প্রতি এক লাইনের সাথে তাদের নিজস্ব বাফারে প্রদর্শিত হয়।

ক্লাইং / জিসিসি ব্যবহার করে সিনট্যাক্স পরীক্ষা করার জন্য ফ্লাইচেকের সমর্থন রয়েছে।

প্রকল্পের মধ্যে চিহ্নগুলির সচেতনতা এবং সেগুলি সংজ্ঞায়িত করা হয়। আমি আমার প্রকল্পের ফাইলগুলিতে বা সিস্টেমের মধ্যে ফাইল অন্তর্ভুক্ত থাকুক না কেন প্রতীক সংজ্ঞাতে যেতে চাই

আমি আপনাকে আরটিএগগুলি একবার দেখার পরামর্শ দিচ্ছি । এটি ব্যাকএন্ড হিসাবে সংঘাত এবং সংজ্ঞা এবং সমাপ্তির দিকে ঝাঁপিয়ে পড়া বেশ ভাল কাজ। এটি আপনার # 3 এর সাথেও সহায়তা করতে পারে কারণ এটি ঝাঁকুনি ব্যবহার করে ত্রুটি এবং সতর্কতা প্রদর্শন করতে ফ্লাইমেকের সাথে একীভূত হয়। পাশাপাশি এটিতে রিফ্যাক্টরিংয়ের জন্য কিছু সীমিত সমর্থন রয়েছে। বুদ্ধিমান স্বয়ংক্রিয়তা সমাপ্তির জন্য আরেকটি বিকল্প হ'ল বিড়ম্বনা-মোড


2

বর্তমানে ইমাসের সাথে প্রেরণ করা সিডিইটি সংস্করণ সেটআপ করা কঠিন, তবে আপনি অফিসিয়াল সাইটে যেটি পেতে পারেন সেটি সেটআপ করা সহজ, এবং আপনার # 2 এবং # 4 প্রয়োজনীয়তার উত্তর দিতে পারে।

সিডিইটির ইডিই আপনাকে উদাহরণস্বরূপ মেকফিল এবং অটোমেক প্রকল্পগুলি পরিচালনা করতে, এতে লক্ষ্যবস্তু যুক্ত করতে এবং ফাইলগুলিকে টার্গেটের সাথে যুক্ত করার অনুমতি দেয়। তারপরে আপনি EDE কমান্ড ব্যবহার করে আপনার প্রকল্পটি সংকলন করতে পারেন। যেহেতু এটি ইমাসের অন্তর্নির্মিত সংকলন মোড ব্যবহার করে, আপনার # 3 প্রয়োজনীয়তাও সন্তুষ্ট।

সিইডিইটির সিমান্টিকের সি ++ সহ কয়েকটি ভাষার পার্সার রয়েছে। এটি এক্সপ্লোরেন্ট-সিটিগস এবং জিএনইউ গ্লোবালের মতো কোনও ফাইলে সংজ্ঞায়িত ট্যাগগুলি পুনরুদ্ধার করতে পারে তবে এটিতে স্বতঃ-সমাপ্তি এবং জাম্পিং বৈশিষ্ট্যও রয়েছে। আপনার যদি "foo" নামে দুটি পদ্ধতি থাকে তবে সেমেন্টিকের লাফ আপনাকে সঠিক পথে আনতে যথেষ্ট স্মার্ট।

# 1 এর জন্য, আমি ব্যক্তিগতভাবে প্রক্ষিপ্ত ব্যবহার করি এবং আমি বেশ কয়েকবার আগে সফলভাবে জিডিবি ব্যবহার করে # 5 এর জন্য।

# 3 এর জন্য ইঙ্গিত: যদি ইডিই আপনার কাছে অতিরিক্ত পরিমাণে চলে আসে তবে ইমাসকে M-x recompileআপনার শেষ সংকলন কমান্ডটি চালু করার কমান্ড রয়েছে, তাই আপনি প্রথমবার আপনার সংকলনটি পরিচালনা করতে পারেন এবং তারপরে যে recompileকোনও বাফার ব্যবহার করতে পারেন ।


1

# 4 এর জন্য আপনাকে ইউ কমলিউম নামে একটি নতুন প্রকল্প বলে মনে হচ্ছে এবং সংশ্লিষ্ট ইমাস্যাক ক্লায়েন্ট যা পরের শীতল জিনিস বলে মনে হচ্ছে। কারণ এটি ঝাঁকুনি ব্যবহার করে তা ট্যাগ বা গ্লোবাল এর চেয়ে কোডের আরও ভাল ভিউ রাখে।


1
পরামর্শের জন্য ধন্যবাদ, তবে যেহেতু আমি এমন জিনিসগুলির সন্ধান করছি যা একসাথে ভালভাবে সংহত হয়েছিল আমি নিশ্চিত নই যে প্রোটোটাইপ ইম্যাক্স ক্লায়েন্টের সাথে একটি ভিম প্লাগইন ব্যবহার করে বৈশিষ্ট্যগুলির মধ্যে একটি পাওয়ার চেষ্টা করা সবচেয়ে ভাল পয়েন্ট।
নিসপিও

3
ব্যবহার করে দেখুন github.com/abingham/emacs-ycmd Emacs ক্লায়েন্টের জন্য পরিবর্তে (এটা ব্যবহার করে নোট github.com/Valloric/ycmd না github.com/Valloric/YouCompleteMe )। এটি সংস্থা-মোডের সাথে কাজ করে (এখানে অন্যান্য উত্তরগুলির দ্বারা প্রস্তাবিত) তাই এটি ইমাকের বাকী অংশগুলির সাথে ভালভাবে সংহত করে। আপনি মেলপা থেকে ycmd এবং কোম্পানির- ycmd ইনস্টল করতে পারেন ( স্প্রঞ্জ.ইস / এলএক্সজিওয়াই আমার কনফিগারেশন); এবং yCmd জন্য বিল্ড নির্দেশাবলী অনুসরণ করুন। শুধুমাত্র চ্যালেঞ্জ তোমার মত ফাইলে আপনার কম্পাইল পতাকা লাগাতে প্রয়োজন github.com/Valloric/ycmd/blob/master/examples/...
unhammer

1

আমি এর উত্স রেপো + ইসিবি + জিটি্যাগস + সিস্কোপ থেকে সিডিইটি-তে খুশি হয়েছি। এটি বলেছিল, এই পোস্টে অনেক পরামর্শ রয়েছে যা আমি চেষ্টা করব।


1
এই সমস্ত সরঞ্জাম এক সাথে কাজ করতে আপনাকে কী করতে হয়েছিল তা কি আপনি ব্যাখ্যা করতে পারেন?
নিসপিও

4
এই মুহুর্তে এটি প্রায় কোনও ভুলভ্রষ্ট মন্তব্যের মতো দেখাচ্ছে। :-) আপনি যদি সদয় হন তবে দয়া করে কিছুটা বিস্তারিত বলুন।
মালবারবা

ক্ষয়ে যাওয়ার জন্য দুঃখিত। স্ট্যাক এক্সচেঞ্জ অ্যাপটি অভ্যস্ত হয়ে উঠতে গম্বুজটি নেয়। প্রতীক নেভিগেশন এবং উত্স বিশ্লেষণের সাথে ডিল করে এই সমাধানটির উত্তর # 4 টি উত্তর দেয়। সিইডিইটি অবশ্যই সার্থক রয়েছে। ইসিবি হ'ল ইম্যাকস কোড ব্রাউজার, এবং পদ্ধতিগুলি তালিকাভুক্ত করতে এবং প্রতীক তথ্য রিপোর্ট করতে সিডিইটি ব্যবহার করে। Gtags এবং Cscope উভয়ই সোর্স বেস থেকে প্রতীক তথ্যের টেবিল তৈরি করে (হেলম এটিও করে), এবং ট্যাগ বা চিহ্ন দ্বারা নেভিগেশনকে অনুমতি দেওয়ার জন্য ইমাসের সাথে সংহত করে।
ক্লে হাপাল

1

উপরের টুকরোতে যেমন উল্লেখ করা হয়েছে, প্রজেক্টাইল (বিকল্পভাবে হেলম সহ) প্রকল্প পরিচালনার জন্য একটি উজ্জ্বল সমাধান।

কোড পরিসমাপ্তি এবং কিছু নেভিগেশনের জন্য ওয়াইসিএমডি দুর্দান্ত এবং এর জন্য সেরা ক্লায়েন্টটি ইমাসস-ওয়াইসিএমডি (পুরো প্রকাশ: আমি ইমাস ক্লায়েন্টটি লিখেছি))

"ট্যাগ" এবং সূচকের জন্য, আমি খুঁজে পেয়েছি সর্বোত্তম সামগ্রিক সমাধান হ'ল কোডসার্ক (আরও প্রকাশ: আমি এটিও লিখেছি)) এটি মোটামুটি বোবা যে এটি সত্যিই কেবল রেজেক্স অনুসন্ধান করে, তবে এটি স্পষ্টতই দ্রুত এবং সাধারণত আপনার যা প্রয়োজন তা হ'ল need , এবং এটি একাধিক ভাষায় ভাল কাজ করে।

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