Author Topic: VSLICK - OS/2 Toolkit Support Package  (Read 867 times)

Dariusz Piatkowski

  • Hero Member
  • *****
  • Thank You
  • -Given: 15
  • -Receive: 30
  • Posts: 969
  • Karma: +19/-0
    • View Profile
VSLICK - OS/2 Toolkit Support Package
« on: April 08, 2021, 03:06:49 am »
Alright...so why feel like a second-class citizen and languish in the "forgotten about" category of Developers???  :o

I have been using Visual SlickEdit for some years now, formerly professionally, and having had great experience with it I had actually purchased the official software way back in the day when it was still available.

So fast forward to today and as I'm trying to do a bit more in support of our platform, and therefore spending a LOT more time on reading either existing code, or trying out new things, I realized that by all accounts we are sort of stuck even in terms of the look'n'feel of the tools we use (regardless of just how old these very tools themselves are).

But...VSLICK is incredibly customizable...I mean just about everything in there is. No, I'm not trying to sell you on it (heck, there is nothing to buy out there), but the ability to re-configure things also means that we have a way to bring a little bit of that modern look'n'feel to our platform, and by extension I hope it may be easier for anyone new to developing on our platform to actually give things a try.

As such, I have been crazily busy trying to assemble a decent 'OS/2 Toolkit Support Package' for VSLICK.

What I mean by that is the following:
1) modern theme
2) syntax highlighting
3) recognition of the native OS/2 Toolkit declarations (DEFINEs, TYPEDEFs, STRUCTs, etc.)
4) pre-built 'Project Definition' modules that allow you to build projects using any C/C++ environments you may be using

Attached screenshot is what my DISKIO source looks like now..heck of a lot easier to read then with the default and/or no syntax highlighting, or no OS/2 Toolkit recognition.

So far I have covered the following Toolkit header files:
1) OS2.H
2) OS2STD.H
3) OS2DEF.H
4) BSE.H
5) BSEDOS.H
6) BSETIB.H
7) BSEDEV.H
8) BSEERR.H
9) BSEORD.H
10) PM.H
11) PMWIN.H
12) PMGPI.H
13) PMDEV.H
14) PMWP.H
15) PMAVIO.H
16) PMSPL.H
17) PMPIC.H
18) PMORD.H
19) PMFONT.H
20) PMSTDDLG.H
21) PMDJP.H
22) PMERR.H

There are a pile more, I haven't touched on any of the networking stuff yet. I think hitting the ol' OS2EMX.H is probably a must, even if that is needed just to simplify reading any existing code base.

Beyond what I have I'm looking for recommendations as to what else I need to prioritize? Which header files should I go through before we have something that feels like it covers most of the stuff one might normally use?
« Last Edit: April 08, 2021, 03:15:23 am by Dariusz Piatkowski »

Neil Waldhauer

  • Hero Member
  • *****
  • Thank You
  • -Given: 14
  • -Receive: 58
  • Posts: 735
  • Karma: +14/-0
    • View Profile
    • Blonde Guy
Re: VSLICK - OS/2 Toolkit Support Package
« Reply #1 on: April 08, 2021, 03:34:08 pm »
Well, consider me subscribed. I use Vslick daily. I would love to see the feature with Document->Format paragraph default to one space after the period.

I do HTML and CSS with Vslick also, and of course that's a little behind the times, too.
Expert consulting for ArcaOS, OS/2 and eComStation
http://www.blondeguy.com

Andi B.

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 28
  • Posts: 590
  • Karma: +7/-1
    • View Profile
Re: VSLICK - OS/2 Toolkit Support Package
« Reply #2 on: April 08, 2021, 06:54:34 pm »
Quote
3) recognition of the native OS/2 Toolkit declarations (DEFINEs, TYPEDEFs, STRUCTs, etc.)
Do you mean a tag file (.vtg) which points to your headers? I mean if I want to have symbols found there I add the os2tk45\h directory to the tag file list, retag and I'm done. Unfortunately the symbol window is the same as the build output window (in contrary to newer Win versions).

Another bit ugly thing is the font which is used for menus and dialog boxes. I've changed some of them with a hex editor. But configurable fonts and sizes would be cool.

Dariusz Piatkowski

  • Hero Member
  • *****
  • Thank You
  • -Given: 15
  • -Receive: 30
  • Posts: 969
  • Karma: +19/-0
    • View Profile
Re: VSLICK - OS/2 Toolkit Support Package
« Reply #3 on: April 08, 2021, 07:51:15 pm »
Neil,
Hmm, I wasn't quite that deep-diving into the built-in functions, but I suspect this is probably coded in their seeded macros. I will check it out...first I need to actually understand what it does, will do a little readiing on that.

Andi,
No, not just the tag files. I have done that already, and while it is very functional on it's own, without there being some kind of visual and more sophisticated syntax/keyword highligting it's still somewhat difficult for a coding newbie to understand all the seeded DEFINEs and TYPEDEFs, etc.

