ইমাসে প্রধান-মোড নির্দিষ্ট কি-বাইন্ডিং সেট করা Set


9

আমার .emacsফাইলে, আমি একটি নির্দিষ্ট মেজর মোডের জন্য ( কফি-মোডে সেট coffee-compile-fileকরা C-c C-c) একটি কী বাঁধাই করতে চাই।

আমি ব্যবহার সম্পর্কে প্রচুর নির্দেশাবলী পেয়েছি local-set-keyএবং global-set-key, সুতরাং আমি কফি-মোডে একবার ফাইল খুললে খুব সহজেই এই বাঁধাইটি যুক্ত করতে পারি, তবে এটির দ্বারা পরিচালিত হওয়া ভাল হবে .emacs

উত্তর:


8

মোড হুক ব্যবহার করুন। C-h mপ্রধান মোড সম্পর্কে তথ্য দেখায়, সাধারণত কী হুক (গুলি) সমর্থন করে তা সহ; তাহলে তুমি এরকম কিছু কর

(add-hook 'coffee-mode-hook ;; guessing
    '(lambda ()
       (local-set-key "\C-cc" 'coffee-compile-file)))

6

আপনি মোড নির্দিষ্ট মানচিত্রে কীটি সংজ্ঞায়িত করতে পারেন, এরকম কিছু:

(add-hook 'coffee-mode-hook
    (lambda ()
        (define-key coffee-mode-map (kbd "C-c c") 'coffee-compile-file)))

বা, আরও পরিষ্কারভাবে:

(eval-after-load "coffee-mode"
    '(define-key coffee-mode-map (kbd "C-c c") 'coffee-compile-file))

দ্বিতীয় বিবৃতিটি মূল সংজ্ঞাটি কেবল একবার ঘটায়, যখন প্রথমবার সংজ্ঞাটি প্রতিবার সংঘটিত হওয়ার coffee-modeজন্য সক্ষম হয় (যা ওভারকিল)।


2
এফওয়াইআই: এই পেরেনগুলি ভুল জায়গায় রয়েছে। এই অ্যাড- (add-hook 'coffee-mode-hook (lambda () (define-key coffee-mode-map (kbd "C-c c") 'coffee-compile-file)))
হুকটি

এছাড়াও, কেন এটি একটি হুক মধ্যে সংজ্ঞা?
নিকানা রেকলাভিক্স

@ নিকানারেকলাভিক্স আপনি ঠিক বলেছেন, একটি হুকের মধ্যে এটির সংজ্ঞা দেওয়া eval-after-loadএই ক্ষেত্রে কোনও বিবৃতি ব্যবহার করার মতো পরিষ্কার নয় । উত্তরটি যথাযথভাবে আপডেট করব।
ট্রে জ্যাকসন

3

ইমাস 24.4 এর eval-after-loadসাথে বরখাস্ত with-eval-after-load:

** New macro `with-eval-after-load'.
This is like the old `eval-after-load', but better behaved.

সুতরাং উত্তরটি হওয়া উচিত

(with-eval-after-load 'coffee-mode
  (define-key coffee-mode-map (kbd "C-c C-c") 'coffee-compile-file)
  (define-key erlang-mode-map (kbd "C-c C-m") 'coffee-make-coffee)
  ;; Add other coffee commands
)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.