Author Topic: Anyone recall TMI2 + vi ?  (Read 3330 times)

Offline quixadhal

  • BFF
  • ***
  • Posts: 642
    • View Profile
    • WileyMUD
Anyone recall TMI2 + vi ?
« on: September 19, 2007, 06:46:23 PM »
I recall an old hack to a MudOS + TMI2 package years ago which incorporated a copy of vi (nvi, I think, although it might have been elvis) so it could be used from inside the mudlib.  Unfortunately, I can't find the dusty old copy I had, so I can't look to see what they did.  Anyone else remember that?

Oh, I'm sure someone will pipe up with how putting the socket into character mode is ebil and wastes bandwidth.  I'll just respond now that it wastes no more bandwidth than shelling into the machine the game runs on and using vim from bash, and it would be nice to have the mud's own security decide what can be edited by whom. *grin*

Offline Tricky

  • BFF
  • ***
  • Posts: 189
  • I like what I code and I code what I like!
    • View Profile
Re: Anyone recall TMI2 + vi ?
« Reply #1 on: September 19, 2007, 06:51:11 PM »
I don't think it is really about the bandwidth wastage, it is more the fact about the problems of embedding a screen mode editor. Line editors are simpler to implement and can actually be emulated in LPC.

Tricky

Offline chaos

  • BFF
  • ***
  • Posts: 291
  • Job, school, social life, sleep. Pick 2.5.
    • View Profile
    • Lost Souls
Re: Anyone recall TMI2 + vi ?
« Reply #2 on: September 20, 2007, 08:14:11 AM »
Yeah.  People are always saying things to me that amount to "oh, we should just throw in vi" without any concept of basic issues like "what happens to the MUD output you're receiving during your vi session"?

In the end, it's just a whole lot of work, and it's hard to say there's any return at all when people can just use whatever editor they like locally and publish via ftp.

Offline quixadhal

  • BFF
  • ***
  • Posts: 642
    • View Profile
    • WileyMUD
Re: Anyone recall TMI2 + vi ?
« Reply #3 on: September 20, 2007, 02:07:13 PM »
Yeah.  People are always saying things to me that amount to "oh, we should just throw in vi" without any concept of basic issues like "what happens to the MUD output you're receiving during your vi session"?

Not sure about the other people, but my suggestion for that is to queue the last N messages you would have received in a FIFO, and invoke a pager to display them when you've returned to a normal state.  This is the same thing we did back in Dikuland when people were reading message boards or their mudmail. We implemented it because people would walk in and emote/tell at you just to grief you while you were reading.

Just using ftp is workable (obviously, so is just using ed), but very crude.  It's not hard to make mistakes and upload your file to the wrong directory if you forget an lcd when you do a cd, or download an old copy onto your new version because you thought you were in a different test directory locally.

Being able to invoke an editor on the server side would also allow the use of subversion or cvs directly, possibly even automatically if the editor actually writes the file.  That would give the mud admin a trail to follow when someone breaks something.

Of course, it IS a lot of work.  You have to ensure some kind of valid terminal type has been passed from the client (or assume vt100 and cross your fingers), and the editor itself has to be secured so that it may only edit the single filename passed to it, or it will be a security nightmare.

Come to think of it... if you have the terminal settings, there's no reason the curses library couldn't be exposed to LPC, and then make a full screen editor in LPC.  That would also be a lot of work, but probably on the same order.  Hmmmm.

Well, anyways... I asked because I know it was done once before and I wanted to see how they did it. :)

Offline beek

  • Acquaintance
  • *
  • Posts: 2
    • View Profile
Re: Anyone recall TMI2 + vi ?
« Reply #4 on: April 02, 2008, 09:01:22 PM »

the only people who ever needed more than a line editor
in that time frame were trusted with ftp accounts, and
used ange-ftp + emacs.

Most sites really didn't have the bandwidth/latency to support
visual editors for large numbers of users.  Seems hard to
believe today, but it was true.