Hi everybody, I am watching the list for some time now, but this is the first time I open a topic. And it turned out to be off-topic... :-)) Short version: Can anyone give me a recommendation about an editor that is as close as possible (by look, feel and function) to the famous Cygnus Editor from the old Amiga days? If not, tell me where to start if I wish to write my own text editor? Is there a smarter way, or just From Scratch? Long version: OK, after Amiga and CED, I have _never_ seen an editor which even resembles it, no matter what platform, what OS, whatever. And Linux generally is a place that should not miss having such a tool. For those of you who had no touch with Amiga and CED, these are the features I would wish for (and not been able to see anywhere): * Super-smooth scroll of text. Poetry for the eyes. If the cursor is at the bottom of the screen/window and I press DownArrow to go down, the whole screen scrolls **pixel by pixel** up, and when enough space is available down, a line of text appears. Since I first started using Emacs, one of the main disadvantages I saw was "half-a-page-jump" when I reach the bottom of the screen. I usually get completely lost in text (especially if doing C++... :-)...). * Twelve-character jump to the left or right on keystroke. Some shortcuts move you to the beginning/end of line, some to the next word or delimiter, but if the syntax is such that there are no "words" defined, you simply have to move the cursor character by character. No way to go faster. Why twelve? Not sure, but I guess it is an optimised value to get from anywhere to anywhere on an 80-column line with no more than 10 keystrokes. Once you get used to it, you simply cannot live without it. * Macro support, ie. define a keyboard shortcut for *any* action of the cursor, no matter how complex. Example: write many equations in TeX? Just press F1, and the cursor creates three new lines, puts \begin{equation} in the first, \end{equation} in the third and itself in the second, waiting for the user to fill in the details. Or, just press Alt+RightArrow and the cursor jumps 12 characters to the right. OK, first time you have to do it manually in order to record a macro, but after that life is simpler. * Column-like selection. Select any box-shaped piece of text, and be able to cut, copy, paste it etc. OK, I admit, kile can do this too (that's why I use it... :-))...). * "Turbo" and "global" types of search-replace routine, and the distiction between the two. When ask for replace, on first found string the user is prompted to answer with "yes", "no", "global", "turbo" or "cancel". The yes, no and cancel behave as usual. Global starts to replace each occourence of the string by scrolling page by page in an average speed, and if the user presses any key, replace is stopped. Turbo does not scroll at all, but every occourence of the string gets replaced, and this is done _very_ fast (it was extremely fast on an 14 Mhz Amiga...). On every editor I came in contact with, there were only one of these two options, if at all. * Ability to replace arbitrary characters. In a replace querry the user can type ASCII code of the character to be replaced, and create sequences. For example, replace the '13' '10' combination with '10', ie eliminate carriage return character if followed by line feed. Or replacing 'a' with backspace may give interesting results. Or replacing all escape characters with nothing (ie. deleting them). This allows the user to manipulate binary files, if he wishes to (I did, on a couple of occasions). * Ability to display space, tab, CR and line feed with visual characters on demand. OK, some editors can display end of line and some can do tab, but no editor displays all three... * Box-shaped cursor that does not blink. If it covers some character, the character is displayed with inverse colors, while it's ASCII code is displayed on the status bar. I think I saw some editors that can be made to behave like this, but they lacked everything else. * Other usual text-editor stuff: syntax hilighting, static and dynamic word wrap on user-defined column, arbitrary positioning of tab lengths, ability to work with muliple files at the same time, etc... I saw that kile generally does most of these things, and it's good. * Oh, and there is one thing that I saw *nowhere*, not even in CED, and I needed it so badly lots of times -- the high-level search-replace querries, like conditional ones. Example: replace abc with ABC and def with DEF but only if there are no more than five characters between them. Or, replace abc with ABC only if it is *not* followed by fgh. And similar stuff. Of course, I can write a bash script to do such things, but... OK, maybe it is too optimistic. But I am not just dreaming, (almost) all these features actually _have_been_implemented_ in a _single_ program, Cygnus Editor, for the Amiga platforms. I have never seen anything similar on a PC or Mac. Asked Google, asked the list archives, nothing... I can use the emulator and use the Amiga-native program, but that is a workaround, not a solution. I still have my A1200 on my desk, can use that too, but file transfer to the PC box is not easy (although possible). Should I start coding an editor? How do I make text scroll smoothly, as in video games? Any thoughts are welcome!! Best regards, ;-) Marko P.S. If anyone wishes to know *why* do I need this or that feature, I'll be glad to elaborate... :-))