From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Hadron Quark Newsgroups: gmane.emacs.help Subject: Re: c++ and c common mode Date: Wed, 13 Dec 2006 17:10:27 +0100 Message-ID: References: <1166023965.520675.81860@f1g2000cwa.googlegroups.com> <8cmz5rvm8a.fsf@gmail.com> <1166024855.502791.285810@j44g2000cwa.googlegroups.com> NNTP-Posting-Host: dough.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1166028156 8921 80.91.229.10 (13 Dec 2006 16:42:36 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 13 Dec 2006 16:42:36 +0000 (UTC) Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Wed Dec 13 17:42:36 2006 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by dough.gmane.org with esmtp (Exim 4.50) id 1GuXBi-0003CJ-G6 for geh-help-gnu-emacs@m.gmane.org; Wed, 13 Dec 2006 17:42:34 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1GuXBi-0000AX-0X for geh-help-gnu-emacs@m.gmane.org; Wed, 13 Dec 2006 11:42:34 -0500 Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!news.tele.dk!news.tele.dk!small.news.tele.dk!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 57 Original-X-Trace: individual.net rxyNWT9jcCcblqsddCSD+AAEG97yryJnmGk5/QLl7aJ8D9EaGx X-Orig-Path: news.individual.net!news X-Face: 2h#||Cd#d%F*NCm59[_6/{1a@jy%; |j>{D~4^gKg(^i%7j0IK?+,/GmW&:CD5fEKb_! User-Agent: Gnus Cancel-Lock: sha1:qRVz2Csv5Je7GPWsNi80H+Z5mAk= Original-Xref: shelby.stanford.edu gnu.emacs.help:143911 Original-To: help-gnu-emacs@gnu.org X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:39515 Archived-At: "Robert Thorpe" writes: > Hadron Quark wrote: >> "Robert Thorpe" writes: >> > Hadron Quark wrote: >> >> Leo writes: >> >> >> >> > * [2006.12.13 03:43 +0100] Hadron Quark wrote: >> >> > ^^^^^^^^^^^^ >> >> >> I am duplicating hook additions e.g >> >> >> >> >> >> (add-hook 'c-mode-common-hook 'my-c-init) >> >> > >> >> > I think this line is sufficient. >> >> >> >> The one line I *did* have to duplicate was the define-key to add to both >> >> keyboard maps: >> >> >> >> >> >> ,---- >> >> | (let ((dl '( >> >> | ([f1] . jump-man-page) >> >> | ([backtab] . semantic-ia-complete-symbol) >> >> | ([f5] . find-tag-noconfirm) >> >> | ([f6] . find-tag-repeat) >> >> | ([f7] . pop-tag-mark) >> >> | ([f2] . gdb-restore-windows) >> >> | ([f10] . compile) >> >> | ([f11] . next-error) >> >> | ([f12] . gdba)))) >> >> | (dolist (i dl) >> >> | (define-key c-mode-map (car i) (cdr i)) >> >> | (define-key c++-mode-map (car i) (cdr i)) >> >> | )) >> >> `---- >> >> >> >> is there a better way? Some common "subset" for "c like" files? >> > >> > Add-hook just adds a function, so why not put the above in a function? >> > >> >> It is : it was just an extract to show the duplication of the define-key lines. > > Ah, I'm with yer now. You could do:- > > (defun define-key-c-and-c++-map (key x) > (define-key c-mode-map key x) > (define-key c++-mode-map key y)) > Thanks, but I realise that - not much of a saving IMO and more cluttering up of name space. I guess I was asking if there is a "base key map" shared by all "c like" file modes so I only have to define-key once. No big deal I agree, but was just trying to tidy my emacs libraries which are full of this & that at the moment as I built up my emacs gdb support knowledge.