So my approach is to combine all of that functionality and put together a fully functioning package where any of the OS/2 Toolkit objects are recognized and appropriately identified. This way you could certainly use something like the tag file functionality to get a super-quick definition of the object itself.

Take a look at the attached capture, and let me use that to point out what I'm trying to do. Heck, it may very well be that other environments can in fact already do that...LOL! Well, I am pretty certain that VAC++ 4.0 can, but that's a fully fledged IDE that comes with some of it's own shortcomings.

OK, so looking at that capture here is what I can readily pick up:
1) the stuff in RED is a seeded Toolkit define
- INCL_DOS
- DC_SEM_SHARED
- SEM_INDEFINITE_WAIT
- EXIT_THREAD

2) the stuff in YELLOW (well, mango maybe?) is a seeded TYPEDEF
- HEV
- HTIMER
- QWORD
- ULONG
- TID

3) the stuff in darker blue are all functions
- DosCreateEventSem
- DosAsyncTimer
- DosWaitEventSem...

4) while everything else in light blue is the stuff that's really the custom development, the stuff I (or any previous authors) have created
- THREADSTACK
- TIMER
- ...and all the other variables and code

As a new developer looking at the existing codebase I have absolutely no idea (lack of knowledge and experience with the OS/2 APIs) to know this. But if my IDE can help me out in pointing this out, well, it becomes progressively easier to understand where to look for further info and/or the answers.

For now at least that's the plan.

Andreas Schnellbacher

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 37
  • Posts: 710
  • Karma: +9/-0
    • View Profile
Re: VSLICK - OS/2 Toolkit Support Package
« Reply #4 on: April 08, 2021, 11:21:56 pm »
I would love to see the feature with Document->Format paragraph default to one space after the period.
Maybe the item I found this morning may help you. It's under Tools -> Configuration -> File extensions setup, Justify style -> 1 space after period:

BTW: I have just looked at it to explore differences and features compared to NEPMD. I don't use VSlick, and even after that, I'm ensured that there would be too many drawbacks. That's different from what I've expected.
« Last Edit: April 08, 2021, 11:23:30 pm by Andreas Schnellbacher »

Andreas Schnellbacher

  • Hero Member
  • *****
  • Thank You
  • -Given: 1
  • -Receive: 37
  • Posts: 710
  • Karma: +9/-0
    • View Profile
Re: VSLICK - OS/2 Toolkit Support Package
« Reply #5 on: April 09, 2021, 12:11:46 am »
Dariusz, about the keyword list: Just take it from other text editors. Respect copyrights if you release it. Other ones are MED, (VSlick), FTE, (NEPMD), VIM, JEdit. Most of them have poor keyword lists for many modes.

Here's another option to create a file that contains keywords to extract, converted from an .inf or .hlp file. That applies for the docs of some libraries:
  • Load a .hlp or .inf file with a reference list into NewView. E.g. for the C library of the toolkit, this is xpg4ref.inf.
  • Find the list of functions. For xpg4ref.inf, this would be the "Library Functions" section. If found, go ahead.
  • Export displayed file as .ipf: Tools -> Save as IPF...
  • Use HyperText/2, preferably the newest version,  to convert it to a readable file. At least 2.00 is required to convert it to a .htext file. That's the first version that contains the ipf2htext compiler (by me). Usage should be self explaining, otherwise use the docs or ask here.
  • Extract the keywords from the .htext file, best with an editor macro, either a recorded set of keys or a written macro file. (I don't write which tool I prefer for this step.)
  • I guess that keyword list can be added to the standard one. (I don't remember how that works for VSlisk, but apparently you know.)

Ibrahim Hakeem

  • Jr. Member
  • **
  • Thank You
  • -Given: 3
  • -Receive: 4
  • Posts: 87
  • Karma: +2/-0
    • View Profile
Re: VSLICK - OS/2 Toolkit Support Package
« Reply #6 on: April 12, 2021, 02:31:03 pm »
Sorry to hijack this thread, but could you point us to where we can find a copy of VSLICK? I've been looking for a good OS/2 based IDE that's no VIM for a while now

Dariusz Piatkowski

  • Hero Member
  • *****
  • Thank You
  • -Given: 15
  • -Receive: 30
  • Posts: 969
  • Karma: +19/-0
    • View Profile
Re: VSLICK - OS/2 Toolkit Support Package
« Reply #7 on: April 12, 2021, 08:20:04 pm »
Hi Ibrahim,

Sorry to hijack this thread, but could you point us to where we can find a copy of VSLICK? I've been looking for a good OS/2 based IDE that's no VIM for a while now

I'm afraid there is no official way of obtaining Visual SlickEdit v4.x for OS/2 anymore. That product was available around 1993-1999 timeframe. The last fix/update I have here is Feb_1999.

Having said that, I would not be surprised if you could still find this through sites like eBay or any of the numerous archive sites out there.