unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
* A true challenge for Emac and Elisp hackers - at Least I think so
@ 2005-10-12 11:48 Sune
  2005-10-12 12:49 ` Gian Uberto Lauri
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Sune @ 2005-10-12 11:48 UTC (permalink / raw)


Hi all!

After having had dozens of null pointer exceptions thrown at me, I
decided to give up on the much hyped Eclipse CDT 3.0 and switch to
Emacs. Emacs seems to be configurable down to its atoms and I don't
have to wait for the screen to update while I type (which is eh...
nice). Basically, Emacs makes me more productive.

After starting to write some C-programs I quickly realized what I
wanted Emacs to do for me and added Elisp code into .emacs until I was
closed to being satisfied.

This is how far I've come:

Editor
- GNU coding guidelines enforced
- keyboard shortcuts to almost anything including features listed below
- nice functions like untabify-and-reindent, kill buffer of choice,
keyboard macros
etc etc

CVS
- Integrated in menu system to a satisfactory level + keyboard
shortcuts

Make
- Completely intergrated in menu system + keyboard shortcuts +
integrated with error look up in files
etc etc

But now the shit hits the fan! I want the following, but I have no clue
as to how I should even start:

The whole idea is this: I want to add debug trace with as little effort
as possible into my source.

1)
What is listed below is valid for all .c files. Not .h files!
2)
I want RET, the enter key, to trig the following behaviour:

   * If I hit RET with any shift-key being pressed
     simultaneously, RET must behave as any
     normal RET would (basically a normal
     linefeed with possible auto-indentation).
     This may seem backward but I want almost
     every line in my sorce to be traceable.

   * If I hit RET only, and the following applies:

       - It is preceeded by a ';' (semicolon) AND the
         word 'return' is not part of the current
         line or:

       - It is preceeded by a '{' (curly bracket)

     RET adds DBG after the ';' or the '{' with a
     space in between like so:

     ; DBG
     { DBG

     respectively. After that (the same key stroke)
     , RET behaves like a normal RET would (basically
     a normal linefeed with possible auto-indentation).

I have to admit that this is so far out there (at least for me) that I
would need more or less a ready-to-go implementation just to paste into
.emacs.

Do you know a place where something similar has been done which I can
steal and adapt, or are you interested in implementing it? (A place on
my tomb stone is reserved for anyone that succeeds in doing this)

Otherwise I will go back to crap Eclipse, wait for it to stabilize and
implement a plugin - that stuff I know. I just don't want to give up on
Emacs!!

Truckloads of thanks
/Sune

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2005-10-15 19:57 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-10-12 11:48 A true challenge for Emac and Elisp hackers - at Least I think so Sune
2005-10-12 12:49 ` Gian Uberto Lauri
2005-10-12 13:16 ` Slawomir Nowaczyk
     [not found] ` <mailman.11019.1129123023.20277.help-gnu-emacs@gnu.org>
2005-10-12 13:29   ` Matthieu Moy
2005-10-12 14:04     ` Slawomir Nowaczyk
     [not found]     ` <mailman.11022.1129125880.20277.help-gnu-emacs@gnu.org>
2005-10-12 16:13       ` Giorgos Keramidas
2005-10-12 19:20         ` Chris McMahan
2005-10-12 13:48 ` Pascal Bourguignon
2005-10-12 15:36 ` Drew Adams
2005-10-12 23:28 ` Thien-Thi Nguyen
2005-10-13  9:13   ` Sune
2005-10-13 14:33     ` Joe Corneli
2005-10-13 21:45   ` Sune
2005-10-13 21:49   ` Sune
2005-10-14 13:10     ` Thien-Thi Nguyen
2005-10-15 17:57   ` Sune
2005-10-15 19:57     ` Thien-Thi Nguyen

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).