What is your favorite text editor?

And interested in devel/tvision, too?
Thanks, looks interesting, only that I’m disappointed a bit that on their github page, under Screenshots, I see only examples from various GUI’s, I didn’t see single tty example, and they said:
“For example: in order to get a bright background color on the Linux console, the blink attribute has to be set. Turbo Vision does this for you.” /q
I hopped to see examples of this and more in tty, and now I wonder how compatible is with our vt(4)?
 
Wow, 640x400 in pre-VGA? That’s great! IDK about that, thanks! Do you know which video card was in?

I honestly thought that Amstrad PC 1640 was one of the best PC's in that regard with enhanced EGA 640 x 350 and mono Hercules 720 x 350 – it was great for GEM, esp. Ventura.

It is monochrome 640x400, trait of all Olivetti IBM-compatibles.


Basis of Olivetti type CGA is 640x400 mode as opposed to 200-line in IBM, thus they carry double the RAM.
The added 640x400 APA mode was heavily popular pre EGA (also called AT&T 6300 mode).

So the software side used it just like CGA + extra/driver code needed for pixel addressable 640x400 monochromatic mode.

The M24 card has a part number but does not work outside of M24. I have this video system integrated on the motherboard of my M19. There are later 8/16 bit Olivetti ISA EGA/VGA cards, mainly with Paradise VGA controller, that offer backward compatibility for this.

Btw. Japanese PCs got 400 line modes early on due to Kanji requirement.
 
It is monochrome 640x400, trait of all Olivetti IBM-compatibles.


Basis of Olivetti type CGA is 640x400 mode as opposed to 200-line in IBM, thus they carry double the RAM.
The added 640x400 APA mode was heavily popular pre EGA (also called AT&T 6300 mode).

So the software side used it just like CGA + extra/driver code needed for pixel addressable 640x400 monochromatic mode.

The M24 card has a part number but does not work outside of M24. I have this video system integrated on the motherboard of my M19. There are later 8/16 bit Olivetti ISA EGA/VGA cards, mainly with Paradise VGA controller, that offer backward compatibility for this.

Btw. Japanese PCs got 400 line modes early on due to Kanji requirement.
Your Olivetti will not beat a Plantronics Colorplus! :)
 
Nah, Beta Basic FTW! Could you do this in Sinclair or Apple Basic?
ZX Spectrum 48K "Fractal Fern", High Resolution 256✕511 render. Run on Spectrum, ZX 1 RS232 binary dump (ESC/P) file; prn file render & bitmap extract on Win. Final image and code © BetaSoft - Beta Basic Newsletter No.10
View attachment 23567

View attachment 23568

P.S. HiSoft was quite good, I must admit.
What a time to live in. I had a commodore 64. And the whole rom bios in assembly printed in a booK.
 
