Add snippets for ‘oni-ruby’
This commit is contained in:
parent
5ad89196c2
commit
567d78a12c
13 changed files with 125 additions and 3 deletions
|
@ -86,6 +86,16 @@ package-oni-python:
|
|||
paths:
|
||||
- oni-python/dist/
|
||||
|
||||
package-oni-ruby:
|
||||
stage: pre-package-multifile
|
||||
before_script:
|
||||
- rm -rf oni-elisp/dist
|
||||
script:
|
||||
- cask --path oni-ruby package
|
||||
artifacts:
|
||||
paths:
|
||||
- oni-ruby/dist/
|
||||
|
||||
test-oni-alert:
|
||||
stage: test
|
||||
script: make test-oni-alert
|
||||
|
@ -141,6 +151,7 @@ package:
|
|||
- package-oni-nxml
|
||||
- package-oni-php
|
||||
- package-oni-python
|
||||
- package-oni-ruby
|
||||
before_script:
|
||||
- rm -rf bin/
|
||||
- mkdir bin/
|
||||
|
|
16
GNUmakefile
16
GNUmakefile
|
@ -4,7 +4,7 @@ PACKAGE_TARGETS := $(addprefix package-,$(FILES))
|
|||
|
||||
package: $(PACKAGE_TARGETS) package-oni-conf package-oni-css package-oni-elisp \
|
||||
package-oni-haml package-oni-html package-oni-nxml package-oni-org \
|
||||
package-oni-php package-oni-python
|
||||
package-oni-php package-oni-python package-oni-ruby
|
||||
|
||||
package-%: %
|
||||
emacs --batch \
|
||||
|
@ -66,6 +66,12 @@ package-oni-python:
|
|||
--funcall package-initialize \
|
||||
--eval "(package-upload-file (car (sort (file-expand-wildcards \"oni-python/dist/*.tar\") #'string>)))"
|
||||
|
||||
package-oni-ruby:
|
||||
emacs --batch \
|
||||
--load oni-package.el \
|
||||
--funcall package-initialize \
|
||||
--eval "(package-upload-file (car (sort (file-expand-wildcards \"oni-ruby/dist/*.tar\") #'string>)))"
|
||||
|
||||
install-%:
|
||||
emacs --batch \
|
||||
--load oni-package.el \
|
||||
|
@ -146,6 +152,14 @@ install-oni-python:
|
|||
$(foreach DEP,$(DEPS),--eval "(package-install-file \"$(DEP).el\")") \
|
||||
--eval "(package-install-file (car (sort (file-expand-wildcards \"oni-python/dist/*.tar\") #'string>)))"
|
||||
|
||||
install-oni-ruby:
|
||||
emacs --batch \
|
||||
--load oni-package.el \
|
||||
--fluncall package-initialize \
|
||||
--eval '(package-refresh-contents)' \
|
||||
$(foreach DEP,$(DEPS),--eval "(package-install-file \"$(DEP).el\")") \
|
||||
--eval "(package-install-file (car (sort (file-expand-wildcards \"oni-ruby/dist/*.tar\") #'string>)))"
|
||||
|
||||
test-%: install-%
|
||||
emacs --batch \
|
||||
--load oni-package.el \
|
||||
|
|
12
oni-ruby/Cask
Normal file
12
oni-ruby/Cask
Normal file
|
@ -0,0 +1,12 @@
|
|||
(source gnu)
|
||||
(source melpa)
|
||||
|
||||
(package-file "./oni-ruby.el")
|
||||
|
||||
(depends-on "ruby-mode")
|
||||
(depends-on "oni-yasnippet" :git "../" :files ("oni-yasnippet.el"))
|
||||
(depends-on "oni-fci" :git "../" :files ("oni-fci.el"))
|
||||
|
||||
(files
|
||||
"*.el"
|
||||
("snippets" "./snippets/*"))
|
|
@ -4,8 +4,8 @@
|
|||
|
||||
;; Author: Tom Willemse <tom@ryuslash.org>
|
||||
;; Keywords: local
|
||||
;; Version: 20190306003050
|
||||
;; Package-Requires: (ruby-mode oni-fci)
|
||||
;; Version: 20190828000216
|
||||
;; Package-Requires: (ruby-mode oni-fci 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
|
||||
|
@ -26,10 +26,34 @@
|
|||
|
||||
;;; Code:
|
||||
|
||||
(require 'yasnippet)
|
||||
|
||||
(defconst oni-ruby-root
|
||||
(file-name-directory
|
||||
(or load-file-name
|
||||
(buffer-file-name)))
|
||||
"The directory where ‘oni-ruby’ was loaded from.")
|
||||
|
||||
(defconst oni-ruby-snippets-dir
|
||||
(expand-file-name "snippets" oni-ruby-root)
|
||||
"The directory where ‘oni-ruby’ stores its snippets.")
|
||||
|
||||
;;;###autoload
|
||||
(defun oni-ruby-snippets-initialize ()
|
||||
"Initialize the snippets for ‘oni-ruby’."
|
||||
(when (boundp 'yas-snippet-dirs)
|
||||
(add-to-list 'yas-snippet-dirs oni-ruby-snippets-dir))
|
||||
(yas-load-directory oni-ruby-snippets-dir))
|
||||
|
||||
(add-hook 'ruby-mode-hook 'electric-indent-local-mode)
|
||||
(add-hook 'ruby-mode-hook 'electric-pair-local-mode)
|
||||
(add-hook 'ruby-mode-hook 'fci-mode)
|
||||
|
||||
;;;###autoload
|
||||
(with-eval-after-load 'ruby-mode
|
||||
(with-eval-after-load 'yasnippet
|
||||
(oni-ruby-snippets-initialize)))
|
||||
|
||||
;;;###autoload(with-eval-after-load 'ruby-mode (require 'oni-ruby))
|
||||
|
||||
(provide 'oni-ruby)
|
5
oni-ruby/snippets/ruby-mode/ProductSeed
Normal file
5
oni-ruby/snippets/ruby-mode/ProductSeed
Normal file
|
@ -0,0 +1,5 @@
|
|||
# -*- mode: snippet; require-final-newline: nil -*-
|
||||
# name: ProductSeed
|
||||
# key: pseed
|
||||
# --
|
||||
Product.find_or_create_by_name(parent_id: $1, name: '$2', description: '$3', price: '$4')
|
5
oni-ruby/snippets/ruby-mode/ProductSeedHW
Normal file
5
oni-ruby/snippets/ruby-mode/ProductSeedHW
Normal file
|
@ -0,0 +1,5 @@
|
|||
# -*- mode: snippet; require-final-newline: nil -*-
|
||||
# name: ProductSeedWithHW
|
||||
# key: pseed
|
||||
# --
|
||||
Product.find_or_create_by_name(parent_id: $1, name: '$2', description: '$3', price: '$4', width_in_cm: '$5', height_in_cm: '$6', width_in_mm: '${5:$(round (* 10 (string-to-int yas-text)))}', height_in_mm: '${6:$(round (* 10 (string-to-int yas-text)))}')
|
8
oni-ruby/snippets/ruby-mode/ProductSeedHWGroup
Normal file
8
oni-ruby/snippets/ruby-mode/ProductSeedHWGroup
Normal file
|
@ -0,0 +1,8 @@
|
|||
# -*- mode: snippet; require-final-newline: nil -*-
|
||||
# name: ProductSeedWithHWGroup
|
||||
# key: pseed
|
||||
# --
|
||||
Product.find_or_create_by_name(parent_id: $1, name: '$2', description: 'Small', price: '20.00', width_in_cm: '25.00', height_in_cm: '21.00', width_in_mm: '250', height_in_mm: '210')
|
||||
Product.find_or_create_by_name(parent_id: $1, name: '$2', description: 'Medium', price: '20.00', width_in_cm: '30.00', height_in_cm: '25.80', width_in_mm: '300', height_in_mm: '258')
|
||||
Product.find_or_create_by_name(parent_id: $1, name: '$2', description: 'Large', price: '20.00', width_in_cm: '35.00', height_in_cm: '30.00', width_in_mm: '350', height_in_mm: '300')
|
||||
Product.find_or_create_by_name(parent_id: $1, name: '$2', description: 'Extra large', price: '20.00', width_in_cm: '40.00', height_in_cm: '34.00', width_in_mm: '400', height_in_mm: '340')
|
7
oni-ruby/snippets/ruby-mode/describe
Normal file
7
oni-ruby/snippets/ruby-mode/describe
Normal file
|
@ -0,0 +1,7 @@
|
|||
# -*- mode: snippet; require-final-newline: nil -*-
|
||||
# name: describe
|
||||
# key: desc
|
||||
# --
|
||||
describe '$1' do
|
||||
$0
|
||||
end
|
6
oni-ruby/snippets/ruby-mode/do
Normal file
6
oni-ruby/snippets/ruby-mode/do
Normal file
|
@ -0,0 +1,6 @@
|
|||
# -*- mode: snippet -*-
|
||||
# name: do
|
||||
# key: do
|
||||
# --
|
||||
do$0
|
||||
end
|
9
oni-ruby/snippets/ruby-mode/factory
Normal file
9
oni-ruby/snippets/ruby-mode/factory
Normal file
|
@ -0,0 +1,9 @@
|
|||
# -*- mode: snippet -*-
|
||||
# name: factory
|
||||
# key: factory
|
||||
# --
|
||||
FactoryGirl.define do
|
||||
factory :${1:`(file-name-sans-extension (file-name-nondirectory buffer-file-name))`} do
|
||||
$0
|
||||
end
|
||||
end
|
5
oni-ruby/snippets/ruby-mode/fill_in
Normal file
5
oni-ruby/snippets/ruby-mode/fill_in
Normal file
|
@ -0,0 +1,5 @@
|
|||
# -*- mode: snippet; require-final-newline: nil -*-
|
||||
# name: fill_in
|
||||
# key: fin
|
||||
# --
|
||||
fill_in '$1', with: $2
|
11
oni-ruby/snippets/ruby-mode/mod
Normal file
11
oni-ruby/snippets/ruby-mode/mod
Normal file
|
@ -0,0 +1,11 @@
|
|||
# -*- mode: snippet; require-final-newline: nil -*-
|
||||
# name: module ... end
|
||||
# key: mod
|
||||
# group: definitions
|
||||
# --
|
||||
module ${1:`(let ((fn (capitalize (file-name-nondirectory
|
||||
(directory-file-name
|
||||
default-directory)))))
|
||||
(replace-regexp-in-string "_" "" fn t t))`}
|
||||
$0
|
||||
end
|
5
oni-ruby/snippets/ruby-mode/reduce
Normal file
5
oni-ruby/snippets/ruby-mode/reduce
Normal file
|
@ -0,0 +1,5 @@
|
|||
# -*- mode: snippet; require-final-newline: nil -*-
|
||||
# name: reduce
|
||||
# key: reduce
|
||||
# --
|
||||
reduce { |a, e| $0 }
|
Loading…
Reference in a new issue