> Does KEdit do symbol completion, show you documentation as you type, and perform automated refactoring?

KEdit is not specific to software development but is for nearly all typing. E.g., I also use it for word processing, reading/writing email, notes on everything, Internet content on finance, BBQ, coconut cream pie, Moo Shu Pork, ....

So, for writing software using KEdit, need some more: It has a good macro language, so can write macros to do some work specific to software.

> symbol completion

Interesting question! I do some of that with command line commands in text console windows. E.g., in walking in the file system directory tree, I have a little Rexx script

dn 'argument'

where 'argument' is a string, maybe the first few characters of the name of a subdirectory of the current directory. If the completion is ambiguous, then the script writes out a list to pick from.

I just checked the KEdit Help: So, in the case of an ambiguous completion, in a macro can use the command POPUP to create and display such a window and in it have a menu the user can pick from with either mouse or keyboard, and then the selection is returned to the macro. So, then, need the macro to know what the legal completions are: Okay, might get those from the current file being edited. Or maybe the list is in the macro or in a file the macro would read, maybe that file particular to the current directory of if there is no such file then, ... be as fancy as want with a hierarchy of files of the legal completions, one for C code, one for cooking, one for .... Depend on file system caching to make the file reading fast. And have the macro use the KEdit locate command which is really fast. The user's string might be from the start of the keyword, anywhere in the keyword spelling, after some spell checking in the macro, as fancy as want!

> show you documentation as you type

My approach to that was to put tree names of documentation files in the comments in my source code. Then I wrote a little KEdit macro that would, assuming simple syntax, grab the tree name and display the file. If the file type was HTM, then the macro would invoke Firefox to display the HTM file. I have 500+ of those. The file might be just simple text, and then the macro would open the file and have it in the ring (collection) of files KEdit was working with when it ran the macro.

> perform automated refactoring

I'll have to guess what that is: Maybe it is changing some name from, e.g.,

call_sql

to

call_sql001

For things like that, I just use versions of the KEdit command to locate a string. Here the command would be one of

/call_sql/

>call_sql>

l/call_sql/

all/call_sql/

etc.

Could write a macro, pass as an argument the strings

call_sql call_sql001

and have a loop for a little dialog that would locate the first argument, thus show the context, permit change or not, and then loop for the next change candidate.

Of course, if the work is really simple, then could just use

c/call_sql/call_sql001/ * *

for make the change on all the lines and all cases on each line.

In short, KEdit has a lot of good functions and a good macro language.

And for the start of this thread about needing high end processors, I've been using versions of KEdit back to VM/CMS and PC/DOS. So, it's small and fast.

KEdit is a PC version of IBM's XEDIT written in France by some guy on his own time. Once it was on IBM's internal network, it spread to IBM sites around the world quickly. In a word, KEdit is elegant. It is my most heavily used tool.

The KEdit macro language is a version of Rexx, the scripting language developed by an IBM guy Mike Cowlishaw. Early on KEdit macros could be written in Rexx and run on the instance of Rexx that served text window command lines, but eventually some operating system changes blocked that, and the author of KEdit wrote a version of Rexx and included it in KEdit.

Emacs may be a more powerful editor.

Power Shell may be a more powerful way to write scripts.