Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
4b978a67
Commit
4b978a67
authored
Mar 22, 2011
by
Leo Liu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Use utf-8 if safe for writing to abbrev file
and fall back on emacs-mule or utf-8-emacs.
parent
0b1596c6
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
28 additions
and
14 deletions
+28
-14
lisp/ChangeLog
lisp/ChangeLog
+6
-0
lisp/abbrev.el
lisp/abbrev.el
+22
-14
No files found.
lisp/ChangeLog
View file @
4b978a67
2011-03-22 Leo Liu <sdl.web@gmail.com>
* abbrev.el (write-abbrev-file): Use utf-8 for writing if it can
encode all chars in abbrevs; otherwise use emacs-mule or
utf-8-emacs. (Bug#8308)
2011-03-22 Juanma Barranquero <lekktu@gmail.com>
* simple.el (backward-delete-char-untabify):
...
...
lisp/abbrev.el
View file @
4b978a67
...
...
@@ -225,21 +225,29 @@ specified in `abbrev-file-name' is used."
abbrev-file-name
)))
(
or
(
and
file
(
>
(
length
file
)
0
))
(
setq
file
abbrev-file-name
))
(
let
((
coding-system-for-write
'emacs-mule
))
(
with-temp-file
file
(
insert
";;-*-coding: emacs-mule;-*-\n"
)
(
let
((
coding-system-for-write
'utf-8
))
(
with-temp-buffer
(
dolist
(
table
;; We sort the table in order to ease the automatic
;; merging of different versions of the user's abbrevs
;; file. This is useful, for example, for when the
;; user keeps their home directory in a revision
;; control system, and is therefore keeping multiple
;; slightly-differing copies loosely synchronized.
(
sort
(
copy-sequence
abbrev-table-name-list
)
(
lambda
(
s1
s2
)
(
string<
(
symbol-name
s1
)
(
symbol-name
s2
)))))
(
insert-abbrev-table-description
table
nil
)))))
;; We sort the table in order to ease the automatic
;; merging of different versions of the user's abbrevs
;; file. This is useful, for example, for when the
;; user keeps their home directory in a revision
;; control system, and is therefore keeping multiple
;; slightly-differing copies loosely synchronized.
(
sort
(
copy-sequence
abbrev-table-name-list
)
(
lambda
(
s1
s2
)
(
string<
(
symbol-name
s1
)
(
symbol-name
s2
)))))
(
insert-abbrev-table-description
table
nil
))
(
when
(
unencodable-char-position
(
point-min
)
(
point-max
)
'utf-8
)
(
setq
coding-system-for-write
(
if
(
>
emacs-major-version
24
)
'utf-8-emacs
;; For compatibility with Emacs 22 (See Bug#8308)
'emacs-mule
)))
(
goto-char
(
point-min
))
(
insert
(
format
";;-*-coding: %s;-*-\n"
coding-system-for-write
))
(
write-region
nil
nil
file
nil
0
))))
(
defun
add-mode-abbrev
(
arg
)
"Define mode-specific abbrev for last word(s) before point.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment