.emacs-my
changeset 1566 0e7f4d5153d1
parent 1565 0160e2f997ee
child 1567 3a880076385d
equal deleted inserted replaced
1565:0160e2f997ee 1566:0e7f4d5153d1
   745                     (make-glyph-code hi 'escape-glyph)
   745                     (make-glyph-code hi 'escape-glyph)
   746                     (make-glyph-code low 'escape-glyph)))
   746                     (make-glyph-code low 'escape-glyph)))
   747       (setq i (+ i 1))))
   747       (setq i (+ i 1))))
   748   )
   748   )
   749 
   749 
       
   750 (defun my--get-char (name)
       
   751   "Get character by Unicode `name'."
       
   752   (cond
       
   753    ((>= 26 emacs-major-version)
       
   754     (gethash name (ucs-names) t))
       
   755    ((>= 23 emacs-major-version)
       
   756     (cdr (assoc-string name (ucs-names))))
       
   757    (t (error "Emacs version is too old and lacks Unicode support..."))))
       
   758 
   750 (when (>= emacs-major-version 23)
   759 (when (>= emacs-major-version 23)
   751   (define-key global-map "\C-x8g" (lambda nil (interactive) (ucs-insert `,(cdr (assoc-string "HRYVNIA SIGN" (ucs-names) t)))))
   760   (define-key global-map "\C-x8g" (lambda nil (interactive) (ucs-insert (my--get-char "HRYVNIA SIGN"))))
   752   (define-key global-map "\C-x8e" (lambda nil (interactive) (ucs-insert `,(cdr (assoc-string "EURO SIGN" (ucs-names) t)))))
   761   (define-key global-map "\C-x8e" (lambda nil (interactive) (ucs-insert (my--get-char "EURO SIGN")))) )
   753   )
       
   754 
   762 
   755 ;; generic-define-* before (require 'generic-x) allow load all useful extra modes.
   763 ;; generic-define-* before (require 'generic-x) allow load all useful extra modes.
   756 (defvar generic-define-mswindows-modes t)
   764 (defvar generic-define-mswindows-modes t)
   757 (defvar generic-define-unix-modes t)
   765 (defvar generic-define-unix-modes t)
   758 (require 'generic-x)
   766 (require 'generic-x)