`ctags` makes life so much easier.
`gf` (go to file is also a nice tool.
... along with~42 other neat things ...
In Vim I, personally, use things like:
Code:
function! SearchCword(tag, ...) "{{{
  " This function allows me to preform a search for a word under the
  " cursor in all the files found in and under the current directory.
  "
  " Adopted (revised) from: [ http://ifacethoughts.net/2008/05/11/task-management-using-vim/ ]
  "
  exe "cd %:p:h"
  let path=fnamemodify(expand(getcwd()), ":p") . "*.*"

  try
      exec "noautocmd lvimgrep /" . a:tag . "/j " . path
  catch /^Vim(\a\+):E480:/
  endtry

  if a:0 > 0
      " These commands will add results to the location list.
          try
              exec "noautocmd lvimgrepadd /" . "/\<\%[[[]0[]]]" . a:tag . "\>" . "/j " . path
          catch /^Vim(\a\+):E480:/
          endtry
  endif

   exec "lw"
"    set modifiable
"    open lwindow
endfunction "}}}
function! GetCword()            "{{{
        let wordUnderCursor = expand("<cword>")
        " let currentLine   = getline(".")
        return wordUnderCursor
endfunction     "}}}
" Map <Ctrl-k> to preform the search and create a command for it.
nmap <silent><buffer> <C-k> SearchCword
vmap <silent><buffer> <C-k> SearchCword
nnoremap <silent><script><buffer> SearchCword :SearchCword<CR>
command! -buffer -range SearchCword call SearchCword(GetCword())

I will have to learn these dark arts. When I had tried vim on a Fedora Plasma, whenever it opened some new file I freaked out and started typing dramatically until it brought me back. But now that I have to try things from a console, I think I have to settle my millenial head down and learn it.

I mean psh in kate I just press the open button and it opens in a background tab. Where is the open button on my vim?!?!?

I already get vastly more enjoyment out of using the FreeBSD than the Plasma with my non-existent skills, so learning shouldn't be that painful.
 
I will have to learn these dark arts. When I had tried vim on a Fedora Plasma, whenever it opened some new file I freaked out and started typing dramatically until it brought me back. But now that I have to try things from a console, I think I have to settle my millenial head down and learn it.

I mean psh in kate I just press the open button and it opens in a background tab. Where is the open button on my vim?!?!?

I already get vastly more enjoyment out of using the FreeBSD than the Plasma with my non-existent skills, so learning shouldn't be that painful.
I'm sitting here chuckling a little bit. The old guys here that started out with VT100s, got giddy when they graduated to a VT220, almost had heart attacks at a "X-terminal" device (DEC, Sun, whatever) probably all have vi keystrokes embedded into muscle memory.
What should a text editor do? Allow a user enter and format text. Been done for years with old fashioned ttys and markup language (I believe that is how K&R originally sold Unix to Bell Labs). All the newfangled GUIs and IDEs simply make it easier to access features. Why do I need to move a mouse, press a button, scroll a menu to open a file? (One of my biggest issues with Windows, trying to remember which gui gives me the data from an ifconfig command)
It's like IDEs for programming: bundle the makefiles, ctags but how do I configure it to format code the way I want? Emacs I think is a reasonable compromise between ed/vi and full blown GUI based things. I can run emacs in a term window and my keystrokes still work. I can run a windowed version of emacs (used to be called xemacs) and my keystrokes work. I can also use Emacs as an "almost os" because I can read mail, drop to a shell, traverse tags, a whole lotta stuff.
For the record, I've used lots of different IDEs (free and paid) over my career, never felt comfortable. Term windows, makefiles, ctags always just work. Quick changes vi is easiest, if I'm spending all day looking at code (existing code base of 10s of thousands of line) emacs is a bit easier for me.

So, text editors (including writng code), it pays to be flexible and have a comfort level with the old standards like vi (because sometimes thats all you get) to at least open file, edit file, save file, exit.

Just my opinions, agree, disagree, all good.
 
Frankly, I'm kind of mad nobody taught me vi as a schoolboy. It's like teaching you to type before teaching you to use a pencil, and then doing away with the pencil altogether.

Also this new feeling of there being so many fewer things between me and the secrets inside the machine. What you mention about which GUI to change which file, meanwhile it took me decades to figure out that most GUIs are just convoluted interfaces to modify a file. For goodness' sake, I coulda shaved years off.

It's also funny because this year I also adopted a text editor I hadn't tried before: carving the tip of a goose feather, and dipping it ina a brewed mixture of iron, black tea and vinegar. Use it no more than 5 times and you will get a thousand epiphanies about why letters look the way they do and writing conventions that used to seem hopelessly losst to the myre of history.
 
  • Like
Reactions: mer
I'm not old enough to know the days of "no GUI" or anything but...
until it brought me back. But now that I have to try things from a console, I think I have to settle my millenial head down and learn it.

I mean psh in kate I just press the open button and it opens in a background tab. Where is the open button on my vim?
you're thinking is a bit out of the efficient swim-lane.

The following is the way you want to be moving towards.
What should a text editor do? Allow a user enter and format text. Been done for years with old fashioned ttys and markup language (I believe that is how K&R originally sold Unix to Bell Labs). All the newfangled GUIs and IDEs simply make it easier to access features. Why do I need to move a mouse, press a button, scroll a menu to open a file? (One of my biggest issues with Windows, trying to remember which gui gives me the data from an ifconfig command)
It's like IDEs for programming: bundle the makefiles, ctags but how do I configure it to format code the way I want?
An editor should stay out of your way:

For example,
I create a project (a shell script to create directory and a few files like "makefile" and "main.c", for example).
Open 'main.c' start typing away.
In my editor (Vim but can be Emacs too--Vim and Emacs are your powerhouses) I type "Make".
My editor already found the "project root", "makefile" and set paths and whatnot before it even displayed the 'main.c' contents.
If I messed up, the compiler warnings are shown. I can jump to the error points and make corrections.
OR If I don't know the difference between `fprintf` and `printf` I can put my cursor on `fprintf` and type <shift-K> and see the man page and fix the line to: "fprintf(stderr, ....)" and type "make" again.

After your project grows, you add `ctags` into the mix and you can jump around to the definitions of "my_super_function()" with a <ctrl-]> and back to where you left off with a <ctrl-o>.

