Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New language: Atlas #7061

Open
pumpkinhasapatch opened this issue Sep 26, 2024 · 1 comment
Open

New language: Atlas #7061

pumpkinhasapatch opened this issue Sep 26, 2024 · 1 comment
Labels
Add Language Good First Issue This is a great opportunity to start contributing to Linguist

Comments

@pumpkinhasapatch
Copy link

Language name

Atlas

Atlas is a data science programming language that handles text script insertion for any file type, like a programmable hex editor that can replace parts of a file with contents from an Atlas script. Atlas scripts are commonly used for video game decompilation and fan translation projects.

The official interpreter and Reference guide for the language was released in 2010 on Romhacking.net and has been in development since 2002 (see Reference Guide, page 2).

URL of example repository

Official repository with current source code:
https://github.com/stevemonaco/Atlas

Some repositories using Atlas:
https://github.com/justin3009/MMX3-ZeroProject/tree/master/Atlas
https://github.com/ShaffySwitcher/RhythmHeavenAdvance/tree/main/src
https://github.com/BASLQC/steins-gate-psp-patch/tree/master
https://github.com/pumpkinhasapatch/dokodemo-psp-english/tree/main/patches
https://github.com/Eight-Mansions/linda-cubed-again
and more

URL of syntax highlighting grammar

https://github.com/pumpkinhasapatch/atlas-highlight-vscode/blob/main/syntaxes/atlas.tmLanguage.json

This was written by me for a Visual Studio Code highlighter extension. May contain bugs and template code as I have only been using this privately until now, but it does work with highlighting Atlas or abcde commands.

There is an official Atlas Reference guide / design document available here showing most of the commands' usage and various examples.

Most popular extensions

Another interpreter for Atlas scripts is abcde, written in Perl by abw. It has support for Atlas scripts with some extra features, and can run cross-platform while the Atlas interpreter is only built for Windows.

Atlas has built-in extension support, but I do not know of any extensions used in modern Atlas projects, abcde does not support them and extension support may be removed from Atlas in a future update.

Detected language

GitHub currently does not detect Atlas scripts as any language, and treats them as a plaintext file.

Atlas projects store their scripts in .txt files and at least one .tbl file for text encoding. Scripts can be very long in size and are not given syntax highlighting or counted at all towards Repository Languages statistics.

All Atlas scripts contain commands for loading a .tbl file such as #ACTIVETBL(path/to/file.tbl) and can be filtered from other .txt files using the Regular Expression /^#ACTIVETBL\(.+\)/. There are currently 351 files on GitHub containing this line of code, not sure how to check how many repositories that is.

@pumpkinhasapatch pumpkinhasapatch added Add Language Good First Issue This is a great opportunity to start contributing to Linguist labels Sep 26, 2024
@pumpkinhasapatch
Copy link
Author

I could keep working on this if no one else is interested, just want to know if there's enough repositories on GitHub using the Atlas language for it to be accepted.

@github-linguist github-linguist deleted a comment from Mohamezezo Oct 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Add Language Good First Issue This is a great opportunity to start contributing to Linguist
Projects
None yet
Development

No branches or pull requests

1 participant