diff options
Diffstat (limited to 'lisp')
-rw-r--r-- | lisp/loadup.el | 1 | ||||
-rw-r--r-- | lisp/term/ns-win.el | 28 |
2 files changed, 7 insertions, 22 deletions
diff --git a/lisp/loadup.el b/lisp/loadup.el index f0caa8be349..dda433e4eaf 100644 --- a/lisp/loadup.el +++ b/lisp/loadup.el @@ -276,6 +276,7 @@ (if (featurep 'ns) (progn (load "term/common-win") + (load "international/ucs-normalize") (load "term/ns-win"))) (if (fboundp 'x-create-frame) ;; Do it after loading term/foo-win.el since the value of the diff --git a/lisp/term/ns-win.el b/lisp/term/ns-win.el index 0b3e3bd9d9c..9bd59fc1954 100644 --- a/lisp/term/ns-win.el +++ b/lisp/term/ns-win.el @@ -51,6 +51,7 @@ (require 'menu-bar) (require 'fontset) (require 'dnd) +(require 'ucs-normalize) (defgroup ns nil "GNUstep/Mac OS X specific features." @@ -337,29 +338,12 @@ See `ns-insert-working-text'." (setq ns-working-overlay nil)) -(declare-function ns-convert-utf8-nfd-to-nfc "nsfns.m" (str)) - -;;;; OS X file system Unicode UTF-8 NFD (decomposed form) support -;; Lisp code based on utf-8m.el, by Seiji Zenitani, Eiji Honjoh, and -;; Carsten Bormann. +;; OS X file system Unicode UTF-8 NFD (decomposed form) support. (when (eq system-type 'darwin) - (defun ns-utf8-nfd-post-read-conversion (length) - "Calls `ns-convert-utf8-nfd-to-nfc' to compose char sequences." - (save-excursion - (save-restriction - (narrow-to-region (point) (+ (point) length)) - (let ((str (buffer-string))) - (delete-region (point-min) (point-max)) - (insert (ns-convert-utf8-nfd-to-nfc str)) - (- (point-max) (point-min)))))) - - (define-coding-system 'utf-8-nfd - "UTF-8 NFD (decomposed) encoding." - :coding-type 'utf-8 - :mnemonic ?U - :charset-list '(unicode) - :post-read-conversion 'ns-utf8-nfd-post-read-conversion) - (set-file-name-coding-system 'utf-8-nfd)) + ;; Used prior to Emacs 25. + (define-coding-system-alias 'utf-8-nfd 'utf-8-hfs) + + (set-file-name-coding-system 'utf-8-hfs)) ;;;; Inter-app communications support. |