Subject: bug#11535: 24.0.96; Offered: coffee-mode.el

From: Reuben Thomas <[email-masked]>
Date: Mon, 21 May 2012 21:22:14 +0100

Would the Emacs maintainers like a mode for CoffeeScript? (CoffeeScript
is a popular sugared JavaScript: see coffeescript.org.) coffee-mode.el
is at:

https://github.com/defunkt/coffee-mode

It has a single significant author, Chris Wanstrath, who is happy to
sign an FSF copyright assignment. (As you can see from the commit
history, there have been commits from other people, but by my counting,
none (except me, and I've already signed an Emacs copyright assignment)
has contributed more than 15 lines at a time, thus falling below the
limit for a copyright assignment being needed.

I've put some effort into tidying coffee-mode up for inclusion in Emacs,
mainly by removing functionality duplicated elsewhere, and adding
support for autoloading and customization. I'd be happy to address
remaining concerns about code style, and details of Emacs integration.
I'm happy in general to act as sponsor for this package, e.g. getting
Chris to sign the copyright assignment etc. (as a GNU maintainer, I'm
reasonably familiar with the requirements).

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:
  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-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:
u t SPC <backspace> <backspace> r SPC p l a t y f o 
<backspace> <backspace> <backspace> f o r m SPC i s 
n ' t SPC q u i t e SPC <backspace> <backspace> <backspace> 
<backspace> <backspace> <backspace> <backspace> <backspace> 
<backspace> C-q ' t SPC q u i t e SPC p o <backspace> 
<backspace> P O S I X , SPC y o u SPC m a y SPC g <backspace> 
f i n d SPC a SPC g n u l i b SPC m o d u l e SPC t 
o SPC b r i d g e SPC t h e SPC g a p . M-q <down> 
<down> <down> C-x C-s C-x v = C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n C-n 
C-n C-n C-n C-n C-n C-n C-n C-x o C-x v v A d d SPC 
a SPC p o i n t e r SPC t o SPC <backspace> SPC d o 
c u m e n t a t i o n SPC a n d SPC s o m e SPC b a 
s i c SPC c o d i n g SPC p r i n c i p l e s . C-c 
C-c C-x 1 <down-mouse-1> <mouse-1> C-x b c o f f e 
e C-s C-s C-r <return> C-x C-f C-g M-> M-< M-> M-< 
M-> M-x r e p o r t - = e m a c s <backspace> <backspace> 
<backspace> <backspace> <backspace> e m a c s <backspace> 
<backspace> <backspace> <backspace> <backspace> = <backspace> 
<backspace> e m a c s - b u g <return>

Recent messages:
byte-code: End of buffer [18 times]
Saving file /home/rrt/Software/Lua/luaposix/README...
Wrote /home/rrt/Software/Lua/luaposix/README
Finding changes in /home/rrt/Software/Lua/luaposix/README...done
Mark set
Press C-c C-c when you are done editing.
Enter a change comment.  Type C-c C-c when done
Checking in /home/rrt/Software/Lua/luaposix/README...done
Quit
Mark set [5 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 log-edit lua-mode autoconf autoconf-mode add-log
log-view pcvs-util vc-annotate diff-git diff-mode vc ediff-merg
ediff-diff ediff-wind ediff-help ediff-util ediff-mult ediff-init ediff
vc-dispatcher cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles
cc-align cc-engine cc-vars cc-defs multi-isearch sgml-mode nxml-uchnm
rng-xsd xsd-regexp rng-cmpct rng-nxml rng-valid rng-loc rng-uri
rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns
nxml-mode nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc xmltok
help-mode view flymake compile vc-git face-remap flyspell smart-quotes
coffee-mode comint regexp-opt ansi-color ring 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 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/