diff options
| author | John Wiegley <johnw@newartisans.com> | 2015-12-29 21:40:28 -0800 |
|---|---|---|
| committer | John Wiegley <johnw@newartisans.com> | 2015-12-29 21:40:28 -0800 |
| commit | 9f2f14a0725211b13a744573344636b57b9c98b9 (patch) | |
| tree | 7190e0fb3d4aa06018d8cf997f06b806fb09a9c8 /lisp/textmodes/artist.el | |
| parent | d259328fb87db8cc67d52771efcfa653e52c5b71 (diff) | |
| parent | e823c34072bf045800d91e12c7ddb61fa23c6e30 (diff) | |
| download | emacs-9f2f14a0725211b13a744573344636b57b9c98b9.tar.gz | |
Merge emacs-25 into master (using imerge)
Diffstat (limited to 'lisp/textmodes/artist.el')
| -rw-r--r-- | lisp/textmodes/artist.el | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/lisp/textmodes/artist.el b/lisp/textmodes/artist.el index a29418e6f84..373ab14e3fb 100644 --- a/lisp/textmodes/artist.el +++ b/lisp/textmodes/artist.el @@ -2873,10 +2873,36 @@ Returns a list of strings." (error "Failed to read available fonts: %s (%d)" stderr exit-code)) (artist-string-split stdout ".flf\n"))) +(defun artist-figlet-get-font-list-windows () + "Read in fonts on MS-Windows by collecting output of the `figlet' program. +Returns a list of strings." + (let* ((ls-cmd "figlet -I2") + (result (artist-system shell-file-name nil + (list shell-command-switch ls-cmd))) + (exit-code (elt result 0)) + (stdout (elt result 1)) + (stderr (elt result 2))) + (if (not (= exit-code 0)) + (error "Failed to read available fonts: %s (%d)" stderr exit-code)) + (let ((dir-list (artist-string-split stdout "\n")) + result) + (mapc + (lambda (dir) + (let ((default-directory dir)) + (setq result (append (file-expand-wildcards "*.flf") result)))) + dir-list) + (mapcar + (lambda (file) + (replace-regexp-in-string "\.flf\\'" "" file)) + result)))) + (defun artist-figlet-choose-font () "Read any extra arguments for figlet." (interactive) - (let* ((avail-fonts (artist-figlet-get-font-list)) + (let* ((avail-fonts + (if (memq system-type '(windows-nt ms-dos)) + (artist-figlet-get-font-list-windows) + (artist-figlet-get-font-list))) (font (completing-read (concat "Select font (default " artist-figlet-default-font "): ") |
