1
0
Fork 0

Add ‘smartparens’ to ‘oni-sh’

This commit is contained in:
Tom Willemse 2020-01-14 22:02:08 -08:00
parent 08e73f9cac
commit e77c57b998
3 changed files with 52 additions and 3 deletions

View file

@ -4,8 +4,8 @@
;; Author: Tom Willemse <tom@ryuslash.org> ;; Author: Tom Willemse <tom@ryuslash.org>
;; Keywords: local ;; Keywords: local
;; Version: 2019.1125.232102 ;; Version: 2020.0114.220149
;; Package-Requires: (reformatter oni-flycheck oni-fci) ;; Package-Requires: (reformatter oni-flycheck oni-fci oni-smartparens)
;; This program is free software; you can redistribute it and/or modify ;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by ;; it under the terms of the GNU General Public License as published by
@ -44,10 +44,10 @@
:group 'shfmt) :group 'shfmt)
(add-hook 'sh-mode-hook 'electric-indent-local-mode) (add-hook 'sh-mode-hook 'electric-indent-local-mode)
(add-hook 'sh-mode-hook 'electric-pair-local-mode)
(add-hook 'sh-mode-hook 'fci-mode) (add-hook 'sh-mode-hook 'fci-mode)
(add-hook 'sh-mode-hook 'flycheck-mode) (add-hook 'sh-mode-hook 'flycheck-mode)
(add-hook 'sh-mode-hook 'shfmt-on-save-mode) (add-hook 'sh-mode-hook 'shfmt-on-save-mode)
(add-hook 'sh-mode-hook 'smartparens-mode)
;;;###autoload ;;;###autoload
(add-to-list 'auto-mode-alist '("PKGBUILD\\'" . sh-mode)) (add-to-list 'auto-mode-alist '("PKGBUILD\\'" . sh-mode))

38
oni-smartparens.el Normal file
View file

@ -0,0 +1,38 @@
;;; oni-smartparens.el --- Smartparens configuration -*- lexical-binding: t; -*-
;; Copyright (C) 2020 Tom Willemse
;; Author: Tom Willemse <tom@ryuslash.org>
;; Keywords: local
;; Version: 2020.0114.220117
;; Package-Requires: (smartparens)
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
;;; Commentary:
;; Configuration for smartparens-mode.
;;; Code:
(require 'smartparens-config)
(define-key smartparens-mode-map (kbd "C-<right>") 'sp-slurp-hybrid-sexp)
(define-key smartparens-mode-map (kbd "C-<left>") 'sp-forward-barf-sexp)
(define-key smartparens-mode-map (kbd "C-M-<right>") 'sp-backward-barf-sexp)
;;;###autoload(with-eval-after-load 'smartparens (require 'oni-smartparens))
(provide 'oni-smartparens)
;;; oni-smartparens.el ends here

View file

@ -0,0 +1,11 @@
#!/usr/bin/env bats
@test "Loading smartparens loads oni-smartparens" {
run emacs -batch -l package -f package-initialize \
-l smartparens \
-eval "(prin1 (featurep 'oni-smartparens))"
echo "$output"
[ "$output" = "t" ]
}