This page contains Unicode characters.
;; -*- coding: mule-utf-8; -*-
(setq fg-map (make-sparse-keymap))
(define-key fg-map "1" '(lambda (arg) (interactive "p") (insert-char ?à arg)))
(define-key fg-map "2" '(lambda (arg) (interactive "p") (insert-char ?é arg)))
(define-key fg-map "3" '(lambda (arg) (interactive "p") (insert-char ?è arg)))
(define-key fg-map "4" '(lambda (arg) (interactive "p") (insert-char ?ù arg)))
(define-key fg-map "5" '(lambda (arg) (interactive "p") (insert-char ?ç arg)))
(define-key fg-map "!" '(lambda (arg) (interactive "p") (insert-char ?À arg)))
(define-key fg-map "@" '(lambda (arg) (interactive "p") (insert-char ?É arg)))
(define-key fg-map "#" '(lambda (arg) (interactive "p") (insert-char ?È arg)))
(define-key fg-map "$" '(lambda (arg) (interactive "p") (insert-char ?Ù arg)))
(define-key fg-map "%" '(lambda (arg) (interactive "p") (insert-char ?Ç arg)))
(define-key fg-map "'" '(lambda (arg) (interactive "p") (insert-char ?’ arg)))
(define-key fg-map "," '(lambda (arg) (interactive "p") (insert-char ?„ arg)))
(define-key fg-map "." '(lambda (arg) (interactive "p") (insert-char ?· arg)))
(define-key fg-map "p" '(lambda (arg) (interactive "p") (insert-char ?ß arg)))
(define-key fg-map "y" '(lambda (arg) (interactive "p") (insert-char ?œ arg)))
(define-key fg-map "\"" '(lambda (arg) (interactive "p") (insert-char ?” arg)))
(define-key fg-map "<" '(lambda (arg) (interactive "p") (insert-char ?« arg)))
(define-key fg-map ">" '(lambda (arg) (interactive "p") (insert-char ?» arg)))
(define-key fg-map "P" '(lambda (arg) (interactive "p") (insert-char ?ÿ arg)))
(define-key fg-map "Y" '(lambda (arg) (interactive "p") (insert-char ?Œ arg)))
(define-key fg-map "a" '(lambda (arg) (interactive "p") (insert-char ?ä arg)))
(define-key fg-map "o" '(lambda (arg) (interactive "p") (insert-char ?ö arg)))
(define-key fg-map "e" '(lambda (arg) (interactive "p") (insert-char ?ë arg)))
(define-key fg-map "u" '(lambda (arg) (interactive "p") (insert-char ?ü arg)))
(define-key fg-map "i" '(lambda (arg) (interactive "p") (insert-char ?ï arg)))
(define-key fg-map "A" '(lambda (arg) (interactive "p") (insert-char ?Ä arg)))
(define-key fg-map "O" '(lambda (arg) (interactive "p") (insert-char ?Ö arg)))
(define-key fg-map "E" '(lambda (arg) (interactive "p") (insert-char ?Ë arg)))
(define-key fg-map "U" '(lambda (arg) (interactive "p") (insert-char ?Ü arg)))
(define-key fg-map "I" '(lambda (arg) (interactive "p") (insert-char ?Ï arg)))
(define-key fg-map ";" '(lambda (arg) (interactive "p") (insert-char ?â arg)))
(define-key fg-map "q" '(lambda (arg) (interactive "p") (insert-char ?ô arg)))
(define-key fg-map "j" '(lambda (arg) (interactive "p") (insert-char ?ê arg)))
(define-key fg-map "k" '(lambda (arg) (interactive "p") (insert-char ?û arg)))
(define-key fg-map "x" '(lambda (arg) (interactive "p") (insert-char ?î arg)))
(define-key fg-map ":" '(lambda (arg) (interactive "p") (insert-char ? arg)))
(define-key fg-map "Q" '(lambda (arg) (interactive "p") (insert-char ?Ô arg)))
(define-key fg-map "J" '(lambda (arg) (interactive "p") (insert-char ?Ê arg)))
(define-key fg-map "K" '(lambda (arg) (interactive "p") (insert-char ?Û arg)))
(define-key fg-map "X" '(lambda (arg) (interactive "p") (insert-char ?Î arg)))
(define-key fg-map "`" '(lambda (arg) (interactive "p") (insert-char ?‘ arg)))
(define-key fg-map "~" '(lambda (arg) (interactive "p") (insert-char ?“ arg)))
(global-set-key [tab] fg-map)
;;;
(define-key isearch-mode-map [tab]
(lambda ()
(interactive)
(let (ch)
(when (setq ch (fg-map-char (read-event)))
(isearch-process-search-char ch)))))
(defun fg-map-char (ch)
(cond
((= ch ?1) ?à)
((= ch ?2) ?é)
((= ch ?3) ?è)
((= ch ?4) ?ù)
((= ch ?5) ?ç)
((= ch ?!) ?À)
((= ch ?@) ?É)
((= ch ?#) ?È)
((= ch ?$) ?Ù)
((= ch ?%) ?Ç)
((= ch ?') ?’)
((= ch ?,) ?„)
((= ch ?.) ?·)
((= ch ?p) ?ß)
((= ch ?y) ?œ)
((= ch ?\") ?”)
((= ch ?<) ?«)
((= ch ?>) ?»)
((= ch ?P) ?ÿ)
((= ch ?Y) ?Œ)
((= ch ?a) ?ä)
((= ch ?o) ?ö)
((= ch ?e) ?ë)
((= ch ?u) ?ü)
((= ch ?i) ?ï)
((= ch ?A) ?Ä)
((= ch ?O) ?Ö)
((= ch ?E) ?Ë)
((= ch ?U) ?Ü)
((= ch ?I) ?Ï)
((= ch ?\;) ?â)
((= ch ?q) ?ô)
((= ch ?j) ?ê)
((= ch ?k) ?û)
((= ch ?x) ?î)
((= ch ?:) ?Â)
((= ch ?Q) ?Ô)
((= ch ?J) ?Ê)
((= ch ?K) ?Û)
((= ch ?X) ?Î)
((= ch ?`) ?‘)
((= ch ?~) ?“)
))