This repository is a collection of miscellaneous multivalue database system syntaxes and grammars. It aims to provide resources to work with various development tools effectively.
It is a work in progress. if you feel something is missing or incorrect please get involved.
The repository covers a range of topics related to multivalue database syntaxes and grammars. Some of the key topics included are:
- Beyond-Compare
- Linguist
- Rocket Software
- UniVerse
- UniData
- jBase
- D3
- Visual Studio Code
See the Rocket Software website for more information on UniVerse, UniData, jBase, D3, mvBase, OpenQM and multivalue in general here https://www.rocketsoftware.com/products/rocket-multivalue-application-development-platform/all-products Documentation https://docs.rocketsoftware.com Forums https://community.rocketsoftware.com/home
Beyond Compare is a commercial utility for comparing, diffing, merging, and synchronizing files and folders. It supports various environments, file types, syntax highlighting, filters, and scripting.
The BCFileFormats.xml file may be imported into Beyond Compare to provide syntax highlighting and comparison rules for mvBasic and mv data.
The Linguist library is used on GitHub.com to detect blob languages, ignore binary or vendored files, suppress generated files in diffs, and generate language breakdown graphs.
When committing any mvBasic to GitHub, Use * linguist-language=mvBasic
in your .gitattributes
file to explicitly indicate the language is mvBasic.
As most mvBasic files don't have any specific identifier, such as a well-known filename extension or header shebang line [although the SUBROUTINE/PROGRAM keywords may be taken into consideration??], using this enables Linguist to identify the language type.
By specifying the associated file types in the .gitattributes
file, Linguist will use that to explicitly identify miscellaneous files.
For example, if you have both Python and mvBasic files in your main branch, you can identify Python code by its extension and everything else as mvBasic:
# Example of a '.gitattributes' file which classifies '.py' files as Python and everything else as mvBasic:
*.py linguist-language=python
* linguist-language=mvbasic
If Linguist doesn't have anything else to go by it will use heuristics and naïve Bayesian classification to attempt to identify the file type.
VS Code is a free standalone source code editor that runs on Windows, macOS, and Linux. The top pick for mvBasic developers, with extensions to support most programming languages and a vast range of utility extensions.
This opens mv programming to the world of modern programming editing tools and utilities including AI assistants that work with MV environments.
Recommended extensions include:
- mv Basic - mvBasic programming syntax and utilities.
- Pickdate! - Pick internal date & time.
- Better align - select and align code.
- Remote - SSH extension for accessing your code base through SSH.
- Github Copilot - AI assistant.
- Beyond Compare
- D3
- Database
- DBMS
- Grammar
- Grammar Rules
- Linguist
- MultiValue
- MV
- MVBasic
- Pick
- Pick Basic
- PickBasic
- Rocket
- U2
- UniData
- Universe
- VSCode
In this repository, you will find resources including syntax and grammar guides, complete grammars and sample code snippets. Feel free to explore the contents.
If you are passionate about multivalue databases and syntaxes, I welcome your contributions to this repository. Whether you want to suggest improvements, add new syntax examples, or share your knowledge, your input is gratefully accepted and highly valued.
-
Ensure the bug was not already reported by searching on GitHub under Issues.
-
If you're unable to find an open issue addressing the problem, open a new one. Be sure to include a title and clear description, as much relevant information as possible, and a code sample or an executable test case demonstrating the expected behavior that is not occurring.
To stay updated with the latest developments and additions to the MVSyntax repository, be sure to watch this repository. By watching the repository, you will receive notifications about new releases, code updates, and community contributions.
For any questions, suggestions, or collaboration opportunities, feel free to reach out to me via Rocket forums. Your feedback is crucial in improving this repository and making it a valuable resource for the multivalue community.
Thank you for visiting the MVSyntax repository. Happy exploring and coding with multivalue databases! 🌟🚀