ইম্যাকস-লিসপ ডিবাগারে মূল্যায়ন বাধাগ্রহণ এবং বর্তমান স্ট্যাকটি পর্যবেক্ষণ করবেন?


17

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

আমি কীভাবে সরাসরি ইমাস-এ ল্যাপ্প কোড কার্যকর করতে বাধা দিতে পারি? আমার কোন ফাংশনটি ডিবাগ করার দরকার তা আমি জানি না।

উদাহরণস্বরূপ, টাইপিং C-g, যখন এটি প্রয়োগে বাধা দেয়, কোন ফাংশনটি বাধাগ্রস্ত হয়েছিল সে সম্পর্কেও আমাকে কিছুই জানায় না।

উত্তর:


18

আপনি C-gচালু করে ডিবাগারটি ট্রিগার করতে পারেন debug-on-quit। শুধু কর

M-x toggle-debug-on-quit

এখন যতবার আঘাত করবেন C-gআপনি যা যাচ্ছিলেন তার ব্যাকট্র্যাস পাবেন। এই ব্যাকট্র্যাসটি ইন্টারেক্টিভ, সুতরাং আপনি এটি দিয়ে ক্রিয়াকলাপটি চালিয়ে dযেতে পারেন এবং আপনি এখান থেকে সরে যেতে শুরু করতে পারেন c। (একবার চেষ্টা করে দেখুন, পড়ার চেয়ে দেখতে আরও সহজ)।

(debug)আপনার কোডের অভ্যন্তরে এটি একই ব্যাকট্রেস পাবেন । এটিতে এখানে একটি ছোট ব্লগ পোস্ট এবং সম্পর্কিত এলিস্প ম্যানুয়াল পৃষ্ঠা


(নম্রভাবে বলে hello);) দুর্দান্ত ডিবাগটি ইন্টারঅ্যাকটিভ - আমি কখনই এটি যাচাই করতে ভাবিনি :)
সান অলরেড

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