This is how you work with the powerhouse editors (the editor is a helping tool not a driving factor in how you code). I have tons of "helper" functions to streamline my needs in Vim. I dont know Emacs but it's the same (but Emacs is stupid so steer clear of that thing). <--that was just a dig at Emacs users; they poke at Vim users and Vim users poke at them. ...it's a stupid thing.
 
An editor should stay out of your way:
"The First Commandment of editors" :)

My usage patterns has always been window for editing code, window for running make, window for running grep to find why errors in make. IDEs that let you run make, then on error take you to the line of code causing the error, save a step or two but for me fail on context. "That LOC caused the error, but why?" that's where for me separate windows works (for me). See the error in the make window, stop and think about what it really means, then grep to find instances finally back to editor window to see context and fix.

Emacs/Vi stuff is like Ford vs Chevy. Both useful, both have pros, both have cons, knowing how to drive either is beneficial to you when you borrow a truck from your cousin.
 
Emacs/Vi stuff is like Ford vs Chevy. Both useful, both have pros, both have cons, knowing how to drive either is beneficial to you when you borrow a truck from your cousin.
I only use Emacs when in Xfce or whatever, which I usually don't use (most of my computers use twm, unless I am running Linux) and Emacs is so bloated. It follows the Unix philosophy less than systemd does. I just use vi for most cases in FreeBSD. On Linux though, it is already such a mess, so why not mess it up a bit more? :)
 
I only use Emacs when in Xfce or whatever, which I usually don't use (most of my computers use twm, unless I am running Linux) and Emacs is so bloated. It follows the Unix philosophy less than systemd does. I just use vi for most cases in FreeBSD. On Linux though, it is already such a mess, so why not mess it up a bit more? :)
I'm sorta split personality in that regard. Never used Emacs, can't figure ctrl+this+that+ctrl+something+meta+else way; I'm so used to Vim (and vi before) for editing files, but in the shell, I'm navigating only using Readline shortcuts, which are actually Emacs thing, right? Go figure.... 🤷‍♂️
 
Thanks, looks interesting, only that I’m disappointed a bit that on their github page, under Screenshots, I see only examples from various GUI’s, I didn’t see single tty example, and they said:

I hopped to see examples of this and more in tty, and now I wonder how compatible is with our vt(4)?
The homepage of editors/turbo states as below, if it runs fine for you, you wouldn't need to worry about vty on FreeBSD.
Code:
Turbo is an experimental text editor for the terminal, based on the Scintilla code editing component by Neil Hodgson and the Turbo Vision application framework.

And editors/turbo works for me on vty.
Maybe the same reason there aren't any examples, I cannot take screenshot for it running on vty "as it is".

Attached is the one obtained with:
  1. Take screenshot of editors/turbo running on vty1 with ANSI escape sequences by vidcontrol -p term < /dev/ttyv1 > /tmp/vty1.scr using patch at review D40858.
  2. cat /tmp/vty1.scr in a terminal on X11.
  3. Take screenshot of it.
As I haven't installed the converter introduced but not a part of review D40858, I cannot convert raw format to PNG.
 

Attachments

  • screenshot_turbo-on-vty_2025-09-06_04-39-02.png
    screenshot_turbo-on-vty_2025-09-06_04-39-02.png
    132.8 KB · Views: 29
The homepage of editors/turbo states as below, if it runs fine for you, you wouldn't need to worry about vty on FreeBSD.
Code:
Turbo is an experimental text editor for the terminal, based on the Scintilla code editing component by Neil Hodgson and the Turbo Vision application framework.

