This is a screenshot from Star Trek Voyager with guest star Andy Dick as the EMH (Emergency Medical Hologram) Mark II and Robert Picardo as the EMH Mark I. This picture is take from http://furiousfanboys.com/2010/11/10-bes…
Whenever I tell my friends I use Linux both at work and on my laptop, they keep calling me insane. To them, Linux is a thing of the past like MS-DOS. I remember my short years of using MS-DOS and that helped me understand and to get comfortable to use Linux during my first year in University. Little did I know at the time is that I'll still be using Linux on a daily basis a decade later. For the record, I do have a low-budget gaming desktop at home running Windows 7. When it came to text editors in Linux, I've always used NEdit (http://www.nedit.org/) and Nano (http://www.nano-editor.org/). I never really bothered using anything else because, well, they were both fine. I use Nano on the terminal for quick modifications while NEdit is for when I need to work on multiple files for projects.
Over the years, I kept reminding myself to try other editors for Linux. NEdit is most likely not installed in many Linux distributions by default, and Nano has its limitations when it comes to projects with multiple files. I love NEdit especially for programming because it has features like syntax highlighting, display line numbers, and incremental search bar to name a few. Most of these features are present in today's text editors, but thankfully, NEdit was installed in CentOS on my work machine so I had nothing to worry about. Running Arch Linux on my laptop, however, was another story. I had to manually install NEdit but I never managed to configure it the way I have it at work. It was weird. I stopped using NEdit on my laptop because there was an important feature (I can't recall which one because I did not re-install NEdit after a fresh install of the OS) that I just couldn't get to it to behave. For my laptop, I turned to GEdit (http://projects.gnome.org/gedit/). GEdit was feature rich and had lots of plugins that you can install to make it even more user-friendly. It was a fair replacement but not without annoyance. One of them is the indentation, but I won't go into it. I was too lazy and wasn't committed enough to try other text editors and lived with the devil so to speak.
The past year at work was not so amusing when NEdit decided not to copy blocks of texts into its buffer after pressing CTRL+C. This happens intermittently, and I never knew why that was happening. I tried searching for an answer on Google and apparently, the source of this issue was never found. Fortunately, in Linux, you can highlight texts with you mouse, move your mouse pointer to the place you want to paste the block of selected text, and press the scroll wheel (or middle mouse button if there's one) to paste it there. It was fine at first, but then after a while, this method of copy-and-paste was seriously compromising my productivity. I have selected texts all over the place, and with the "activate window under the mouse" feature turned on, the pasted text would be the selected one from the last activated window. This was getting tedious and frustrating. I had to find another text editor for work. I browsed CentOS on my work machine and saw Kate (http://kate-editor.org/).
I used Kate for about 3 months. It was fine but not without its challenges. The thing that bothered me the most is its panes. As a graphical editor, I would expect the filelist pane to be permanently docked by default, not to disappear as soon as I click on the editor pane. Some people like this feature, and that's fine. There is a small button on that pane to dock it permanently, but this feature would go away the moment I restart Kate, which is annoying. The console pane was really good (GEdit has this feature too) at first, but its path would change according to the path of the "active file". Say you have opened file1 in directory 1 and file2 in directory 2, the path in the console pane would change between 1 and 2 depending on whether you are currently editing file1 and file2 respectively. Needless to say that I have simply decided not to use it.
Finally, I've turned to Emacs (http://www.gnu.org/software/emacs…), something that a lot of people were praising. The first thing that I tried to do was customization. The interface was enough to turn me off because I was unable to customize anything to my liking. When using a GUI (graphical user interface) editor, I try too hard to make it look, feel, and behave like the good old NEdit. Quoting Bruce Lee: "Empty your cup so that it may be filled; become devoid to gain totality". I simply couldn't do it.
So after acknowledging my problem, I turned to something more "familiar yet foreign": vi (it's pronounced "vi ai" http://en.wikipedia.org/wiki/Vi). The commands were at first intimidating, and because it was opening files on the terminal, I was comparing it to Nano. Not knowing what to expect, I started out with simple tutorials like navigating through files and editing texts. It feels similar to Nano but I recall reading that vi was so much more powerful than Nano. So when I thought of a feature, I searched on Google and adjusted my working methodology. Searching, text highlighting, copy and paste, indentation, word wrap, I could do a lot with this editor that look so basic and primitive at first glance. I've been using it for the past few days, and I really have no complaint for the moment. I am sure not as productive as I was when NEdit was working just fine, but I got better and faster as I kept on going. I learned vi commands as I go and looked at how to enable certain features when I want them activated. My colleagues at work, who are easily 15 years older than me, saw me using vi and said "wow, I remember my days with it, it was all fun until GUI came along. You're brave to try using it. Good luck."
vi was first released in 1976. It's not that old, but whenever people see command lines and all of that, they immediately think it's outdated because modern days are all about graphics, buttons, and mouse clicks. They judge command line is a thing of the past and should be obsolete in today's world. Personally, I think working with what works for you is what matters no matter how old the technology is. Technology helps us to become more efficient in our daily routine, but if the technology in question compromises your efficiency, that technology isn't really for you, is it? You're better off using what you're comfortable with unless there are regulations that forces you to do otherwise.
Edited on Sunday June 16, 2013: I've made a mistake and I didn't know until I was running experiments at home. I was using vim (vi improved) all along at work.