From 51a84644e6e0d756a8c917a500d95053cbb27d4a Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Tue, 27 Aug 2019 23:25:50 -0700 Subject: Add snippets to ‘oni-html’ --- oni-html/Cask | 10 ++++++ oni-html/oni-html.el | 58 ++++++++++++++++++++++++++++++ oni-html/snippets/html-mode/block | 7 ++++ oni-html/snippets/html-mode/for | 8 +++++ oni-html/snippets/html-mode/generic-block | 8 +++++ oni-html/snippets/html-mode/script | 5 +++ oni-html/snippets/html-mode/trans-with-cap | 6 ++++ 7 files changed, 102 insertions(+) create mode 100644 oni-html/Cask create mode 100644 oni-html/oni-html.el create mode 100644 oni-html/snippets/html-mode/block create mode 100644 oni-html/snippets/html-mode/for create mode 100644 oni-html/snippets/html-mode/generic-block create mode 100644 oni-html/snippets/html-mode/script create mode 100644 oni-html/snippets/html-mode/trans-with-cap (limited to 'oni-html') diff --git a/oni-html/Cask b/oni-html/Cask new file mode 100644 index 0000000..e6e2ebf --- /dev/null +++ b/oni-html/Cask @@ -0,0 +1,10 @@ +(source gnu) +(source melpa) + +(package-file "./oni-html.el") + +(depends-on "oni-yasnippet" :git "../" :files ("oni-yasnippet.el")) + +(files + "*.el" + ("snippets" "./snippets/*")) diff --git a/oni-html/oni-html.el b/oni-html/oni-html.el new file mode 100644 index 0000000..ba77ffa --- /dev/null +++ b/oni-html/oni-html.el @@ -0,0 +1,58 @@ +;;; oni-html.el --- HTML configuration -*- lexical-binding: t; -*- + +;; Copyright (C) 2019 Tom Willemse + +;; Author: Tom Willemse +;; Keywords: local +;; Version: 20190827231602 +;; Package-Requires: (oni-yasnippet) + +;; 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 . + +;;; Commentary: + +;; HTML configuration + +;;; Code: + +(require 'yasnippet) + +(defconst oni-html-root + (file-name-directory + (or load-file-name + (buffer-file-name))) + "The directory where ‘oni-html’ was loaded from.") + +(defconst oni-html-snippets-dir + (expand-file-name "snippets" oni-html-root) + "The directory where ‘oni-html’ stores its snippets.") + +;;;###autoload +(defun oni-html-snippets-initialize () + "Initialize the snippets for ‘oni-html’." + (when (boundp 'yas-snippet-dirs) + (add-to-list 'yas-snippet-dirs oni-html-snippets-dir t)) + (yas-load-directory oni-html-snippets-dir)) + +(add-hook 'html-mode-hook 'electric-pair-local-mode) + +;;;###autoload +(with-eval-after-load 'sgml-mode + (with-eval-after-load 'yasnippet + (oni-html-snippets-initialize))) + +;;;###autoload(with-eval-after-load 'sgml-mode (require 'oni-html)) + +(provide 'oni-html) +;;; oni-html.el ends here diff --git a/oni-html/snippets/html-mode/block b/oni-html/snippets/html-mode/block new file mode 100644 index 0000000..6510011 --- /dev/null +++ b/oni-html/snippets/html-mode/block @@ -0,0 +1,7 @@ +# -*- mode: snippet; require-final-newline: nil -*- +# name: block +# key: block +# -- +{% block $1 %} + $0 +{% endblock %} \ No newline at end of file diff --git a/oni-html/snippets/html-mode/for b/oni-html/snippets/html-mode/for new file mode 100644 index 0000000..01d9c44 --- /dev/null +++ b/oni-html/snippets/html-mode/for @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: for +# key: for +# condition: pony-tpl-minor-mode +# -- +{% for $1 in $2 %} + $0 +{% endfor %} \ No newline at end of file diff --git a/oni-html/snippets/html-mode/generic-block b/oni-html/snippets/html-mode/generic-block new file mode 100644 index 0000000..82d40c7 --- /dev/null +++ b/oni-html/snippets/html-mode/generic-block @@ -0,0 +1,8 @@ +# -*- mode: snippet -*- +# name: Template Block +# key: % +# condition: pony-tpl-minor-mode +# -- +{% $1 %} + $0 +{% end$1 %} \ No newline at end of file diff --git a/oni-html/snippets/html-mode/script b/oni-html/snippets/html-mode/script new file mode 100644 index 0000000..e50dbf5 --- /dev/null +++ b/oni-html/snippets/html-mode/script @@ -0,0 +1,5 @@ +# -*- mode: snippet -*- +# name: script +# key: script +# -- + \ No newline at end of file diff --git a/oni-html/snippets/html-mode/trans-with-cap b/oni-html/snippets/html-mode/trans-with-cap new file mode 100644 index 0000000..4f20a33 --- /dev/null +++ b/oni-html/snippets/html-mode/trans-with-cap @@ -0,0 +1,6 @@ +# -*- mode: snippet -*- +# name: trans with cap +# key: trans +# condition: pony-tpl-minor-mode +# -- +{% trans "$1"|capfirst %} \ No newline at end of file -- cgit v1.2.3-54-g00ecf