From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Sean McAfee Newsgroups: gmane.emacs.help Subject: Preferred way to add commands to a foreign keymap? Date: Thu, 16 Sep 2010 17:36:38 -0700 Message-ID: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: dough.gmane.org 1291867263 2753 80.91.229.12 (9 Dec 2010 04:01:03 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Thu, 9 Dec 2010 04:01:03 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Dec 09 05:00:59 2010 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1PQXgh-0000T7-BC for geh-help-gnu-emacs@m.gmane.org; Thu, 09 Dec 2010 05:00:59 +0100 Original-Received: from localhost ([127.0.0.1]:46210 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PQXgg-0004BE-Pi for geh-help-gnu-emacs@m.gmane.org; Wed, 08 Dec 2010 23:00:58 -0500 Original-Path: usenet.stanford.edu!postnews.google.com!news1.google.com!Xl.tags.giganews.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local2.nntp.dca.giganews.com!nntp.supernews.com!news.supernews.com.POSTED!not-for-mail Original-NNTP-Posting-Date: Thu, 16 Sep 2010 19:36:38 -0500 Original-Newsgroups: gnu.emacs.help User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.3 (darwin) Cancel-Lock: sha1:r1a+S+phv9cZI54uz6AaWalQt7s= Original-Lines: 23 Original-X-Trace: sv3-3g53GM8hoq+8IrHGe8DHftfz/xUm1LLUYpT4rtufwx6tcVU7AkTFmf9WYU7/JWe3h1GKKKhzZwFdMVS!dkcoAgh7tg+kP98+UFGJv2dTDt4E22QXGsPjOjjsNpXAP/SsMfdW3I+4 Original-X-Complaints-To: www.supernews.com/docs/abuse.html X-DMCA-Complaints-To: www.supernews.com/docs/dmca.html X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.40 Original-Xref: usenet.stanford.edu gnu.emacs.help:181345 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:76602 Archived-At: I want to add the following command to Dired mode: (defun mac-open-files (arg) (interactive "P") (dired-do-shell-command "/usr/bin/open" arg (dired-get-marked-files))) I can think of two ways to do it: 1. Twiddle dired-mode's keymap directly: (define-key dired-mode-map [(super o)] 'mac-open-files) 2. Use local-set-key in a hook: (add-hook 'dired-mode-hook (lambda () (local-set-key [(super o)] 'mac-open-files) #1 seems like the (very, very slightly) more efficient appoach, but I worry that I'm potentially trampling on a dired-mode implementation detail. Is there any practical reason to prefer one approach over the other? Or is there another way?