Poniższy tekst opisuje co należy wstawić do pliku ~/.emacs, aby zapewnić obsługę polskich liter w edytorze GNU emacs. Można w nim wyróżnić trzy grupy funkcji:
; Polish characters (defun insert-a-ogonek () (interactive "*") (insert 177) ) (defun insert-c-acute () (interactive "*") (insert 230) ) (defun insert-e-ogonek () (interactive "*") (insert 234) ) (defun insert-l-slash () (interactive "*") (insert 179) ) (defun insert-n-acute () (interactive "*") (insert 241) ) (defun insert-o-acute () (interactive "*") (insert 243) ) (defun insert-s-acute () (interactive "*") (insert 182) ) (defun insert-z-acute () (interactive "*") (insert 188) ) (defun insert-z-dot () (interactive "*") (insert 191) ) (defun insert-A-ogonek () (interactive "*") (insert 161) ) (defun insert-C-acute () (interactive "*") (insert 198) ) (defun insert-E-ogonek () (interactive "*") (insert 202) ) (defun insert-L-slash () (interactive "*") (insert 163) ) (defun insert-N-acute () (interactive "*") (insert 209) ) (defun insert-O-acute () (interactive "*") (insert 211) ) (defun insert-S-acute () (interactive "*") (insert 166) ) (defun insert-Z-acute () (interactive "*") (insert 172) ) (defun insert-Z-dot () (interactive "*") (insert 175) )
; key bindings for Polish characters: Alt - lowercase, Alt+Shift - uppercase (global-set-key (quote [4194401]) (quote insert-a-ogonek)) ; A-a (global-set-key (quote [4194403]) (quote insert-c-acute)) ; A-c (global-set-key (quote [4194405]) (quote insert-e-ogonek)) ; A-e (global-set-key (quote [4194412]) (quote insert-l-slash)) ; A-l (global-set-key (quote [4194414]) (quote insert-n-acute)) ; A-n (global-set-key (quote [4194415]) (quote insert-o-acute)) ; A-o (global-set-key (quote [4194419]) (quote insert-s-acute)) ; A-s (global-set-key (quote [4194424]) (quote insert-z-acute)) ; A-x (global-set-key (quote [4194426]) (quote insert-z-dot)) ; A-z (global-set-key (quote [4194369]) (quote insert-A-ogonek)) ; A-A (global-set-key (quote [4194371]) (quote insert-C-acute)) ; A-C (global-set-key (quote [4194373]) (quote insert-E-ogonek)) ; A-E (global-set-key (quote [4194380]) (quote insert-L-slash)) ; A-L (global-set-key (quote [4194382]) (quote insert-N-acute)) ; A-N (global-set-key (quote [4194383]) (quote insert-O-acute)) ; A-O (global-set-key (quote [4194387]) (quote insert-S-acute)) ; A-S (global-set-key (quote [4194392]) (quote insert-Z-acute)) ; A-X (global-set-key (quote [4194394]) (quote insert-Z-dot)) ; A-Z
; case table entries for Polish characters (let ((downcase (concat (car (standard-case-table))))) (set-case-syntax-pair 161 177 downcase) ; Aa with ogonek (set-case-syntax-pair 198 230 downcase) ; Cc with acute (set-case-syntax-pair 202 234 downcase) ; Ee with ogonek (set-case-syntax-pair 163 179 downcase) ; Ll with slash (set-case-syntax-pair 209 241 downcase) ; Nn with acute (set-case-syntax-pair 211 243 downcase) ; Oo with acute (set-case-syntax-pair 166 182 downcase) ; Ss with acute (set-case-syntax-pair 172 188 downcase) ; Zz with acute (set-case-syntax-pair 175 191 downcase) ; Zz with dot (set-standard-case-table (list downcase nil nil nil)))Powodzenia! Jan Daciuk <jandac@pg.gda.pl>