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

Develop IDE Plugin for Enhanced .metta File Support Using MeTTaLog's Built-In LSP Server (duplicate of #74) #97

Closed
TeamSPoon opened this issue Aug 22, 2024 · 1 comment
Labels
duplicate This issue or pull request already exists Editor/IDE
Milestone

Comments

@TeamSPoon
Copy link
Collaborator

TeamSPoon commented Aug 22, 2024

Description

We aim to create an IDE plugin specifically for .metta files, leveraging the built-in LSP server of MeTTaLog to enhance support within IDEs. This plugin will focus exclusively on .metta files, offering tailored functionalities such as syntax highlighting, autocompletion, and error handling, to improve the development experience for MeTTa programmers.

Objectives:

  1. Syntax Highlighting: Implement syntax highlighting for .metta files to highlight MeTTa-specific keywords and constructs.
  2. File Recognition: Configure the IDE to automatically recognize and properly handle .metta files with specific settings optimized for MeTTa development.
  3. Autocompletion and Tooltips: Use MeTTaLog’s built-in LSP server to enrich autocompletion and tooltips with MeTTa-specific documentation and definitions.
  4. Error Checking and Linting: Develop error checking and linting capabilities specifically tailored to .metta syntax and semantics.

Integration with MeTTaLog's LSP:

  • Customization of Built-In LSP Server: Adapt and optimize MeTTaLog’s built-in LSP functionalities to support MeTTa-specific features within .metta files.
  • Building from Existing Resources: While the plugin will be focused on .metta files, considering an existing plugin for .pl files as a foundation could be beneficial. This approach can provide insights into integrating LSP functionalities effectively and may accelerate the development process by using an established framework as a template.

Development Considerations:

  • Source Plugin Exploration: Investigate existing plugins that support .pl files to understand their architecture and functionalities. These plugins can serve as a blueprint for developing the .metta file plugin.
  • Performance Optimization: Ensure the plugin is efficient in handling large files and complex tasks without degrading IDE performance.
  • User Experience: Design the plugin to be intuitive for developers working with MeTTa, focusing on enhancing productivity and ease of use.

Expected Outcomes:

  • A dedicated IDE plugin that effectively supports .metta files by leveraging MeTTaLog's built-in LSP server for a tailored and productive development experience.
  • Streamlined development tools that improve coding efficiency, error resolution, and navigation specifically for .metta files.

Contribution:

Contributors with experience in IDE plugin development and familiarity with both MeTTa and MeTTaLog are encouraged to join this project. Your expertise will be crucial in adapting existing frameworks to meet the specific needs of the MeTTa development community.

@TeamSPoon TeamSPoon changed the title Develop IDE Plugin for Enhanced .metta File Support Using SWI-Prolog LSP Server Develop IDE Plugin for Enhanced .metta File Support Using MeTTaLog's Built-In LSP Server Aug 22, 2024
@TeamSPoon TeamSPoon added this to the Month 2 or 3 milestone Aug 22, 2024
@TeamSPoon TeamSPoon modified the milestones: Month 2 or 3, Month 2 of 5 Aug 31, 2024
@TeamSPoon TeamSPoon modified the milestones: Month 2 of 5, Month 2 of 5a Aug 31, 2024
@TeamSPoon TeamSPoon changed the title Develop IDE Plugin for Enhanced .metta File Support Using MeTTaLog's Built-In LSP Server Develop IDE Plugin for Enhanced .metta File Support Using MeTTaLog's Built-In LSP Server (duplicate of #74) Sep 8, 2024
@TeamSPoon
Copy link
Collaborator Author

Dumplicate of #74

@TeamSPoon TeamSPoon added the duplicate This issue or pull request already exists label Sep 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
duplicate This issue or pull request already exists Editor/IDE
Projects
None yet
Development

No branches or pull requests

1 participant