all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: <tomas@tuxteam.de>
To: help-gnu-emacs@gnu.org
Subject: Re: Emacs as an IDE
Date: Sun, 5 Mar 2017 16:41:05 +0100	[thread overview]
Message-ID: <20170305154105.GA14613@tuxteam.de> (raw)
In-Reply-To: <1C90A2C1-2F49-4001-91C9-41A1C951C84C@comcast.net>

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Sun, Mar 05, 2017 at 09:47:35AM -0500, Francis Belliveau wrote:
> I admit that the original question was a bit open.  It assumed that some of us readers knew how a specific pair of IDE's work.
> A poor assumption since emacs wizards are more likely to use emacs as their IDE with things customized as they desire.

This is one point; another is that all those IDEs are huge and have
all their own philosophies: each user tends to use different subsets
of them. Asking "like X" blurs this subsetting and will forcefully
ignore the one *you* care about. Moreover, "doing all as X does it"
is probably unachievable -- unless you use "X", that is :-)

> So it seems that the answer to the basic question is: Yes, emacs can be configured to be used in manner similar to an IDE.
> 
> I am not such a user, but would like to know how to configure such a thing.  I do have some specific questions below.

That's right: there are pretty extensive packages (like EDE [1]) which
cover IDE functionality (e.g. indexing "interesting" syntactic
objects in a whole project and similar things). That said, I'm not
the "IDE type" myself -- what I used so far is the compile-from-
editor and jump-me-to-next-error, usually provided by the mode
(but this extensively).

Then there are the modes:

> As I understand it emacs triggers such things via "mode" that is normally tied to file extension, so as long as all of your source files have a properly uniques extension that identifies language, you get the correct mode automatically.  For instance, I expect that you have already discovered that your .java files come up in Java-Mode with a default set of coding-style rules.

It's not only the extension: a mode can be set according to the file's
content (a typical example would be the shebang line in an interpreter
file, but you can also insert a specifically formatted comment at a
strategic place in a file). See "23.3 Choosing File Modes" in the
fine manual, online here [2]

Modes are highly customizable wrt coding style. If you are at an
Emacs, just type in M-x customize <RET> and browse through the
options tree to get a first impression.

> 
> The next problems are:
>   How do I customize the coding style to my match desires?

See above.

> and
>   How do I get "code-finding" and "code-completion" to work?

I think EDE covers that. But I'll hope more knowledgeable folks chime in.
Depending on your target language there are other kinds of development
environments, which, for example can run the target's language interpreter
or a debugger like gdb and thus stay current about the target program's
status.

> I have been coding in C++ for a long time and am reasonably happy with how those modes work, but I do not know the answer to my second question.  I also use Java and could use help with the first question in that regard.
> Again, I admit that the first question is way too general for a specific answer, but a pointer regarding how to find where to start reading in the documentation would be helpful.  Navigating the documentation requires one to be able to follow the mind-set of the writer, and I just cannot seem to find my way to what I need very easily.
> 
> Although a documentation pointer would also be a useful answer to the second question, I expect that it would also be possible to provide an outline of the basic steps so that I could better search the documentation for "how to" information.  Clearly emacs would need some sort of symbol-table to tell it which file a particular object/method exists in so that it can find its way to said method and/or auto-complete a partial entry.
> 
> Some help with where to start would be useful.

Yes, discovering this world can be daunting at times. But it's
worth it :-)

[1] https://www.gnu.org/software/emacs/manual/html_node/emacs/EDE.html
[2] https://www.gnu.org/software/emacs/manual/html_node/emacs/Choosing-Modes.html

regards
- -- tomás
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAli8MZEACgkQBcgs9XrR2kbcnACbBgES1Bu/ZdZX8j7LUSIajcBX
wnUAnRExysRVnmbsuSyqu9alHvt6Lawj
=yKmi
-----END PGP SIGNATURE-----



  reply	other threads:[~2017-03-05 15:41 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-04  1:06 Emacs IDE Ahmed Sorour
2017-03-04  8:34 ` tomas
2017-03-04  8:42   ` Krishnakant
2017-03-05 14:47     ` Emacs as an IDE Francis Belliveau
2017-03-05 15:41       ` tomas [this message]
2017-03-08  1:12         ` Francis Belliveau
2017-03-08  7:13           ` Krishnakant
2017-03-05 16:45       ` Anast Gramm
2017-03-06  7:59         ` Krishnakant
2017-03-06  1:40 ` Emacs IDE Kendall Shaw
2017-03-06  8:02   ` Krishnakant
2017-03-06 10:39     ` chaouche yacine
2017-03-06 10:55       ` Krishnakant
2017-03-06 12:00         ` chaouche yacine
2017-03-06 12:20           ` Krishnakant
2017-03-06 14:21             ` chaouche yacine
2017-03-06 14:57               ` Krishnakant
2017-03-07  8:21                 ` chaouche yacine
2017-03-07 10:20                   ` Krishnakant
2017-03-07 14:26     ` Stefan Monnier
2017-03-08  7:19       ` Krishnakant
2017-03-08  9:22         ` Stefan Monnier
  -- strict thread matches above, loose matches on Subject: below --
2007-10-14 19:01 Emacs as an IDE polymedes
2007-10-14 19:54 ` Thorsten Bonow
2007-10-15 13:29   ` Richard G Riley
2007-10-15 20:33     ` Thorsten Bonow
2007-10-15 21:58       ` Richard G Riley
2007-10-15 22:33         ` Thorsten Bonow
2003-10-09  8:11 emacs as an ide Martin
2003-10-09 13:06 ` Phillip Lord
2003-10-09 17:56 ` Pascal Bourguignon
2003-10-09 18:52 ` kgold
2003-10-10 10:05 ` Martin
2003-10-10 12:59   ` Phillip Lord
2003-10-16 21:18   ` Kai Grossjohann
2003-10-17 15:39     ` Bruce Ingalls
2003-10-17 21:38       ` LEE Sau Dan
2003-10-17 21:43       ` Jason Rumney

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

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

  git send-email \
    --in-reply-to=20170305154105.GA14613@tuxteam.de \
    --to=tomas@tuxteam.de \
    --cc=help-gnu-emacs@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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.