Extension for Zed that adds support for Discord Rich Presence using LSP
Find a file
Jozef Steinhübl 0997c7d2eb
Some checks failed
Check / check (push) Has been cancelled
docs: change default repo
2024-08-07 15:57:14 +02:00
.gimi build: add gimi 2024-07-23 21:10:03 +02:00
.github ci: update *-artifact actions 2024-07-23 21:12:17 +02:00
assets fix: add regex's unicode-case feature flag 2024-08-04 23:30:13 +02:00
lsp build: bump lsp to 0.4.2 2024-08-04 23:30:28 +02:00
scripts feat: add support for even more languages 2024-07-24 23:55:36 +02:00
src docs: add license header files 2024-07-23 21:08:39 +02:00
.gitignore feat: initialization 2024-07-19 00:05:53 +02:00
Cargo.lock build: bump lsp to 0.4.2 2024-08-04 23:30:28 +02:00
Cargo.toml docs: change default repo 2024-08-07 15:57:14 +02:00
extension.toml docs: change default repo 2024-08-07 15:57:14 +02:00
LICENSE feat: initialization 2024-07-19 00:05:53 +02:00
README.md fix: base icons url & case insensitive regexes 2024-08-04 22:59:22 +02:00

Zed discord presence is an extension for Zed that adds support for Discord Rich Presence using LSP

Using LSP is a workaround for now (yeah, it's a bit hacky) but once Zed has proper extension support, I'll rewrite it.

Requirements

rust is required for installing this extension.
The easiest way to get rust is by using rustup

How to install?

  1. Clone this repository
  2. CTRL + SHIFT + P and select zed: install dev extension
  3. Choose the directory where you cloned this repository
  4. Enjoy :)

How to configure?

You can configure state, details and git integration by changing Discord Presence LSP settings. This can be done in zed: open settings with following configuration:

{
  "lsp": {
    "discord_presence": {
      "initialization_options": {
        // Base url for all language icons
        "base_icons_url": "https://raw.githubusercontent.com/xhyrom/zed-discord-presence/main/assets/icons/",

        "state": "Working on {filename}",
        "details": "In {workspace}",
        // URL for large image
        "large_image": "{base_icons_url}/{language}.png",
        "large_text": "{language:u}", // :u makes first letter upper-case
        // URL for small image
        "small_image": "{base_icons_url}/zed.png",
        "small_text": "Zed",
        "git_integration": true
      }
    }
  }
}

You can also use null to unset the option. Possible for everything except base_icons_url and git_integration