Quote:
Originally Posted by Yoda3114
Erv what languages do you use
|
Mostly C++. I'm expierenced with Pascal/Delphi, can do some basic ASM programming, but for me C++ is most useful. (I like it's flexibility...)
Quote:
Originally Posted by Yoda3114
and by MSVC do mean MS Visual C??
|
Microsoft Visual Studio/C++ 2005.
Quote:
Originally Posted by Yoda3114
If so then what features are other IDEs lacking?
|
I've created a separatethread (about this) before. (
http://www.linuxquestions.org/questi....php?p=2691435)
here is list of the most important features I need from IDE:
0) I must be able to do anything without using a mouse. (When I use only keyboard, I work much faster, using mouse slows me down a lot... Maybe good musical expierence with piano-like instruments have something to do with this
)
1) The ability to hide every window and remove all toolbars, leaving me just with fullscreen code window and nothing else. (of course menu must be visible)
2) The IDE must be able to summon any windows by pressing a key combination (If possible - only one key combination, not a sequence of tem). And it must be able to hide any such window automatically or when I press "escape" key.
3) The IDE must support non fixed-width/monospace fonts. (Like courer, arial, and so on). Good C++ program has a lot in common with a human language and has better "readability" when it is drawn with variable-width font (or is it called "proportional"?)
4) Some basic syntax highlighting is needed. I just need to highlight a built-in (and only built-in) types, test, directives and comments, maybe it will be good if IDe will render unused text between #ifdef #endif in different color. But I certainly don't need highlighting of all user-defined types, like VisualAssist does this.
5) Function auto-completion and auto=list members features. I.e. If I typed "pr" and press Ctrl+Space IDE must popup a listbox (or hint) with list of possible identitfiers. If I've started typing a function call and just entered first bracket It should popup a hint with parameter list).
7) Visual debugging - watchlist, "step into" and "step over" functions.
8) The ability to jump to errors/parse compiler messages.
The following features aren't really necessary but would be nice to have:
9) Ide must have some kind of project manager. This isn't very necessary I just need a way to switch between source files located in different directories) As for makefiles, I think, i can write them manually, without helpers. (So ide just have to parse them)
10) It's nice to have a class-manager or function list.
11) It would be good to have several color schemes and ability to modify them.
Of all known IDEs only Borland Delphi/MS Visual Studio 2005/Borland Turbo Pascal 7.0(
) meet those terms. (Borland C++ Builder doesn't
). Here is comparsion of IDEs regardless to platform. Sorry If I went offtopic...(This is only my personal opinion, nothing else):
Emacs and Vim are very good at working without mouse, but Vim isn't acceptible for managing multiplie files at once (it's basically created for working with a single file at once), and switching between editing modes is slow (although working in a certain mode can be sometimes faster).
Emacs, in other hand, although is an absolutely great editor, has some big troubles with non-monospace fonts(
http://www.linuxquestions.org/questi...d.php?t=544164) and customization. I'm also not sure if it will be that great when working with big projects since switching between buffers is relatively slow, and it is very slow when source files for buffers are located in different directories. And certainly it isn't well suited when working as function list (I can use ebrowse, but it is a bit cumbersome).
Eclipse in combination with CDT offers a relatively good environment (which eats RAM like MSVC
), but offers no way to auto-hide all windows it shows. And I can't (at least, couldn't) switch between some windows without mouse, can't close them without mouse, etc. Sometimes those windows just take most of my screen space thus leaving me with something like 256x256 (and thats on 1024x768 resolution) square for a code editor.
KDevelop meets most of terms (it is "almost" MSVC clone when working in IDEA mode), but it can't work without mouse. It can't autohide windows. To hide a window, I must press a button (or a "tab" for that window). And I must press it with mouse. There is no actions for showing various windows, I can't dismiss windows with "escape", and in certain modes even "Bring editor to the top" key-combo doesn't work. I've noticed, that KDevelop has some troubles when working in "many top-level windows" mode. To use shortcut/keycombo, I must have main window in focus. And because of that, all shortcuts are quite ueseless in that mode.
As for anjuta and codeblocks - I've got some troubles when installing them. They require wxWidgets and on my system they just weren't able to find wxWidgets (when it's already installed) or something like this. Besides, wxWidgets in turn must use GTK to work with those edtiors, and GTK is unfriendly to a current system locale. (it doesn't support it). So all GTK-based applications have troubles with filenames when writing files to disk or reading them. By the way, I've tried anjuta on windows (when I was looking for an open-source MSVC replacement) and I wasn't impressed.
As for MSVC 2005 it's probably the best IDE made by Microsoft, but, unfortunately, it eats much RAM, it's slow when indexing projects (to make them work with IntelliSense), It's _really_ slow when using MSDN help index. It has buggy help system that isn't really accessible from outside of MSVC, it requires .NET to work (as well as Documentation Explorer and many other packages). And, alas, they've made some changes to CRT/DLL loading system. Most of those "improvements" (like adding non-standart strcpy_s functions) can be interpreted only like an attempt to make programmers Microsoft-dependant. And I must note, new app deployment system is awful. Although IDE itself is relatively good (but resource-consuming!) and can be customized to meet requirements listed abouve (I could post a screenshot to make clear what I mean, but there are no attachments, and the site where screenshot is posted right now is inaccessible)
MSVC 6.5 - a relatively good environment with no variable-width font support. Hiding windows is tricky. No autohiding.
MSVC 7.. MSVC 2003. - Offers half of functionality that MSVC2005 provides, compiler is better (no *.manifest files, can be used with old deployment system). IDE is a bit buggy and have some ugly GUI bug that can drive me nuts
- in certain scenarios "compiler errors" window moves itself to a position where only 3 pixels of it's caption is visible, even if window isn't hidden. Window can't be moved from this position without using mouse.
As for Borland Delphi. The first thing - it isn't C++ environment. C++ builder is a bad joke (for example - can't switch between header/source without mouse, compiler/projects isn't flexible). So Delphi can be only used as an example of good environment, that provides most of facilities/features I need. I must note that I'm talking about relatively old versions - Delphi 6, for example. The newer version look like a failed attempt to clone MSVC.
I must say, Delphi 6 has some troubles with non-monospace fonts....
I certainly can program without all this (just using emacs/gdb) but, when working this way, I'm often less productive and still have to learn much before I can actually program. (The feeling that you are starting everything from beginning again can be disappointing sometimes
). I can operate emacs now (it's good for reading man/info pages
), but there are still some troubles with gdb - I think I just didn't work enough with it...
Quote:
Originally Posted by Yoda3114
Oh and BTW I think I have some ebooks on OpenGL if you're interested
|
Well, thanks for the offer, but maybe later
(I have already downloaded "Red Book", GLSL/ARB/OpenGL 1.3/OpenGL 1.4/OpenGL 2.0 specifications as well as NVSDK. With Direct3D C++ programming expierence this should be enough for now...)
Quote:
Originally Posted by Yoda3114
and keep us posted if you find some cool hax for KDE. I wanted to do the same but no spare time :-(
|
Ok.