![](/style/images/good.png)
![](/style/images/bad.png)
Github GitHub - manateelazycat/awesome-pair: Auto parenthesis pairing with synta...
source link: https://github.com/manateelazycat/awesome-pair
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
What is awesome-pair.el ?
awesome-pair.el is a plugin that provides grammatical parenthesis completion.
Installation
Clone or download this repository (path of the folder is the <path-to-awesome-pair>
used below).
In your ~/.emacs
, add the following two lines:
(add-to-list 'load-path "<path-to-awesome-pair>") ; add awesome-pair to your load-path (require 'awesome-pair)
Enabled in the specified programming language
Not all programming languages are suitable for parenthesis auto-completion. You can add awesome-pair.el to the programming language mode like below:
(dolist (hook (list 'c-mode-common-hook 'c-mode-hook 'c++-mode-hook 'java-mode-hook 'haskell-mode-hook 'emacs-lisp-mode-hook 'lisp-interaction-mode-hook 'lisp-mode-hook 'maxima-mode-hook 'ielm-mode-hook 'sh-mode-hook 'makefile-gmake-mode-hook 'php-mode-hook 'python-mode-hook 'js-mode-hook 'go-mode-hook 'qml-mode-hook 'jade-mode-hook 'css-mode-hook 'ruby-mode-hook 'coffee-mode-hook 'rust-mode-hook 'qmake-mode-hook 'lua-mode-hook 'swift-mode-hook 'minibuffer-inactive-mode-hook )) (add-hook hook '(lambda () (awesome-pair-mode 1))))
Then binding below awesome-pair.el commands with below keystrokes:
(define-key awesome-pair-mode-map (kbd "(") 'awesome-pair-open-round) (define-key awesome-pair-mode-map (kbd "[") 'awesome-pair-open-bracket) (define-key awesome-pair-mode-map (kbd "{") 'awesome-pair-open-curly) (define-key awesome-pair-mode-map (kbd ")") 'awesome-pair-close-round) (define-key awesome-pair-mode-map (kbd "]") 'awesome-pair-close-bracket) (define-key awesome-pair-mode-map (kbd "}") 'awesome-pair-close-curly) (define-key awesome-pair-mode-map (kbd "=") 'awesome-pair-equal) (define-key awesome-pair-mode-map (kbd "%") 'awesome-pair-match-paren) (define-key awesome-pair-mode-map (kbd "\"") 'awesome-pair-double-quote) (define-key awesome-pair-mode-map (kbd "SPC") 'awesome-pair-space) (define-key awesome-pair-mode-map (kbd "M-o") 'awesome-pair-backward-delete) (define-key awesome-pair-mode-map (kbd "C-d") 'awesome-pair-forward-delete) (define-key awesome-pair-mode-map (kbd "C-k") 'awesome-pair-kill) (define-key awesome-pair-mode-map (kbd "M-\"") 'awesome-pair-wrap-double-quote) (define-key awesome-pair-mode-map (kbd "M-[") 'awesome-pair-wrap-bracket) (define-key awesome-pair-mode-map (kbd "M-{") 'awesome-pair-wrap-curly) (define-key awesome-pair-mode-map (kbd "M-(") 'awesome-pair-wrap-round) (define-key awesome-pair-mode-map (kbd "M-)") 'awesome-pair-unwrap) (define-key awesome-pair-mode-map (kbd "M-p") 'awesome-pair-jump-right) (define-key awesome-pair-mode-map (kbd "M-n") 'awesome-pair-jump-left) (define-key awesome-pair-mode-map (kbd "M-:") 'awesome-pair-jump-out-pair-and-newline)
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK