ধীরে ধীরে অ্যাকটেক্সের সরবরাহিত কীবাইন্ডিংগুলি শিখছে


11

যদি আমি এটি করি M-x forward-char, ইমাস একটি খুব দরকারী বার্তা দেয়

You can run the command "forward-char" with C-f.

সত্য যে এ গিয়ে Emacs ফাইলের সব ক্ষীর কী-বাইন্ডিং জানতে পারেন বিবেচনা latex.elঅধীনে LaTeX-math-defaultAUCTeX দ্বারা উপলব্ধ, এটা যে ক্ষীর মোডে (AUCTeX) এ গিয়ে Emacs আমাকে কী-বাইন্ডিং স্মরণ সম্ভব? উদাহরণস্বরূপ \sigmaইমাকস টাইপ করার পরে একটি বার্তা দেখায় যা

You can insert "\sigma" by `s .

এটি খুব কার্যকর হবে কারণ এটি ল্যাটেক্স মোডে ধীরে ধীরে কী-বাইন্ডিংগুলি শিখতে দেয়।


2
আপনার প্রশ্নের উত্তর নয়, তবে মেনুবারগুলি কিবোর্ড শর্টকাটগুলি সংজ্ঞায়িত করা উচিত। এবং একই জিনিসটি পপআপ-মেনুতে পাওয়া যায় (যা শর্টকাটগুলি দেখায়) - যেমন (global-set-key [C-down-mouse-3] 'mouse-popup-menubar),। এইভাবে, আপনার বার্তা অ্যাড বমি নেই।
আইনজীবি

@ লিওলিস্ট আমি মন্তব্য করতে যাচ্ছি যে গণিতের মোডের চিহ্নগুলি মেনুতে নেই, তবে তাদের আসলে একটি নিজস্ব মেনু রয়েছে! এমনকি যেগুলির একটি সংজ্ঞায়িত শর্ট কাট নেই সেগুলিও দেখানো হয়েছে, কোডগুলি প্রস্তুত করার জন্য প্রয়োজনীয় with খুব সহজ!
টাইলার

উত্তর:


9

থেকে আমার উত্তর পরিবর্তন করা এখানে আমরা শুধু বাইরে এই তথ্য টান করতে পারেন LaTeX-math-default, যা 4-tuples একটি তালিকা রয়েছে

(CHARACTER MACRO MENU UNICODE)

CHARACTERচরিত্রটি যেখানে এটি আবদ্ধ করতে ব্যবহৃত হয়েছে (আমি জানি এটি একটি পূর্ণসংখ্যার মতো দেখাচ্ছে তবে এটি একটি চরিত্র, এটি (string CHARACTER)দেখতে ব্যবহার করুন), MACROস্ল্যাশ ছাড়াই ল্যাটেক্স ম্যাক্রো, MENUমেনুগুলির নাম এবং UNICODEএটি একটি ইউনিকোড চরিত্র যা প্রদর্শনের জন্য ব্যবহৃত হয় তালিকা. আমরা প্রথম এবং দ্বিতীয় উপাদানগুলি পরীক্ষা করতে চাই:

(defun show-latex-symbol-at-point ()
  (interactive)
  (let* ((sym (symbol-at-point))
         (latex-symbol (TeX-member sym LaTeX-math-default
                                   (lambda (a b)
                                     (string= a (nth 1 b)))))
         (shortcut (nth 0 latex-symbol))
         )
    (if (and latex-symbol shortcut)
        (message "You can insert \\%s with `%s"
                 (nth 1 latex-symbol)
                 (key-description (string shortcut))))))

নিয়মিতভাবে আউটপুট প্রদর্শন করার আরও ভাল উপায় রয়েছে তবে post-command-hookপ্রতিটি কমান্ডের পরে উপরের ফাংশনটি চালানোর জন্য একটি উপায় । এটি কেবলমাত্র চালু আছে তা নিশ্চিত করার জন্য আমরা একটি ব্যবহার করবlatex-mode

(add-hook 'post-command-hook
          (lambda ()
            (if (bound-and-true-p LaTeX-math-mode)
                (show-latex-symbol-at-point)
              )
            ))

এই উত্তরের জন্য অনেক ধন্যবাদ। আপনার কোড কাজ করে। $ Ig সিগমা typ টাইপ করার পরে, একটি বার্তা জানাচ্ছে You can insert \sigma with s। আমি একটি সম্ভাব্য বাগটি জানাতে চাই, যদি আমি $ \ oplus \ m টাইপ করি তবে ত্রুটি বলার সমস্যা আছে Error in post-command-hook ((lambda nil (if (eq major-mode (quote latex-mode)) (show-latex-symbol-at-point)))): (wrong-type-argument characterp nil)। আমি মনে করি auctexএটি শর্টকাট সেট না করে oplus(এর oplusনীচে পাওয়া যেতে পারে LaTeX-math-default) এর কারণে ঘটেছিল । এবং এই ত্রুটিটি থেকে, কোডটি কাজ করছে না বলে মনে হচ্ছে, যেমন $ ig সিগমা। টাইপ করে কিছুই ঘটে না।
নাম

@ নামটি আমি ঠিক করেছি যখন কখন CHARACTERএটি মুদ্রণ করার চেষ্টা না করাnil
এরিস্টস্টোক

পারফেক্ট। কয়েকটি ছোটখাটো পরামর্শ: (1) আমি মনে করি বার্তাটি এর You can insert \sigma with `sচেয়ে ভাল You can insert sigma with s। (২) বর্তমানে টাইপ \rightarrowকরার পরে বার্তাটি You can insert rightarrow with ^Fউপস্থিত হয়। আমি মনে করি এই বার্তাটি You can insert \rightarrow with `C-fসম্ভবত আরও ভাল।
নাম

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