{"id":22117704,"url":"https://github.com/prosumma/vim-rebol","last_synced_at":"2025-07-01T11:05:32.057Z","repository":{"id":21589412,"uuid":"24909471","full_name":"Prosumma/vim-rebol","owner":"Prosumma","description":"REBOL 3 syntax highlighting","archived":false,"fork":false,"pushed_at":"2015-06-30T07:06:38.000Z","size":140,"stargazers_count":4,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-07-01T11:05:26.493Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"VimL","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Prosumma.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-10-07T20:11:38.000Z","updated_at":"2024-04-01T23:53:24.000Z","dependencies_parsed_at":"2022-08-21T20:21:00.236Z","dependency_job_id":null,"html_url":"https://github.com/Prosumma/vim-rebol","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Prosumma/vim-rebol","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Prosumma%2Fvim-rebol","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Prosumma%2Fvim-rebol/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Prosumma%2Fvim-rebol/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Prosumma%2Fvim-rebol/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Prosumma","download_url":"https://codeload.github.com/Prosumma/vim-rebol/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Prosumma%2Fvim-rebol/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262950336,"owners_count":23389639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-01T13:38:37.567Z","updated_at":"2025-07-01T11:05:32.020Z","avatar_url":"https://github.com/Prosumma.png","language":"VimL","funding_links":[],"categories":[],"sub_categories":[],"readme":"Syntax Highlighting For REBOL (3) in Vim\n----\n\nI'm going to assume that anyone needing REBOL syntax highlighting for Vim is already aware that REBOL is a homoiconic language. Most syntax highlighting I've seen for REBOL downplays its homoiconicity, treating it as if the DO dialect were paramount. I wanted to strike a balance between the DO dialect and plain homoiconicity, and I think I've hit on it.\n\nWhat this means is that I don't highlight a token based on whether the DO dialect predefines it as a function or some other data type. Rather, I highlight it based on its _homoiconic_ data type and whether or not it is predefined. E.g., X is a WORD!, but it is not predefined. DO is also a WORD! and it is predefined. Each will get different highlighting. \n\nThere are some exceptions. There's a convention in REBOL that data types end with an exclamation point. _Any word ending in an exclamation point will be highlighted as a datatype, whether predefined or not._ Also, the tokens REBOL, SELF, YES, NO, ON, OFF, TRUE, FALSE, and /LOCAL get special emphasis. \n\nThere are alse some compromises. REBOL allows some pretty complex path expressions, e.g.\n\n    foo/:x/(2 + 3): 7\n\nWhat to do with this? My solution isn't perfect, but try it out and see. :)\n\nThis is a work in progress, but it is mostly complete with few problems. There is a bug with / used as an operator and I still have to finish proper highlighting of non-integral numbers, dates, issues, and a few other types. Complex paths such as those mentioned above may need a few tweaks, though they work pretty well. \n\nLastly, the ftdetect plugin in this bundle assumes the use of the .reb extension rather than .r as suggested by Carl Sassenrath (http://www.rebol.com/cgi-bin/blog.r?view=0540). I use this for everything I do. (Most of what I write is R3, not R2.)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprosumma%2Fvim-rebol","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprosumma%2Fvim-rebol","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprosumma%2Fvim-rebol/lists"}