Asking as a Python beginner, what IDEs ("GUIs/editors") do others use for Python coding?
If you can just give the name (for example, Textpad, Eclipse ..) that will be enough. If it is already mentioned, you can just vote for it.
But if you can also give some more comparative information, that will be much appreciated.
I don't mention basics like syntax highlighting as I expect these by default.
This is a just dry list reflecting your feedback and comments, I am not advocating any of these tools. I will keep updating this list as you keep posting your answers.
PS. Can you help me to add features of the above editors to the list (like auto-complete, debugging, etc.)?
Vim - For me it's the best choice, regardless of technology I'm using at the moment. It's not so hard to learn as it looks and during the work you are becoming more and more productive.
I mean 100+ MB big; such text files can push the envelope of editors.
I need to look through a large XML file, but cannot if the editor is buggy.
I'm assuming that you're on Windows, so I'll recommend gVim. Where Notepad++ will choke on very large files, VIM has chowed through those puppies with little problem.
010Editor on Windows will open GIANT (think 5GB) files in binary mode and allow you to edit and search the text.
There is a plethora of questions where people talk about common tricks, notably "Vim+ctags tips and tricks".
However, I don't refer to commonly used shortcuts that someone new to Vim would find cool. I am talking about a seasoned Unix user (be she/he a developer, administrator, both, etc.), who thinks (s)he knows something 99% of us never heard or dreamed about. Something that not only makes his/her work easier, but also is COOL and hackish. After all, Vim resides in the most dark-corner-rich OS in the world, thus it should have intricacies that only a few privileged know about and want to share with us.
Might not be one that 99% of Vim users don't know about, but it's something I use daily and that any Linux+Vim poweruser must know.
Basic command, yet extremely useful.
:w !sudo tee %
I often forget to sudo before editing a file I don't have write permissions on. When I come to save that file and get a permission error, I just issue that vim command in order to save the file without the need to save it to a temp file and then copy it back again.
You obviously have to be on a system with sudo installed and have sudo rights.
I got addicted to Notepad++ on Windows and I've recently moved to Ubuntu. I'm missing a tool as such. What is a good alternative?
Doesn't the bundled editor GEdit offer much the same functionality? If you need a richer functionality, use a “true” Linux editor such as GVim or Emacs.
To harness the full power of GEdit, have a look at this blog posting entitled Pimp my Gedit. Notepad++ is no match to this.
I was amazed to find out that apparently Eclipse doesn't come with a decent HTML editor by default (it opened my .html file in some kind of browser view and apparently tried to render it). And the basic text editor is not good enough (I need at least some syntax highlighting and automatic indenting).
If you installed the basic Eclipse package you might not have HTML editors installed. If you installed Eclipse IDE for Java EE Developers it comes with the Web Tools Platform preinstalled. It has relatively good HTML editor (tag and attribute autocompletion with ctrl+space etc.) and even a "Web Page Editor" which lets you see the elements you are editing in a preview window. I guess you could try installing the Web Tools Platform (plugin) to your existing install.
I'm trying out Git on Windows. I got to the point of trying "git commit" and I got this error:
Terminal is dumb but no VISUAL nor EDITOR defined. Please supply the message using either -m or -F option.
So I figured out I need to have an environment variable called EDITOR. No problem. I set it to point to Notepad. That worked, almost. The default commit message opens in Notepad. But Notepad doesn't support bare line feeds. I went out and got Notepad++, but I can't figure out how to get Notepad++ set up as the
%EDITOR% in such a way that it works with Git as expected.
I'm not married to Notepad++. At this point I don't mind what editor I use. I just want to be able to type commit messages in an editor rather than the command line (with
Those of you using Git on Windows: What tool do you use to edit your commit messages, and what did you have to do to make it work?
I just tested it with git version 1.6.2.msysgit.0.186.gf7512 and Notepad++5.3.1
I prefer to not have to set an EDITOR variable, so I tried:
git config --global core.editor "\"c:\Program Files\Notepad++\notepad++.exe\"" or git config --global core.editor "\"c:\Program Files\Notepad++\notepad++.exe\" %*"
That always give:
C:\prog\git>git config --global --edit "c:\Program Files\Notepad++\notepad++.exe" %*: c:\Program Files\Notepad++\notepad++.exe: command not found error: There was a problem with the editor '"c:\Program Files\Notepad++\notepad++.exe" %*'.
If I define a npp.bat including:
"c:\Program Files\Notepad++\notepad++.exe" %*
and I type:
C:\prog\git>git config --global core.editor C:\prog\git\npp.bat
It just works from the DOS session, but not from the git shell.
(not that with the core.editor configuration mechanism, a script with "
start /WAIT..." in it would not work, but only open a new DOS window)
Bennett's answer mentions the possibility to avoid adding a script, but to reference directly the program itself between simple quotes:
git config --global core.editor "'C:/Program Files/Notepad++/notepad++.exe' -multiInst -notabbar -nosession -noPlugin"
But I prefer using a script (see below): that way I can play with different paths or different options without having to register again a
The actual solution (with a script) was to realize that:
what you refer to in the config file is actually a shell (
/bin/sh) script, not a DOS script.
So what does work is:
C:\prog\git>git config --global core.editor C:/prog/git/npp.bat
#!/bin/sh "c:/Program Files/Notepad++/notepad++.exe" -multiInst "$*"
#!/bin/sh "c:/Program Files/Notepad++/notepad++.exe" -multiInst -notabbar -nosession -noPlugin "$*"
With that setting, I can do '
git config --global --edit' from DOS or Git Shell, or I can do '
git rebase -i ...' from DOS or Git Shell.
Bot commands will trigger a new instance of notepad++ (hence the
-multiInst' option), and wait for that instance to be closed before going on.
Note that I use only '/', not
\'. And I installed msysgit using option 2. (Add the
git\bin directory to the
PATH environment variable, but without overriding some built-in windows tools)
The fact that the notepad++ wrapper is called .bat is not important.
It would be better to name it 'npp.sh' and to put it in the
[git]\cmd directory though (or in any directory referenced by your PATH environment variable).
As a programmer I spend a lot of hours at the keyboard and I've been doing it for the last 12 years more or less. If there's something I've never gotten used to during all this time is these annoying and almost unconscious constant micro-interruptions I experience while coding, due to some of the most common code editing tasks. Things like a simple copy & paste from a different line (or even the same line), or moving 1 or 2 lines up or down from the current position requires too much typing or involves the use of the arrow keys, and it gets worse when I want to move further, I end up using the mouse. Now imagine this same scenario but on a laptop.
I've always considered to learn VIM but the amount of time needed to master it has always made me to step back.
I'd like to hear from people who has learned it and if it ends up being one of those things you cannot live without.
At work I use VS2008, C# and R#, which together make editing code a lot faster and easier than ever, but even so I think I could enjoy not having to use the mouse at all.
And not even the arrow keys.
I've been using vi and vim also for some 20 years, and I'm still learning new things.
David Rayner's Best of Vim Tips site is an excellent list, though it's probably more useful once you have some familiarity with vim.
I've been using Eclipse with RDT (not RadRails) a lot lately, and I'm quite happy with it, but I'm wondering if you guys know any decent alternatives. I know NetBeans also supports Ruby these days, but I'm not sure what it has to offer over Eclipse.
Please, list any features you think are brilliant or useful when suggesting an IDE, makes it easier to compare.
Also, I said Ruby, not Rails. While Rails support is a plus, I prefer things to be none Rails-centric. It should also be available on Linux and optionally Solaris.
How do I remove the ability to move the cursor after then end of line in IntelliJ?
File menu -> Settings -> Editor -> Virtual Space and uncheck 'Allow placement of caret after end of line' . You may also uncheck the other options in the Virtual Space panel.
For example, I would prefer to write my commit messages in
vim, but it is opening
How do I configure git to always use
vim instead? Note that I want to do this globally, not just for a single project.
ENVIRONMENT AND CONFIGURATION VARIABLES
The editor used to edit the commit log message will be chosen from the
GIT_EDITORenvironment variable, the
core.editorconfiguration variable, the
VISUALenvironment variable, or the
EDITORenvironment variable (in that order).