[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r114527: * lisp/progmodes/ruby-mode.el (ruby-mode):
From: |
Dmitry Gutov |
Subject: |
[Emacs-diffs] trunk r114527: * lisp/progmodes/ruby-mode.el (ruby-mode): Add `ruby-mode-set-encoding' |
Date: |
Sat, 05 Oct 2013 02:26:48 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 114527
revision-id: address@hidden
parent: address@hidden
committer: Dmitry Gutov <address@hidden>
branch nick: trunk
timestamp: Sat 2013-10-05 05:26:39 +0300
message:
* lisp/progmodes/ruby-mode.el (ruby-mode): Add `ruby-mode-set-encoding'
to `after-save-hook' instead of `before-save-hook', because then
we know exactly what encoding was used to write the file.
(ruby-mode-set-encoding): Use `last-coding-system-used' instead of
guessing. Call `basic-save-buffer-1' after modifying the buffer.
modified:
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/progmodes/ruby-mode.el
rubymode.el-20091113204419-o5vbwnq5f7feedwu-8804
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2013-10-04 23:47:00 +0000
+++ b/lisp/ChangeLog 2013-10-05 02:26:39 +0000
@@ -1,3 +1,11 @@
+2013-10-05 Dmitry Gutov <address@hidden>
+
+ * progmodes/ruby-mode.el (ruby-mode): Add `ruby-mode-set-encoding'
+ to `after-save-hook' instead of `before-save-hook', because then
+ we know exactly what encoding was used to write the file.
+ (ruby-mode-set-encoding): Use `last-coding-system-used' instead of
+ guessing. Call `basic-save-buffer-1' after modifying the buffer.
+
2013-10-04 Xue Fuqiao <address@hidden>
* vc/vc-svn.el (vc-svn-find-admin-dir):
=== modified file 'lisp/progmodes/ruby-mode.el'
--- a/lisp/progmodes/ruby-mode.el 2013-09-15 23:42:26 +0000
+++ b/lisp/progmodes/ruby-mode.el 2013-10-05 02:26:39 +0000
@@ -450,19 +450,13 @@
(when (re-search-forward "[^\0-\177]" nil t)
(goto-char (point-min))
(let ((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))))
+ (or (coding-system-get last-coding-system-used 'mime-charset)
+ (coding-system-change-eol-conversion ast-coding-system-used
+ 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"))
+ (symbol-name (or (and ruby-use-encoding-map
+ (cdr (assq coding-system
ruby-encoding-map)))
+ coding-system)))
(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)
@@ -476,7 +470,9 @@
(insert coding-system)))
((looking-at "\\s *#.*coding\\s *[:=]"))
(t (when ruby-insert-encoding-magic-comment
- (insert "# -*- coding: " coding-system " -*-\n"))))))))
+ (insert "# -*- coding: " coding-system " -*-\n"))))
+ (when (buffer-modified-p)
+ (basic-save-buffer-1))))))
(defun ruby-current-indentation ()
"Return the indentation level of current line."
@@ -1934,11 +1930,7 @@
(set (make-local-variable 'end-of-defun-function)
'ruby-end-of-defun)
- (add-hook
- (cond ((boundp 'before-save-hook) 'before-save-hook)
- ((boundp 'write-contents-functions) 'write-contents-functions)
- ((boundp 'write-contents-hooks) 'write-contents-hooks))
- 'ruby-mode-set-encoding nil 'local)
+ (add-hook 'after-save-hook 'ruby-mode-set-encoding nil 'local)
(set (make-local-variable 'electric-indent-chars)
(append '(?\{ ?\}) electric-indent-chars))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] trunk r114527: * lisp/progmodes/ruby-mode.el (ruby-mode): Add `ruby-mode-set-encoding',
Dmitry Gutov <=