mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-03 02:31:03 -08:00
Revert 2013-10-05T02:26:39Z!dgutov@yandex.ru
`last-coding-system-used' is unreliable: it can be modified by other functions in `after-save-hook'.
This commit is contained in:
parent
544a2a8049
commit
aa0214dae5
2 changed files with 18 additions and 18 deletions
|
|
@ -450,13 +450,19 @@ Also ignores spaces after parenthesis when 'space."
|
|||
(when (re-search-forward "[^\0-\177]" nil t)
|
||||
(goto-char (point-min))
|
||||
(let ((coding-system
|
||||
(or (coding-system-get last-coding-system-used 'mime-charset)
|
||||
(coding-system-change-eol-conversion ast-coding-system-used
|
||||
nil))))
|
||||
(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
|
||||
(symbol-name (or (and ruby-use-encoding-map
|
||||
(cdr (assq coding-system ruby-encoding-map)))
|
||||
coding-system)))
|
||||
(if coding-system
|
||||
(symbol-name
|
||||
(or (and ruby-use-encoding-map
|
||||
(cdr (assq coding-system ruby-encoding-map)))
|
||||
coding-system))
|
||||
"ascii-8bit"))
|
||||
(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)
|
||||
|
|
@ -470,9 +476,7 @@ Also ignores spaces after parenthesis when 'space."
|
|||
(insert coding-system)))
|
||||
((looking-at "\\s *#.*coding\\s *[:=]"))
|
||||
(t (when ruby-insert-encoding-magic-comment
|
||||
(insert "# -*- coding: " coding-system " -*-\n"))))
|
||||
(when (buffer-modified-p)
|
||||
(basic-save-buffer-1))))))
|
||||
(insert "# -*- coding: " coding-system " -*-\n"))))))))
|
||||
|
||||
(defun ruby-current-indentation ()
|
||||
"Return the indentation level of current line."
|
||||
|
|
@ -1930,7 +1934,11 @@ The variable `ruby-indent-level' controls the amount of indentation.
|
|||
(set (make-local-variable 'end-of-defun-function)
|
||||
'ruby-end-of-defun)
|
||||
|
||||
(add-hook 'after-save-hook 'ruby-mode-set-encoding nil 'local)
|
||||
(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)
|
||||
|
||||
(set (make-local-variable 'electric-indent-chars)
|
||||
(append '(?\{ ?\}) electric-indent-chars))
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue