যে কেউ ইমাস থেকে এসেছিল, ভিমে চেষ্টা করেছিল এবং বুঝতে পেরেছিল যে প্রচুর পরিমাণে জিনিস অর্জন করা উচিত, আমি যখন প্রথম খারাপ ব্যবহার শুরু করি তখন আমি প্রচুর পরীক্ষা-নিরীক্ষা করেছিলাম। নিম্নলিখিতগুলি বিতর্কিত হওয়ার পরেও, আমি টার্মিনাল, ফায়ারফক্স, কোকো ইত্যাদিতে আরও সার্বজনীনভাবে ব্যবহৃত ইমাস কিগুলি রাখতে চেয়েছিলাম, কিন্তু ভিম সম্পাদনা ক্ষমতা হারাতে চাইনি। আমি আমার .emacs এ নিম্নলিখিত কীগুলি পুনঃতফসিল করার সিদ্ধান্ত নিয়ে শেষ করেছি:
(define-key evil-normal-state-map "\C-e" 'evil-end-of-line)
(define-key evil-insert-state-map "\C-e" 'end-of-line)
(define-key evil-visual-state-map "\C-e" 'evil-end-of-line)
(define-key evil-motion-state-map "\C-e" 'evil-end-of-line)
(define-key evil-normal-state-map "\C-f" 'evil-forward-char)
(define-key evil-insert-state-map "\C-f" 'evil-forward-char)
(define-key evil-insert-state-map "\C-f" 'evil-forward-char)
(define-key evil-normal-state-map "\C-b" 'evil-backward-char)
(define-key evil-insert-state-map "\C-b" 'evil-backward-char)
(define-key evil-visual-state-map "\C-b" 'evil-backward-char)
(define-key evil-normal-state-map "\C-d" 'evil-delete-char)
(define-key evil-insert-state-map "\C-d" 'evil-delete-char)
(define-key evil-visual-state-map "\C-d" 'evil-delete-char)
(define-key evil-normal-state-map "\C-n" 'evil-next-line)
(define-key evil-insert-state-map "\C-n" 'evil-next-line)
(define-key evil-visual-state-map "\C-n" 'evil-next-line)
(define-key evil-normal-state-map "\C-p" 'evil-previous-line)
(define-key evil-insert-state-map "\C-p" 'evil-previous-line)
(define-key evil-visual-state-map "\C-p" 'evil-previous-line)
(define-key evil-normal-state-map "\C-w" 'evil-delete)
(define-key evil-insert-state-map "\C-w" 'evil-delete)
(define-key evil-visual-state-map "\C-w" 'evil-delete)
(define-key evil-normal-state-map "\C-y" 'yank)
(define-key evil-insert-state-map "\C-y" 'yank)
(define-key evil-visual-state-map "\C-y" 'yank)
(define-key evil-normal-state-map "\C-k" 'kill-line)
(define-key evil-insert-state-map "\C-k" 'kill-line)
(define-key evil-visual-state-map "\C-k" 'kill-line)
(define-key evil-normal-state-map "Q" 'call-last-kbd-macro)
(define-key evil-visual-state-map "Q" 'call-last-kbd-macro)
(define-key evil-normal-state-map (kbd "TAB") 'evil-undefine)
(defun evil-undefine ()
(interactive)
(let (evil-mode-map-alist)
(call-interactively (key-binding (this-command-keys)))))
দুর্ভাগ্যক্রমে, ভিমগুলি "একটি স্ক্রিন উপরে বা নীচে সরান" অপারেশনগুলির সাথে এই ওভারল্যাপগুলি। তবে আমি পরিবর্তে নিম্নলিখিতটি ব্যবহার করে স্বাচ্ছন্দ্য বোধ করেছি:
(define-key evil-normal-state-map (kbd "DEL") (lambda ()
(interactive)
(previous-line 10)
(evil-scroll-line-up 10)
))
(define-key evil-normal-state-map (kbd "=") (lambda ()
(interactive)
(next-line 10)
(evil-scroll-line-down 10)
))
এছাড়াও, আপনি যদি ভিআইএম থেকে আসছেন এবং "জে কে" (বা অন্য কোনও স্ট্রোকের সংমিশ্রণ) ব্যবহার করে normalোকানো থেকে সাধারণ মোডে দ্রুত পথ চান, তবে সবচেয়ে ভাল উপায় হ'ল http://www.emacswiki.org/ থেকে পাঠ্যটি অনুলিপি করা to ইমাস / ডাউনলোড / কী-কর্ড.এল এবং এটি আপনার ~ / .emacs.d / key-chord.el এ পেস্ট করুন। তারপরে আপনার .emacs এ নিম্নলিখিতগুলি যুক্ত করুন:
;load a file named key-chord.el from some directory in the load-path (e.g. "~/.emacs.d")
(require 'key-chord)
(key-chord-mode 1)
(key-chord-define-global "jk" 'evil-normal-state)
এছাড়াও, আপনি যদি ভিআইএম থেকে আসেন এবং আপনি যদি মনে করেন যে ইমাসে থাকা কপি-টু-ক্লিপবোর্ড কোনও ভাল নয়, আপনি সম্ভবত সঠিক right তবে sudo apt-get install xsel চালানোর পরে আপনি নিম্নলিখিত দরকারী ব্যবহার করতে পারেন:
(defun copy-to-clipboard ()
(interactive)
(if (display-graphic-p)
(progn
(message "Yanked region to x-clipboard!")
(call-interactively 'clipboard-kill-ring-save)
)
(if (region-active-p)
(progn
(shell-command-on-region (region-beginning) (region-end) "xsel -i -b")
(message "Yanked region to clipboard!")
(deactivate-mark))
(message "No region active; can't yank to clipboard!")))
)
(evil-define-command paste-from-clipboard()
(if (display-graphic-p)
(progn
(clipboard-yank)
(message "graphics active")
)
(insert (shell-command-to-string "xsel -o -b"))
)
)
(global-set-key [f8] 'copy-to-clipboard)
(global-set-key [f9] 'paste-from-clipboard)
স্পষ্টতই, আপনাকে এই সিদ্ধান্ত নিতে হবে যে এই বিতর্কিত পরিবর্তনগুলির কোনওটির পক্ষে মূল্য রয়েছে কিনা তবে সম্ভবত এই প্রাথমিক পরিবর্তনগুলি আপনাকে অনুপ্রেরণা দেবে।
অন্য কিছু সত্যই শীতল ফাংশন বাস্তবায়নের জন্য, যেমন মুছে ফেলুন এবং পেস্ট করুন, ক্লিপবোর্ডে অনুলিপি না করে মুছুন, দক্ষ 4x / 16x মুভমেন্ট, পেস্ট রেজিস্টার নির্দিষ্টকরণের জন্য গণনাগুলির ব্যবহার, ট্যাব সেটিংস যা আসলে সি / সি ++ এর জন্য কাজ করে এবং আরও অনেক কিছু আপনি পরীক্ষা করতে পারেন https://github.com/Russell91/emacs এ আমার সম্পূর্ণ গিটারের উপর পূর্ণ .emacs, init.el, my-keymaps.el, এবং my-Funks.el ভার্সনগুলি আউট করুন