Skip to content

Conversation

@tkslide
Copy link

@tkslide tkslide commented Jan 18, 2026

Hello,

2 syntax files:

  • SNOBOL4 - a pattern-based text processing language from 1960's. This version supports some SPITBOL and CSNOBOL4 (Snobol4 in C http://regressive.org/snobol4) extensions as well.

  • Slope - "A [Scheme-like] hackable hobby programming language and toolset for having fun and making cool things" (https://slope.colorfield.space/)

Both files are "initial attempts" based on already existing Vim Syntax files -- reasonably tested and usable, but still under development.

Copy link
Contributor

@Andriamanitra Andriamanitra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Slope may not be worth adding a built-in syntax for as it seems to be someone's hobby project with no users (I couldn't find a single project using it on Github), and most of the .slo files I could find were something different.

I don't know SNOBOL (although I've seen it before), but the syntax seems to be missing a lot of keywords compared to the manual, a language reference and a SNOBOL4.sublime-syntax that I found on Github. I guess you're relying on the - special: "(^|;)[A-Za-z]\\S*\\b" rule to highlight a lot of things?

- constant.string:
start: "'"
end: "('|$)"
skip: "\""
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skipping " in a single-quoted string is not necessary. Maybe you meant to skip an escaped single quote instead?

- constant.string:
start: "\""
end: "(\"|$)"
skip: "'"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Skipping ' in a double-quoted string is not necessary. Maybe you meant to skip an escaped double quote instead?

@tkslide
Copy link
Author

tkslide commented Jan 19, 2026

lope may not be worth adding a built-in syntax for as it seems to be someone's hobby project with no users (I couldn't find a single project using it on Github), and most of the .slo files I could find were something different.

I agree, slope has a really small community of users, we can manage it "internally".

@tkslide
Copy link
Author

tkslide commented Jan 19, 2026

I don't know SNOBOL (although I've seen it before), but the syntax seems to be missing a lot of keywords compared to the manual, a language reference and a SNOBOL4.sublime-syntax that I found on Github.

I'll compare the file with the sublime syntax HL; Spitbol is a little "different beast" -- it is/was a commercial Snobol4 on steroids -- I'm not sure if I want to go down that particular rabbit hole. Let me fix it for the "mainstrea" interpreter first.

I guess you're relying on the - special: "(^|;)[A-Za-z]\\S*\\b" rule to highlight a lot of things?
The special is for alphanumeric, user-defined labels, not keywords.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants