• Menushell.js

    From Underminer@VERT/UNDRMINE to All on Sat Aug 22 17:14:08 2020
    Howdy Hi,
    I found and was playing with menushel.src/bin menushell.js and menuedit.js. Very cool concept, but whole the generated menu/shell navigates menus fine, and will execute externals just fine, any internal commands throw an Error of:

    Error: 'BBS' instance: No Private Data or Class Mismatch

    This looks to be related to how commands are being called in menu-commands.js, but I don't see any reason offhand it shouldn't be working. Is this a known issue? Am I missing an include somewhere? Any other documentation related to any of it exist?

    Thanks.
    ---
    Underminer
    The Undermine BBS - bbs.undermine.ca:423
    Fidonet: 1:342/17
    ---
    ■ Synchronet ■ The Undermine - bbs.undermine.ca:423
  • From Digital Man@VERT to Underminer on Sat Aug 22 19:08:35 2020
    Re: Menushell.js
    By: Underminer to All on Sat Aug 22 2020 05:14 pm

    Howdy Hi,
    I found and was playing with menushel.src/bin menushell.js and menuedit.js. Very cool concept, but whole the generated menu/shell navigates menus fine, and will execute externals just fine, any internal commands throw an Error of:

    Error: 'BBS' instance: No Private Data or Class Mismatch

    This looks to be related to how commands are being called in menu-commands.js, but I don't see any reason offhand it shouldn't be working. Is this a known issue? Am I missing an include somewhere? Any other documentation related to any of it exist?

    I one time, it used to be possible to execute methods of one built-in object with the "this" pointing to another object. It was a (bad) bug that allowed that to work and when it didn't work, it was bad too.
    Here are the details: https://gitlab.synchro.net/sbbs/sbbs/-/commit/6f83c4ff9489fcf0ef66b48b6080959790170755

    So, I'm guessing that the menushell experiment is using Object.apply() incorrectly and that needs to be fixed.

    digital man

    Synchronet/BBS Terminology Definition #40:
    IBM437 = Code Page 437 (so-called IBM Extended ASCII)
    Norco, CA WX: 84.5°F, 54.0% humidity, 13 mph ENE wind, 0.00 inches rain/24hrs

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From echicken@VERT/ECBBS to Underminer on Sat Aug 22 23:05:29 2020
    Re: Menushell.js
    By: Underminer to All on Sat Aug 22 2020 17:14:08

    I found and was playing with menushel.src/bin menushell.js and menuedit.js.

    This was an experiment / proof of concept, and I highly recommend against using it. The code is a disaster.

    Error: 'BBS' instance: No Private Data or Class Mismatch

    A sign of wacky JS shenanigans happening. I never ran into that error back when I wrote the thing (it all worked at least) but something must've changed since then.

    This looks to be related to how commands are being called in menu-commands.js, but I don't see any
    reason offhand it shouldn't be working. Is this a known issue? Am I missing an include somewhere?
    Any other documentation related to any of it exist?

    Treat the entire thing as "shouldn't be working". There are probably a lot of other problems lurking than just this error. These scripts would need a lot of rehab or rewrite before I would recommend that anyone use them.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ■ Synchronet ■ electronic chicken bbs - bbs.electronicchicken.com
  • From Nightfox@VERT/DIGDIST to echicken on Sat Aug 22 21:10:36 2020
    Re: Menushell.js
    By: echicken to Underminer on Sat Aug 22 2020 11:05 pm

    I found and was playing with menushel.src/bin menushell.js and
    menuedit.js.

    This was an experiment / proof of concept, and I highly recommend against using it. The code is a disaster.

    Treat the entire thing as "shouldn't be working". There are probably a lot of other problems lurking than just this error. These scripts would need a lot of rehab or rewrite before I would recommend that anyone use them.

    That reminds me, I was curious if you plan to update menuedit.js, or do you no longer have much interest in it?

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From echicken@VERT/ECBBS to Nightfox on Sun Aug 23 12:43:16 2020
    Re: Menushell.js
    By: Nightfox to echicken on Sat Aug 22 2020 21:10:36

    That reminds me, I was curious if you plan to update menuedit.js, or do you no longer have much
    interest in it?

    I have no use for it myself, so "interest" is sort of meh. I'd rewrite it as a public service if it's something that people (mostly new sysops) want.

    The core idea was to create something that generates a menu spec (an INI or JSON file) which can be read and handled by any number of command shell templates. (I think I made a basic hotkey shell and a lightbar one.)

    It worked, but I wasn't thrilled with it and never really recommended its use. I imagine I could do a better job today.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ■ Synchronet ■ electronic chicken bbs - bbs.electronicchicken.com
  • From Nightfox@VERT/DIGDIST to echicken on Sun Aug 23 10:22:52 2020
    Re: Menushell.js
    By: echicken to Nightfox on Sun Aug 23 2020 12:43 pm

    That reminds me, I was curious if you plan to update menuedit.js, or
    do you no longer have much interest in it?

    I have no use for it myself, so "interest" is sort of meh. I'd rewrite it as a public service if it's something that people (mostly new sysops) want.

    The core idea was to create something that generates a menu spec (an INI or JSON file) which can be read and handled by any number of command shell templates. (I think I made a basic hotkey shell and a lightbar one.)

    It worked, but I wasn't thrilled with it and never really recommended its use. I imagine I could do a better job today.

    I imagine new Synchronet sysops might find something like that useful. When I started using Synchronet, I think one of the most different things about Synchronet I noticed was that it uses command shells for its menu system and doesn't have a menu editor like many other BBS packages do.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From Underminer@VERT/UNDRMINE to echicken on Sun Aug 23 13:23:14 2020
    Re: Menushell.js
    By: echicken to Underminer on Sat Aug 22 2020 11:05 pm

    Treat the entire thing as "shouldn't be working". There are probably a lot of other problems lurking than just this error. These scripts would need a lot of rehab or rewrite before I would recommend that anyone use them.

    Yeah, that's fair. Just seemed like a wonderful thing to discover as back in my RA days I used to like doing minor tweaks to menu trees on a fairly regular basis. Not that this is impossible with BAJA or JS, it just feels like more of a chore...
    ---
    Underminer
    The Undermine BBS - bbs.undermine.ca:423
    Fidonet: 1:342/17
    ---
    ■ Synchronet ■ The Undermine - bbs.undermine.ca:423
  • From Underminer@VERT/UNDRMINE to Nightfox on Sun Aug 23 13:25:30 2020
    Re: Menushell.js
    By: Nightfox to echicken on Sun Aug 23 2020 10:22 am

    I imagine new Synchronet sysops might find something like that useful. When I started using Synchronet, I think one of the most different things about Synchronet I noticed was that it uses command shells for its menu system and doesn't have a menu editor like many other BBS packages do.

    And that's probably a component as to why 80% of synchronet installs are all the default shell and menu structure. Synchronet is wonderfully powerfull for customization, but the learning curve to doing so is somewhat steep.
    ---
    Underminer
    The Undermine BBS - bbs.undermine.ca:423
    Fidonet: 1:342/17
    ---
    ■ Synchronet ■ The Undermine - bbs.undermine.ca:423
  • From MRO@VERT/BBSESINF to Underminer on Sun Aug 23 17:35:26 2020
    Re: Menushell.js
    By: Underminer to Nightfox on Sun Aug 23 2020 01:25 pm

    Re: Menushell.js
    By: Nightfox to echicken on Sun Aug 23 2020 10:22 am

    I imagine new Synchronet sysops might find something like that
    useful. When I started using Synchronet, I think one of the most
    different things about Synchronet I noticed was that it uses command
    shells for its menu system and doesn't have a menu editor like many
    other BBS packages do.

    And that's probably a component as to why 80% of synchronet installs are all the default shell and menu structure. Synchronet is wonderfully powerfull for customization, but the learning curve to doing so is somewhat steep.


    if you're using baja its pretty easy

    cmdkey x
    [command]
    end_cmd

    that's all you gotta do is look up the docs, see what commands do what and put it in there and compile.

    i suggest getting the renegade clone and changing the commands and screens. pretty easy to do. then you can add more as you need it.

    i can understand how .js scares people away because it seems like a lot more code and it's all indented and and it overloads the average joe.
    ---
    ■ Synchronet ■ ::: BBSES.info - free BBS services :::
  • From Nightfox@VERT/DIGDIST to Underminer on Sun Aug 23 15:30:12 2020
    Re: Menushell.js
    By: Underminer to Nightfox on Sun Aug 23 2020 01:25 pm

    I imagine new Synchronet sysops might find something like that
    useful. When I started using Synchronet, I think one of the most
    different things about Synchronet I noticed was that it uses command
    shells for its menu system and doesn't have a menu editor like many
    other BBS packages do.

    And that's probably a component as to why 80% of synchronet installs are all the default shell and menu structure. Synchronet is wonderfully powerfull for customization, but the learning curve to doing so is somewhat steep.

    I was already a software engineer when I started using Synchronet, so I was able to make my own custom command shell right away, but I was somewhat surprised that level of coding is necessary to customize the menu structure & commands. I don't mind programming a command shell, as it allows great flexibility, but I definitely think a menu editor of some kind would be useful, particularly for new Synchronet sysops or those who dodn't want to have to do so much coding.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From Underminer@VERT/UNDRMINE to MRO on Sun Aug 23 17:43:35 2020
    Re: Menushell.js
    By: MRO to Underminer on Sun Aug 23 2020 05:35 pm

    if you're using baja its pretty easy
    cmdkey x
    [command]
    end_cmd
    that's all you gotta do is look up the docs, see what commands do what and

    Yes, that's what I've been doing for years. Just thought an alternative would be a nice change and a little less tedious ;)
    ---
    Underminer
    The Undermine BBS - bbs.undermine.ca:423
    Fidonet: 1:342/17
    ---
    ■ Synchronet ■ The Undermine - bbs.undermine.ca:423
  • From Nightfox@VERT/DIGDIST to MRO on Sun Aug 23 17:35:00 2020
    Re: Menushell.js
    By: MRO to Underminer on Sun Aug 23 2020 05:35 pm

    And that's probably a component as to why 80% of synchronet
    installs are all the default shell and menu structure. Synchronet
    is wonderfully powerfull for customization, but the learning curve
    to doing so is somewhat steep.


    if you're using baja its pretty easy

    cmdkey x
    [command]
    end_cmd

    that's all you gotta do is look up the docs, see what commands do what and put it in there and compile.

    i suggest getting the renegade clone and changing the commands and screens. pretty easy to do. then you can add more as you need it.

    i can understand how .js scares people away because it seems like a lot more code and it's all indented and and it overloads the average joe. ---

    I find JS easier than Baja.. And some things in JS actually require fewer lines of code than Baja - For instance, you don't need an "end_cmd" type of thing in JS. You can use curly braces in JS, but if there's just one line of code in the block, you don't need curly braces.. But I suppose I naturally find JavaScript easier since I was already a software developer.

    Also I've found that text parsing (and sometimes text splicing) is something I've had to do fairly often with my Synchronet mods. For instance, reading a configuration file and parsing the settings into variables to be used in the JS script. JS has things that make it really easy to work with strings, such as regular expressions (for text matching), and it's fairly easy to do string searches, splitting, etc. with JS. I'm not sure how easy that kind of thing would be in Baja. It's been a long time since I've done Baja, so I may have forgotten.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From MRO@VERT/BBSESINF to Nightfox on Sun Aug 23 22:35:49 2020
    Re: Menushell.js
    By: Nightfox to MRO on Sun Aug 23 2020 05:35 pm

    I find JS easier than Baja.. And some things in JS actually require fewer lines of code than Baja - For instance, you don't need an "end_cmd" type of thing in JS. You can use curly braces in JS, but if there's just one


    well you are in the minority and also i disagree with the lines of code.

    most people say that you have to be a programmer to run synchronet because of the .js stuff.

    when .js for synchronet first came out, i was excited at first but i couldnt find enough material on it to learn from. after that, i was busy with working and now i'm at an age where i dont give a shit about anything bbs wise.

    matching), and it's fairly easy to do string searches, splitting, etc. with JS. I'm not sure how easy that kind of thing would be in Baja. It's been a long time since I've done Baja, so I may have forgotten.

    back when i was at my peak i could make the bbs turn purple and shit with baja ---
    ■ Synchronet ■ ::: BBSES.info - free BBS services :::
  • From Underminer@VERT/UNDRMINE to Nightfox on Mon Aug 24 00:03:42 2020
    Re: Menushell.js
    By: Nightfox to MRO on Sun Aug 23 2020 05:35 pm

    I find JS easier than Baja.. And some things in JS actually require fewer lines of code than Baja - For instance, you don't need an "end_cmd" type of thing in JS. You can use curly braces in JS, but if there's just one line of code in the block, you don't need curly braces.. But I suppose I naturally find JavaScript easier since I was already a software developer.

    That entirely depends on what *Kind* of development you're doing as a developer; some of us don't use a whole lot of JS in our daily work. That said JS is reasonably quick to pick up for anyone who has dealt with similar languages, and I'm quite happy to have the available flexibility that it offers, but I think for someone just getting some customization started who isn't overly familiar that BAJA may be a little quicker to pick up. The possibility exists that I'm dead wrong on that though.
    ---
    Underminer
    The Undermine BBS - bbs.undermine.ca:423
    Fidonet: 1:342/17
    ---
    ■ Synchronet ■ The Undermine - bbs.undermine.ca:423
  • From Digital Man@VERT to Underminer on Sun Aug 23 23:51:48 2020
    Re: Menushell.js
    By: Underminer to Nightfox on Mon Aug 24 2020 12:03 am

    Re: Menushell.js
    By: Nightfox to MRO on Sun Aug 23 2020 05:35 pm

    I find JS easier than Baja.. And some things in JS actually require fewer lines of code than Baja - For instance, you don't need an "end_cmd" type of thing in JS. You can use curly braces in JS, but if there's just one line of code in the block, you don't need curly braces.. But I suppose I naturally find JavaScript easier since I was already a software developer.

    That entirely depends on what *Kind* of development you're doing as a developer; some of us don't use a whole lot of JS in our daily work. That said JS is reasonably quick to pick up for anyone who has dealt with similar languages, and I'm quite happy to have the available flexibility that it offers, but I think for someone just getting some customization started who isn't overly familiar that BAJA may be a little quicker to pick up. The possibility exists that I'm dead wrong on that though.

    Baja was before JavaScript or most of the other cool modern scripting languages were even invented. There were already many better scripting languages (if it requires compilation before executing, is it still a "script"?), but I didn't know of any open source ones at the time and I really only "needed" something simple. The design was could be described as "emergent", not really designed ahead of time. The result is kind of a cross between BASIC, assembler and some C. Baja shouldn't be familiar to anyone, really, and it stopped improving or evolving around 2001 when discovered the Mozilla JavaScript-C library (SpiderMonkey) and relatively easily shoe-horned that into Synchronet.

    Now, I did have some very "high level" functions in Baja, where'd you call a function and it'd go off into a major part of hard-coded BBS functions with zero-control from the Baja module. I still have all that available in the JS object model (the 'bbs' object methods), but we also have fine-grained functionality. The language is *way* better than Baja and the number of functions/methods and properties available to the script-writer blows Baja away.

    So... yeah, JS > Baja. :-)

    digital man

    Sling Blade quote #20:
    Doyle: Hey is this the kind of retard that drools and rubs shit in his hair? Norco, CA WX: 74.7°F, 77.0% humidity, 0 mph E wind, 0.00 inches rain/24hrs

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Underminer@VERT/UNDRMINE to Digital Man on Mon Aug 24 01:43:13 2020
    Re: Menushell.js
    By: Digital Man to Underminer on Sun Aug 23 2020 11:51 pm

    as "emergent", not really designed ahead of time. The result is kind of a cross between BASIC, assembler and some C. Baja shouldn't be familiar to anyone, really, and it stopped improving or evolving around 2001 when
    with zero-control from the Baja module. I still have all that available in the JS object model (the 'bbs' object methods), but we also have fine-grained functionality. The language is *way* better than Baja and the number of functions/methods and properties available to the script-writer blows Baja away.
    So... yeah, JS > Baja. :-)

    Oh, undoubtedly. I was just trying to suggest that if someone were coming in new with no previous programming experience, Baja seems to me like it might feel more accessible. :)
    ---
    Underminer
    The Undermine BBS - bbs.undermine.ca:423
    Fidonet: 1:342/17
    ---
    ■ Synchronet ■ The Undermine - bbs.undermine.ca:423
  • From HusTler@VERT/HAVENS to Underminer on Mon Aug 24 07:59:39 2020
    Re: Menushell.js
    By: Underminer to Digital Man on Mon Aug 24 2020 01:43 am

    Oh, undoubtedly. I was just trying to suggest that if someone were coming in new with no previous programming experience, Baja seems to me like it might feel more accessible. :) --- Underminer

    I appreciate what you are saying Underminer. The coders want to argue which is better Baja or JS. As a BBS Sysop I am interested in Customizing the looks of the BBS. The cosmetics so to speak. I also want to do this without crashing the damn thing because I'm messing with internal code. As a dumb SysOp I would love to see a menu editor built in to Synchronet like so many other BBS packages. But that's never going to happen. The Synchronet coders are going to claim how easy it is to write Baja and Javascript.

    HusTler
    havens.synchro.net:23

    ---
    ■ Synchronet ■ Havens BBS havens.synchro.net
  • From echicken@VERT/ECBBS to HusTler on Mon Aug 24 11:00:09 2020
    Re: Menushell.js
    By: HusTler to Underminer on Mon Aug 24 2020 07:59:39

    I appreciate what you are saying Underminer. The coders want to argue which is better Baja or JS. As

    There's nothing to argue. Except for the learning curve, JS is better. If you find Baja easier to learn and can accomplish your goal within its limitations, it's a viable option. That pretty much covers it.

    SysOp I would love to see a menu editor built in to Synchronet like so many other BBS packages. But
    that's never going to happen.

    We're in a thread about how I wrote a menu editor, it used to work, now it doesn't, and we're discussing the merits of revisiting the idea. That's hardly a "never going to happen" scenario. It happened before, it can happen again.

    The Synchronet coders are going to claim how easy it is to write Baja
    and Javascript.

    If that were a good enough answer, I never would've pursued the idea in the first place, people wouldn't periodically ask for this feature, and one of the more frequent "complaints" about Synchronet wouldn't exist.

    I can see that you're a hard-talkin' straight-shootin' old-school sysop who likes to get shit done. If you have some thoughts about features you'd like to see in a menu editor, please share.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ■ Synchronet ■ electronic chicken bbs - bbs.electronicchicken.com
  • From Nightfox@VERT/DIGDIST to Underminer on Mon Aug 24 08:05:23 2020
    Re: Menushell.js
    By: Underminer to Nightfox on Mon Aug 24 2020 12:03 am

    That entirely depends on what *Kind* of development you're doing as a developer; some of us don't use a whole lot of JS in our daily work. That said JS is reasonably quick to pick up for anyone who has dealt with similar languages, and I'm quite happy to have the available flexibility that it offers, but I think for someone just getting some customization started who isn't overly familiar that BAJA may be a little quicker to pick up. The possibility exists that I'm dead wrong on that though. ---

    I've never really used JavaScript much in my work. I had just used it a little bit here and there, so I was somewhat familiar with it already, so it wasn't too difficult for me to pick up. So I'm mostly familiar with JS now due to my use of JS with Synchronet. But JS with Synchronet is different from its typical use as a web language though.. I'm still not too experienced with interacting with a web page DOM using JS. However I have embedded JS into a couple of C++ projects at one of my previous jobs, which was interesting.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From Gamgee@VERT/PALANT to HusTler on Mon Aug 24 09:29:00 2020
    HusTler wrote to Underminer <=-

    Oh, undoubtedly. I was just trying to suggest that if someone were coming in new with no previous programming experience, Baja seems to me like it might feel more accessible. :) --- Underminer

    I appreciate what you are saying Underminer. The coders want to
    argue which is better Baja or JS. As a BBS Sysop I am interested
    in Customizing the looks of the BBS. The cosmetics so to speak. I
    also want to do this without crashing the damn thing because I'm
    messing with internal code. As a dumb SysOp I would love to see a
    menu editor built in to Synchronet like so many other BBS
    packages. But that's never going to happen. The Synchronet coders
    are going to claim how easy it is to write Baja and Javascript.

    You don't need a menu editor to have custom menus. I know
    virtually nothing about either JS or Baja, and pretty much every
    single menu / disply file on my system is custom. Make an ANSI
    menu with something like TheDraw (or Moebius or Pablodraw), and
    then convert it (with the utilities included with SBBS) into an
    ASC or MSG file. Done.

    Also, I have made some fairly minor changes to the default.src
    menu shell file, and recompiled it with Baja. Extremely simple to
    do (instructions on the Wiki), and no programming skill required.
    It's just a text file and it's very obvious how to edit it for
    minor changes.

    Get out of the box and learn something.



    ... Nothing is so smiple that it can't get screwed up.
    --- MultiMail/Linux v0.52
    ■ Synchronet ■ Palantir BBS * palantirbbs.ddns.net * Pensacola, FL
  • From Underminer@VERT/UNDRMINE to Nightfox on Mon Aug 24 14:20:00 2020
    Re: Menushell.js
    By: Nightfox to Underminer on Mon Aug 24 2020 08:05 am

    I've never really used JavaScript much in my work. I had just used it a little bit here and there, so I was somewhat familiar with it already, so it wasn't too difficult for me to pick up. So I'm mostly familiar with JS now due to my use of JS with Synchronet. But JS with Synchronet is different from its typical use as a web language though.. I'm still not too experienced with interacting with a web page DOM using JS. However I have embedded JS into a couple of C++ projects at one of my previous jobs, which was interesting.

    Yeah, most of the "javascript" or javascript ajacent interactions I have on a daily basis are with coffeescript or ajax, so I do find myself having to stop and think a bit sometimes due to slight differences that are fairly automatic. You are absolutely right though, that it's typically DOM related concerns that trip people up, and that's thankfully absent here.
    ---
    Underminer
    The Undermine BBS - bbs.undermine.ca:423
    Fidonet: 1:342/17
    ---
    ■ Synchronet ■ The Undermine - bbs.undermine.ca:423
  • From Tracker1@VERT/TRN to Nightfox on Mon Aug 24 14:54:22 2020
    On 8/23/2020 5:35 PM, Nightfox wrote:

    I find JS easier than Baja.. And some things in JS actually require fewer lines of code than Baja - For instance, you don't need an "end_cmd" type of thing in JS. You can use curly braces in JS, but if there's just one line of code in the block, you don't need curly braces.. But I suppose I naturally find JavaScript easier since I was already a software developer.

    Also I've found that text parsing (and sometimes text splicing) is something I've had to do fairly often with my Synchronet mods. For instance, reading a configuration file and parsing the settings into variables to be used in the JS script. JS has things that make it really easy to work with strings, such as regular expressions (for text matching), and it's fairly easy to do string searches, splitting, etc. with JS. I'm not sure how easy that kind of thing would be in Baja. It's been a long time since I've done Baja, so I may have forgotten.

    I think about the only Baja I ever did was to work around missing pieces
    of the JS api really early on or to load my JS shell. I've been doing
    JS since the mid-90's so when I put my bbs up in early 2002, JS was just
    a natural thing for me. Of course now, I would do things a bit
    differently than I did at the time and the Sync API for JS is much more flushed out than the early 2000's.

    I've been pretty happy with most of it, though these days I'm more
    inclined to bypass sync's web server to host the web portion... and I've
    also been following Enigma with a lot of interrest.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From Tracker1@VERT/TRN to Nightfox on Mon Aug 24 15:02:13 2020
    On 8/24/2020 8:05 AM, Nightfox wrote:

    I've never really used JavaScript much in my work. I had just used it a little bit here and there, so I was somewhat familiar with it already, so it wasn't too difficult for me to pick up. So I'm mostly familiar with JS now due to my use of JS with Synchronet. But JS with Synchronet is different from its typical use as a web language though.. I'm still not too experienced with interacting with a web page DOM using JS. However I have embedded JS into a couple of C++ projects at one of my previous jobs, which was interesting.

    Most of the ecosystem around JS is with CommonJS (cjs) and EcmaScript
    Modules (esm) starting to become more common. I think this really
    solidified with NodeJS and as a result most JS tooling build in JS
    utilizing NodeJS.

    For the most part, most of my first versions of everything these days
    targets NodeJS. I wrote a C# library around 2003 or so to parse node
    and user data to put Sync stuff into a .Net website. I've been thinking
    about creating a more flushed out set of libraries to do the same in Node.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From Tracker1@VERT/TRN to Gamgee on Mon Aug 24 15:03:40 2020
    On 8/24/2020 7:29 AM, Gamgee wrote:

    You don't need a menu editor to have custom menus. I know
    virtually nothing about either JS or Baja, and pretty much every
    single menu / disply file on my system is custom. Make an ANSI
    menu with something like TheDraw (or Moebius or Pablodraw), and
    then convert it (with the utilities included with SBBS) into an
    ASC or MSG file. Done.

    Also, I have made some fairly minor changes to the default.src
    menu shell file, and recompiled it with Baja. Extremely simple to
    do (instructions on the Wiki), and no programming skill required.
    It's just a text file and it's very obvious how to edit it for
    minor changes.

    Get out of the box and learn something.

    Depending on the source ansi, I tend to favor a separate (simpler) file
    for .asc/msg menu displays.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From Digital Man@VERT to Underminer on Mon Aug 24 16:06:14 2020
    Re: Menushell.js
    By: Underminer to Digital Man on Mon Aug 24 2020 01:43 am

    Oh, undoubtedly. I was just trying to suggest that if someone were coming in new with no previous programming experience, Baja seems to me like it might feel more accessible. :)

    I suppose that's possible. Still, it's on the chopping block. :-)

    I encourage someone to try creating a menu-generator/editor approach. Both echicken and myself have made attempts, but nothing stuck (yet).

    digital man

    Sling Blade quote #5:
    Karl Childers (to father): You ought not killed my little brother...
    Norco, CA WX: 90.7°F, 45.0% humidity, 16 mph N wind, 0.00 inches rain/24hrs

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to HusTler on Mon Aug 24 16:07:07 2020
    Re: Menushell.js
    By: HusTler to Underminer on Mon Aug 24 2020 07:59 am

    SysOp I would love to see a menu editor built in to Synchronet like so many other BBS packages. But that's never going to happen. The Synchronet coders are going to claim how easy it is to write Baja and Javascript.

    Oh don't say that. It's certainly not impossible.


    digital man

    Synchronet "Real Fact" #22:
    The second ever Synchronet BBS was the Mid-Nite Hacker BBS (sysop: The Zapper). Norco, CA WX: 90.7°F, 45.0% humidity, 16 mph N wind, 0.00 inches rain/24hrs

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Digital Man@VERT to Nightfox on Mon Aug 24 16:08:30 2020
    Re: Menushell.js
    By: Nightfox to Underminer on Mon Aug 24 2020 08:05 am

    experienced with interacting with a web page DOM using JS. However I have embedded JS into a couple of C++ projects at one of my previous jobs, which was interesting.

    Cool - which JS engine/library did you/they use?

    digital man

    Sling Blade quote #3:
    Karl (re: killing Doyle): That second one just plum near cut his head in two. Norco, CA WX: 90.7°F, 45.0% humidity, 16 mph N wind, 0.00 inches rain/24hrs

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Nightfox@VERT/DIGDIST to Digital Man on Mon Aug 24 18:34:14 2020
    Re: Menushell.js
    By: Digital Man to Nightfox on Mon Aug 24 2020 04:08 pm

    experienced with interacting with a web page DOM using JS. However I
    have embedded JS into a couple of C++ projects at one of my previous
    jobs, which was interesting.

    Cool - which JS engine/library did you/they use?

    It was the Mozilla JavaScript engine. Initially I tried using Google's JS engine, but it seemed a bit complicated to embed. Then I looked at Mozilla's JS engine (I was inspired to use it due to Synchronet), and I was able to embed Mozilla's JS engine into a couple of C++ test applications.

    We also had a version of that project supporting iOS and Mac OS X, and we found that Apple's XCode included an embedded JS engine, so we used Apple's included JS engine for that stuff. I don't remember if that JS engine was made by Apple or if they had included another JS engine. It may have been Google's JS engine or Mozilla, but I don't remember for sure.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From Digital Man@VERT to Nightfox on Mon Aug 24 20:09:00 2020
    Re: Menushell.js
    By: Nightfox to Digital Man on Mon Aug 24 2020 06:34 pm

    Re: Menushell.js
    By: Digital Man to Nightfox on Mon Aug 24 2020 04:08 pm

    experienced with interacting with a web page DOM using JS. However I
    have embedded JS into a couple of C++ projects at one of my previous
    jobs, which was interesting.

    Cool - which JS engine/library did you/they use?

    It was the Mozilla JavaScript engine. Initially I tried using Google's JS engine, but it seemed a bit complicated to embed. Then I looked at Mozilla's JS engine (I was inspired to use it due to Synchronet), and I was able to embed Mozilla's JS engine into a couple of C++ test applications.

    Cool. What version of SpiderMonkey, if you remember?

    I embedded SpiderMonkey into a set-top box test application (at work) with a web UI back in the early 2000's, about the same time I chose it for Synchronet's FTP server and eventually everything else.

    And now, I think it's about time to remove JS support from Synchronet's FTP server! :-)

    We also had a version of that project supporting iOS and Mac OS X, and we found that Apple's XCode included an embedded JS engine, so we used Apple's included JS engine for that stuff. I don't remember if that JS engine was made by Apple or if they had included another JS engine. It may have been Google's JS engine or Mozilla, but I don't remember for sure.

    Ah, cool. I might take a look at v8 again, but I'm planning to update to the latest SpiderMonkey at some point, which is expected to be painful.

    digital man

    Sling Blade quote #19:
    Doyle: I can't so much as drink a damn glass of water around a midget
    Norco, CA WX: 79.0°F, 62.0% humidity, 9 mph NE wind, 0.00 inches rain/24hrs

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Gamgee@VERT/PALANT to Tracker1 on Mon Aug 24 20:20:00 2020
    Tracker1 wrote to Gamgee <=-

    You don't need a menu editor to have custom menus. I know
    virtually nothing about either JS or Baja, and pretty much every
    single menu / disply file on my system is custom. Make an ANSI
    menu with something like TheDraw (or Moebius or Pablodraw), and
    then convert it (with the utilities included with SBBS) into an
    ASC or MSG file. Done.

    Depending on the source ansi, I tend to favor a separate
    (simpler) file for .asc/msg menu displays.

    I'm not really sure what you mean by that.



    ... My best pigeon dodged hawks and farmer's guns to bring you this.
    --- MultiMail/Linux v0.52
    ■ Synchronet ■ Palantir BBS * palantirbbs.ddns.net * Pensacola, FL
  • From Nightfox@VERT/DIGDIST to Digital Man on Mon Aug 24 21:19:45 2020
    Re: Menushell.js
    By: Digital Man to Nightfox on Mon Aug 24 2020 08:09 pm

    It was the Mozilla JavaScript engine. Initially I tried using
    Google's JS engine, but it seemed a bit complicated to embed. Then I
    looked at Mozilla's JS engine (I was inspired to use it due to
    Synchronet), and I was able to embed Mozilla's JS engine into a couple
    of C++ test applications.

    Cool. What version of SpiderMonkey, if you remember?

    I don't remember offhand. It was about 5 years ago.

    I embedded SpiderMonkey into a set-top box test application (at work) with a web UI back in the early 2000's, about the same time I chose it for Synchronet's FTP server and eventually everything else.

    That sounds cool.

    Ah, cool. I might take a look at v8 again, but I'm planning to update to the latest SpiderMonkey at some point, which is expected to be painful.

    I think the main appeal of Google's V8 engine was that it was supposed to be very fast. But for something that's embedded into the apps we were using, I think Mozilla's JS engine was plenty fast. What benefit do you think there would be to using Google's V8 JS engine over Mozilla's JS engine with Synchronet?

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From HusTler@VERT/HAVENS to echicken on Mon Aug 24 21:13:34 2020
    Re: Menushell.js
    By: echicken to HusTler on Mon Aug 24 2020 11:00 am

    I can see that you're a hard-talkin' straight-shootin' old-school sysop who likes to get shit done. If you have some thoughts about features you'd like see in a menu editor, please share.

    Nah. I can't compete with you guys. DM, Nightfox and MRO and You Mr.Echicken. I've ran and hacked at just about every BBS package that's ever been developed. Today I'm just happy running one (Synchronet) that works. ;-)

    HusTler
    havens.synchro.net:23

    ---
    ■ Synchronet ■ Havens BBS havens.synchro.net
  • From HusTler@VERT/HAVENS to Gamgee on Mon Aug 24 21:16:36 2020
    Re: Re: Menushell.js
    By: Gamgee to HusTler on Mon Aug 24 2020 09:29 am

    You don't need a menu editor to have custom menus. I know
    virtually nothing about either JS or Baja, and pretty much every
    Also, I have made some fairly minor changes to the default.src
    menu shell file, and recompiled it with Baja. Extremely simple to
    do (instructions on the Wiki), and no programming skill required.
    It's just a text file and it's very obvious how to edit it for
    minor changes.

    Get out of the box and learn something.

    There we go. Some good old Synchronet Support. Wow.. what a revelation.

    HusTler
    havens.synchro.net:23

    ---
    ■ Synchronet ■ Havens BBS havens.synchro.net
  • From Digital Man@VERT to Nightfox on Mon Aug 24 21:58:57 2020
    Re: Menushell.js
    By: Nightfox to Digital Man on Mon Aug 24 2020 09:19 pm

    I think the main appeal of Google's V8 engine was that it was supposed to be very fast. But for something that's embedded into the apps we were using, I think Mozilla's JS engine was plenty fast. What benefit do you think there would be to using Google's V8 JS engine over Mozilla's JS engine with Synchronet?

    I don't think the performance difference between V8 and SpiderMonkey is really significant these days. I'd only use V8 if it was easier/better for integrating into Synchronet. We'll see...

    digital man

    Synchronet/BBS Terminology Definition #86:
    XOFF = Transmit Off (ASCII 19, Ctrl-S)
    Norco, CA WX: 76.1°F, 62.0% humidity, 3 mph E wind, 0.00 inches rain/24hrs

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Tracker1@VERT/TRN to Gamgee on Mon Aug 24 21:09:12 2020
    On 8/24/2020 6:20 PM, Gamgee wrote:
    Depending on the source ansi, I tend to favor a separate
    (simpler) file for .asc/msg menu displays.

    I'm not really sure what you mean by that.

    A lot of ANSi files don't look very good to ascii users.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From alterego@VERT/ALTERANT to Digital Man on Wed Aug 26 09:53:34 2020
    Re: Menushell.js
    By: Digital Man to Nightfox on Mon Aug 24 2020 08:09 pm

    Hey

    Ah, cool. I might take a look at v8 again, but I'm planning to update to the latest SpiderMonkey at some point, which is expected to be painful.

    So I'm looking forward to seeing this happen. While I cant help you with the actual coding (C++ or is C? are not my forte), I'll certainly help with the testing :)

    ...δεσ∩

    ... Alas! The poor Tagline. I knew it well.

    ---
    ■ Synchronet ■ Alterant | an SBBS in Docker on Pi!
  • From MRO@VERT/BBSESINF to echicken on Tue Aug 25 18:59:09 2020
    Re: Menushell.js
    By: echicken to HusTler on Mon Aug 24 2020 11:00 am



    I appreciate what you are saying Underminer. The coders want to
    argue which is better Baja or JS. As

    There's nothing to argue. Except for the learning curve, JS is better. If you find Baja easier to learn and can accomplish your goal within its limitations, it's a viable option. That pretty much covers it.

    SysOp I would love to see a menu editor built in to Synchronet like
    so many other BBS packages. But that's never going to happen.

    We're in a thread about how I wrote a menu editor, it used to work, now it doesn't, and we're discussing the merits of revisiting the idea. That's hardly a "never going to happen" scenario. It happened before, it can happen again.



    i dont really think a decent menu editor can be made.

    if he wants something where it shows him the lists of commands you can do and then assign a key and then it puts that into code and makes an ansi menu, i've done that like 11 years ago.

    i just think something like that is limiting and editing your own command shell really allows you to tweak what you want to do and stack commands.
    ---
    ■ Synchronet ■ ::: BBSES.info - free BBS services :::
  • From MRO@VERT/BBSESINF to HusTler on Tue Aug 25 19:04:14 2020
    Re: Menushell.js
    By: HusTler to echicken on Mon Aug 24 2020 09:13 pm

    Re: Menushell.js
    By: echicken to HusTler on Mon Aug 24 2020 11:00 am

    I can see that you're a hard-talkin' straight-shootin' old-school
    sysop who likes to get shit done. If you have some thoughts about
    features you'd like see in a menu editor, please share.

    Nah. I can't compete with you guys. DM, Nightfox and MRO and You Mr.Echicken. I've ran and hacked at just about every BBS package that's ever been developed. Today I'm just happy running one (Synchronet) that works. ;-)


    i switched to synchronet because of the stability. i come from the netmodem days. the bad one.

    if there's something you want to do with your bbs, i can probably show you how to do it easily. i'm very rusty but it comes back with some practice.
    ---
    ■ Synchronet ■ ::: BBSES.info - free BBS services :::
  • From Nightfox@VERT/DIGDIST to MRO on Tue Aug 25 19:37:08 2020
    Re: Menushell.js
    By: MRO to echicken on Tue Aug 25 2020 06:59 pm

    i dont really think a decent menu editor can be made.

    if he wants something where it shows him the lists of commands you can do and then assign a key and then it puts that into code and makes an ansi menu, i've done that like 11 years ago.

    i just think something like that is limiting and editing your own command shell really allows you to tweak what you want to do and stack commands.

    I dunno, I think something at least covering the basics could be done. I used to use RemoteAccess, and I was able to do all I really needed with my menus using its menu editor. I guess I was still within its limitations. I'm sure Synchronet's command shells would still always let you do a lot more, but I think something at least covering the basics could be done. I could even see a Synchronet menu editor doing things like letting you configure certain things to be done based on ARS, etc..

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From echicken@VERT/ECBBS to MRO on Tue Aug 25 22:56:57 2020
    Re: Menushell.js
    By: MRO to echicken on Tue Aug 25 2020 18:59:09

    i dont really think a decent menu editor can be made.

    It could be about as good as what Mystic and some other packages have. I find it limiting and a bit clunky, but some people prefer it.

    if he wants something where it shows him the lists of commands you can do and then assign a key and
    then it puts that into code and makes an ansi menu, i've done that like 11 years ago.

    Mine was just a more flexible version of that, and covered most anything you would want to add to a menu on your BBS. It's broken now, but I might remake it at some point.

    i just think something like that is limiting and editing your own command shell really allows you to
    tweak what you want to do and stack commands.

    Writing / modifying a shell is far better, and I would advocate for that approach before I started making some menu editor do crazy things. A lot of sysops probably aren't taking any special advantage of Baja or JS, though, and the end result would be about the same.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ■ Synchronet ■ electronic chicken bbs - bbs.electronicchicken.com
  • From Tracker1@VERT/TRN to Nightfox on Wed Aug 26 12:14:09 2020
    On 8/24/2020 9:19 PM, Nightfox wrote:
    Ah, cool. I might take a look at v8 again, but I'm planning to update to
    the latest SpiderMonkey at some point, which is expected to be painful.

    I think the main appeal of Google's V8 engine was that it was supposed to be very fast. But for something that's embedded into the apps we were using, I think Mozilla's JS engine was plenty fast. What benefit do you think there would be to using Google's V8 JS engine over Mozilla's JS engine with Synchronet?

    Less of an issue for Synchronet, but a lot of devs and admins aren't a
    fan of V8 because of it's complex build system. It's a major reason why PostgreSQL's plv8 is being dropped (lack of distro support) where
    libmozjs is relatively widely supported. They also tend to break their
    API a *LOT* which is why even Node is creating their own API abstraction
    to make it easier to develop compiled modules against.

    As to performance, Spidermonkey is mostly on par with V8 these days,
    there may be a little back and forth though. For Synchronet there's
    probably not much reason to switch. And there's too much code surface
    to do a paradigm shift (such as using Node as the core).

    Being able to use some of the more modern language features (and some
    bits in-browser) would potentially be nice to have. Async functions in
    the non-interactive areas/services could be nice as well.

    Aside: been following Enigma development, but other than a simple setup
    a couple times haven't really dug in.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From Tracker1@VERT/TRN to Digital Man on Wed Aug 26 12:16:13 2020
    On 8/24/2020 9:58 PM, Digital Man wrote:

    I don't think the performance difference between V8 and SpiderMonkey is really significant these days. I'd only use V8 if it was easier/better for integrating into Synchronet. We'll see...
    From some experience, V8 would be significantly more difficult to
    integrate and considerably more painful upgrade cycles.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From HusTler@VERT/HAVENS to MRO on Thu Aug 27 09:53:16 2020
    Re: Menushell.js
    By: MRO to HusTler on Tue Aug 25 2020 07:04 pm

    Nah. I can't compete with you guys. DM, Nightfox and MRO and You

    i switched to synchronet because of the stability. i come from the netmodem days. the bad one.

    if there's something you want to do with your bbs, i can probably show you h to do it easily. i'm very rusty but it comes back with some practice.

    Thanks for the offer. I just wanted to convey my thoughts on a menu editor. I understand the "Syncronet Way" of doing things. It's a bit archaic but I can get by. When I paid for BBS package back in the day I looked for customization and support. I'm not going to see these things with free software. I can deal with that. I still think a menu editor would be nice to have for new SysOps.

    HusTler
    havens.synchro.net:23

    ---
    ■ Synchronet ■ Havens BBS havens.synchro.net
  • From echicken@VERT/ECBBS to HusTler on Thu Aug 27 14:55:30 2020
    Re: Menushell.js
    By: HusTler to MRO on Thu Aug 27 2020 09:53:16

    Thanks for the offer. I just wanted to convey my thoughts on a menu editor. I
    understand the "Syncronet Way" of doing things. It's a bit archaic but I can
    get by. When I paid for BBS package back in the day I looked for customization and support. I'm not

    It's funny how we all perceive these things differently. I feel like using a menu editor is, if not "archaic" ("oldschool", perhaps), a bit clunky and cumbersome. Meanwhile, to me, a scripted menuing system allows for far more "modern" features and is extremely flexible.

    Just wanted to put that out there; it's a matter of different paradigms rather than one concept being older than the other.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ■ Synchronet ■ electronic chicken bbs - bbs.electronicchicken.com
  • From MRO@VERT/BBSESINF to HusTler on Thu Aug 27 17:35:07 2020
    Re: Menushell.js
    By: HusTler to MRO on Thu Aug 27 2020 09:53 am

    archaic but I can get by. When I paid for BBS package back in the day I looked for customization and support. I'm not going to see these things with free software. I can deal with that. I still think a menu editor would be nice to have for new SysOps.


    a menu editor is so so so extremely limiting.
    i have all kinds of custom stuff in my menus. a menu editor couldnt accomplish that.
    ---
    ■ Synchronet ■ ::: BBSES.info - free BBS services :::
  • From MRO@VERT/BBSESINF to echicken on Thu Aug 27 17:36:51 2020
    Re: Menushell.js
    By: echicken to HusTler on Thu Aug 27 2020 02:55 pm


    Re: Menushell.js
    By: HusTler to MRO on Thu Aug 27 2020 09:53:16

    Thanks for the offer. I just wanted to convey my thoughts on a menu
    editor. I
    understand the "Syncronet Way" of doing things. It's a bit archaic
    but I can
    get by. When I paid for BBS package back in the day I looked for
    customization and support. I'm not

    It's funny how we all perceive these things differently. I feel like using a menu editor is, if not "archaic" ("oldschool", perhaps), a bit clunky and cumbersome. Meanwhile, to me, a scripted menuing system allows for far more "modern" features and is extremely flexible.

    Just wanted to put that out there; it's a matter of different paradi

    when you are used to using bbs softwares with menu editors that's what you expect from synchronet. maybe we can have both some day.

    i totally understand how these guys feel because i ran renegade and iniquity and other bbs softwares before switching to synchronet.
    ---
    ■ Synchronet ■ ::: BBSES.info - free BBS services :::
  • From Rampage@VERT/SESTAR to MRO on Fri Aug 28 08:56:11 2020
    Re: Menushell.js
    By: MRO to HusTler on Thu Aug 27 2020 17:35:07


    a menu editor is so so so extremely limiting.
    i have all kinds of custom stuff in my menus. a menu editor couldnt accomplish that.

    that depends on the menu editor and the foresight of the developer...

    in my old RA setup, i had menu options that dropped you through other menu files that you never saw any output from but those menu files executed commands that would flip user flags and set security levels and drop you out
    the other side looking at another menu on screen... just because it is a menu file doesn't mean that it has to display one menu screen and handle the options for it...

    the best part about it was the dynamic display generation... there might be three "write mail" options but you only see one because of the access permissions to the others... at some point, more than one of those may be
    active... instead of drawing a static screen with all three showing, the system would draw a screen with only those available to you on it...

    we also had codes we could put in the screens we drew that could execute menu commands so while you are viewing this nice ansi being drawn, your security level is being updated and your access flags set... getting one's head
    wrapped around it all was not easy but the finished product could be quite seamless...


    )\/(ark

    ---
    ■ Synchronet ■ The SouthEast Star Mail HUB - SESTAR
  • From Nightfox@VERT/DIGDIST to MRO on Fri Aug 28 12:35:22 2020
    Re: Menushell.js
    By: MRO to echicken on Thu Aug 27 2020 05:36 pm

    when you are used to using bbs softwares with menu editors that's what you expect from synchronet. maybe we can have both some day.

    i totally understand how these guys feel because i ran renegade and iniquity and other bbs softwares before switching to synchronet.

    It seems most BBS sysops are fine with making batch files/shell scripts to do various work for the BBS, but I'm not sure how many BBS sysops would feel about learning a more fully-fledged programming language to write a command shell. I suppose even Baja might seem intimidating to some new Synchronet sysops. Every so often, I've seen questions from new Synchronet sysops posted on Dove-Net asking how to change menu behavior etc., and some seem a little apprehensive or confused at first about Baja/JS command shells.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From Nightfox@VERT/DIGDIST to Rampage on Fri Aug 28 12:36:18 2020
    Re: Menushell.js
    By: Rampage to MRO on Fri Aug 28 2020 08:56 am

    in my old RA setup, i had menu options that dropped you through other menu files that you never saw any output from but those menu files executed commands that would flip user flags and set security levels and drop you out the other side looking at another menu on screen... just because it is a menu file doesn't mean that it has to display one menu screen and handle the options for it...

    the best part about it was the dynamic display generation... there might be three "write mail" options but you only see one because of the access permissions to the others... at some point, more than one of those may be active... instead of drawing a static screen with all three showing, the system would draw a screen with only those available to you on it...

    we also had codes we could put in the screens we drew that could execute menu commands so while you are viewing this nice ansi being drawn, your security level is being updated and your access flags set... getting one's head wrapped around it all was not easy but the finished product could be quite seamless...

    Yep, I used to use RA, and you could do some cool stuff with it and its menuing system etc. once you wrapped your head around it.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From Tracker1@VERT/TRN to HusTler on Fri Aug 28 14:13:54 2020
    On 8/27/2020 6:53 AM, HusTler wrote:

    Thanks for the offer. I just wanted to convey my thoughts on a menu
    editor. I understand the "Syncronet Way" of doing things. It's a bit
    archaic but I can get by. When I paid for BBS package back in the day
    I looked for customization and support. I'm not going to see these
    things with free software. I can deal with that. I still think a menu
    editor would be nice to have for new SysOps.

    I think that a few people have gone down the path of creating a menu
    edited shell... the issue is, once someone understands things well
    enough to create a menu editor, they no longer find the exercise
    interesting as they can just edit their mods/shells directly.

    I've started and dropped creating a UI for editing BIND files and every
    time, I wind up just re-learning enough to make the changes I wanted to directly, then give up on creating a more friendly ui/cli interface.

    It's really a mixed bag, especially with non-commercial software as
    things like a menu editor, while they would be nice are largely
    unneeded. It's a bit more difficult for a Sysop to just jump in and
    make changes, but that said, it gets to be "easy enough" that working
    around the problem becomes a non-issue.

    There's also the desire for more interactive menus, lightbars, listboxes
    etc. I looked at my listbox menu, and frankly the code is scary to me
    now that 17 years or so has gone by. I'm not even quite sure if it
    works right or well, I've been re-creating some of my mods.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From Tracker1@VERT/TRN to echicken on Fri Aug 28 14:19:02 2020
    On 8/27/2020 11:55 AM, echicken wrote:

    It's funny how we all perceive these things differently. I feel like using a menu editor is, if not "archaic" ("oldschool", perhaps), a bit clunky and cumbersome. Meanwhile, to me, a scripted menuing system allows for far more "modern" features and is extremely flexible.

    Just wanted to put that out there; it's a matter of different paradigms rather than one concept being older than the other.

    I'm largely of the same mindset... I don't think I'd have the patience
    to go through what I used to have to do with Renegade... Really complex
    menus to get lightbar from the user perspective combined with having to
    hex edit the renegade.ovr file every single release for custom mods.

    I love that with Synchronet you can pretty much work around or outright replace any built in functionality you like. The hardest part for me,
    is I've spent about a decade now using Node style build tooling, modules
    and npm; so dealing with Synchronet's load/require interfaces is a bit
    alien in practice. That and not having the autocomplete/tooling that VS
    Code gives you isn't very fun as well.

    Ispy said he created some TypeScript definitions and build system for Synchronet and should probably look those up... It's yet another step
    removed from edit/run that you currently get with Synchronet though.

    --
    Michael J. Ryan
    tracker1 +o Roughneck BBS

    ---
    ■ Synchronet ■ Roughneck BBS - coming back 2/2/20
  • From echicken@VERT/ECBBS to Tracker1 on Sat Aug 29 01:37:07 2020
    Re: Re: Menushell.js
    By: Tracker1 to echicken on Fri Aug 28 2020 14:19:02

    replace any built in functionality you like. The hardest part for me,
    is I've spent about a decade now using Node style build tooling, modules and npm; so dealing with Synchronet's load/require interfaces is a bit alien in practice. That and not having the autocomplete/tooling that VS Code gives you isn't very fun as well.

    Much the same, where JS is concerned I do a lot of work with node (and lately React), so there's stuff from that space that I'm accustomed to (tooling, dependency management, import/require and so on).

    I've been working on Synchronet projects in parallel all along, so switching between the two mindsets is sort of second nature for me. Kind of a matter of not getting set in my JS ways. (This has also been helpful when I've had to write JS for other oddball environments, like in the Rhino engine embedded in some Java applications.)

    I'd like it if we had some form of versioned package (and dependency) management, and if the module import/export style were more along the lines of ES6 'import' or node.js require(). And of course there's ES6 stuff that I miss.

    On the other hand, Synchronet JS is sort of "back to basics" in a fun way. Between ES5, stuff being mostly synchronous, the sort of wild west of the exec directory tree, concerns about keeping things backward compatible, etc., it can keep you on your toes and require some creative thinking.

    ---
    echicken
    electronic chicken bbs - bbs.electronicchicken.com
    ■ Synchronet ■ electronic chicken bbs - bbs.electronicchicken.com
  • From MRO@VERT/BBSESINF to Nightfox on Sat Aug 29 13:24:14 2020
    Re: Menushell.js
    By: Nightfox to MRO on Fri Aug 28 2020 12:35 pm

    do various work for the BBS, but I'm not sure how many BBS sysops would feel about learning a more fully-fledged programming language to write a command shell. I suppose even Baja might seem intimidating to some new Synchronet sysops. Every so often, I've seen questions from new Synchronet sysops posted on Dove-Net asking how to change menu behavior etc., and some seem a little apprehensive or confused at first about Baja/JS command shells.

    Nightfox


    most people that i've encountered that run mystic and other softwares say they dont touch synchronet because you have to be a programmer to run it.
    ---
    ■ Synchronet ■ ::: BBSES.info - free BBS services :::
  • From Nightfox@VERT/DIGDIST to MRO on Sat Aug 29 14:12:20 2020
    Re: Menushell.js
    By: MRO to Nightfox on Sat Aug 29 2020 01:24 pm

    most people that i've encountered that run mystic and other softwares say they dont touch synchronet because you have to be a programmer to run it.

    That's kinda what I suspected, and it's probably a good reason to have a menu editor, to at least cover the basics.

    Nightfox

    ---
    ■ Synchronet ■ Digital Distortion: digitaldistortionbbs.com
  • From Fang-Castro@VERT/FTPBBS to MRO on Sun Aug 30 03:29:51 2020
    Re: Menushell.js
    By: MRO to Nightfox on Sat Aug 29 2020 01:24 pm

    most people that i've encountered that run mystic and other softwares say they dont touch synchronet because you have to be a programmer to run it.

    Or... a... wannabe programmer! Muahahaha.

    It's fun as heck trying to figure this s__t out!

    ---
    ■ Synchronet ■ Flee the Planet BBS [flee.fsxnet.nz:2323]