🚀
Codex Editor
  • Project Overview
    • Welcome to Codex
    • Codex Editor
      • Features
      • What was Project Accelerate?
        • Project Philosophy
        • Steering Committee
    • Vision
      • Powerful Tools and Simplicity
      • Streamlining the Translation Process
      • Unopinionated Assistance
    • Architecture
    • Frequently Asked Questions
    • Translator Requirements
    • Roadmap
    • Why VS Code?
    • Multimodality
  • Translator's Copilot
    • What is Translator's Copilot?
    • Information Management
      • Resource Indexing
      • Greek/Hebrew Insights
      • Chat with Resources
      • Project-Based Insights
    • Translation Assistance
      • Translation Drafting
        • Prioritizing Semantics over Structures
        • Reranked Translation Suggestions
      • Quality Checking
        • Token matching evaluation
        • Few-shot evaluation
        • Fine-tuned Bible QA model
        • Character and word n-gram evaluation
        • Simulated GAN evaluation
        • Linguistic Anomaly Detection (LAD)
      • Back Translation
    • Orchestration
      • Translation Memory
      • Multi-Agent Simulations
      • Drafting linguistic resources
    • Intelligent Functions Library
  • Development
    • Codex Basics
      • Projects
      • The Editor
      • Extensions
        • Rendered Views
        • Language Servers
        • Custom Notebooks
        • Global State
    • Experimental Repositories
Powered by GitBook
On this page
  1. Development
  2. Codex Basics
  3. Extensions

Global State

PreviousCustom NotebooksNextExperimental Repositories

Last updated 1 year ago

One of the most powerful ways we can enable an extension to pass information between the client and the webview is using VS Code's globalState and message passing capabilities.

However, to enable extensions to interact with other extensions, we will build a global state extension (abstracted from our current codex-editor extension), which we will likely call crossExtensionState that can be a dependency of any of our codex extensions:

  • An extension can directly invoke the commands of another extension (see discussion ), so we could call crossExtensionState.getState or .setState from another extension.

  • If this fails to work as expected for some reason, we can fall back to updating a json file with project state.

here