Ask Slashdot: Correlation Between Text Editor and Programming Language?
tyggna writes: "The flame wars of different shells and text editors have long been established, but my question is this: are text editors and various languages linked? Do the majority of Ruby programmers use Emacs? Are most Perl programmers using vim?
Please post your editor and language of choice in the comments."
Please post your editor and language of choice in the comments."
Some editors are more useful or even custom tailored for specific languages or functional areas, and naturally people who use those languages or work in those areas tend to gravitate towards them.
Some languages (like java) are almost unusable without one of several popular editors, which deal with a lot of the boilerplate and let you navigate around the kind of "a million small pieces" type code you get with java. You can code java in vim if you want to, but working on a large java project with vim is probably not a common practice (I'm sure several counter-examples will be provided below).
Apple is probably the king of the designated editor group, with microsoft coming in at a close second. These are relatively closed stacks and have purpose built (and pretty decent) tools to work with them, so most people do.
And then some languages (scripting languages, c/c++) are edited commonly with just about everything.
Outside specific editor features designed with a specific language in mind, or tools which require a specific editor, I don't think anything drives someone to use one generic editor over another one of similar capability. People chose vim vs emacs for non-language specific reasons (for example: number of attached hands).
Also this is a really lame question. Does anyone really care about editor flame wars any more? People use what they like, what works, or what they are mandated to.
In that order.
Uh, Linux geek since 1999.
The reason I vim and Perl is that I run Perl on a unix system. When I run it on windows, I use Notepad++. So I think it might have more to do with the operating systems than with personal preferences.
excitingthingstodo.blogspot.com
VIM + Python
This sounds like a dumb question.
Anyway: UltraEdit, Notepad++, PhpStorm pretty much cover everything I need for my perl/PHP needs.
vim c
For any structured perl application (not the 30 minutes to automate something once) I generally get EPIC (An Eclipse add-on) going. Othewise Notepad++ on Windows, or vi usually suffices on Linux or Solaris....
C99 in vim
for web development PHP, JS, LUA etc
Oops... I meant Visual Studio and C#
C, vi. My IDE is make. Now get off my lawn!
Editor: emacs
Languages of choice: C++, ocaml, latex, perl, python
vim - Python, Ruby
nvi - C, Makefiles
yes
Mostly vim, although I'll drop to Eclipse if I need a debugger for Java.
wait, what?
Yes, BBEdit and Emacs, side-to-side, one for its clean interface, multi-file search GUI, etc. and the other one for its macros and programmability.
Now if only Python had a good *native* GUI debugger on Mac OS X that'd be useful.
No love for nano?
Wow. Congrats on your double troll!
PS: Vim-ruby FTW!
PHP, HTML, Javascript = Eclipse
Simple edits = Scite
In that order.
FIFY.... (IMHO)
Everybody doing Linux work needs to know VI, at least well enough to get Emacs running. If you want to do an IDE, you are going to need X which used to require editing that huge config file where I used VI. Why bother with Emacs, unless you write LISP code anyway... Syntax highlighting? Does that even work in the terminal version?
"File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
gedit on gnome2 on Linux 2.6.32-62-generic #125-Ubuntu SMP Mon Jun 9 16:05:41 UTC 2014 i686 GNU/Linux
idle otherwise
Research shows most VB.NET and C# programmers use Visual Studio.
NEdit for VHDL / Verilog / SystemVerilog, an oldie but a goodie. Not a programming language mind you, but a hardware design language. And Linux due to offloading the legwork of simulations and chip builds from a local machine which is used for reading ... this.
I use vim for almost 100% of all editing. My main programming language is C++
Religion is poison to rationality, and we lose sight of that at our own peril. -- Lurker2288
"Please post your editor and language of choice in the comments."
O'Reilly and English
Coder's Stone: The programming language quick ref for iPad
I was an Emacs dude for a long time and still use it. Then I tried RubyMine, and eventually upgraded to IDEA. The IDE features are sometimes handy. I also use vi very regularly for quick edits of small scripts.
I would no more stick to one editor than I would stick to one programming language. Right tool for the job is the key.
"He who would learn astronomy, and other recondite arts, let him go elsewhere. " -- John Calvin, commenting on Genesis 1
But, the "reason" is:
Programming language of any sensibility (Bash is not) that is available on "every" unix system: Perl
Editor of any usefulness that is available on "every" unix system: vi
So through sysadmin experience, I "learned" to use the very basics.
vim and other vi's don't have a decent lisp mode, as far as I can tell.
emacs has the best lisp mode by far, but for everything else it just makes my wrists ache to have to type control-meta-alt-whatever
I love editing ordinary text in vile because it's got some features that I've written macros around
that just don't seem to be there in other editors. (of course they're there somewhere in vim and emacs,
but they don't fall to hand as easily.
There's always nano :)
Have gnu, will travel.
I don't use one language, I don't use one machine, I don't use one operating system, I don't use one editor and I don't program into any language with just one of those editors. So, to me, the entire topic reduces to "That doesn't even make sense."
If I have to write a tool, I create a new buffer in emacs and have at it. If I'm standing in front of a machine fixing it, I'll reach for vi, only because it's on every platform.
I work in almost a 100% UNIX environment and what I generally see on people's desktops are: emacs, Eclipse (some flavor) and IntelliJ.
Yes Francis, the world has gone crazy.
See title
VS also handles javascript pretty well these days, so I rarely have to leave the VS bubble - which is nice, as VS is actually a pretty darn good IDE.
Very recently I've been fooling about with learning Android development, for which I use IDEA. It's no VS (I miss VS), but it's also no (major ew) Eclipse.
On the rare occasion that I have to edit some other type of code file (or the slightly less rare occasion that I have to edit an xml file), I use notepad++. Unless it's a really simple edit, in which case I use regular notepad.
On the rare occasion that I'm in a linux environment and I have to edit a text-type file, I use pico/nano, because screw emacs *and* VI. :p
On *nix I most use Vim. If I'm not using Python, I'm using C.
"Here Lies Philip J. Fry, named for his uncle, to carry on his spirit"
Quill pen on papyrus. I have a dedicated typist to re-type all of it when I'm done into whatever editor it chooses. I also have a stenographer for when my hand gets tired. I never get compilation errors.
The G
It might be as simple as comparing plugins/scripts. Sublime Text seems to be the new hotness for web development, with lots of JavaScript, HTML and CSS project plugins (e.g. angular, node, emmet). VIM probably has more plugins for projects that use C++.
Personally I use nvi (not vim) and end up using the crappy busybox "vi" far too often, for, well, bourne shell+friends, C, C++, python, email, opinion pieces, and whatever else I end up writing. Including when I did a little ruby (and failing to like it). I'm not using any IDE, haven't since my DOS days (Q.EXE (qedit 3) worked much better than the borland turbo IDEs because it didn't hog all the memory!). Tried to use emacs once and immediately left it, retching. This was before picking up on vi, back when I used pico for a while in my early Unix days.
I really don't mind what others are using so long as they don't bother me with it, so keep your explicit or implicit assumptions of superiority (emacs AND vim folks) to yourself please. Where you don't it can easily have negative effects. Like how any book on lisp more or less tells you to pick up emacs. I'm reading the book for the supposed superior programming language, not for the bundled IDE/OS/crappy editor/keyboard combo cult, thank you. And for what? nvi implements % to find the other side of the brace/paren/bracket, and that ought to be enough. Even so, I'm exhorted to pick their fave editor. So I skip lisps and pick something else. So sorry.
I will just leave this here.
Troll is not a replacement for I disagree.
As a real programmer, I just echo punchcards into a file.
Linux "experts" love to hate on nano because you don't need a cheat sheet to just start using it
"When life gives you lemons, don't make lemonade. Make life take the lemons back!" -- Cave Johnson
I think it has to do with the target... For PHP and C; I use SemWare TSE aka Q.EXE from the old DOS days. It's a Win32 console mode editor that performs very well. However, anything that needs a "resource editor" aka "RAD Design"; I *have* to use an IDE, just to deal with the visual components of the program.
I made this: http://www.bpftpserver.com
There's always nano :)
Text editor of the gods.
Emacs is my editor of choice. As for language, I use whatever best suits the task at hand, most frequently: Perl, Ruby, Java, C, and JavaScript. And if I'm customizing emacs, I use lisp.
If I can be modded down for being a troll, can I be modded up for being an orc, or a balrog?
Vim, Python
Nano! How dare you mention nano. pico is WAY better.
Sublime has a pretty extensive plugin set for JavaScript, CSS and HTML, which includes support for various projects in those languages (e.g. angular, node, LESS, emmet, etc.). The multi-cursor stuff is a nice gimmick.
I use both Emacs with CPerl-mode and Eclipse with EPIC. I prefer Emacs if I'm writing a non-trivial shell script (a trivial shell script I will use vi/vim).
I use Eclipse on Windows with ActiveState Perl. I try not to edit anything serious directly on my Linux webhost.
I use VI and VIM as my editor because as a system administrator, VI was one of 2 editors that were guaranteed to be in Solaris should the system be in a real bad state and in recovery modes. I use perl because it is installed on everything out of the box (Solaris, Red Hat, SUSE, and IRIX all of which I deal with). Python isn't on all those OS's by default (Solaris in particular), which means it might not be on all the systems I deal with. I'm not about to go and write code that I can't run universally on the systems I deal with.
We were all warned a long time ago that MS products sucked, remember the Magic 8 Ball said, "Outlook not so good"
I use Linux not some retarded attenion whoring called "GNU/Linux".
I use a modern fashion editors for most of my scripting (python/js ) / programming activities, which is Sublime editor these days, and Aptana sometimes for more heavy tasks. Old style editors just slows me down....I'm weird i know...:)
Perl: joe
Not in the default minimum install of Red Hat 6... (or is it?)
"File to fit, pound to insert, paint to match" - Aircraft Maintenance 101
Clojure = LightTable
Java = Eclipse
Emacs = good O/S, lousy editor. I use it for magit, XML and scratch pad. I keep a cheat sheet on my desktop.
Vim = I use it automatically from the command-line to edit files. Also use it as part of a "find" to edit files down in the bowels of file system.
Honorable mentions:
Cursive - Remote debugging with NREPL is to menu intensive.
IntelliJ with Cursive might become my choice for Clojure.
is decent. .Net as it is.
Eclipse is not bad. Java as it is.
I have not tried the new android studio. Java as it is.
I long for the day of native code apps (vc6 days). Managed apps are such pigs, and as with all pigs, lipstick only matters if you are yourself a pig.
Is not. But there's only a neutered version of vim too, so either way you're installing something.
What is this 2002?
The very last program I wrote was in Inform 6, and I used Kate. Honest to God!
Where does that fit in your Analyze! spreadsheet?
Anything else would be....
.... uncivilized.
Vim for just about everything I code: C, C++, Python, shell scripts. Here's my story:
As a kid I learned enough vim to not be stymied when needing to edit a file on a remote machine. hjkl, :wq, i, a, dd, yy, 0, $, etc. you know, the basics.
Latest job we are using Qt and C++, everyone on Qt Creator. Qt Creator has a passable Vim mode, so I turned it on and made an effort to learn more Vim so I could be more productive while editing. Kind of hard to describe, but every so often I'd google search "vim ___" when I found myself doing something particularly repetitive and then add my knew knowledge to my toolbox.
All together, Qt Creator is a decent IDE, it's simple enough that you can just start using it without being completely lost, it's cross platform, open, etc. Recently it's gotten a lot more buggy, but I digress...
Ended up on a Python project, but Qt Creator's autocomplete for C++ plus Vim keybindings had spoiled me. Couldn't find an editor that would do python autocompletion with vim keybindings. Ended up configuring Vim with a bunch of packages to get it to do what I want. Took some effort but it was worth it.
Now I use Vim for everything, it is missing some of the shortcuts that I used in Qt Creator (getting these to work or finding alternatives is just a matter of me spending the time to tell Vim what I want it to do, then assign a key). Vim has a bunch of peculiarities probably due to its heritage, such as not being able to map Control-/ to toggle comments or looking weird inside of tmux vs a regular terminal.
But the precision I get in Vim is worth it.. it's not necessarily faster for me, but editing is a lot more precise and deliberate.
Vim would probably be useless for programming (but great for editing conf files) without its diverse plugin system. I use one called Vundle.
I'd like to expand my Vim/C++ skills, for stuff like:
- rename a class member variable everywhere in header and implementation .cpp file, you want the corresponding line in the .h file to be modified to match, and vice versa, etc.) .h file to .cpp (I have something that does this, but my gripe with it is that if I put copy constructor and assignment operator under private in the .h with the intention of not implementing them, it will add them to .cpp file anyway) ... that kind of stuff. Any good suggestions?
- sync up modifications between method signature in header and implementation (say you add an argument in the
- add unimplemented methods in
- rename a method everywhere in project
In my experience, the majority of Ruby "programmers" use a crayon and construction paper. If construction paper is not handy, then a nearby wall is usually substituted.
Because, back in the day on unix and xenix systems vi was often the only option other than ed and you got used to it...
nm
Joe -is a great editor (he/it) all the features I typically need for small and medium sized software projects.
Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
Notepad... "Like a sailor"
Every Smalltalk programmer programs in the class browser, and its good friend, the live debugger. So there's a definite link there. Except for the GNU Smalltalk people who are weird and program in Vim or Emacs.
Ezekiel 23:20
Just a question. Is there anyone out there younger than around 40 who uses VIM because of their own choice? By that I mean, they at first turned on a Unix/Linux box, investigated some editors and chose VIM. Nearly everyone I know who uses VIM uses it because someone else originally made them use it and they stuck with it. I know this sounds like flamebait, but seriously, its an honest question.
It just seems like Emacs is a lot easier to learn because it one keystroke to get to a menu, and just another to get to a help system.
Oracle DBA/developer. Love vi for whipping up huge scripts in a heartbeat. vi on my AIX, HP-UX, and Linux servers, gVim on my Windows PCs. SQL*Plus when I'm stuck with it, and Oracle SQL Developer or TOAD when I get any say in the matter, which seems to happen less and less frequently with each passing year.
Really? You're using some kind of BSD userland then I guess.
These days it's mostly vim, Python, shell, Perl.
When I really have to do something ''serious'' in Python, I use the free version of PyCharm, with the vim plugin, of course.
Otherwise, it's nothing but straight vim all day, every day. If not vim, thel elvis. if not elvis, then straight vi or nvi.
The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
Visual Studio when doing C# stuff. Eclipse when doing Java stuff. On Linux, vim or notepad++ when doing C stuff or any other random shell junk. On Windows, notepad++ (okay, let's be honest, it's usually just noteBut I always wind up missing Visual Studio. It seems to fit my workflows best, and if it worked well with Java I'd replace Eclipse with it in an instant.
I know I'm seriously alone on this one, but on occasion I do vb.net in vi (slickedit)
1: C++, C, Objective-C
2: LaTeX
3: Python
4: Bash
5: Text files
I used to use (also in Emacs):
1: Java
2: C#
3: Fortran
Emacs works for just about any language out there, I use variety of languages and a variety of different platforms, Emacs is the same on all of them and just works. 2:
Joe. For Python, C++, bash, and in days of wretched drudgery for which Larry Wall will surely answer for one day, Perl.
Ever since the days of Slackware CDs and the Linux 0.98 kernel, I have happily used joe, a Wordstar-like editor with features and size comparable to vim. It's carried me through maintaining 80,000 line C++ codebases and I do my Python work in it quite happily. There are plenty of macro and regex capabilities, block text marking, everything I need without the weight of an IDE.
There hasn't been a single vi or emacs proponent that could do anything in their editor of choice that I couldn't do, and probably quicker. It goes like this: "But it's installed by default on Solaris!" I get my editor with a quick compile, and I know enough vi and nano to get there. It's super fast to install it on any modern Linux distro. "But it'll work when the terminal settings break!" Not a reason to select an editor for heavy coding. "But you have to make sure you have got properly formatted EOL characters and manage your spaces!" I do it just as well as they do; we're not talking about Windows Notepad here. "But more people use it!" Pike off, imaginary objectors.
If it works and meets spec, you use the tools you get the best results in.
I've been coding perl for 14 years, and I usually use joe or kate as my editor of choice.
joe has wordstar type key-stroke commands.
Nicely cross platform, and works the same everywhere.
I use VIM for bits and pieces but anything involved becomes SublimeText on Linux/Windows/OSX.
Yes, it works on the terminal. Autocompletion, and real time compiling also do.
Rethinking email
Emacs does so much more than vi, and so much more than syntax highlighting. Though vim has been catching up (I think some people think vi and vim are the same thing) it still isn't quite up to what emacs does and I found it more difficult to customize (I turn off it's default syntax hilighting for creating an unreadable mess). Real vi doesn't support multiple view windows (though vim does), and definitely not multiple frames (separately placeable windows). Emacs has support for a huge number of languages, it had "plugins" before that concept was popularized, you can check code in and out, edit files on ftp servers, use it as a web browser, read man pages and info docs within the editor (vastly more convenient than using the command line), search and replace using regular expressions, easy to customize your own language style, integrates with compiler and debugger, has a class browser, you can play Zork on it, and the same basic keystrokes work for editing your comments in slashdot.
Yes, it seems like it does a lot, but it's a platform and not an editor. So why do people complain that emacs is big while not complaining that web browsers are getting too large and bulky for the display of static documents? Emacs really is not big anymore, maybe it was back when we had 2MB workstations, but compare it to the bulky modern apps that do far less like Word (seriously, some people use word as a program editor!). The memory hogs and performance killers I see today on my work computer are Outlook and Firefox.
But even if Emacs were reduced to being just an editor and doing only editing and related operations, I'd prefer it over other choices. I do use vi, but as the quick-and-dirty editor or when I'm on someone else's computer. Yes there are some things I wish Emacs did (or at least did without my writing a package for it) but there is so much muscle memory and experience with it that everything else is incredibly slow and clumsy in comparison.
When I was doing BASH/C/C++/small-time x86 Assembly (high school/college), it was usually in VIM (for the *nix platform). Nowadays I'm a Windows user (just because software I need runs so much better on it), and utilize a combination of Notepad and Geany (nice little multiplatform editor), doing HTML/CSS/PHP. At the office I use Dreamweaver because, well.. the company paid for it, and it does the job :)
"Better to be vulgar than non-existent" -Bev Henson
Why would you run any editor but GNU Emacs on a GNU/Linux system? Vi is not GNU.
Have you tried gvim?
(ducks before he gets yelled at for making people launch that abomination in X)
I discovered Scite and I'm impressed with what it does. It is open source and you can write C/C++
I'm sure IDE/Debugger combos can be superior, but not always.
God spoke to me
If the editor really matters, you're not much of a programmer. Text is text -- any editor should do.
Don't confuse relying on IDE crutches with being an editor.
I do not fail; I succeed at finding out what does not work.
I use Kedit www.kedit.com for everything text based. In my hands, it is the best... a veritable Swiss Army knife. I mostly code in text based languages ABAP, C, C#, Python, Javascript, Java, Natural, and COBOL. My favorite all-time language is Rexx which it's varient Kexx is the macro language for Kedit.
-- Each tock of the Planck clock is a new world and here we are still life. --
I'm using Sublime text for my Ruby (on Rails) work. And also some mainly Javascript / Coffeescript work, and a tiny bit of Python. I'd use Sublime on pretty much everything if I could.
Randal L. Schwartz (Floss Weekly, Schwarzian transform) would be proud of me.
I am a PHP/jquery/CSS programmer. I use gedit. I used to be a Systems Administrator, during those days I used vi.
I use Ada with GPS but in a pinch or when I want to poke around quickly, vi.
Actually, it's everything and vim, but I usually code in Fortran. After that, bash, Python, a bit of Perl and C.
Fortran programmer...oh yeah. Array math for life!
I try my best to try out other editors and IDE's but I tend to be de-facto vim - no matter what language: C, C++, Obj-C, Perl, Bash, Python, Ruby, PHP, Lisps, Javascript, Java, .. It's just the most no-nonsense way of looking at code.
copy con
Some mornings it's hardly worth chewing through the restraints to get out of bed.
I use programmers notepad on windows for most of my work. Mostly php with a bit of js, html and css. I like it because its basic and doesnt get in my way. If I have to do some quick live editing on our linux servers, I use vim.
Like some others who have posted here, my choice of editor and language have varied with time.
Today I use Python and EMACS.
What percentage of people start out using Emacs and move to vim, or vice versa?
Eclipse :
* Java
* XSLT
* XML (mostly Maven POM files)
I use the Vrapper plugin for Vim key binding. It's not perfect, alas.
Komodo Edit:
* Python
* Ruby
* HTML
* Text
* XML
In particular, it's "Fast Open" option is really useful for large folder trees full of many files that you know the names of.
And it has a Vim keybinding, which isn't perfect, alas.
Notepad2 :
For a general fast-open general Notepad replacement on Windows.
Vim :
Vim is of course, awesome. I'll be quite pleased if the Neovim project actually succeeds and makes it into a library, and other editors can integrate it properly.
Vim gets used for most of the text files I edit at one time or another, particularly in concert with shell operations like find and grep.
I don't usually code except on bash (and possibly my ever increasing proxy auto config), and I prefer nano (I got used to dos before switching to linux) over most editors that needs xorg for easier sudo when needed.
vim; ruby
Everything else is for noobs or people who program with training wheels.
Netbeans for C++ or Java.
Eclipse for Android (just because the tool support is better, I still hate the editor itself)
Scitool's Understand for Ada (but only because the Ada project I inherited is a horrible mess that is impossible to untangle without tools to help).
I would say that the use of Emacs/Vim increases with the number of programming language used. IMHO, after some with time, programmers use often 9 or 10 languages at least: :-), basic ) ...)
1. a shell (bash et al, Powershell)
2. a scripting language (perl, python, ruby in alphabetical order
3. a compiling language (Makefile, Autoconf, Cmake)
4. a no-oo programming language (C, Assembly, Pascal, Ada )
5. an oo programming language (C++, java, Objective-C, D, Go, Scala, C#)
6. a report language (latex, docbook)
7. a web language (html, svg)
8. a dynamic web language (javascript)
9. data analysis language (R, gnuplot)
10. Misc (sed, org-mode, vim scripting, elisp,
One language dominate: use the "right" editor for it, then use emacs/vim for the others.
I learned to use vi on SCO Unix / Xenix and I still use it every day even now !
I never touched ed.
I use Emacs, mostly. For editing files as root or over SSH I often use vi(m). I still want to switch to vim for all my editing for a few months, just to see if I can get used to it. Don't think I will convert to vim, but I think the only way to get used to an editor (and have non-biased opinion about it) is to use it for a few months (and RTFM, of course). On Windows, several years back, I used TextPad mostly.
Perl Programmer for hire
Brainfuck and ED because I am a masochist.
Slow Down Cowboy! It's been 1 hour, 47 minutes since you last successfully posted a comment
Nothing else.
no, I don't have a sig
Editor: EDLIN
Language: LOGO
Visit the Arcade Restoration Workshop @ http://www.arcaderestoration.com
Copy Con > myjob.bat. Editing is for wimps.
Boobies never hurt anyone. - Sherry Glaser.
And ViM (with my 20+ plugins - thank you vundle) when I'm using a terminal
C and ARM assembly. Same .el files from circa 1985 or so still work (with (dot) replaced by (point))
Started with Emacs on the Decsystem-20 in 1980.
C, C++, Perl, Bash, HTML, basic text files, whatever...
NO vi!
Flame me if you wll! ;^)
I use vi for everything, currently c#, shader code, and my work log. If this fucking Internet thing weren't all about these God damned pictures and videos and programs it wants me download to my stupid fucking bloated browser, and I could instead glean the knowledge of the internet in nicely formatted text and download and view all the rest of that bloat at my leisure, I'd be a lot happier with that. I'd like vi to be my input window for this post. I find this whole affair uncomfortably removed from the command line.
I use vim in a console window for everything: these days mainly scripts, Java, Python, C
The one exception recently is Android. But I'm working out a command-line based dev environment for android that lets me use Vim too.
On projects that aren't meant to be distributed (as code or otherwise) I can concentrate on coding, not having to maintain builds on the side. Also Eclipse makes refactoring, finding uses/declarations etc. a breeze so I do it a lot more; don't like the name of any variable/function? Alt+Shift+R and change it, takes 2 seconds and you didn't have to stop to think about anything else.
Those are the main reasons why I don't understand people who don't use an IDE; to find out what a function does I could waste time flipping through tabs of open files and finding actual include-files from the system, or I can just hover the mouse cursor over a function-call and see either a commented declaration or better yet the actual implementation.
I mostly do Python, and for that I've moved almost exclusively to JetBrains' PyCharm IDE.
Guns don't kill people -- people kill people.
But the guns seem to help a bit. (apologies to Eddie Izzard)
You're all wrong. You should use ed. Ed is the standard text editor.
I use vim for virtually everything text-editing related, and that just happens to include programming. I use to write software in PHP, Perl, HTML, Javascript, C/C++, Rust, Ruby... whichever language I have to do my work in at the time.
I don't think this is something specific to languages. It's down to what editor is a better fit for your mental approaches. Some people just get stuck in one editor without ever seeing if there's a bit fit out there, but usually do so once they've found one that's flexible enough to get the job done even if there's something slightly better for one of the many tasks their choice can handle - like vim/emacs.
Vim and ctags make the perfect IDE for me. I mostly do C++, Java and various shell languages.
with a lot of custom macros.
Text editor of choice: Horses
Programming language: Courses
On NetBSD, the base install includes vi (the real thing, not some workalike) and it's refreshing and clean to roll out the base install and then go in and touch up /etc/rc.d with vi. And have a fully working system when you're done, with X11, the Tab Window Manager, all the goodies you need.
Perl/PHP. MCEDIT,NANO depending which is available on the Linux/BSD system
For JavaScript and html on windows I use notepad++,no perl/php devel windows.
Generally, I use eclipse/xcode/visual studio for c++
i do all my coding in notepad.exe. not because of features, but to celebrate _my_ memory, and to let my logic flow unhindered by the bj-iness of emacs or eclipse, mye idea is that ideally the editor is just an interface to the cpu, an one that i ideally can be without
This could be the start of a whole new type of /. poll - 3D. Language in x axis, editor in y, number of people choosing particular xy combinations as z axis.
"I'm so moist I'm sticking to the leather." -Kermit the Frog on The Late Late Show
Clearly, soulskill uses AOL.
C and vi, what else?
And by vi, I mean nvi, not vim
Some languages Make, Python make whitespace differences part of the program text. Those are programs from hell, without a language aware editor you really are SOL.
And another vote for ED :)
C, vi
eclipse for cfml, js, html, css, sql
Mostly vim, and I have to write C, perl, shell scripts and VHDL. Sometimes use Eclipse while working on projects with ARM7 embedded CPUs, but I find myself missing vim.
I never understood why a couple of GNU command line tools made it worth calling the OS GNU/Linux.
If anything it's the Desktop Environment that should matter.
...I use punched cards and COBOL.
Python/C++ and Sublime Text
So why do people complain that emacs is big while not complaining that web browsers are getting too large and bulky for the display of static documents?
People do complain about web browsers getting too big, and about them being used for dynamic content, too. Nobody listens. People complain about EMACS giving them carpal. People listen to that. (No really, one of my old bosses had one of those expensive Kinesis keyboards way back in the day, before carpal was fashionable, and blamed it on EMACS.)
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
You're FIRED
Emacs has some nice features for Lisps and strongly-typed functional languages. SLIME for Lisps, and Proof General for strongly-typed languages.
Vim is used a lot for bash scripting, as well as Ruby/Python. There are a few plugins floating around to get IDE-like functionality (jump to declaration, autocomplete, etc) in Vim for those languages. But for Ruby/Python, you might as well get IntelliJ if you are serious about using them.
That's how I roll.
For C/C++: Visual Studio on Windows, Emacs on Linux. ...).
When I start implement things I prefer Visual Studio mainly because of native auto-complete support and navigation tools (go to declaration,
When I debug things I prefer Emacs. The interface is less practical than Visual Studio Debugger but the default GDB integration offers similar features and you can find custom Valgrind integration. And there are the psychanalyst and the ASCII-art drawing modes to keep yourself busy when the code is compiling.
For Java: Eclipse but I do not have much of a choice here since I mainly develop RCP applications. I use it for android apps too though.
I work for a small-to-medium-sized Rails shop (~12 developers capable in Rails, although many are full-stack, including myself) and many/most of us use Vim on a daily basis (should be noted, with heavy extension use). Those that don't mostly use Sublime Text, and our single emacs user is in the process of transitioning to Vim. Even one of our Objective-C colleagues managed to get Vim running hosted in Xcode somehow as an experiment. The support in the Vim community for Ruby and Rails-ecosystem languages and patterns (Coffeescript, Sass, Slim, Haml, and the like) is fairly good, and there's a number of IDE-ish features available as extensions. I've been pretty satisfied with it since moving to the Rails community, although I'll admit my background wasn't heavily into IDEs at all, and the only full Ruby-focused IDE I've seen, Rubymine, seemed intolerably slow and unusable.
see above...
For MUF (an online-game variant of forth) I use notepad++ because there is no IDE that supports it and frequently, while working within this language I am also supporting JS, SQL, HTML and needing something to parse JSON.
As for LUA, again, notepad++ because it is there and just works.
...
I picked up Vim on my own while in my early 30s, because I was curious. I had already used Emacs for months, and have tried many other editors for months or years at a time. Vim has a steep learning curve, but it ended up being mind-blowing. It's like connecting your brain directly to the computer. Once you have the muscle memory, you just think something and it happens with a few keystrokes. An experienced Vim user who is serious about learning the editor is probably faster than an experienced Emacs user. I'm not putting down Emacs, since I'm experimenting with a switch to Emacs/Evil, but modal editing is faster from what I've seen. For help in Vim while in the terminal, just type: ESC :h
Or just press F1 in Gvim. You can get to Gvim from Vim by typing: :gui
Well, the G in GNOME stands for GNU and it is part of the GNU Projects.
And GNOME isn't the only DE on what people call GNU/Linux.
Has anybody noticed the fact that, despite being the rule on /. years ago, VS is now an accepted solution?
GNU Emacs for every programming language but Java (C, C++, SQL, Tcl, Python, Perl, Javascript, shell scripting), XML, HTML and CSS. Because it's the same on all platforms and ELisp comes to the rescue when I need it. Vim for configuration files (because vi is everywhere and it's the same on all platforms). Eclipse for Java code, because it does the job and because of the plugins that sometimes are required (but for large edits, I use GNU Emacs as an external editor - because it's faster). After 20+ years in the field, I have to have a really good reason to try other editors. These fill all my needs.
'Normal' IDEs feel completely unusable now. Like typing through molasses.
I wonder when the GNU folks will make their own version of X, maybe GNU/Y.
Probably sometime after the standalone HURD release.
Vim is OTT. gotta love white text on a black screen.
GNU's contributions to Linux are a couple of command-line tools? Okay.
23 years old and using vim/nvi, because it is awesomely efficient for code editing.
I use:
* atom (https://atom.io/) for Ruby and AngularJS
* STS (or just standard eclipse) for Java
* XCode for Objective-C (duh)
* vim for random shell scripts, sometimes I use atom for shell scripts.
I never understood why a couple of GNU command line tools made it worth calling the OS GNU/Linux.
I'm told that they contributed a few libraries too, but with cryptic names like glibc they surely can't be that important.
Right. An implementation of the standard C library is what makes an OS now.
I've seen so many IDEs come and go over the years (including big revamps that are essentially new IDEs) that I refuse to commit to any IDE for any reason. I've used Emacs since 1991 and have muscle memory of how to use it. It's not going to change. I can do anything in Emacs that an IDE can do, and Emacs will be around when the IDE du jour is long gone.
The funny part is: People talk about how IDEs are quicker for modern programming, but everyone I've ever worked with has talked about how fast I get code written. They're always surprised. They have no idea what tools I use.
I started using it 5 years ago because I liked the ideas behind it and took the plunge and used it exclusively for a week. From there, I was faster with it than with regular editors, and I stuck with it ever since. I'm 30 now.
Binutils, coreutils, autotools, bash, bison, findutils, diffutils, gcc, gawk, grep, groff, gmp, gzip, glibc, gettext, grub, m4, make, ncurses, sed, patch, tar, texinfo, to name a few... and yes, these are part of what makes an OS.
Last time I used it came with the cheat sheet in the menu.
I use vim for HTML, CSS, and JavaScript (front and back end).
I use Eclipse and vim for Java
I'll use Eclipse for original, vanilla Java code. (not variants like Android's Dalvik) But I tend to prefer TextPad for most things. If I'm working on someone else's Java code, I'll tend to use TextPad as well (will often have both Eclipse and TextPad pointing to the same Java project) because I like its search feature. It does what I want it to and I've gotten really efficient with it. (which is really what builds one's loyalty to a program)
Charisma is the measure of someone's ability to lie with a straight face.
All of which are pretty insignificant and have better alternatives anyway.
"grep" isn't really what makes an operating system.
Arguably a compiler is pretty important, but it is not tightly coupled with the OS at all, and clang is gaining weight.
What century are we in again?
I have used both VS and Intellij and quite frankly Intellij is much better. With VS you have to buy, download and install plugins to get the same sort of functionality as Intellij.
"You can't make a race horse of a pig"
"No," said Samuel, "but you can make very fast pig"
Vim and Haskell.
or
Vim and C.
I'm surprised no-one mentioned Brief . Back in the day we had to churn out assembler which was fit for V&V. We only had beige box PCs and built and tested on a separate dedicated machine. The only thing that made it bearable was the speed and flexibility of Brief. It gave us the ability to easily format source code for the V&V tools (via automation) and served as a primitive source code browser. A couple of the guys used vi clones but I grew rather fond of Brief. It got out of the way, let me work on multiple files at once, and yet no matter how complex the edit job it made it easier. I remember it had a stellar macro facility for the time. When I switched to Sun Workstations I switched from Brief to EMACs because it provided the same programmable functionality. It didn't hurt that Brief had employed the basic EMACs command key setup. So for assembly language, (at least umpteen years ago,) I nominate Brief.
When your only tool is edlin, then everything looks like a batch file.
Star Trek transporters are just 3d printers.
..
I am a PhD student at a computer security research lab, and almost everyone in our lab uses vim, and loves it. I think most use it by choice; I sure do. Emacs might be easier to learn, but a lot of things that are easier to learn aren't better.
I guess I should mention that almost everyone in our lab is under 30 :-)
I used to use magnetized needles to change the bits on the drive directly. Then I decided that using butterflies was a much more elegant solution.
-- ssoorrrryy,, dduupplleexx sswwiittcchh oonn.. -Quote found on actual fortune cookie.
vi and C are my favorites.
I like Cygnus Ed on the Amiga too.
Well, VIM and a bunch of XTerms.
Program Intellivision!
Bah, EMACS is a bloated festering carcass full of millions of things you don't need.
We don't want a platform, we want an editor.
Funniest thing I've ever seen is an EMACS user on a client site where they were stuck at the console of a Solaris machine and not allowed to install EMACS.
The whining and sniveling just makes you want to smack them.
Most EMACS users are so dependent on their 'editor' that they can't do anything without it.
EMACS is simply a terrible platform which promotes a bunch of lazy, whiny bitches who can't do anything without an electric mode for it.