GNU bug report logs - #11434
24.0.96; Determining major mode for a given file extension

Previous Next

Package: emacs;

Reported by: Reuben Thomas <rrt <at> sc3d.org>

Date: Tue, 8 May 2012 16:42:02 UTC

Severity: wishlist

Tags: moreinfo, notabug

Found in version 24.0.96

Done: Stefan Kangas <stefan <at> marxist.se>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 11434 in the body.
You can then email your comments to 11434 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Tue, 08 May 2012 16:42:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Reuben Thomas <rrt <at> sc3d.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 08 May 2012 16:42:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Reuben Thomas <rrt <at> sc3d.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 24.0.96; Determining major mode for a given file extension
Date: Tue, 08 May 2012 17:38:36 +0100
I have the following problem: I am working on coffee-mode.el, a major
mode for editing CoffeeScript, which is essentially syntactic sugar for
Javascript. One of its commands compiles some CoffeeScript into
Javascript and opens it in another buffer. It currently sets the major
mode of the new buffer to a hard-wired mode, but it seems more sensible
to set it to the mode currently set for ".js" in auto-mode-alist (at
least, that's the closest I can come to "find the mode currently
configured for a particular language). Unfortunately, there doesn't seem
to be an easy way of doing this: the code that looks up a file extension
in auto-mode-alist is buried in set-auto-mode. Actually, I'd be quite
happy to call set-auto-mode, only the buffer in which the Javascript is
held is called "*coffee-compiled*", which seems a reasonable name for an
auto-generated buffer. For now, I propose to rename it
"*coffee-compiled*.js", but I'd appreciate suggestions as to how I could
do this better. It would be nice to be able to give set-auto-mode a
clue, in the form of a filename or an interpreter name, for cases like this.


In GNU Emacs 24.0.96.1 (x86_64-unknown-linux-gnu, GTK+ Version 2.24.10)
 of 2012-04-29 on skwd