And editors/turbo works for me on vty.
Maybe the same reason there aren't any examples, I cannot take screenshot for it running on vty "as it is".

Attached is the one obtained with:
  1. Take screenshot of editors/turbo running on vty1 with ANSI escape sequences by vidcontrol -p term < /dev/ttyv1 > /tmp/vty1.scr using patch at review D40858.
  2. cat /tmp/vty1.scr in a terminal on X11.
  3. Take screenshot of it.
As I haven't installed the converter introduced but not a part of review D40858, I cannot convert raw format to PNG.
That's what I'm using VM's for (okay, one of the reasons) - to take screenshots of our vt(4) or various Linux tty's.
Please check The gallant console font got supercharged thread where I posted bunch of screenshots of vt(4) in various stages of boot. With OS on bare metal that will be possible only with output to the some video capture device (at least IDK of other way).
 
Didn't know gallant.fnt included Katakana!
But as a Japanese, hope b16.fnt or equivalent is provided in base.

By the way, the link to the thread doesn't seem working (needed to search for reading).
Katakana in Gallant is only partial for now, but font is a work in progress, and schweikh put it on Github so that anyone can contribute.

Thanks for the info about non working link, I used option from the menu, but that made it eFd. Edited it manually, should be okay now.
 
I'm currently using garuda-linux(arch) as operating system.
Why. Inttelij and rider don't work as editor on freebsd. Once they work on freebsd i switch back to freebsd.
 
This is all excellent. I still have the passion for learning I always had, but I lost some of the passion for full speed always. My approach now is starting slowly from the shallow end. Muscle memory the in-file commands into my fingers, which is already well underway, then start getting into what I suspect is the real power or some portion of the real power of vim, which is the command line ( : ), and once I get good at that, scripts. During all of which I will likely keep coming back to this thread to remember. One spends so much time googling stuff, when 9 times out of 10 a search through forums.FreeBSD will instantly give you dense and useful info (unlike the haphazard stuff one finds beyond the buoeys).

All this said, I have to truly say that sometimes I thought kate was some kind of second rate editor because of how little I noticed it while using it, and now that I am trying other stuff I am realizing just how well that piece of software is made. I used VS too a bit before that, and it did get in my way, which I interpreted as it probably being really great.

But even the few very basic file surfing commands I have learned in vim already have not only made my life easier, but changed the way I understand what can be done on a text editor. Mode, command, enter. Rather than click, scroll, click again, scroll, type, click again, type, etc.
 
All this said, I have to truly say that sometimes I thought kate was some kind of second rate editor because of how little I noticed it while using it, and now that I am trying other stuff I am realizing just how well that piece of software is made.
Wherever I go – FreeBSD, Linux, Windows, macOS – I carry Vim and Kate with me 😁
 
Your Olivetti will not beat a Plantronics Colorplus! :)

My Olivetti M19 actually has Plantronics Colorplus support.
The machine supports monochromatic and colour monitor. With monochromatic it works in 400 line mode like described for M24.
When switched to colour output the card behaves like Plantronics Colourplus.

So I can use both :)

More on this offtopic... :D

Software support for Plantronics is zero to none.
A dozen of drawing/viewing software titles that all date from age when card was already dodo.
There is Sierra adventure game interpreter driver, I've tried that on my M19 and got neat 16 colour @ 320x200 EGA-alike output.
+ two games released in this age. GEM driver. That's about it.

Olivetti's mode is widely supported by all kinds of applications from GEM, Windows, AutoCAD, from toolkits like Borland BGI and Microsofts C Graphics library (Plant isn't supported there), new programs like microweb browser, Microsoft Word for DOS, and so on. And there is also a Sierra driver too. Many more. Olivetti was the absolutely most widely used not-IBM type video. M24 was sold as twice as fast, double resolution IBM PC, and in those couple of years until PC AT + EGA + RGBI monitor became affordable Olivetti produced millions of computers.
 
Wherever I go – FreeBSD, Linux, Windows, macOS – I carry Vim and Kate with me 😁

From KDE ecosystem KDevelop is great piece of software. Its biggest weakness is 'intellisense' which is too crude and does get in the way, on the other hand since sourcenavigator and sourcetrail are obsolete, KDevelop can be a great code browser too.
 
Back
Top