unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Alan Mackenzie <acm@muc.de>
To: dino chiesa <dpchiesa@hotmail.com>
Cc: emacs-devel@gnu.org
Subject: Re: first-class support for csharp in cc-mode.el
Date: Wed, 30 Dec 2009 15:19:45 +0000	[thread overview]
Message-ID: <20091230151945.GA8767@muc.de> (raw)
In-Reply-To: <COL124-W537874FBE12290123E14A2CE790@phx.gbl>

Hi, Dino,

I'm the current maintainer of CC Mode.

On Tue, Dec 29, 2009 at 09:01:00PM -0800, dino chiesa wrote:

> I don't have much experience with emacs-devel, but what would it take
> to get csharp to be supported as a first-class (built-in) language in
> cc-mode?

The current policy is not to add any more languages to the core of CC
Mode, since it's hassle enough supporting the seven that are already
there.  There are certainly lots of users of C, C++, Java, several users
of Objective C and AWK, but I just don't know about Pike and IDL.  The
problem is, when somebody implements support for a language directly in
CC Mode and they move on a few years later, support for that langauge
effectively vanishes.  It was to fix this that Martin Stjernholm (my
predecessor) implemented the c-lang-const mechanism.

> The stuff done to support it in
> http://www.emacswiki.org/emacs/CSharpMode is all via documented
> cc-mode c-lang-const things, and it seems to me these could be folded
> into the cc-mode code without disturbing support for C/C++, Java, or
> other cc-mode languages. I would guess that more emacs people are
> using C# these days than CORBA IDL, which is supported in cc-mode. 

If the c-lang-const stuff is inadequate to support, say, C#, then I
would prefer to amend CC Mode so that C# can be supported.  It looks
like the @"....." syntax will need such an amendment.  This will
probably involve a large change, since the use of \ as an escape
character is firmly embedded in the very fabric of CC Mode.  Is @ used
for anything else in C#?  Is it forbidden to have whitespace between @
and "?

In fact, I've just thought of a way of fixing this: in an after-change
function, splat the syntax (using syntax-table text-properties) of
anything within @"....".  I think there's already a suitable hook in CC
Mode for this.

> I have no idea if this is a friendly proposal or not, but it would
> make things nice for people who write C# and use emacs. 

Thanks for the proposal!  Constructive suggestions are always welcome at
CC Mode.  By the way, CC Mode has its own mailing list at
bug-cc-mode@gnu.org and is hosted on sourceforge for historical reasons.

> There are still a few issues with that C# mode - lambdas have no
> special support, and the new dynamic keyword in .NET 4.0 isn't there
> (simple to add), and there is the literal string thing I described in
> my other mail thread - but mostly it works well.  Including this would
> provide a good baseline of support in emacs for C#. 

Those are all issues for C# Mode's maintainer.

> -Dino

-- 
Alan Mackenzie (Nuremberg, Germany).




  parent reply	other threads:[~2009-12-30 15:19 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-12-29  1:51 cc-mode help - how to support literal strings in C# syntax? dino chiesa
2009-12-29 10:43 ` Andreas Roehler
2009-12-30  4:40   ` dino chiesa
2010-01-01 11:43     ` Andreas Roehler
2010-01-01 16:04     ` Andreas Roehler
2009-12-30  5:01   ` first-class support for csharp in cc-mode.el dino chiesa
2009-12-30  6:17     ` Miles Bader
2009-12-30  7:18       ` dino chiesa
2009-12-30 11:09         ` Miles Bader
2009-12-30 15:00           ` dino chiesa
2009-12-30 15:19     ` Alan Mackenzie [this message]
2009-12-30 15:39       ` Stefan Monnier
2009-12-30 16:29         ` dino chiesa
2009-12-30 16:57           ` Stefan Monnier
2009-12-30 21:01           ` Alan Mackenzie
2009-12-30 21:03             ` dino chiesa
2009-12-31  2:44               ` Miles Bader
2009-12-31  2:58                 ` Jason Rumney
2009-12-31  3:08                 ` Deniz Dogan
2009-12-31  3:18                   ` dino chiesa
2009-12-31  3:13                 ` dino chiesa
2009-12-31 11:43           ` Vagn Johansen
2009-12-30 20:19         ` Alan Mackenzie

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20091230151945.GA8767@muc.de \
    --to=acm@muc.de \
    --cc=dpchiesa@hotmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).