summaryrefslogtreecommitdiff
path: root/admin
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2017-04-24 22:17:27 -0700
committerGlenn Morris <rgm@gnu.org>2017-04-24 23:06:27 -0700
commitc1e71d3899daca49e216dfa3a6e6e07169d02e1e (patch)
tree36c432a4a3bb4298877385c2a21b9ba9d3bc8309 /admin
parent735ae5cd3a76735c1b51913eaeff5df5f0b2b53e (diff)
downloademacs-c1e71d3899daca49e216dfa3a6e6e07169d02e1e.tar.gz
Further refactoring in unidata-gen.el
* admin/unidata/unidata-gen.el (unidata-gen-charprop): New function, split from unidata-gen-files. (unidata-gen-files): Use unidata-gen-charprop.
Diffstat (limited to 'admin')
-rw-r--r--admin/unidata/unidata-gen.el45
1 files changed, 23 insertions, 22 deletions
diff --git a/admin/unidata/unidata-gen.el b/admin/unidata/unidata-gen.el
index fd398f74065..5f3cd1c8d3e 100644
--- a/admin/unidata/unidata-gen.el
+++ b/admin/unidata/unidata-gen.el
@@ -1434,6 +1434,25 @@ Property value is a symbol `o' (Open), `c' (Close), or `n' (None)."
(format ";; %s ends here\n" basename)))))
(or noninteractive (message "Generating %s...done" file)))
+(defun unidata-gen-charprop (&optional charprop-file)
+ (or charprop-file (setq charprop-file (pop command-line-args-left)))
+ (with-temp-file charprop-file
+ (insert ";; Automatically generated by unidata-gen.el.\n")
+ (dolist (elt unidata-file-alist)
+ (dolist (proplist (cdr elt))
+ (insert (format "(define-char-code-property '%S %S\n %S)\n"
+ (unidata-prop-prop proplist) (car elt)
+ (unidata-prop-docstring proplist)))))
+ (message "Writing %s..." charprop-file)
+ (insert ";; Local Variables:\n"
+ ";; coding: utf-8\n"
+ ";; version-control: never\n"
+ ";; no-byte-compile: t\n"
+ ";; no-update-autoloads: t\n"
+ ";; End:\n\n"
+ (format ";; %s ends here\n"
+ (file-name-nondirectory charprop-file)))))
+
;; The entry function. It generates files described in the header
;; comment of this file.
@@ -1448,30 +1467,12 @@ Property value is a symbol `o' (Open), `c' (Close), or `n' (None)."
(expand-file-name "unidata.txt"))))
(let ((coding-system-for-write 'utf-8-unix)
(coding-system-for-read 'utf-8)
- (charprop-file (expand-file-name "charprop.el" dest-dir))
(unidata-dir data-dir))
(unidata-setup-list unidata-text-file)
- (with-temp-file charprop-file
- (insert ";; Automatically generated by unidata-gen.el.\n")
- (dolist (elt unidata-file-alist)
- (let* ((file (expand-file-name (car elt) dest-dir))
- (basename (file-name-nondirectory file)))
- (unidata-gen-file file data-dir unidata-text-file)
- ;; Filename in this comment line is extracted by sed in Makefile.
- (insert (format ";; FILE: %s\n" basename))
- (dolist (proplist (cdr elt))
- (insert (format "(define-char-code-property '%S %S\n %S)\n"
- (unidata-prop-prop proplist) basename
- (unidata-prop-docstring proplist))))))
- (message "Writing %s..." charprop-file)
- (insert ";; Local Variables:\n"
- ";; coding: utf-8\n"
- ";; version-control: never\n"
- ";; no-byte-compile: t\n"
- ";; no-update-autoloads: t\n"
- ";; End:\n\n"
- (format ";; %s ends here\n"
- (file-name-nondirectory charprop-file))))))
+ (dolist (elt unidata-file-alist)
+ (unidata-gen-file (expand-file-name (car elt) dest-dir)
+ data-dir unidata-text-file))
+ (unidata-gen-charprop (expand-file-name "charprop.el" dest-dir))))