কনসোলে ইম্যাকগুলি চালানোর সময় কীভাবে "প্রতীকটির ফাংশন সংজ্ঞাটি বাতিল: ত্রুটি" রোধ করবেন?


11

ইমাসে স্ক্রোলবারটি অক্ষম করতে আমি আমার .emacs ফাইলে (টগল-স্ক্রোল-বার -1) যুক্ত করেছি এবং আমি কনসোল মোডের বাইরে ইম্যাক চালালে এটি দুর্দান্ত কাজ করে। তবে আমি যখন টার্মিনালে ইমাস চালাচ্ছি ত্রুটিটি পেয়েছি প্রতীকটির ফাংশন সংজ্ঞাটি বাতিল: টগল-স্ক্রোল-বার

আমি ইমাস 23.3.1 চালাচ্ছি

আমি --debug-init চালানোর সময় ট্রেস হেরেস

    1 Debugger entered--Lisp error: (void-function scroll-bar-mode)                
    2   (scroll-bar-mode -1)                                                       
    3   eval-buffer(#<buffer  *load*> nil "/Users/neil/.emacs.d/init.el" nil t)  ;$
    4   load-with-code-conversion("/Users/neil/.emacs.d/init.el" "/Users/neil/.ema$
    5   load("/Users/neil/.emacs.d/init" t t)                                      
    6   #[nil "^H\205\264^@   \306=\203^Q^@\307^H\310Q\2027^@ \311=\2033^@\312\307$
    7   command-line()                                                             
    8   normal-top-level()

ইমাকস সম্ভবত আপনাকে একটি সতর্কতা বাফার দিয়েছে যাতে আপনাকে --debug-initএকটি সম্পূর্ণ ত্রুটি ব্যাকট্রেস পাওয়ার বিকল্প সহ ইম্যাক চালাতে বলা হয় । এটি চেষ্টা করে প্রশ্নটিতে সেই তথ্য যুক্ত করুন। Emacs সংস্করণ সহ M-x emacs-version। কোডটির এই অংশটি ইমাক্স 23.2 এর সাথে ঠিক কাজ করে।
— ট্রে জ্যাকসন

@ ট্রে জ্যাকসন, আমি আপনার অনুরোধ করা বিশদটি যুক্ত করেছি, আমি ইমাক্স 23.1 চালাচ্ছি বলে মনে হচ্ছে, তাই আমি আপগ্রেড করার চেষ্টা করব। আপনার পরামর্শের জন্য ধন্যবাদ।
— bneil

খুব অদ্ভুত. ঠিক আছে, পরবর্তী পরীক্ষাটি আপনার .emacs ডাব্লু / আউট করে চলছে emacs -nw -qএবং তারপরে স্ক্র্যাচ বাফারে টাইপ করে দেখুন (scroll-bar-mode -1)C-jএবং ত্রুটি পান কিনা। এই ফাংশনটি scroll-bar.elপ্যাকেজে ইম্যাক্সের সাথে বিতরণ করা হয়েছে , সুতরাং আমি অনুমান করছি যে আপনার .emacsকিছু অদ্ভুত রয়েছে বা ইমাকগুলি সঠিকভাবে ইনস্টল করা হয়নি।
— ট্রে জ্যাকসন

ডিবাগারটি প্রবেশ করানোর পরে আমি এই ত্রুটিটি পেয়েছি - লিস্প ত্রুটি: (শূন্য-ফাংশন স্ক্রোল-বার-মোড) (স্ক্রোল-বার-মোড -1) ইভাল ((স্ক্রোল-বার-মোড -1)) ইভাল-লাস্ট-সেক্সপ -1 (টি) ইভাল-শেষ-সেক্সপ (টি) ইভাল-প্রিন্ট-লাস্ট-সেক্সপ () কল-ইন্টারেক্টিভলি (ইভাল-প্রিন্ট-লাস্ট-সেক্সপ নীল নীল)
— বেনাইল

এখানে আমার .emacs ফাইল pastebin.com/4mYE91Ne খুব
— bneil

উত্তর:


14

FWIW। ইম্যাকস ম্যানুয়াল window-systemএকটি শিকারী হিসাবে ব্যবহারকে নিরুৎসাহিত করে ।

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

http://www.gnu.org/software/emacs/manual/html_node/elisp/Window-Systems.html

আমি যখন গ্রাফিকাল ডিসপ্লেতে থাকি তখন স্ক্রোলবার এবং সরঞ্জামদণ্ড বন্ধ করতে এটি ব্যবহার করি।

(if (display-graphic-p)
    (progn
      (tool-bar-mode -1)
      (scroll-bar-mode -1)))

5

যদিও আমি মনে করি @ নীটোনকের উত্তরটি সবচেয়ে ভাল এবং সমস্ত ঘাঁটিগুলি কভার করে, বিশেষত স্ক্রোল বারটি অক্ষম করতে আপনি নিম্নলিখিতটি আপনার মধ্যে রাখতে পারেন ~/.emacs

(if (fboundp 'scroll-bar-mode) (scroll-bar-mode -1))

-2

আমার অনুমান যখন আপনি emacs -nwইমাসগুলি খুলেন তখন এমনকি স্ক্রোল-বার.েল লোড করার জন্যও বিরক্ত করে না। না না কেন এটা ফাংশন এটি কষ্ট হচ্ছে না toggle-scroll-bar।
পরিবর্তে আপনি যদি
(scroll-bar-mode -1)
সম্ভবত কাজ রাখেন ।


1
(toggle-scroll-bar -1)emacs -nwইম্যাক্স 23.2 এর জন্য ঠিক কাজ করে ...
— ট্রে জ্যাকসন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.