summaryrefslogtreecommitdiff
path: root/misc/ruby-additional.el
diff options
context:
space:
mode:
authorknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-10-02 15:25:34 +0000
committerknu <knu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-10-02 15:25:34 +0000
commit42b72a08d19747688b931536367131ac568ff845 (patch)
tree9ac30d2f71707e33269834d6bf14c426bd76aafb /misc/ruby-additional.el
parenta6ae6a8b17b31d759ae90f5f6b33cfd5640d70f5 (diff)
* misc/ruby-additional.el: Properly quote the body. An unquoted
body given to eval-after-load is evaluated immediately! git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@43122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'misc/ruby-additional.el')
-rw-r--r--misc/ruby-additional.el182
1 files changed, 91 insertions, 91 deletions
diff --git a/misc/ruby-additional.el b/misc/ruby-additional.el
index 152067e48e..6ef10944f2 100644
--- a/misc/ruby-additional.el
+++ b/misc/ruby-additional.el
@@ -1,100 +1,100 @@
;; missing functions in Emacs 24.
-(eval-after-load "\\(\\`\\|/\\)ruby-mode\\.elc?\\(\\.gz\\)?\\'"
- (progn
- (define-key ruby-mode-map "\C-c\C-e" 'ruby-insert-end)
- (define-key ruby-mode-map "\C-c{" 'ruby-toggle-block)
+(eval-after-load 'ruby-mode
+ '(progn
+ (define-key ruby-mode-map "\C-c\C-e" 'ruby-insert-end)
+ (define-key ruby-mode-map "\C-c{" 'ruby-toggle-block)
- (defun ruby-insert-end ()
- (interactive)
- (if (eq (char-syntax (char-before)) ?w)
- (insert " "))
- (insert "end")
- (save-excursion
- (if (eq (char-syntax (char-after)) ?w)
- (insert " "))
- (ruby-indent-line t)
- (end-of-line)))
+ (defun ruby-insert-end ()
+ (interactive)
+ (if (eq (char-syntax (char-before)) ?w)
+ (insert " "))
+ (insert "end")
+ (save-excursion
+ (if (eq (char-syntax (char-after)) ?w)
+ (insert " "))
+ (ruby-indent-line t)
+ (end-of-line)))
- (defun ruby-brace-to-do-end ()
- (when (looking-at "{")
- (let ((orig (point)) (end (progn (ruby-forward-sexp) (point))))
- (when (eq (char-before) ?\})
- (delete-char -1)
- (if (eq (char-syntax (char-before)) ?w)
- (insert " "))
- (insert "end")
- (if (eq (char-syntax (char-after)) ?w)
- (insert " "))
- (goto-char orig)
- (delete-char 1)
- (if (eq (char-syntax (char-before)) ?w)
- (insert " "))
- (insert "do")
- (when (looking-at "\\sw\\||")
- (insert " ")
- (backward-char))
- t))))
+ (defun ruby-brace-to-do-end ()
+ (when (looking-at "{")
+ (let ((orig (point)) (end (progn (ruby-forward-sexp) (point))))
+ (when (eq (char-before) ?\})
+ (delete-char -1)
+ (if (eq (char-syntax (char-before)) ?w)
+ (insert " "))
+ (insert "end")
+ (if (eq (char-syntax (char-after)) ?w)
+ (insert " "))
+ (goto-char orig)
+ (delete-char 1)
+ (if (eq (char-syntax (char-before)) ?w)
+ (insert " "))
+ (insert "do")
+ (when (looking-at "\\sw\\||")
+ (insert " ")
+ (backward-char))
+ t))))
- (defun ruby-do-end-to-brace ()
- (when (and (or (bolp)
- (not (memq (char-syntax (char-before)) '(?w ?_))))
- (looking-at "\\<do\\(\\s \\|$\\)"))
- (let ((orig (point)) (end (progn (ruby-forward-sexp) (point))))
- (backward-char 3)
- (when (looking-at ruby-block-end-re)
- (delete-char 3)
- (insert "}")
- (goto-char orig)
- (delete-char 2)
- (insert "{")
- (if (looking-at "\\s +|")
- (delete-char (- (match-end 0) (match-beginning 0) 1)))
- t))))
+ (defun ruby-do-end-to-brace ()
+ (when (and (or (bolp)
+ (not (memq (char-syntax (char-before)) '(?w ?_))))
+ (looking-at "\\<do\\(\\s \\|$\\)"))
+ (let ((orig (point)) (end (progn (ruby-forward-sexp) (point))))
+ (backward-char 3)
+ (when (looking-at ruby-block-end-re)
+ (delete-char 3)
+ (insert "}")
+ (goto-char orig)
+ (delete-char 2)
+ (insert "{")
+ (if (looking-at "\\s +|")
+ (delete-char (- (match-end 0) (match-beginning 0) 1)))
+ t))))
- (defun ruby-toggle-block ()
- (interactive)
- (or (ruby-brace-to-do-end)
- (ruby-do-end-to-brace)))
+ (defun ruby-toggle-block ()
+ (interactive)
+ (or (ruby-brace-to-do-end)
+ (ruby-do-end-to-brace)))
- (defun ruby-mode-set-encoding ()
- "Insert a magic comment header with the proper encoding always.
+ (defun ruby-mode-set-encoding ()
+ "Insert a magic comment header with the proper encoding always.
Now encoding needs to be set always explicitly actually."
- (save-excursion
- (let ((coding-system))
- (widen)
- (goto-char (point-min))
- (if (re-search-forward "[^\0-\177]" nil t)
- (progn
- (goto-char (point-min))
- (setq coding-system
- (or coding-system-for-write
- buffer-file-coding-system))
- (if coding-system
- (setq coding-system
- (or (coding-system-get coding-system 'mime-charset)
- (coding-system-change-eol-conversion coding-system nil))))
- (setq coding-system
- (if coding-system
- (symbol-name
- (or (and ruby-use-encoding-map
- (cdr (assq coding-system ruby-encoding-map)))
- coding-system))
- "ascii-8bit")))
- (setq coding-system "us-ascii"))
- (if (looking-at "^#!") (beginning-of-line 2))
- (cond ((looking-at "\\s *#.*-\*-\\s *\\(en\\)?coding\\s *:\\s *\\([-a-z0-9_]*\\)\\s *\\(;\\|-\*-\\)")
- (unless (string= (match-string 2) coding-system)
- (goto-char (match-beginning 2))
- (delete-region (point) (match-end 2))
- (and (looking-at "-\*-")
- (let ((n (skip-chars-backward " ")))
- (cond ((= n 0) (insert " ") (backward-char))
- ((= n -1) (insert " "))
- ((forward-char)))))
- (insert coding-system)))
- ((looking-at "\\s *#.*coding\\s *[:=]"))
- (t (when ruby-insert-encoding-magic-comment
- (insert "# -*- coding: " coding-system " -*-\n")))))))
+ (save-excursion
+ (let ((coding-system))
+ (widen)
+ (goto-char (point-min))
+ (if (re-search-forward "[^\0-\177]" nil t)
+ (progn
+ (goto-char (point-min))
+ (setq coding-system
+ (or coding-system-for-write
+ buffer-file-coding-system))
+ (if coding-system
+ (setq coding-system
+ (or (coding-system-get coding-system 'mime-charset)
+ (coding-system-change-eol-conversion coding-system nil))))
+ (setq coding-system
+ (if coding-system
+ (symbol-name
+ (or (and ruby-use-encoding-map
+ (cdr (assq coding-system ruby-encoding-map)))
+ coding-system))
+ "ascii-8bit")))
+ (setq coding-system "us-ascii"))
+ (if (looking-at "^#!") (beginning-of-line 2))
+ (cond ((looking-at "\\s *#.*-\*-\\s *\\(en\\)?coding\\s *:\\s *\\([-a-z0-9_]*\\)\\s *\\(;\\|-\*-\\)")
+ (unless (string= (match-string 2) coding-system)
+ (goto-char (match-beginning 2))
+ (delete-region (point) (match-end 2))
+ (and (looking-at "-\*-")
+ (let ((n (skip-chars-backward " ")))
+ (cond ((= n 0) (insert " ") (backward-char))
+ ((= n -1) (insert " "))
+ ((forward-char)))))
+ (insert coding-system)))
+ ((looking-at "\\s *#.*coding\\s *[:=]"))
+ (t (when ruby-insert-encoding-magic-comment
+ (insert "# -*- coding: " coding-system " -*-\n")))))))
- ))
+ ))