Windowing system distributor `The X.Org Foundation', version 11.0.11103000
Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: en_GB.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Emacs-Lisp

Minor modes in effect:
  shell-dirtrack-mode: t
  diff-auto-refine-mode: t
  recentf-mode: t
  show-paren-mode: t
  server-mode: t
  savehist-mode: t
  minibuffer-electric-default-mode: t
  iswitchb-mode: t
  icomplete-mode: t
  global-whitespace-mode: t
  global-auto-revert-mode: t
  desktop-save-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> C-s f i l l <backspace> e - n a m e C-a <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> M-x r e p o r t - e m a 
c s - b u g <return>

Recent messages:
Type "q" to restore previous buffer.
Mark set
Mark saved where search started
Quit
Type "q" to restore previous buffer.
uncompressing files.el.gz...done
Note: file is write protected
Mark saved where search started [2 times]
Quit
Mark saved where search started [2 times]

Load-path shadows:
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/dictionary-init hides /usr/local/share/emacs/24.0.96/site-lisp/dictionary-el/dictionary-init
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/dictionary hides /usr/local/share/emacs/24.0.96/site-lisp/dictionary-el/dictionary
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/link hides /usr/local/share/emacs/24.0.96/site-lisp/dictionary-el/link
/home/rrt/.emacs.d/elpa/dictionary-1.8.7/connection hides /usr/local/share/emacs/24.0.96/site-lisp/dictionary-el/connection
/home/rrt/local/share/emacs/site-lisp/dict hides /usr/local/share/emacs/24.0.96/site-lisp/emacs-goodies-el/dict
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-style hides /usr/share/emacs/site-lisp/auctex/tex-style
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-mik hides /usr/share/emacs/site-lisp/auctex/tex-mik
/usr/local/share/emacs/24.0.96/site-lisp/auctex/multi-prompt hides /usr/share/emacs/site-lisp/auctex/multi-prompt
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-jp hides /usr/share/emacs/site-lisp/auctex/tex-jp
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-info hides /usr/share/emacs/site-lisp/auctex/tex-info
/usr/local/share/emacs/24.0.96/site-lisp/auctex/latex hides /usr/share/emacs/site-lisp/auctex/latex
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex hides /usr/share/emacs/site-lisp/auctex/tex
/usr/local/share/emacs/24.0.96/site-lisp/auctex/texmathp hides /usr/share/emacs/site-lisp/auctex/texmathp
/usr/local/share/emacs/24.0.96/site-lisp/auctex/context-nl hides /usr/share/emacs/site-lisp/auctex/context-nl
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-font hides /usr/share/emacs/site-lisp/auctex/tex-font
/usr/local/share/emacs/24.0.96/site-lisp/auctex/toolbar-x hides /usr/share/emacs/site-lisp/auctex/toolbar-x
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-buf hides /usr/share/emacs/site-lisp/auctex/tex-buf
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-fptex hides /usr/share/emacs/site-lisp/auctex/tex-fptex
/usr/local/share/emacs/24.0.96/site-lisp/auctex/bib-cite hides /usr/share/emacs/site-lisp/auctex/bib-cite
/usr/local/share/emacs/24.0.96/site-lisp/auctex/context-en hides /usr/share/emacs/site-lisp/auctex/context-en
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-fold hides /usr/share/emacs/site-lisp/auctex/tex-fold
/usr/local/share/emacs/24.0.96/site-lisp/auctex/tex-bar hides /usr/share/emacs/site-lisp/auctex/tex-bar
/usr/local/share/emacs/24.0.96/site-lisp/auctex/context hides /usr/share/emacs/site-lisp/auctex/context
/usr/local/share/emacs/24.0.96/site-lisp/auctex/font-latex hides /usr/share/emacs/site-lisp/auctex/font-latex

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils jka-compr find-func shell pcomplete grep apropos
pp help-mode view log-edit pcvs-util add-log diff-git diff-mode vc
ediff-merg ediff-diff ediff-wind ediff-help ediff-util ediff-mult
ediff-init ediff vc-dispatcher multi-isearch coffee-mode flymake compile
comint ansi-color ring vc-git face-remap regexp-opt flyspell
smart-quotes auto-dictionary-autoloads c-eldoc-autoloads
dictionary-autoloads diff-git-autoloads dired-isearch-autoloads
full-ack-autoloads guess-style-autoloads kill-ring-search-autoloads
magit-autoloads mv-shell-autoloads tumble-autoloads
http-post-simple-autoloads package tabulated-list completing-help
recentf tree-widget wid-edit uniquify paren server savehist
minibuf-eldef iswitchb icomplete whitespace autorevert desktop cus-start
cus-load ropemacs pymacs go-mode-load ispell advice advice-preload
yasnippet help-fns derived edmacro kmacro easymenu assoc cl
muse-autoloads emacs-goodies-el emacs-goodies-custom
emacs-goodies-loaddefs easy-mmode preview-latex tex-site auto-loads
user-site-loaddefs time-date tooltip ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image fringe lisp-mode register
page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock
font-lock syntax facemenu font-core frame cham georgian utf-8-lang
misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew
greek romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
button faces cus-face files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)

-- 
http://rrt.sc3d.org/




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Tue, 08 May 2012 16:48:02 GMT) Full text and rfc822 format available.

Message #8 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Reuben Thomas <rrt <at> sc3d.org>
To: bug-gnu-emacs <at> gnu.org
Subject: Re: 24.0.96; Determining major mode for a given file extension
Date: Tue, 8 May 2012 17:44:44 +0100
On 8 May 2012 17:38, Reuben Thomas <rrt <at> sc3d.org> wrote:
> For now, I propose to rename it
> "*coffee-compiled*.js", but I'd appreciate suggestions as to how I could
> do this better. It would be nice to be able to give set-auto-mode a
> clue, in the form of a filename or an interpreter name, for cases like this.

Since it's the file name, not the buffer name, that matters, my
current solution is to do:

  (setq buffer-file-name "compiled.js")
  (set-auto-mode)
  (setq buffer-file-name nil)

Does that seem reasonable?

-- 
http://rrt.sc3d.org




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Tue, 08 May 2012 18:27:02 GMT) Full text and rfc822 format available.

Message #11 received at 11434 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Reuben Thomas <rrt <at> sc3d.org>
Cc: 11434 <at> debbugs.gnu.org
Subject: Re: bug#11434: 24.0.96;
	Determining major mode for a given file extension
Date: Tue, 08 May 2012 14:24:19 -0400
>> For now, I propose to rename it
>> "*coffee-compiled*.js", but I'd appreciate suggestions as to how I could
>> do this better. It would be nice to be able to give set-auto-mode a
>> clue, in the form of a filename or an interpreter name, for cases like this.

> Since it's the file name, not the buffer name, that matters, my
> current solution is to do:

>   (setq buffer-file-name "compiled.js")
>   (set-auto-mode)
>   (setq buffer-file-name nil)

> Does that seem reasonable?

I'd use (let ((buffer-file-name "foo.js")) (set-auto-mode)) instead.


        Stefan




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Tue, 08 May 2012 18:33:01 GMT) Full text and rfc822 format available.

Message #14 received at 11434 <at> debbugs.gnu.org (full text, mbox):

From: Reuben Thomas <rrt <at> sc3d.org>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 11434 <at> debbugs.gnu.org
Subject: Re: bug#11434: 24.0.96;
	Determining major mode for a given file extension
Date: Tue, 8 May 2012 19:30:40 +0100
On 8 May 2012 19:24, Stefan Monnier <monnier <at> iro.umontreal.ca> wrote:
>>> For now, I propose to rename it
>>> "*coffee-compiled*.js", but I'd appreciate suggestions as to how I could
>>> do this better. It would be nice to be able to give set-auto-mode a
>>> clue, in the form of a filename or an interpreter name, for cases like this.
>
>> Since it's the file name, not the buffer name, that matters, my
>> current solution is to do:
>
>>   (setq buffer-file-name "compiled.js")
>>   (set-auto-mode)
>>   (setq buffer-file-name nil)
>
>> Does that seem reasonable?
>
> I'd use (let ((buffer-file-name "foo.js")) (set-auto-mode)) instead.

So it's just my Lisp that's bad, not my approach? :)

-- 
http://rrt.sc3d.org




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Wed, 09 May 2012 12:39:01 GMT) Full text and rfc822 format available.

Message #17 received at 11434 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Reuben Thomas <rrt <at> sc3d.org>
Cc: 11434 <at> debbugs.gnu.org
Subject: Re: bug#11434: 24.0.96;
	Determining major mode for a given file extension
Date: Wed, 09 May 2012 08:35:57 -0400
>> I'd use (let ((buffer-file-name "foo.js")) (set-auto-mode)) instead.
> So it's just my Lisp that's bad, not my approach? :)

I think so, yes.  You can also use create-file-buffer with some dummy
file name and then call after-find-file (that's what I did in PCL-CVS).


        Stefan




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Thu, 31 Oct 2019 14:36:02 GMT) Full text and rfc822 format available.

Message #20 received at 11434 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 11434 <at> debbugs.gnu.org, Reuben Thomas <rrt <at> sc3d.org>
Subject: Re: bug#11434: 24.0.96; Determining major mode for a given file
 extension
Date: Thu, 31 Oct 2019 08:31:57 +0100
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

>>> I'd use (let ((buffer-file-name "foo.js")) (set-auto-mode)) instead.
>> So it's just my Lisp that's bad, not my approach? :)
>
> I think so, yes.  You can also use create-file-buffer with some dummy
> file name and then call after-find-file (that's what I did in PCL-CVS).

It seems to me like there is no bug here.  Am I missing something?

If I don't hear back within a couple of weeks, I'll go ahead and close
this bug report.

Best regards,
Stefan Kangas




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Fri, 01 Nov 2019 18:14:02 GMT) Full text and rfc822 format available.

Message #23 received at 11434 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefan <at> marxist.se>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 11434 <at> debbugs.gnu.org, Reuben Thomas <rrt <at> sc3d.org>
Subject: Re: bug#11434: 24.0.96; Determining major mode for a given file
 extension
Date: Fri, 01 Nov 2019 19:12:53 +0100
Stefan Monnier <monnier <at> iro.umontreal.ca> writes:

>>> I'd use (let ((buffer-file-name "foo.js")) (set-auto-mode)) instead.
>> So it's just my Lisp that's bad, not my approach? :)
>
> I think so, yes.  You can also use create-file-buffer with some dummy
> file name and then call after-find-file (that's what I did in PCL-CVS).

It seems to me like there is no bug here.  Am I missing something?

If I don't hear back within a couple of weeks, I'll go ahead and close
this bug report.

Best regards,
Stefan Kangas




Added tag(s) moreinfo. Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Thu, 21 Nov 2019 11:52:01 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#11434; Package emacs. (Fri, 29 Nov 2019 12:46:01 GMT) Full text and rfc822 format available.

Message #28 received at 11434 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefan <at> marxist.se>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 11434 <at> debbugs.gnu.org, Reuben Thomas <rrt <at> sc3d.org>
Subject: Re: bug#11434: 24.0.96; Determining major mode for a given file
 extension
Date: Fri, 29 Nov 2019 13:45:34 +0100
tags 11434 + notabug
close 11434
thanks

Stefan Kangas <stefankangas <at> gmail.com> writes:

> Stefan Monnier <monnier <at> iro.umontreal.ca> writes:
>
>>>> I'd use (let ((buffer-file-name "foo.js")) (set-auto-mode)) instead.
>>> So it's just my Lisp that's bad, not my approach? :)
>>
>> I think so, yes.  You can also use create-file-buffer with some dummy
>> file name and then call after-find-file (that's what I did in PCL-CVS).
>
> It seems to me like there is no bug here.  Am I missing something?
>
> If I don't hear back within a couple of weeks, I'll go ahead and close
> this bug report.

More information was requested, but none was given within 4 weeks, so
I'll assume this is not a bug and close this bug report.

If this is incorrect, please reply to this email (use "Reply to all"
in your email client) and we can reopen the bug report.

Best regards,
Stefan Kangas




Added tag(s) notabug. Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Fri, 29 Nov 2019 12:46:01 GMT) Full text and rfc822 format available.

bug closed, send any further explanations to 11434 <at> debbugs.gnu.org and Reuben Thomas <rrt <at> sc3d.org> Request was from Stefan Kangas <stefan <at> marxist.se> to control <at> debbugs.gnu.org. (Fri, 29 Nov 2019 12:46:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sat, 28 Dec 2019 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 119 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.