EdiTidE is coded in Python, so easily introspectable and hackable. A basic extensions mechanism is available to add extra features.

Verified extensions will be published in this extensions repository. Contributions are welcome!

Location

Extensions are nothing more than simple Python script files.

User extensions shall be placed in folder ${XDG_DATA_HOME}/editide/exts4. File name must start with “ext_”.

Interfaces

Each extension must implement a editide_ext_init() callout, executed at application loading.

Optionally, feature callouts editide_ext_xxx() can be provided, with “xxx” the name of the feature.

Currently supported features:

  • editide_ext_get_commands: query commands to be added to the command-bar or menu
  • editide_ext_get_completion: query additional source completion providers
  • editide_ext_notif_wbench_opened: called when opening a new window
  • editide_ext_notif_wbench_closed: called when closing a window
  • editide_ext_notif_project_loaded: called when a project is loaded
  • editide_ext_notif_notebook_added: called when a notebook (i.e. tabs group) is added
  • editide_ext_notif_doc_added: called when a document tab is added
  • editide_ext_notif_doc_loaded: called when a document loaded its content from disk
  • editide_ext_notif_doc_symbols: called when a document reloaded its symbols
  • editide_ext_notif_doc_save: called when a document is going to be saved to disk
  • editide_ext_notif_doc_closed: called when a document tab is closed