-(defvar gnus-score-mode-map nil)
-(unless gnus-score-mode-map
- (setq gnus-score-mode-map (copy-keymap emacs-lisp-mode-map))
- (define-key gnus-score-mode-map "\C-c\C-c" 'gnus-score-edit-exit)
- (define-key gnus-score-mode-map "\C-c\C-d" 'gnus-score-edit-insert-date)
- (define-key gnus-score-mode-map "\C-c\C-p" 'gnus-score-pretty-print))
+(defvar gnus-score-mode-map
+ (let ((map (make-sparse-keymap)))
+ (set-keymap-parent map emacs-lisp-mode-map)
+ (define-key map "\C-c\C-c" 'gnus-score-edit-exit)
+ (define-key map "\C-c\C-d" 'gnus-score-edit-insert-date)
+ (define-key map "\C-c\C-p" 'gnus-score-pretty-print)
+ map))
+
+(defvar score-mode-syntax-table
+ (let ((table (copy-syntax-table lisp-mode-syntax-table)))
+ (modify-syntax-entry ?| "w" table)
+ table)
+ "Syntax table used in score-mode buffers.")
+
+;; We need this to cope with non-ASCII scoring.
+(defvar score-mode-coding-system mm-universal-coding-system)