larry@bradley.bradley.edu (Larry D. Stratton) (01/31/91)
Good God! I do know how to survive using vi and emacs. I've been using them for months. The point is that a new programmer has an exaggerated learning curve with these products as opposed to an editor with function keys defined and use of the full range of keys on the keyboard. The objective, my dear sir, is not the mastery of an editor but rather the productivity of the staff. Yours is a typical answer of a CS rather than a manager. Get real. -- ************************************************************** L. D. STRATTON "If you had listened hard enough you larry@bradley.edu might have heard what I meant to say. BRADLEY UNIVERSITY Nothing." - - - - McKuen
jfy@orion.cis.ksu.edu (Joseph F. Young) (01/31/91)
larry@bradley.bradley.edu (Larry D. Stratton) writes: >Good God! I do know how to survive using vi and emacs. I've been using >them for months. The point is that a new programmer has an exaggerated >learning curve with these products as opposed to an editor with function >keys defined and use of the full range of keys on the keyboard. > Do not trouble us with your problems with these editors; I for one, do not like function key based editors (Wordperfect stands out as one of the worst cases..."Was it Alt-shift F1 or Ctrl-shift F3 to do this command?"). Not everyone can afford to have nice terminals or workstations which can support some function key driven editor. Learning any editor takes some sort of a learning curve, depending upon what one has been exposed to. Emacs and vi have the virtue of being consistent to a high degree over a broad range of platforms and operating systems; I have yet to see some function key based editor achieve that, due to the fact that there is little standardization of keyboards beyond the basic QWERTY setup. >The objective, my dear sir, is not the mastery of an editor but rather the >productivity of the staff. Yours is a typical answer of a CS rather than a >manager. Get real. Get real yourself. Do not delude yourself with the idea that you know what the "ideal" editor is. A person's ease in using an editor is highly dependent upon what one is used to and how one likes to do things. This is more a matter for "alt.religion.computers" than "comp.editors". -- Joseph Young, KSU Department of Computing and Information Sciences Manhattan, Kansas 66506 FAX: (913) 532-7353 Phone: (913) 532-6350 Inet: jfy@cis.ksu.edu UUCP: rutgers!ksuvax1!jfy -- "MS-DOS...just say no."
dylan@ibmpcug.co.uk (Matthew Farwell) (02/01/91)
In article <1991Jan30.224717.6150@bradley.bradley.edu> larry@bradley.bradley.edu (Larry D. Stratton) writes: >Good God! I do know how to survive using vi and emacs. I've been using >them for months. The point is that a new programmer has an exaggerated >learning curve with these products as opposed to an editor with function >keys defined and use of the full range of keys on the keyboard. > >The objective, my dear sir, is not the mastery of an editor but rather the >productivity of the staff. Yours is a typical answer of a CS rather than a >manager. Get real. But if the staff were to master a editor then their productivity would increase.... Let me cite an example. In my younger days, I had a text file which was the basis of a program I was writing. (It was actually an interactive version of the purity test, which then added up the yes answers and gave the results to you. It actually also mailed the individual answers to me, but thats by the by). Anyway the line were something like 1) Have you ever done this and that in a moving land vehicle of over 800 tonnes unladen weight, blah blah blah. I spent about three days going through this file changing each question so that the input looked like 1) blah blah blah *** 2) blah blah blah2 *** etc. Now if I'd known how to use the editor properly at that time, I could have written a macro or two to cope%, ie :map q /^[0-9][0-9]*)^MO***^[jv :map v q :se nowrapscan Which would complete the job in significantly less time than three days. Another example: The other day I had a 400 line perl script in which I wanted (for various reasons) to change all instances of if (<test>) { die("<message>\n"); } to die "<message>\n" if (<test>); This took me 20 seconds or so (one vi macro), instead of 20 minutes which it would have taken if I'd done it manually. If you wanted to loop thru a lot of lot of files changing all instances of #include "foo.h" to #include "whee.h", again thats two simple macros. If you want productivity to go up, then you should teach your programmers to use an editor properly, not tell them to use function keys. Dylan. -- % Admittedly, all of these particular example could be done using sed/awk/perl, but thats not the point of this article. -- Matthew J Farwell | Email: dylan@ibmpcug.co.uk The IBM PC User Group, PO Box 360,| ...!uunet!ukc!ibmpcug!dylan Harrow HA1 4LQ England | CONNECT - Usenet Access in the UK!! Phone: +44 81-863-1191 | Sun? Don't they make coffee machines?
gardner@shl.com (Gardner Buchanan) (02/02/91)
>>[...] with function >>keys defined and use of the full range of keys on the keyboard. > [...] (Wordperfect stands out as one of the worst >cases..."Was it Alt-shift F1 or Ctrl-shift F3 to do this command?"). It was Ctrl-Alt-Meta-Underline-TeddyBear-Squiggle-CokeBottle. It's a shame that all terminals to not have a large standard set of extra "function" keys, but they don't. It is simply a fact of life that terminal independent editors - which IMHO every editor of consequence is - will have to overload the regular keys. Personally I like the way vi does this much better than the way emacs does. -- Gardner Buchanan gardner@shl.com Systemhouse, Ottawa (613) 236-6604 x375
gast@lanai.cs.ucla.edu (David Gast) (03/03/91)
In article <1991Jan30.224717.6150@bradley.bradley.edu> larry@bradley.bradley.edu (Larry D. Stratton) writes: >Good God! I do know how to survive using vi and emacs. I've been using >them for months. The point is that a new programmer has an exaggerated >learning curve with these products as opposed to an editor with function >keys defined and use of the full range of keys on the keyboard. I don't agree. vi, for example, does use the full range of keys. I have several function keys defined, but not to short character sequences. Even if vi or emacs had 12 or 16 function keys defined, would that really help if you did not have a template. And how is "function 6" more mnemonic for next line than "control-N" or j (if you know the ascii code). How can a programmer not know the Ascii code? >The objective, my dear sir, is not the mastery of an editor but rather the >productivity of the staff. Yours is a typical answer of a CS rather than a >manager. Get real. I suggest that you get real. Even if your argument that the staff can learn an editor other than vi or emacs faster for initial use is true, I doubt that these other editors are fasters after one becomes proficient. Further, I presume that you are not primarily interested in employees who work for one week, but those who work for years. As such, vi/emacs will provide greater productivity. Finally, if you hired me (not that I could be hired), you would find that my productivity is much higher with vi/emacs than some other brain dead editor. Perhaps yours is the answer of someone who only looks two weeks ahead. David
joshi@m.cs.uiuc.edu (Anil Joshi) (03/05/91)
gast@lanai.cs.ucla.edu (David Gast) writes: >In article <1991Jan30.224717.6150@bradley.bradley.edu> larry@bradley.bradley.edu (Larry D. Stratton) writes: >>Good God! I do know how to survive using vi and emacs. I've been using >>them for months. The point is that a new programmer has an exaggerated >>learning curve with these products as opposed to an editor with function >>keys defined and use of the full range of keys on the keyboard. I share his feelings completely. Exaggerated learning curve is not the only problem with these editors. They presume that user computing is a myth. Try teaching reg.exprs. to an end user. >I don't agree. vi, for example, does use the full range of keys. I have >several function keys defined, but not to short character sequences. >Even if vi or emacs had 12 or 16 function keys defined, would that really >help if you did not have a template. And how is "function 6" more mnemonic >for next line than "control-N" or j (if you know the ascii code). How can >a programmer not know the Ascii code? What about map! ^X^C^V&^%? Is that mnemonic for you? You must be kidding. >I suggest that you get real. Even if your argument that the staff can learn >an editor other than vi or emacs faster for initial use is true, I doubt >that these other editors are fasters after one becomes proficient. Further, Are you talking about speed of editors here or speed of usage? For one, emacs is the slowest thing I have seen in my seven years of experience. vi by no means is an editor by design. Ergonomics is a greek word for the designers/supporters/ users of vi. >I presume that you are not primarily interested in employees who work for >one week, but those who work for years. As such, vi/emacs will provide >greater productivity. Finally, if you hired me (not that I could be hired), I think you are totally wrong here. I am curious as to how much time you have spent in the industry. And please look around you and count the number of users who would like vi/emacs. What choice a UNIX user has got? vi or emacs. Both of them suck (IN MOST OF THE CASUAL USERS' opnion). The very fact that some time back we saw a posting about a lynch party going to the systems programmer asking him to change vi to look like ISPF or Word Perfect is a dead give away. >you would find that my productivity is much higher with vi/emacs than some >other brain dead editor. Get real. Go get a job in the real world. >Perhaps yours is the answer of someone who only looks two weeks ahead. Yours is the answer who has a completely cloistered outlook on life. >David Anil -- "Whatever we wish ourselves to be, we have the power to make ourselves. If what we are now has been the result of our own past actions,then it certainly follows that whatever we wish to be in the future, can be produced by our own present actions." - Vivekananda, Late Nineteenth Century Indian Philosopher
tchrist@convex.COM (Tom Christiansen) (03/05/91)
From the keyboard of joshi@m.cs.uiuc.edu (Anil Joshi): :>In article <1991Jan30.224717.6150@bradley.bradley.edu> larry@bradley.bradley.edu (Larry D. Stratton) writes: I counted to 5 and still wasn't content, so here goes. Do we really need a religious war here? :gast@lanai.cs.ucla.edu (David Gast) writes: : : :>>Good God! I do know how to survive using vi and emacs. I've been using :>>them for months. The point is that a new programmer has an exaggerated :>>learning curve with these products as opposed to an editor with function :>>keys defined and use of the full range of keys on the keyboard. : :I share his feelings completely. Exaggerated learning curve is not the only :problem with these editors. They presume that user computing is a myth. Try :teaching reg.exprs. to an end user. Say what? You don't HAVE to learn them. Anyone who wants to learn will learn them easily. Trying to force feed them on someone who doesn't understand why he would want one might have a bad reaction, but this is such basic stuff that I don't believe anyone who wants to learn them can't. If so, we have a broom waiting for him. :What about : :map! ^X^C^V&^%? : :Is that mnemonic for you? You must be kidding. It's my keystroke sequence. Once the keystrokes make sense, the bindings do to. It's not a program language, but big deal. It does go a long way. :>I suggest that you get real. Even if your argument that the staff can learn :>an editor other than vi or emacs faster for initial use is true, I doubt :>that these other editors are fasters after one becomes proficient. Further, :Are you talking about speed of editors here or speed of usage? For one, :emacs is the slowest thing I have seen in my seven years of experience. Which emacs? There is no One Emacs -- microemacs can be as small as vi. It doesn't have to be slow. Gnu's is slow on small machines, but that's only a subset of emaxen in a subset of environments. And I haven't heard anyone claim vi was too slow to use since we got the 750's load down below 25. :vi by no means is an editor by design. Ergonomics is a greek word for the :designers/supporters/ users of vi. And what is it then, a mail reader? I don't think so. You make no sense here. Someone said: I need an editor, I want it do do these things, and he wrote it. Sounds like an editor by design to me. :>I presume that you are not primarily interested in employees who work for :>one week, but those who work for years. As such, vi/emacs will provide :>greater productivity. Finally, if you hired me (not that I could be hired), : :I think you are totally wrong here. I am curious as to how much time you have :spent in the industry. And please look around you and count the number of users :who would like vi/emacs. What choice a UNIX user has got? vi or emacs. Both of :them suck (IN MOST OF THE CASUAL USERS' opnion). The very fact that some time :back we saw a posting about a lynch party going to the systems programmer :asking him to change vi to look like ISPF or Word Perfect is a dead give away. If you only use a computer once a year, then fine. Otherwise, the original poster is right. If you give someone a no-mind editor, you lock them into this poverty-stricken environment, and they'll never advance. At least with vi and emacs you can get by with a small subset of commands. I've taught UNIX for 7 years now, and I've never failed to each anyone vi in an hour or less. :>you would find that my productivity is much higher with vi/emacs than some :>other brain dead editor. : :Get real. Go get a job in the real world. YOU get real. How do you define the real world? Invoking `real world' is just a snide, patronizing way of telling someone you don't think their job is worthwhile. It's rude. And it's got little bearing in reality. Everyone can pick out some other group whose work they consider less important than their own. My productivity is indeed a lot higher with vi than with a brain-dead editor like Wordstar. I know -- I made the transition. It was like a breath of fresh air. I don't like to type. I want to be able to identify common practices, and easily reduce the steps it takes to get those effects. I want to be able to move around in textual units, not arrow keys. I don't want someone holding my hand, supposedly "helping" me. :>Perhaps yours is the answer of someone who only looks two weeks ahead. : :Yours is the answer who has a completely cloistered outlook on life. Oh, stuff it. Cloistered because he doesn't work with people who need child-proof caps and coloring-book pictures for their editors? Who are you teaching, pre-schoolers? --tom
ts@cup.portal.com (Tim W Smith) (03/05/91)
< for next line than "control-N" or j (if you know the ascii code). How can < a programmer not know the Ascii code? Because the vast majority of programmers have no need to know the ASCII code. Tim Smith
joshi@m.cs.uiuc.edu (Anil Joshi) (03/06/91)
tchrist@convex.COM (Tom Christiansen) writes: >:gast@lanai.cs.ucla.edu (David Gast) writes: >: >: >:>>Good God! I do know how to survive using vi and emacs. I've been using >:>>them for months. The point is that a new programmer has an exaggerated >:>>learning curve with these products as opposed to an editor with function >:>>keys defined and use of the full range of keys on the keyboard. >: >:I share his feelings completely. Exaggerated learning curve is not the only >:problem with these editors. They presume that user computing is a myth. Try >:teaching reg.exprs. to an end user. >Say what? You don't HAVE to learn them. Anyone who wants to learn No. If I want to find say some string which includes a . 1. You have to know what is the magic setting 2. You have to know there is such a thing as editor settings. 3. You have to know that . stands for any character in REG. EXPRS. 4. You have to know how to reset magic. The grep command can not be used without reg expr., the substitute can not be used without reg exprs. Why not have two commands for doing? One command says just find wihthout magic, and the other says have all the power of reg exprs. The people who want to do more would learn both, the others are completely insulated from this. They do not have to even know that something called reg.expr. exists. Set magic off by default. >will learn them easily. Trying to force feed them on someone who >doesn't understand why he would want one might have a bad reaction, >but this is such basic stuff that I don't believe anyone who wants >to learn them can't. If so, we have a broom waiting for him. But we are talking about a lot of secretaries here, not programmers. I have done courses in both compilers and automata, I do understand Reg. Exprs. but still feel that they are too complicated for use in editors. Have them by all means (because there is definitely a need for them), but do not force on all. I can give very elegant solutions to a lots of problems which were posted in the past if there were column based editing in addition to reg. exprs. in vi. The very fact that vi can not be extended and enhanced means that it is time we abandon this editor and design a new editor from scratch. It will include the good features from vi, emacs, ISPF etc. but only after a consensus from the users at large. Not somebody just sitting at the terminal and hacking up something that serves his/her purpose. >:What about >: >:map! ^X^C^V&^%? >: >:Is that mnemonic for you? You must be kidding. >It's my keystroke sequence. Once the keystrokes make sense, the >bindings do to. It's not a program language, but big deal. It >does go a long way. You cannot see the key strokes. Like is it a carriage return, a space, a Controlchar. ? Hex editing is very bad in vi. It is handled very well in ISPF. >:Are you talking about speed of editors here or speed of usage? For one, >:emacs is the slowest thing I have seen in my seven years of experience. >Which emacs? There is no One Emacs -- microemacs can be as small as >vi. It doesn't have to be slow. Gnu's is slow on small machines, but It is slow on a big machine which is very heavily loaded. And also, I hate to type with one of my hands permanently attached to ctrl/esc keys. >:vi by no means is an editor by design. Ergonomics is a greek word for the >:designers/supporters/ users of vi. >And what is it then, a mail reader? I don't think so. You make no It is an editor by hacking. >sense here. Someone said: I need an editor, I want it do do these >things, and he wrote it. Sounds like an editor by design to me. That is the problem. How many people were involved in giving the original user specs? Where are the user specs? Where is the test data? Who tested it? What were the design goals? What assumptions were made about the end users? >:I think you are totally wrong here. I am curious as to how much time you have >:spent in the industry. And please look around you and count the number of users >:who would like vi/emacs. What choice a UNIX user has got? vi or emacs. Both of >:them suck (IN MOST OF THE CASUAL USERS' opnion). The very fact that some time >:back we saw a posting about a lynch party going to the systems programmer >:asking him to change vi to look like ISPF or Word Perfect is a dead give away. >If you only use a computer once a year, then fine. Otherwise, the >original poster is right. If you give someone a no-mind editor, you >lock them into this poverty-stricken environment, and they'll never >advance. At least with vi and emacs you can get by with a small subset >of commands. I've taught UNIX for 7 years now, and I've never failed >to each anyone vi in an hour or less. I am not saying that you cannot teach vi. Unfortunately, it boils down to learning UNIX as well. The whole thing does not mesh very well. >YOU get real. How do you define the real world? Invoking `real world' is >just a snide, patronizing way of telling someone you don't think their job >is worthwhile. It's rude. And it's got little bearing in reality. >Everyone can pick out some other group whose work they consider less >important than their own. I do retract ny earlier statement and APOLOGIZE if I had been rude. I do get frustrated on the other hand with people who argue wihtout having seen other things. >My productivity is indeed a lot higher with vi than with a brain-dead >editor like Wordstar. I know -- I made the transition. It was like a I thought that we are talking about program editors here. I do agree that word star/word perfect are brain-dead editors. But I am talking about other editors (ISPF/XEDIT) which I think a lot of users of this forum do like but afraid to say so because they will be ridiculed of liking something from the big blue. >breath of fresh air. I don't like to type. I want to be able to identify >common practices, and easily reduce the steps it takes to get those >effects. I want to be able to move around in textual units, not arrow >keys. I don't want someone holding my hand, supposedly "helping" me. Problem is that when one is editing programs, the textual units are non-existent are have a completely different meaning in each programming language. A good editor should not make any assumptions about the textual units - the user may be editing any thing. Semi-screen editors like ISPF do win because they do not make any assumptions about the textual units. But on the other hand one can define these (through macros) and bind them to function keys and viola, you have the right macros for the right units. Ex. If I am editing a file with .tex as the extension, I get the right macros loaded for this (things like the function key bindings) for text units. If I am editing c programs, the right ones get loaded again. But these should not be limited to only exeisting languages. The editor should be extensible so that new situations can be handled very easily. vi can, by any means, be called an extensible editor. 1. Its arcane macro language. 2. Inability to program the macros + parameterized macros. >:Yours is the answer who has a completely cloistered outlook on life. >Oh, stuff it. Cloistered because he doesn't work with people who >need child-proof caps and coloring-book pictures for their editors? >Who are you teaching, pre-schoolers? I am sorry I made some rude comments in the previous note. I apologize once more. >--tom Anil joshi@cs.uiuc.edu -- "Whatever we wish ourselves to be, we have the power to make ourselves. If what we are now has been the result of our own past actions,then it certainly follows that whatever we wish to be in the future, can be produced by our own present actions." - Vivekananda, Late Nineteenth Century Indian Philosopher
tchrist@convex.COM (Tom Christiansen) (03/06/91)
From the keyboard of joshi@m.cs.uiuc.edu (Anil Joshi): :Set magic off by default. Easily done. In fact, when invoked as `edit', this is the default. :>:What about :>: :>:map! ^X^C^V&^%? :>: :>:Is that mnemonic for you? You must be kidding. : :>It's my keystroke sequence. Once the keystrokes make sense, the :>bindings do to. It's not a program language, but big deal. It :>does go a long way. : :You cannot see the key strokes. Like is it a carriage return, a space, a Controlchar. ? Hex editing is very bad in vi. It is handled very well in ISPF. What is hex editing? I freely admit that the vi macro language is in a sense arcane, but only because it directly reflects the command language. Better than Pmate, which if I recall had two archaic sets, one for editing, one for programming the macros. At least emacs's macros are in a semi-recognizable programming language. :That is the problem. How many people were involved in giving the original :user specs? Where are the user specs? Where is the test data? Who tested it? :What were the design goals? What assumptions were made about the end users? Who's been feeding you this story? It's a myth that this is the right way to produce excellent software. It just slows down it's completion by an order or two of magnitude, and it doesn't produce better results. In fact, they're often worse: design by committee sucks. Excellent software is the crystalization of one unified vision. It is usually written by one or two programmers working for 1-6 months, a year tops. You discuss the rough goals, find good people, and give them free reign. Then when it's done you go back and fine tune. Otherwise you get garbage. :I am not saying that you cannot teach vi. Unfortunately, it boils down to :learning UNIX as well. The whole thing does not mesh very well. Only to do the powerful things, like regexps, region filters, etc. :I do retract ny earlier statement and APOLOGIZE if I had been rude. Accepted. :I thought that we are talking about program editors here. I do agree that :word star/word perfect are brain-dead editors. But I am talking about other :editors (ISPF/XEDIT) which I think a lot of users of this forum do like but :afraid to say so because they will be ridiculed of liking something from the :big blue. Xedit was icky because of the darn 3270 terminals. Its integrated command language did take an interesting approach. Certainly better than Wordstar, but this is little comparison. In a way, it was reminiscent of shell escapes and filter pipes, right? You could right XEDIT macros in REXX, couldn't you? Isn't that like writing vi macros that call shell scripts? :Problem is that when one is editing programs, the textual units are :non-existent are have a completely different meaning in each programming :language. A good editor should not make any assumptions about the textual :units - the user may be editing any thing. It may be that the emacs's modes take care of this by being able to recognize the type of file and adjust itself accordingly, giving you something of a syntax-directed editor. I work in C and languages resembling C (perl, C++), so I really appreciate the C features. I agree that vi's method of having hardwired knowledge of C and lisp is sub-optimal, but it's better than nothing. I also work in troff a lot, so I like its knowledge not just of words, sentences, and paragraphs, but also the paragraphs and sections according to the dot commands you use, which you can redefine. I know this is old technology, but it sure works for what I need to use it for. Take away my sentence and paragraph region commands when editing things like this, and I will not be happy. :Semi-screen editors like ISPF I begin to sense religion. DO you think you will somehow make the world a better place by making them all learn this editor you keep referencing? I don't know it, so can't make comparisons, so I'll leave that up to someone else. But I can't believe you'd make me more productive by making me use it instead of my highly-tuned, integrated environment I've worked up over years of tinkering. :do win because they do not make any assumptions about the textual units. But :on the other hand one can define these (through macros) and bind them to :function keys and viola, you have the right macros for the right units. viola? violin? ah, voila, as in voici. I get it now. :-) :Ex. If I am editing a file with .tex as the extension, I get the right macros :loaded for this (things like the function key bindings) for text units. : :If I am editing c programs, the right ones get loaded again. But these should :not be limited to only existing languages. The editor should be extensible :so that new situations can be handled very easily. vi can, by any means, be :called an extensible editor. you mean cannot. i'd call it crudely programmable. you can easily set up a script that looks at the file extension and loads the right bindings by setting the EXINIT variable. and certainly emacs can do this with ease. i think even microemacs, the fast one, although i'm not sure. :1. Its arcane macro language. As I've said, this is just its editing language. So? :2. Inability to program the macros + parameterized macros. what do you mean program the macros? i understand the parameterization thing. we're just talking key-bindings, not program-controlled macros. you want a language? either make shell escapes or use emacs. i don't see that it requires a whole new editor. btw, i wouldn't say that unix users can count on having vi and emacs. i'd say they can only count on vi. there are too many kinds of emaxen, and they're not always there. it's been that way for a long time, which is why 1003.2 chose ex and vi as the editor that must be present on a conforming system. minimal fluency in them is really a good idea even if you use something else as your primary editor, if for no other reason because they are guaranteed to be there. --tom
new@ee.udel.edu (Darren New) (03/06/91)
In article <1991Mar05.205629.24743@convex.com> tchrist@convex.COM (Tom Christiansen) writes: >Better than Pmate, which if I recall had two archaic >sets, one for editing, one for programming the macros. Actually, I used PMate for several years and I really liked it. If I recall, there was no archaic (I think you mean arcane) language for "editing" (which I take you to mean interactive work). The key bindings were attached to sequences of macro commands just as in vi or emacs; I don't remember if rebinding was possible because I never did it (working with too many other people). I'll grant that the macro language was kind of ugly, but it was much better for short macros than either vi's (which is too limited) or emacs' (which is too wordy). It was sufficiently powerful to write arcade games in :-) as well as lots of useful stuff. And it fit in 64K along with unlimited size files, which is more than I can say for emacs as well. Actually, now that I think about it, the editting macros seemed to be based on TECO, which at this point is pretty archaic. :-) -- --- Darren New --- Grad Student --- CIS --- Univ. of Delaware --- ----- Network Protocols, Graphics, Programming Languages, Formal Description Techniques (esp. Estelle), Coffee, Amigas ----- =+=+=+ Let GROPE be an N-tuple where ... +=+=+=
dylan@ibmpcug.co.uk (Matthew Farwell) (03/06/91)
In article <1991Mar5.060746.10973@m.cs.uiuc.edu> joshi@m.cs.uiuc.edu (Anil Joshi) writes: >gast@lanai.cs.ucla.edu (David Gast) writes: >>In article <1991Jan30.224717.6150@bradley.bradley.edu> larry@bradley.bradley.edu (Larry D. Stratton) writes: >>>Good God! I do know how to survive using vi and emacs. I've been using >>>them for months. The point is that a new programmer has an exaggerated >>>learning curve with these products as opposed to an editor with function >>>keys defined and use of the full range of keys on the keyboard. >I share his feelings completely. Exaggerated learning curve is not the only >problem with these editors. They presume that user computing is a myth. Try >teaching reg.exprs. to an end user. I have actually. To quite a few, from cs students to normal users. They were generally:- 1) Surprised at how powerful reg. exps were 2) Amazed at how they survived without them. So how does this wonderful ISPF do pattern matching then? I've also taught people how to use vi. Mostly the reactions were variations on 'I didn't know vi could do that, thats ded good' >>you would find that my productivity is much higher with vi/emacs than some >>other brain dead editor. >Get real. Go get a job in the real world. And how do you know he hasn't got a job in the real world? How do you know that he hasn't been writing editors for the last 20 years? If I were David Gast, I'd find your above statement quite insulting. Whats more important, we don't know *your* background history. Could we please know a bit more. I'd also like to know how ISPF does all these wonderful things, which are obviously *so* easy to learn and use, according to you. Lets have some explanations please... Take it to email if nobody else is interested... Dylan. -- Matthew J Farwell: dylan@ibmpcug.co.uk || ...!uunet!ukc!ibmpcug!dylan If you've ever wondered how to get triangles from a cow, you need butter, milk and cheese and an equilateral chainsaw.
xiaoy@ecf.toronto.edu (XIAO Yan) (03/06/91)
> >What about > >map! ^X^C^V&^%? > >Is that mnemonic for you? You must be kidding. > When you're thinking of doing those mappings, obviously you're not a naive user and I cannot see why you are complaining? I would suggest you just to remember move-around-commands and simple- minded-commands. The more you read vi/ex manual, the more you would complain. Just 2 cents to align with vi-lovers. Xiao
les@chinet.chi.il.us (Leslie Mikesell) (03/06/91)
In article <1991Mar5.184647.28175@m.cs.uiuc.edu> joshi@m.cs.uiuc.edu (Anil Joshi) writes: >>:>>Good God! I do know how to survive using vi and emacs. [re: regexps] >>Say what? You don't HAVE to learn them. Anyone who wants to learn >No. If I want to find say some string which includes a . >1. You have to know what is the magic setting >2. You have to know there is such a thing as editor settings. >3. You have to know that . stands for any character in REG. EXPRS. >4. You have to know how to reset magic. No, all you have to know is that the '\' character removes the magic properties from the following character in vi just like it does in the shell and many other places in unix (e.g. the tty driver itself). I don't see how you can survive long without learning this, because you will certainly need to manipulate the '\' character itself at some point. /\./ will find a period. >The grep command can not be used without reg expr., the substitute can not be >used without reg exprs. Why not have two commands for doing? One command says >just find wihthout magic, and the other says have all the power of reg exprs. If you like single character commands (I do) you will find that there aren't enough of them to make two versions of every command. Besides, why do you think that people who aren't willing to learn the basics would want to deal with twice as many commands? Les Mikesell les@chinet.chi.il.us
peter@ficc.ferranti.com (Peter da Silva) (03/07/91)
In article <39861@cup.portal.com> ts@cup.portal.com (Tim W Smith) writes: > Because the vast majority of programmers have no need to know the ASCII > code. Exactly right. The vast majority of programmers are coding in COBOL on machines that use EBCDIC. -- Peter da Silva. `-_-' peter@ferranti.com +1 713 274 5180. 'U` "Have you hugged your wolf today?"
joshi@m.cs.uiuc.edu (Anil Joshi) (03/07/91)
xiaoy@ecf.toronto.edu (XIAO Yan) writes: >> >>What about >> >>map! ^X^C^V&^%? >> >>Is that mnemonic for you? You must be kidding. >> >When you're thinking of doing those mappings, obviously you're not a >naive user and I cannot see why you are complaining? >I would suggest you just to remember move-around-commands and simple- >minded-commands. The more you read vi/ex manual, the more you would >complain. >Just 2 cents to align with vi-lovers. My complaint is not with the mapping. I don't want you to take away even that minimal functionality from vi. Then vi would be nothing (an empty shell :-)). Any way, see a couple of postings previous to this about not being able to detect what the control sequence is. There are all kinds of suggegstions about going to the ^ and see whether the cursor jumps one space or two spaces etc. This is kludgyness at its best. Clearly the problem lies with the way the vi commands work. This is a very fundamental problems, IMHO. >Xiao you people like this editor and support it. That's fine. But please do accept that this is old technology and should not have been made the POSIX standard in hundred years. That's a real shame. :-( Anil joshi@cs.uiuc.edu -- "Whatever we wish ourselves to be, we have the power to make ourselves. If what we are now has been the result of our own past actions,then it certainly follows that whatever we wish to be in the future, can be produced by our own present actions." - Vivekananda, Late Nineteenth Century Indian Philosopher
tchrist@convex.COM (Tom Christiansen) (03/07/91)
From the keyboard of joshi@m.cs.uiuc.edu (Anil Joshi): :you people like this editor and support it. That's fine. But please do accept :that this is old technology and should not have been made the POSIX standard :in hundred years. That's a real shame. :-( If in a hundred years the POSIX standard were vi, that would be a crime. However, at this point in history, POSIX is not trying to come up with better software (nor can they -- they're a committee). Rather, they're trying to standardize on existing practices. There was no other editor than vi that could have fulfilled this requirement. --tom -- I get so tired of utilities with arbitrary, undocumented, compiled-in limits. Don't you? Tom Christiansen tchrist@convex.com convex!tchrist
joshi@m.cs.uiuc.edu (Anil Joshi) (03/08/91)
dylan@ibmpcug.co.uk (Matthew Farwell) writes: >>>you would find that my productivity is much higher with vi/emacs than some >>>other brain dead editor. >>Get real. Go get a job in the real world. >And how do you know he hasn't got a job in the real world? >How do you know that he hasn't been writing editors for the last 20 years? >If I were David Gast, I'd find your above statement quite insulting. I already apologized to David Gast on the net about my rude comments. There was an implied meaning in the above statement about brain-dead editors - that the users who use them also brain-dead. If a person has contemp for the users then most probably that person has not worked with users before. In the industry, a programmer's job is to keep the end users happy, because the salary of the programmer comes out of user department's budget. They hold the purse strings. >Whats more important, we don't know *your* background history. Could we >please know a bit more. I'd also like to know how ISPF does all these Sure. I programmed for seven years on the following - 1. IBM Mainframes - IBM 3090, 3081 etc. with MVS/XA and VM/CMS, TSO/CLISTs, REXX, DB2, IMS, Assembly, PL/I, COBOL etc. 2. DEC PDP/11 - RSTS/E 3. Burroughs B5700, B5900, B1900, B20, A9, A3, MCP 6.0, DMS-II, COBOL, ALGOL 4. Stratus VOS, Pascal 5. IBM PCs >wonderful things, which are obviously *so* easy to learn and use, according >to you. Lets have some explanations please... Take it to email if nobody else >is interested... I think that explanation is not necessary because you might have already seen some of the people who worked on IBM mainframes miss not only the ISPF editor but ISPF itself. It is more intuitive and user friendly. I have to agree though that the pattern matching facilities in the base ISPF editor are not good. But this problem is easily solved by resorting to macros which can be written in a full functional language like TSO/E CLIST or REXX languages. By the way, REXX has quite a few powerful features for doing pattern matching, building and executing arbitrary statements (it has interpret instruction), and recently pipes etc. It's syntax also is more intuitive than the UNIX shell languages. Anil -- "Whatever we wish ourselves to be, we have the power to make ourselves. If what we are now has been the result of our own past actions,then it certainly follows that whatever we wish to be in the future, can be produced by our own present actions." - Vivekananda, Late Nineteenth Century Indian Philosopher
joshi@m.cs.uiuc.edu (Anil Joshi) (03/08/91)
les@chinet.chi.il.us (Leslie Mikesell) writes: >No, all you have to know is that the '\' character removes the >magic properties from the following character in vi just like it >does in the shell and many other places in unix (e.g. the tty driver >itself). I don't see how you can survive long without learning this, >because you will certainly need to manipulate the '\' character itself >at some point. > /\./ will find a period. That's a constant annoyance. Try to count the number of meta-chars you have to type verses what you have to type if you have two sets of commands. /\.\^\$\$\=\\ vs f .^$$=\ >>The grep command can not be used without reg expr., the substitute can not be >>used without reg exprs. Why not have two commands for doing? One command says >>just find wihthout magic, and the other says have all the power of reg exprs. >If you like single character commands (I do) you will find that there aren't >enough of them to make two versions of every command. Besides, why do you >think that people who aren't willing to learn the basics would want to >deal with twice as many commands? People are willing to learn basics, but why are forcing them to learn more than just the basics? In your model, people have to learn everything or run to a guru a lot of times. In my model, if they do not find the guru, they can still do it the hard way. At least they can get it going. Anyway, where are these reg.exprs. explained? Each utility has its own conventions for reg.exprs. Why? Why not have a common explanation somewhere and all new programs stick to it? Define a minimal set plus extras. No such thing exists in UNIX world today. In my opinion, most of the ills of vi are directly inherited from UNIX. >Les Mikesell > les@chinet.chi.il.us Anil -- "Whatever we wish ourselves to be, we have the power to make ourselves. If what we are now has been the result of our own past actions,then it certainly follows that whatever we wish to be in the future, can be produced by our own present actions." - Vivekananda, Late Nineteenth Century Indian Philosopher
tchrist@convex.COM (Tom Christiansen) (03/08/91)
From the keyboard of joshi@m.cs.uiuc.edu (Anil Joshi): :but ISPF itself. It is more intuitive and user friendly. user friendly == programmer hostile I've yet to find a "user friendly" program that pleased both naive users and also software professionals. :I have to agree though :that the pattern matching facilities in the base ISPF editor are not good. But :this problem is easily solved by resorting to macros which can be written in a :full functional language like TSO/E CLIST or REXX languages. By the way, REXX :has quite a few powerful features for doing pattern matching, building and :executing arbitrary statements (it has interpret instruction), and recently :pipes etc. It's syntax also is more intuitive than the UNIX shell languages. This is religion here. Why don't you go back to IBM where you're obviously so much happier and stop trying to foist your religion on those already happy and productive with UNIX? I've used REXX for non-trivial things, and while it does indeed offer features that the vintage uNIX shell doesn't, there are a lot of other things that have come out in the last 15 years. These tend to be four-letter words, but do be it. --tom -- I get so tired of utilities with arbitrary, undocumented, compiled-in limits. Don't you? Tom Christiansen tchrist@convex.com convex!tchrist
tchrist@convex.COM (Tom Christiansen) (03/08/91)
From the keyboard of joshi@m.cs.uiuc.edu (Anil Joshi): :Anyway, where are these reg.exprs. explained? In the vi manual. In the ed manual. In the regex(3) man page. In the grep(1) man page. I begin to wonder how long Mr. Joshi has actually been working with UNIX. --tom -- I get so tired of utilities with arbitrary, undocumented, compiled-in limits. Don't you? Tom Christiansen tchrist@convex.com convex!tchrist
xiaoy@ecf.toronto.edu (XIAO Yan) (03/08/91)
> (lines deleted) >you people like this editor and support it. That's fine. But please do accept >that this is old technology and should not have been made the POSIX standard >in hundred years. That's a real shame. :-( > (lines deleted) In my opinion, the command structure (or rather, the interface structre) of UNIX puts line break (RETURN) a promenent position and therefore vi and emacs are therefore technology that goes with OS. These line-based editors work well with OS. I really cannot see how you manage a UNIX system well without knowing vi. As philosophers say, behaviour complexity is a mirror image of complexity of reality. If you find vi too complicated, then reduce the needs of complexity at the first place. Xiao
gast@maui.cs.ucla.edu (David Gast) (03/08/91)
In article <1991Mar5.060746.10973@m.cs.uiuc.edu> joshi@m.cs.uiuc.edu (Anil Joshi) writes: >gast@lanai.cs.ucla.edu (David Gast) writes: >>In article <1991Jan30.224717.6150@bradley.bradley.edu> larry@bradley.bradley.edu (Larry D. Stratton) writes: >I share his feelings completely. Exaggerated learning curve is not the only >problem with these editors. They presume that user computing is a myth. Try >teaching reg.exprs. to an end user. I thought we were talking about editors for programmers. Any programmer who cannot handle regular expressions must not be a very good programmer. Even the secretaries in our department can handle regular expressions. Anyway, I would not be caught dead using an editor without them. >I think you are totally wrong here. I am curious as to how much time you have >spent in the industry. And please look around you and count the number of users >who would like vi/emacs. What choice a UNIX user has got? vi or emacs. Both of >them suck (IN MOST OF THE CASUAL USERS' opnion). The very fact that some time >back we saw a posting about a lynch party going to the systems programmer >asking him to change vi to look like ISPF or Word Perfect is a dead give away. There is also the rand editor now called the grand editor. It is on our system although I don't know anyone who uses it. The same goes with some editor which is part of Sun Tools. Most programmers are not casual users. If I had to use ISPF or Word Perfect, I would want it to look like vi or emacs, what does that prove? On my PC, I only have vi (Well, I guess edlin is on there too). It's all I need. >>you would find that my productivity is much higher with vi/emacs than some >>other brain dead editor. >Get real. Go get a job in the real world. How can you speak for me? I said my productivity. I've had jobs in the real world and I don't know of an editor that is faster for me than vi. Anyway, your account seems to be at U of I is that any more of the real world than UC? But I will dismiss the rest of the personal attack. I've used lots of other editors--vi was the at least the fifth one I learned. David
gast@maui.cs.ucla.edu (David Gast) (03/08/91)
In article <1991Mar5.184647.28175@m.cs.uiuc.edu> joshi@m.cs.uiuc.edu (Anil Joshi) writes: >tchrist@convex.COM (Tom Christiansen) writes: >>:gast@lanai.cs.ucla.edu (David Gast) writes: Concerning regular expressions: >No. If I want to find say some string which includes a . >1. You have to know what is the magic setting >2. You have to know there is such a thing as editor settings. >3. You have to know that . stands for any character in REG. EXPRS. >4. You have to know how to reset magic. Set it up one way. Take your pick, but I suggest with magic. Then all you have to know for period is to type \. Is that so difficult? It is any worse than * in the shell? It means there is only one step to learn. Further, unless you are trying to find only a period, a string like "end of sentence. Beginning of sentence here" can be found easily with "/ce. " So the user may have to type n once or twice. Big deal. Further, this dot problem also affects grep and awk and sed and a lot of other programs. You don't use them? How do you teach grep without teaching regular expressions? Do you know what grep stands for? "global regular expression and print" It is straight from "ed". >I can give very elegant solutions to a lots of problems which were posted >in the past if there were column based editing in addition to reg. exprs. in >vi. I am not exactly sure what you mean by column based editing. One solution is to have vi automatically change rotate the text by -90 on entry, then edit normally, and have vi automatically rotate the text by -90 degrees when finished. I suspect you have something else in mind. There is the | command which goes to a specified column. You can set up other features with macros or bind a function key to a vi sequence and a shell script or c program. >The very fact that vi can not be extended and enhanced means that it is >time we abandon this editor and design a new editor from scratch. vi is somewhat extensible with macros, emacs is very extensible. Is ISPF extensible? What about Word Perfect? (The two editors you mention). How do I get vi mode in ISPF? How do I get regular expressions? The fact that vi can call any other program makes it as extensible as the entire Unix operating system. What more do you want? >It will >include the good features from vi, emacs, ISPF etc. but only after a consensus >from the users at large. Not somebody just sitting at the terminal and >hacking up something that serves his/her purpose. It is impossible to get all users to agree on features. There will be no consensus. >>:Are you talking about speed of editors here or speed of usage? For one, >>:emacs is the slowest thing I have seen in my seven years of experience. I stated very clearly speed of usage. But there are small emacs that run fast. >That is the problem. How many people were involved in giving the original >user specs? Where are the user specs? Where is the test data? Who tested it? >What were the design goals? What assumptions were made about the end users? You would have to ask the people at Bell Labs. vi and ex are just extensions of ed. Anyway, are you really convinced that an editor designed by committee with be small, effective, and fast? >I am not saying that you cannot teach vi. Unfortunately, it boils down to >learning UNIX as well. The whole thing does not mesh very well. This is a really curious statement unless you believe that you should have one sort program when using Perfect Editor and another sort program an user interface when using Perfect DB and another sort program and user interface when using Perfect SpreadSheet, etc. >I do get >frustrated on the other hand with people who argue wihtout having seen other >things. I have seen other things. Did you read what I posted? So as Tom. >editors (ISPF/XEDIT) which I think a lot of users of this forum do like but >afraid to say so because they will be ridiculed of liking something from the >big blue. I've used XEDIT. I prefer vi. I used XEDIT for at least three years before I learned vi. I knew XEDIT better than anyone else that I knew. >Ex. If I am editing a file with .tex as the extension, I get the right macros >loaded for this (things like the function key bindings) for text units. You can do this with a simple shell script and vi or just vi if you want to do it manually. >2. Inability to program the macros + parameterized macros. Yes, it would be easier to use if there were parameters and a few other features. I would support your adding them. I do not, however, want to throw the baby out with the bath water. David
mroussel@alchemy.chem.utoronto.ca (Marc Roussel) (03/09/91)
In article <1991Mar07.232206.8438@convex.com> tchrist@convex.COM (Tom Christiansen) writes: >From the keyboard of joshi@m.cs.uiuc.edu (Anil Joshi): >:Anyway, where are these reg.exprs. explained? > >In the vi manual. In the ed manual. In the regex(3) man page. In the >grep(1) man page. I begin to wonder how long Mr. Joshi has actually been >working with UNIX. Anil's point was that many Unix utilities use different flavours of regular expressions. I for one find that to be a nuisance too. Why should grep use different syntax for its regular expressions than ex? (I know they're quite similar, but at least on our system, they're not identical as far as I can make out from the man pages. Luckily, I've only run into the subtleties once or twice.) Marc R. Roussel mroussel@alchemy.chem.utoronto.ca
ed@lvw6.lvw.loral.com (Ed Allen) (03/10/91)
Why don't you just set 'nomagic' then the special meaning goes away. If you want it back, use '\' before the character: /.\.\*./ will find a line with two periods on it. -- Never trust a man who wears white shoes. | Ed Allen Vote Libertarian... Scare the Hell out of 'em. | Loral Command & Contr. Sys.
ts@cup.portal.com (Tim W Smith) (03/10/91)
>> Because the vast majority of programmers have no need to know the ASCII >> code. > >Exactly right. The vast majority of programmers are coding in COBOL on >machines that use EBCDIC. No, the vast majority are using modern languages where the compiler handles translating things like 'a' into the appropriate ASCII code (or EBCDIC code if that's what the machine uses). Unless you program like this: unsigned char main[] = { 12, 17, 97, 243, 122 }; you rarely need to know ASCII codes. Tim Smith
les@chinet.chi.il.us (Leslie Mikesell) (03/11/91)
In article <1991Mar7.214419.17515@m.cs.uiuc.edu> joshi@m.cs.uiuc.edu (Anil Joshi) writes: [backslash forces literal in regexp] >That's a constant annoyance. Try to count the number of meta-chars you have to >type verses what you have to type if you have two sets of commands. But you do have two sets of commands: set nomagic operation vs. set magic operation This is what you were complaining about in the first place as I recall. Use an appropriate mapping if you think there is an easier way to do it. >Anyway, where are these reg.exprs. explained? Each utility has its own >conventions for reg.exprs. Why? Why not have a common explanation somewhere >and all new programs stick to it? Define a minimal set plus extras. No such >thing exists in UNIX world today. In my opinion, most of the ills of vi are >directly inherited from UNIX. Now you've hit the real problem, and one that does not have any simple solution. Note the resemblance to the problems with human languages. Where are the rules explained? Why are there exceptions? Unix utilities have evolved into their current form without a single point of control that can make decisions like that. And if someone did try to force regexps into a "lowest-common-denominator" model, the utilities affected would just be avoided and people would use an add-on utility like perl with useful extensions. Note more carefully what you say about vi inheriting things from unix, though, keeping in mind that the original set of users were unix programmers and you will see that it actually made it more intuitive. Also, the original users of unix had access to the source (and the authors) of everything. Unfortunately, this is still reflected in the lack of documentation. Les Mikesell les@chinet.chi.il.us
xiaoy@ecf.toronto.edu (XIAO Yan) (03/12/91)
In article <40012@cup.portal.com> ts@cup.portal.com (Tim W Smith) writes: (lines deleted) >handles translating things like 'a' into the appropriate ASCII code >(or EBCDIC code if that's what the machine uses). > >Unless you program like this: > > unsigned char main[] = { 12, 17, 97, 243, 122 }; > >you rarely need to know ASCII codes. Can't you define macros to generate those nice ASCII codes if your personal taste prefers? Above all, 'a' is not so professional as 97 :-). Xiao
meissner@osf.org (Michael Meissner) (03/13/91)
In article <40012@cup.portal.com> ts@cup.portal.com (Tim W Smith) writes: | >> Because the vast majority of programmers have no need to know the ASCII | >> code. | > | >Exactly right. The vast majority of programmers are coding in COBOL on | >machines that use EBCDIC. | | No, the vast majority are using modern languages where the compiler | handles translating things like 'a' into the appropriate ASCII code | (or EBCDIC code if that's what the machine uses). | | Unless you program like this: | | unsigned char main[] = { 12, 17, 97, 243, 122 }; | | you rarely need to know ASCII codes. Or unless you build an array which uses the character code as an index (ie, you want to say array[ch] where ch = 'a', and array is initialized statically). -- Michael Meissner email: meissner@osf.org phone: 617-621-8861 Open Software Foundation, 11 Cambridge Center, Cambridge, MA, 02142 Considering the flames and intolerance, shouldn't USENET be spelled ABUSENET?
torek@elf.ee.lbl.gov (Chris Torek) (03/18/91)
In article <1991Mar8.164415.14087@alchemy.chem.utoronto.ca> mroussel@alchemy.chem.utoronto.ca (Marc Roussel) writes: >Anil's point was that many Unix utilities use different flavours of >regular expressions. I for one find that to be a nuisance too. Why >should grep use different syntax for its regular expressions than ex? This is fixed in 10th Edition Unix. It is just an accident of history. There *is* a reason for some difference, actually: Editors must have a way of marking matches for substitutions, while pure matchers (grep) do not need this. Things might be in much better shape if Ken Thompson had originally designed `ed' with a single special character that introduced all regular expression metasequences; then existing programs (and people!) that use the various RE matchers would already quote that character and it would not be such a problem to change them all to have some new feature. For instance, if `_' were the magic character, then: grep stdio.h *.c would do what you meant; you would have to ask for grep '#_ _*include_ _*<_._*>' to match `#, followed by any amount of space, followed by include, followed by any amount of space, followed by <, followed by any amount of anything except newline, followed by >'. Here `_ ' means `space or tab' and is just shorthand for _[ _]. `Remembering' for replacements could be done with _(foo_) and back-references with _1 through _9. You could also get rid of the positional requirements for - and ^ within character classes (I got rid of the one for ] already, above, by using _]) by using _- and _^: _[^a_-zA_-Z-_] would mean `class: caret, or a through z, or A through Z, or hyphen', which matches things like `word' or `hyphenated-word' and includes words spelled `r^ole'. To match everything but that, throw _^ in somewhere. (Now someone will argue for something other than `_'... :-) Backslash would be good, but the shell uses it; that is why I picked _ here.) (Actually, if I were designing an RE syntax, I think I would make Kleene `*' matching use a prefix, not a postfix; it means something like foo\* bar would match `foobar' and `foo bar'. I think of * as `zero or more', so this means "foo, zero or more o's, bar". \+X for 1 or more X, and \<m,n>X for `between m and n inclusive' X's, would also be useful.) -- In-Real-Life: Chris Torek, Lawrence Berkeley Lab CSE/EE (+1 415 486 5427) Berkeley, CA Domain: torek@ee.lbl.gov
larry@st-andy.uucp (Larry Martell) (03/20/91)
In article <39861@cup.portal.com> ts@cup.portal.com (Tim W Smith) writes: >< for next line than "control-N" or j (if you know the ascii code). How can >< a programmer not know the Ascii code? > >Because the vast majority of programmers have no need to know the ASCII >code. > Because the vast majority of programmers have no idea how the underlying machine works is why there are so many poor programmers. -- Larry Martell uunet!st-andy!larry 212-668-9478
ronald@robobar.co.uk (Ronald S H Khoo) (03/27/91)
torek@elf.ee.lbl.gov (Chris Torek) writes: > Things might be in much better shape if Ken Thompson had originally > designed `ed' with a single special character that introduced all > regular expression metasequences; Perl does this with '\'. Nice. Problem is I keep typing Perl-style patterns at other utilities, now :-( > (Actually, if I were designing an RE syntax, I think I would make Kleene > `*' matching use a prefix, Yuck. I vaguely remember an editor embedded in some language product that ran on a micro (was it a BBC ? can't remember) doing something like this and I *hated* it. WHAT? You mean I gotta know what I want to repeat *before* I type it? Ugh. -- Ronald Khoo <ronald@robobar.co.uk> +44 81 991 1142 (O) +44 71 229 7741 (H)
freek@fwi.uva.nl (Freek Wiedijk) (03/28/91)
In article <11036@dog.ee.lbl.gov> torek@elf.ee.lbl.gov (Chris Torek) writes: >Things might be in much better shape if Ken Thompson had originally >designed `ed' with a single special character that introduced all >regular expression metasequences; I always thought that `ed' had been written by Kernighan (because he wrote the manual). Can anyone tell me the history of `ed'? It is my favorite editor! Freek "the Pistol Major" Wiedijk E-mail: freek@fwi.uva.nl #P:+/ = #+/P?*+/ = i<<*+/P?*+/ = +/i<<**P?*+/ = +/(i<<*P?)*+/ = +/+/(i<<*P?)**
soh@andromeda.trl.OZ.AU (kam hung soh) (06/01/91)
I had been using both emacs and vi for the past eight months; emacs for heavy duty text processing and vi for fixing small glitches. After modifying my .exrc using tips from this newsgroup, I decided to dump emacs and use vi exclusively. "I need the memory and extra CPU time," I told myself. It was a horrible experience. No multiple files / views / buffers, no cut-and-paste between windows, no auto auto-indent for the code (yes, vi had shiftwidth and autoindent, but it's not in the same league as emacs), no warnings if I stuffed up my scope symbols. So, I'm back to my old setup with emacs and vi. My opinions about the constant vi vs. emacs war are: 1. vi is unbeatable for fixing files. It is fast and small, the cursor whizzes along if I know what I am looking for. 2. emacs is best for large editing jobs. It has the appropriate checks for scope symbols ( { and }, \begin and \end, etc.) and plenty of editing functions. Maybe what I need is vimacs .... Regards, ------------ Soh, Kam Hung email: h.soh@trl.oz.au tel: +61 3 541 6403 Telecom Research Laboratories, POB 249 Clayton, Victoria 3168, Australia
Dan_Jacobson@ATT.COM (06/01/91)
>>>>> On 1 Jun 91 02:15:05 GMT, soh@andromeda.trl.OZ.AU (kam hung soh) said:
kam> So, I'm back to my old setup with emacs and vi.
kam> Maybe what I need is vimacs ....
Try emacs' vi emulation. Do ESC x vip
and also get into emacs' info reader (C-h i) and read
"* VIP: (vip). A VI-emulation for Emacs."
melling@cs.psu.edu (Michael D Mellinger) (06/02/91)
In article <1991Jun1.113702.410@cbfsb.att.com> Dan_Jacobson@ATT.COM writes:
kam> So, I'm back to my old setup with emacs and vi.
kam> Maybe what I need is vimacs ....
Try emacs' vi emulation. Do ESC x vip
and also get into emacs' info reader (C-h i) and read
"* VIP: (vip). A VI-emulation for Emacs."
That wasn't his complaint. I think it was something to the effect
that Emacs was big and slow. Launching Emacs for little jobs isn't
quite fast enough unless you have a fast machine.
Is there a another program available besides Emacs client that will
create an Emacs subprocess in the current window? In other words, I
want to start Emacs then type ec and have an Emacs buffer running in
my current window.
-Mike
guy@auspex.auspex.com (Guy Harris) (06/02/91)
>Try emacs' vi emulation.
Which may not fix the problems I infer he had with EMACS; I infer that
EMACS was too slow to start up and run if he only wanted to make a small
fix to a file.
soh@andromeda.trl.OZ.AU (kam hung soh) (06/03/91)
Dan_Jacobson@ATT.COM writes: >>>>>> On 1 Jun 91 02:15:05 GMT, soh@andromeda.trl.OZ.AU (kam hung soh) said: >Try emacs' vi emulation. Do ESC x vip >and also get into emacs' info reader (C-h i) and read >"* VIP: (vip). A VI-emulation for Emacs." I had a go at VIP, and it emulates vi very well (right down to the single undo vi offers(!)). However, in the interests of speed and perversity, I decided to have a go at ``ed'' for doing tiny-weeny fixes. ;-->> Regards, Soh, Kam Hung email: h.soh@trl.oz.au tel: +61 3 541 6403 Telecom Research Laboratories, POB 249 Clayton, Victoria 3168, Australia
gvr@cs.brown.edu (George V. Reilly) (06/03/91)
In article <1991Jun2.224020.9490@trl.oz.au> soh@andromeda.trl.OZ.AU (kam hung soh) writes: # Dan_Jacobson@ATT.COM writes: # # >>>>>> On 1 Jun 91 02:15:05 GMT, soh@andromeda.trl.OZ.AU (kam hung soh) said: # # >Try emacs' vi emulation. Do ESC x vip # >and also get into emacs' info reader (C-h i) and read # >"* VIP: (vip). A VI-emulation for Emacs." # # I had a go at VIP, and it emulates vi very well (right down to the # single undo vi offers(!)). Not true. VIP offers multiple undo (`u' followed by as many `.'s as you need to get back to a safe state). Aamod Sane recently posted a revised version of VIP which is closer to the original vi. ________________ George V. Reilly `VIP in my own mind' gvr@cs.brown.edu +1 (401) 863-7684 uunet!brunix!gvr gvr@browncs.bitnet Box 1910, Brown U, Prov, RI 02912
wyle@inf.ethz.ch (Mitchell Wyle) (06/03/91)
In <1991Jun1.021505.4043@trl.oz.au> soh@andromeda.trl.OZ.AU (kam hung soh) writes: >2. emacs is best for large editing jobs. It has the appropriate checks >for scope symbols ( { and }, \begin and \end, etc.) and plenty of >editing functions. Check out the vi % command. It checks the scope of braces, parenthesis, etc.
les@chinet.chi.il.us (Leslie Mikesell) (06/03/91)
In article <1991Jun1.021505.4043@trl.oz.au> soh@andromeda.trl.OZ.AU (kam hung soh) writes: >[...] I decided to dump emacs and use vi exclusively. >It was a horrible experience. No multiple files / views / buffers, no >cut-and-paste between windows, no auto auto-indent for the code You can, of course, run multiple vi's under any windowing system that allows it, and use the windowing system's cut and paste if you prefer it to explicit tmp files (I don't, except when one of the windows is running something that doesn't know how to use files or the programs in the different windows don't share a common filesystem). You can also use an external program to auto-indent or whatever else you need to do. >1. vi is unbeatable for fixing files. It is fast and small, the cursor >whizzes along if I know what I am looking for. >2. emacs is best for large editing jobs. It has the appropriate checks >for scope symbols ( { and }, \begin and \end, etc.) and plenty of >editing functions. >Maybe what I need is vimacs .... I suspect that emacsclient is what you need if you can afford to keep an emacs running all the time. I'm surprised that no one has made a mini-emacs that handled simple editing functions (only), but could save its state and start up big-brother-GNU without losing your place if you decide you want to do something more complicated. Les Mikesell les@chinet.chi.il.us
enag@ifi.uio.no (Erik Naggum) (06/04/91)
Leslie Mikesell <les@chinet.chi.il.us> writes: | | In article <1991Jun1.021505.4043@trl.oz.au> soh@andromeda.trl.OZ.AU (kam hung soh) writes: | >[...] I decided to dump emacs and use vi exclusively. | >It was a horrible experience. No multiple files / views / buffers, no | >cut-and-paste between windows, no auto auto-indent for the code | | You can, of course, run multiple vi's under any windowing system that | allows it, and use the windowing system's cut and paste if you | prefer it to explicit tmp files (I don't, except when one of the | windows is running something that doesn't know how to use files or | the programs in the different windows don't share a common filesystem). | You can also use an external program to auto-indent or whatever else | you need to do. I may be missing something, but I usually use "ay} to save a paragraph in buffer (?) a, switch files*, and do "ap where I want to put it back. There are at least 26 such buffers available. I also use marks a lot, to move around faster. It seems that these features are not well known. * The only thing I hate about switching files is that vi insists on writing out the current file and reading in the new file in its place. Not always what I want. </Erik> -- Erik Naggum Professional Programmer +47-2-836-863 Naggum Software Electronic Text <ERIK@NAGGUM.NO> 0118 OSLO, NORWAY Computer Communications <enag@ifi.uio.no>
les@chinet.chi.il.us (Leslie Mikesell) (06/05/91)
In article <ENAG.91Jun4002738@gyda.ifi.uio.no> enag@ifi.uio.no (Erik Naggum) writes: >| You can, of course, run multiple vi's under any windowing system that >| allows it, and use the windowing system's cut and paste if you >| prefer it to explicit tmp files >I may be missing something, but I usually use "ay} to save a paragraph >in buffer (?) a, switch files*, and do "ap where I want to put it back. >There are at least 26 such buffers available. I also use marks a lot, >to move around faster. It seems that these features are not well known. I guess my usage may not be typical... I tend to work on configuration files etc. on several different machines at once using either the virtual terminals of a '386 unix console running cu in different sessions or a machine running Microsoft Windows with multiple kermit sessions or a combination of the two. The machines in question may or may not have network links, so I tend not to rely on being able to access the reference file in the same session, but if I know of a common directory on the two machines I usually write the piece I want to a tmp file in one session, jump to the other and read it in. The sessions don't even need to be concurrent. The kermits-under-windows setup is new, so I don't have much experience with the screen cut and paste technique, but it looks good so far. >* The only thing I hate about switching files is that vi insists on >writing out the current file and reading in the new file in its place. >Not always what I want. And the thing I hate about it is that it's not at all obvious where you are going when you switch, unless you remember what you have done so far. If you use explicit tmp files you don't need to know much else about the source of data and it will stay around even if you need to interrupt the sessions. Les Mikesell les@chinet.chi.il.us
lattice@iris.mincom.oz.au (Lattice) (06/06/91)
In article <1991Jun03.151727.9944@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >In article <1991Jun1.021505.4043@trl.oz.au> soh@andromeda.trl.OZ.AU (kam hung soh) writes: >>[...] I decided to dump emacs and use vi exclusively. >>It was a horrible experience. No multiple files / views / buffers, no >>cut-and-paste between windows, no auto auto-indent for the code > >You can, of course, run multiple vi's under any windowing system that >allows it, and use the windowing system's cut and paste if you >prefer it to explicit tmp files (I don't, except when one of the >windows is running something that doesn't know how to use files or >the programs in the different windows don't share a common filesystem). >You can also use an external program to auto-indent or whatever else >you need to do. > I am a recent *convert* to emacs from vi, but I recognise that they are both valuable tools, though emacs is now my editor of choice. With reference to the above I would say two things: 1. There is no need to use an external program for indentation - vi has an autoindent mode, invoked using :set autoindent or :set ai These can be invoked automatically by placing entries in your ~/.exrc file or through the EXINIT env variable. 2. vi does allow you to cut and paste between files, though not as elegantly as emacs - the limitation being more that vi doesn't support windows. For example, "a3Y ; yank 3 lines into buffer 'a' :e otherfile ; call up the file to paste to "ap ; print the contents of buffer 'a' below ; the current cursor position There are many other ways that this can be done, including yanking regions, printing the named buffer before the current line, etc. vi does tend to be fairly orthogonal in this way. mark stavar
les@chinet.chi.il.us (Leslie Mikesell) (06/12/91)
In article <1148@iris.mincom.oz.au> lattice@iris.mincom.oz.au () writes: >I am a recent *convert* to emacs from vi, but I recognise that they are both >valuable tools, though emacs is now my editor of choice. >With reference to the above I would say two things: > 1. There is no need to use an external program for indentation - > vi has an autoindent mode, invoked using > :set autoindent That's fine for typing entirely new code, but what do you do when you add or delete a loop surrounding existing code and want the indentation fixed?. I usually just pipe through cb. Les Mikesell les@chinet.chi.il.us
lattice@iris.mincom.oz.au (Lattice) (06/14/91)
In article <1991Jun11.203851.26928@chinet.chi.il.us> les@chinet.chi.il.us (Leslie Mikesell) writes: >> 1. There is no need to use an external program for indentation - >> vi has an autoindent mode, invoked using >> :set autoindent > >That's fine for typing entirely new code, but what do you do when you >add or delete a loop surrounding existing code and want the indentation >fixed?. I usually just pipe through cb. > In this case I would normally mark the top and bottom of the altered block and use the indent/undent option '>'/'<' respectively, i.e., /* mark the top and bottom of the block as a and b */ :'a, 'b < (or >) I must admit though to having encountered some difficulty with this method when the tabstops value is set to something other than a full tab. Still it can be quite adequate. mark stavar