I have to do assignments in python, and I'm looking for a good editor to code with. So far I've been using Kate, which is good enough -- but I'd like to know of alternatives.
I'm not to familier with the language, so it whould be nice if it whould show suggestions while I type (Like if I start typeing "stdin." it whould show a menu with "stdin.readline()" among other things.)
It whould also be nice if it had some documentation included, so I don't have to google when I stumble on functions that are unknown to me.
Thanks.
PS: I prefer vim over emacs ;)
Sounds like you want a Python IDE (integrated development environment). Sorry, I can't help you with that, but I'm sure you can find something if you google up IDEs for Python.
P.S. Good work, mate. Vim for the win.
Calling Stephen Thorne to the thread!
You people need to get out of the seventies with your vim and your emacs.
I use vim. I always have.
>>6 fails for opening new windows for each file. That's just not tenable when working on projects with five or ten or even more files. Which would be almost anything I personally work on.
>>4
Agreed, it's not fun, but what vim and emacs have going for them is a large usage base. I admit I don't know what a "better editor" would be. I'm not an interface professional, nor do I have any clue about what would work well/badly when you only have a command line available.
But at least I know that most systems will have vi/emacs/pico installed when I log on. That counts for a lot. I'm not saying it's good, I'm just saying that if I'm going to get proficient with an editor, it might as well be one that's available just about everywhere.
Well, a good editor would use keyboard combinations that have been standardized upon for something like a decade or two already: CTRL-X,C,V for cut, copy, paste, CTRL-S for saving, and so on. It's just that the Unix nerds are still stuck in the utterly retarded vi-vs-emacs thing, and nobody cares about making a sane editor.
TextWrangler is decent, but kind of clunky. It doesn't really live up to the OS X look, and the preferences is a joke. The text editing functionality itself isn't half bad, though. I just wish there was a way to turn of text antialiasing. Or rather, in a larger context, I wish Mac OS X had better text antialiasing. BeOS did both hinting and antialiasing at the same time, and it produced the most readable and beautiful text I've ever seen in a GUI. Nobody else does this. What gives?
Try messing with the global stuff in System Preferences>Appearance, or if you're really desperate you could try Silk. I don't know about this stuff since it looks good to me.
... oh, and try SuperCal. The default monitor profiles sometimes aren't very good.
That stuff doesn't really help with the basic problem, which is that the antialiasing code will make Courier look bold and fuzzy, and Courier New will just become invisible. I don't neither want to nor can I turn off antialiasing for all other fonts at big enough sizes for this to matter. I prefer coding in Courier New at 13-14 points.
Coding in Manoca at 10 pts makes my eyes explode.
I ended up with eric3. Not sure what I think of it yet, but at least it doesn't mess up tabs and whitespaces like Kate does.
Thanks Kate. I was getting insanly frustrated over trying to find coding errors that were not there; the useless messages that Python spit out did NOT help.
This instant review is very relevant http://4-ch.net/code/kareha.pl/1104802419/8
However, I've come to like Python abit for its simpleness. I'd have to write twice as much code in Java to do the same thing that I do in Python.
use eric3 for python and java 1.5 for real programs.
>>10
so lemme get this straight: you say that a good editor will use keyboard shortcuts like ctrl+x/c/v that have been standardised for a decade or two. then you use this exact argument to say that vi and emacs (two editors that have been, surprise, installed on just about every damn *n*x system out there for a decade or two, and whose default key bindings have remained mostly unchanged - standardised, as it were) are somehow lesser editors?
logic GET
If you think "every damn Unix system" constitutes some sort of majority, you're pretty deluded. Furthermore, even those two very programs you point out don't use the same keystrokes! Just where is this "standard" you speak of?
Here, let me draw you a diagram:
Keyboard shortcut standards:
Not to mention that emacs and vi are only used by the ubergeek crowd.
~0.1% of users set de facto standards now?
>>18
i've had two linux systems and one bsd system in the past five years, and none of them have had emacs installed because emacs sucks.
A good start! Now if they'd just leave out vi and vim too, it'd be near perfect!
>>19
vi is standardized in the IEEE standard 1003.2.
>>21
Emacs isn't installed by default for the simple reason that it's HUGE (and not because it sucks)
>>22
As for vi, it won't be removed (at least from BSD) because:
- It is small
- It is easy to use
- It's been there for 25 years.
- A lot of people still use it (even if not for everything).
Paper is subordinate to de facto, for better or worse.
The world has changed a fair bit since then too (and nobody uses a true posix vi either). I haven't seen a teletype for years.
> - It is small
On this Mac OS X box, the vim executable is approximately 9 times larger than the nano executable.
> - It is easy to use
Is this some sort of jest? It's pretty funny.
> - It's been there for 25 years.
As have I. Am I to believe that computing has not progressed at all during my lifetime?
More distros should use elvis instead of vim. I can't think of one thing I do that vim does and elvis doesn't, yet the elvis binary is 1/3 the size, and that's ignoring vim's support files.
1/3 of 6.2 that is. 6.3 had a large jump in size.
>>24
I've never actually seen a teletype :)
>>25
I was actually talking about nvi, which is what FreeBSD comes with. It is about 1/3 of the size of vim.
Also, vi IS easy to use, once you understand how it works, just not easy to learn (as opposed to emacs).
Computing hasn't evolved a lot: We still use (mostly) the same programming languages, algorithms, ideas and operating systems (if you exclude windows) as 25 years ago.
> operating systems
This is a problem. See my hate thread: http://4-ch.net/code/kareha.pl/1117884645/
> vi IS easy to use
Compared to what?
Nay, dear friend, I must disagree. vi makes some difficult things easier, but the general case simply doesn't cut it by today's standards. As long as that horrid dual-mode is around, it cannot be classified as "easy".
Even though I can mostly use vi without a second thought, I could go a whole lot faster if I didn't need to switch modes constantly. A few standard chords would also be a nice addition.
> vi IS easy to use
Mate, the only thing vi is easier to use than is ed, because vi lets you edit more than one goddamn line at a time. It's still a joke to use compared to say, nano which at least tells you the keyboard shortcuts do.
> I was actually talking about nvi, which is what FreeBSD comes with. It is about 1/3 of the size of vim.
So still three times bigger than nano, then.
> Also, vi IS easy to use, once you understand how it works, just not easy to learn (as opposed to emacs).
I am still convinced you're joking here. Claiming that Emacs is easy to learn is also hilarious.
> Computing hasn't evolved a lot: We still use (mostly) the same programming languages, algorithms, ideas and operating systems (if you exclude windows) as 25 years ago.
Leaving aside the fact that you just excluded something like 95% of the computing industry in a parenthetical remark there, I guess I should have made myself a little bit more clear: What I was getting at was that human-computer interaction has progressed just a little bit since the 1980s. For instance, these days you don't need to learn text editors. You just sit down in front of them and use them, even if you've never seen them before.
>>23
it wasn't installed by default because it's huge. i chose not to install it because it sucks. if it didn't suck, i would have installed it, so it wasn't installed because it sucks.
>>31
A beginner will be able to use Emacs with no problem: whatever you type appears on the screen. As you said, you just sit down in front of it and use it, even if you've never seen it before.
That makes emacs easy to learn, in my book.
Sure, until he wants to do something more complex, like, say, save. Or quit.
>>34
If he's using the GUI version, it has save and quit menus/buttons.
If, yes. Even if he does, those menus are quite horrible, and act like no editor anybody's used to. But mostly we were talking about text-mode editors here, it seemed to me. If we were using a GUI, there's a number of halfway decent editors on Unix, and there's no need to wrestle with the dinosaurs.
> A beginner will be able to use Emacs with no problem: whatever you type appears on the screen
Sup? I'm a beginner with Linux. Normally I just use Pico. So I tried Emacs. Hah, what a crock of crap. I couldn't figure it out. I tried to do the basic task of saving a file, err, just how in the fucking fuck do you even do that? I gave up after 15 minutes and killed the process from another Terminal.
>>37
Saving in Emacs is no harder than any other editor. You just need to do a tiny amount of homework. If you're not willing to even do that, then you shouldn't be using the terminal version in the first place.
"A tiny amount of homework" is not needed for any other editor. Well, except vi.
To expand on that:
People, nowadays, expect computers to work for them. We do not want to have to do homework to save a file. We expect the computer to tell us how to do this, and any other thing we might want to use it for. In this wonderful year of 2005, computers are capable of doing this, even in text mode! The fact that these editors choose to make this difficult is most mysterious.
I think you might be misinterpreting the target user base of emacs and vi, though. Maybe I'm off on this, but I never saw them as general-purpose text editors. Of course there should be text editors like that, but emacs and vi were for the power-users, the sort of people who don't mind tackling a giant learning curve if the result is that they can do really complicated things more quickly and precisely than a person using some normal editor can. Granted, that means that emacs and vi shouldn't be the default editors for any system, but you know... It's not that they suck, it's just that they're not FOR you.
Also, they're obviously perfect for the people -- and i do think there's a lot of these people -- who have been using them for so long that they predate the general standards by which text editors are defined these days, and that seems like a good enough reason to keep them around as any...
> predate the general standards by which text editors
We should all be using FORTRAN too.
no, cobol.
Then those people should be able to install them themselves, and they shouldn't be installed by default on every damn Unix system out there. They're relics, and should be thrown out.
Now, I'm pretty sure I'm a "power user", and I don't give a flying fuck if I can use a cleverly designed magic incantation in four key strokes to format a list or some shit that I do once a year. I want to edit my damn text, and I want to press CTRL-S to save it.
>>45
You could rebind C-s to save-buffer, in Emacs, if that's all you want :P
(global-set-key "\C-s" 'save-buffer) or something (of course, you'll have to bind isearch-forward to something else, if you still intend to use it).
Here, I think http://4-ch.net/net/kareha.pl/1127604261/15 applies.
Might try checking out these three:
Eric3: http://www.die-offenbachs.de/detlev/eric3.html
SciTE: http://www.scintilla.org/SciTE.html
TextMate (OSX): http://macromates.com/
I like SciTE. I just wish it was (a lot) faster.
Eclipse probably knows about Python. (If you want to go the overkill route.) 'course, I use vi, and have pretty much exclusively since I was 10, but that doesn't mean I'd wish it on someone who grew up with Word.
Komodo: http://www.activestate.com/Products/Komodo/
PyDev eclispe plugin: http://pydev.sourceforge.net/
After all, I reasoned, if my sole criteria were "easy to use" and "I already know it", then by the same logic I should be still in diapers and crawling on all fours and drinking out of bottles.
I use SPE. I've been using it for long time and from all the editors I have tried, SPE has been the best. The only downside in SPE is that it is rather prone to crashes, but worry not, it's still in development!
I suggest you give it a try; http://www.stani.be/python/spe/blog/
Just remember to save your work often enough ;-)
>>48
TextMate is awesome except for one thing..there is absolutely no support for alternative input methods. That's right, no Japanese, no Chinese, no Hebrew.
It's pretty much the only OS X app I've used that doesn't let me input Japanese text.
vi
Funny.
vim
I suggest writing Scheme programs that produce Python programs as output. That is how real men write Python code.
I like to use scite in windows, wingide in linux and xcode in OSX.
IDE may have conflict with some code/modules. When you aren't debugging the program, it is good to use a editor and run the program directly.
>>54
You should add your request here: http://macromates.com/blog/archives/2006/02/15/future-directions/
I don't work with CJK so I think it's a really great editor. I use it for Ruby but it looks like has some nice python features (and the editor is very easy to extend).
PSPad is pretty nice, free, fully scriptable, and doesn't suck greasy monkey balls like Unix editors do.