Ide And Editor Feature Discussion

Things you like, hate and/or want in an IDE or code editor.


Intellisense (auto-guess)

Sometimes pop-up auto-guess is annoying, distracting, and/or it hides information you want to see. I'd like an option to put auto-guess info in a side code panel box, and either make the list selection happen in the side panel via a function key or the like, or only pop the selection list near the text cursor if a special key is pressed. Often I'd prefer it not covering the code text until I actually want to select a guess from the list. For example, when I'm typing the code, the auto-guess panel on the side displays the current candidate guesses; it's not covering any code. If and when I wish to select a guess, I can either mouse over to the panel to select a guess, or hit a certain easy-to-press key, perhaps a function key (and/or maybe right-click), to put the selection list near the text cursor.

On a slightly different note, if a code editor does not recognize a given language, it should still optionally offer the ability to index and display (to auto-guess panels) the tokens or names in the current document and/or a selected folder branch. The ability to parse the code in a language-knowledgeable way is not necessary for some degree of auto-guess. (Perhaps a priority file could be optionally specified so that one can tell it which tokens to favor.)

Specifying "split" characters/tokens may also be helpful. Typically a token like "123.$foo.bar" would be indexed both as the complex string "123.$foo.bar" and as split into each of "123", "$foo", and "bar". By default a period would probably be a split character/token but a dollar sign not, but this may be user configurable to tune per language.

Meander and Return

Often times I wish to go look somewhere else in a code page and then return. One approach is a book-mark, but often one has to remember to remove them or else they don't work as intended. Instead, I'd prefer a pop-up sub-code-browser that allows me to scroll around in the same file, in read-only mode, and then close it when done.

Not that anyone asked, but I wrote an EmacsLisp function that does what I believe is being described:

    (defun view-indirect-buffer-other-window ()
      (interactive)
      (clone-indirect-buffer-other-window (buffer-name) t)
      (view-buffer (current-buffer)))
If you don't like emacs, keep wishing I guess...

In my observation, Emacs has everything, and that's part of its problem: it overwhelms one via feature OD. --AnonymousDonor (who does not wish to elaborate on this comment)

An extensive and powerful toolbox is only overwhelming "feature OD" if you prefer tedious editing to learning features that will save you significant editing time and effort.

To get power, I'd prefer something that's fairly simple out of the box, but comes with a good kit/API for building what one needs by programming event handlers. Ideally it would use smartly-designed packaging with common but flexible editing idioms. A "fractal framework" similar to "Dealing with Deviations from Framework" in HelpersInsteadOfWrappers is the kind of thing I like. I know Emacs is highly programmable, but I'm not sure I'd agree that API is well-designed; plus I'd prefer an AlgolFamily-style language, not Lisp, due to familiarity (at least). A well-designed API is the key. Maybe it's not possible and I'm dreaming. But I'm hopeful a clever API designer will come with something great.

If you're not happy with EmacsLisp, why not use it to create an Algol-like parser that works with the built-in EmacsLisp capability?


Easy theme creation

I want to right click on a comment, keyword or other language construct and be able to change color, font and other syntax highlighting settings. I should be able to save either universally or per-language/mode.


Search dialog and exceptions to the rule/norm

A reoccurring annoyance is the "Search" dialog box remembering my last scope setting. If I last did an "entire project" scope, it brings that up again, but that's often not what I want and I forget to set it back because usually I only search current file. I'd prefer if it forgets the prior scope and defaults back to "current file". At least make that an easily discoverable option. Or perhaps highlight with a yellow border those settings that deviate from the normal or user-defined standard, including the others like case sensitivity. That way I don't have to read every attribute to make sure it's not in a rare setting that trips me up or sends the machine on a wild goose chase.


CategoryIde


EditText of this page (last edited July 28, 2014) or FindPage with title or text search