From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Lennart Borgman (gmail)" Newsgroups: gmane.emacs.devel Subject: Re: fundamental-mode-hook Date: Fri, 09 Feb 2007 00:05:01 +0100 Message-ID: <45CBAC9D.4020007@gmail.com> References: <45CA70FA.6020002@gmail.com> <877iutvu8v.fsf@floss.red-bean.com> <45CA7955.1020602@gmail.com> <45CBA462.8040801@gmail.com> <86k5ysjm34.fsf@rakim.cfhp.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: sea.gmane.org 1170975939 3931 80.91.229.12 (8 Feb 2007 23:05:39 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 8 Feb 2007 23:05:39 +0000 (UTC) Cc: emacs-devel@gnu.org To: Edward O'Connor Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Feb 09 00:05:32 2007 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1HFIKL-0005pj-7a for ged-emacs-devel@m.gmane.org; Fri, 09 Feb 2007 00:05:20 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HFIKK-0002ZM-Rz for ged-emacs-devel@m.gmane.org; Thu, 08 Feb 2007 18:05:16 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1HFIKA-0002Z7-Ot for emacs-devel@gnu.org; Thu, 08 Feb 2007 18:05:06 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1HFIK9-0002Yv-Dm for emacs-devel@gnu.org; Thu, 08 Feb 2007 18:05:05 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HFIK9-0002Ys-8W for emacs-devel@gnu.org; Thu, 08 Feb 2007 18:05:05 -0500 Original-Received: from ch-smtp01.sth.basefarm.net ([80.76.149.212]) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA:32) (Exim 4.52) id 1HFIK8-0002fW-Ks for emacs-devel@gnu.org; Thu, 08 Feb 2007 18:05:04 -0500 Original-Received: from c83-254-145-24.bredband.comhem.se ([83.254.145.24]:64497 helo=[127.0.0.1]) by ch-smtp01.sth.basefarm.net with esmtp (Exim 4.63) (envelope-from ) id 1HFIK6-0001Ls-5h; Fri, 09 Feb 2007 00:05:03 +0100 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.9) Gecko/20061207 Thunderbird/1.5.0.9 Mnenhy/0.7.4.666 In-Reply-To: <86k5ysjm34.fsf@rakim.cfhp.org> X-Antivirus: avast! (VPS 000712-1, 2007-02-08), Outbound message X-Antivirus-Status: Clean X-Scan-Result: No virus found in message 1HFIK6-0001Ls-5h. X-Scan-Signature: ch-smtp01.sth.basefarm.net 1HFIK6-0001Ls-5h 8401b2e6ca64a5e61789937a93a61b1c X-detected-kernel: Linux 2.6? (barebone, rare!) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:66143 Archived-At: Edward O'Connor wrote: > Lennart asked: > >> What is the right way to find out if a function is a major mode? > > Kevin Rodgers posted the following function to g.e.h or somewhere > similar some number of years ago. It's just a heuristic, but it works > well enough for my purposes. > > ,---- > | (defun kr-major-mode-p (symbol) > | "Return non-nil if SYMBOL is a major mode." > | (and (fboundp symbol) > | (let ((function-name (symbol-name symbol))) > | (and (string-match "-mode\\'" function-name) > | (not (string-match "\\`turn-\\(on\\|off\\)-" > | function-name)))) > | (not (assq symbol minor-mode-alist)))) > `---- Thanks, looks useful.