# HG changeset patch # User Richard M. Stallman # Date 817251607 0 # Node ID a120308bfe294df5cb2242ecc748fa24497b2a9d # Parent a48a11952cc7fe5118526aff7c174092a26cf910 (cmpl-make-standard-completion-syntax-table) (cmpl-make-c-def-completion-syntax-table): Use make-syntax-table. (completion-c-mode-hook): Encapsulate C-mode changes in new function. Either call it now or put it on c-mode-hook. diff -r a48a11952cc7 -r a120308bfe29 lisp/completion.el --- a/lisp/completion.el Fri Nov 24 22:19:32 1995 +0000 +++ b/lisp/completion.el Fri Nov 24 22:20:07 1995 +0000 @@ -3,7 +3,7 @@ ;; Maintainer: FSF ;; Keywords: abbrev -;; Author: Jim Salem of Thinking Machines Inc. +;; Author: Jim Salem of Thinking Machines Inc. ;; (ideas suggested by Brewster Kahle) ;; This file is part of GNU Emacs. @@ -526,7 +526,7 @@ ;;;----------------------------------------------- (defun cmpl-make-standard-completion-syntax-table () - (let ((table (make-vector 256 0)) ;; default syntax is whitespace + (let ((table (make-syntax-table)) ;; default syntax is whitespace i) ;; alpha chars (setq i 0) @@ -2041,7 +2041,7 @@ ;;; Everything else has word syntax (defun cmpl-make-c-def-completion-syntax-table () - (let ((table (make-vector 256 0)) + (let ((table (make-syntax-table)) (whitespace-chars '(? ?\n ?\t ?\f ?\v ?\r)) ;; unfortunately the ?( causes the parens to appear unbalanced (separator-chars '(?, ?* ?= ?\( ?\; @@ -2624,10 +2624,15 @@ (define-key lisp-mode-map "^" 'self-insert-command) ;;; C mode diffs. -(def-completion-wrapper electric-c-semi :separator) -(define-key c-mode-map "+" 'completion-separator-self-insert-command) -(define-key c-mode-map "*" 'completion-separator-self-insert-command) -(define-key c-mode-map "/" 'completion-separator-self-insert-command) +(defun completion-c-mode-hook () + (def-completion-wrapper electric-c-semi :separator) + (define-key c-mode-map "+" 'completion-separator-self-insert-command) + (define-key c-mode-map "*" 'completion-separator-self-insert-command) + (define-key c-mode-map "/" 'completion-separator-self-insert-command)) +;; Do this either now or whenever C mode is loaded. +(if (featurep 'cc-mode) + (completion-c-mode-hook) + (add-hook 'c-mode-hook 'completion-c-mode-hook)) ;;; FORTRAN mode diffs. (these are defined when fortran is called) (defun completion-setup-fortran-mode ()