zed-extensions / swift

Extension for Zed to support Swift
35 stars 14 forks source link

Implement SourceKit-LSP #5

Closed tonycoco closed 4 months ago

tonycoco commented 6 months ago

Adding LSP support would make this more fully featured.

https://github.com/apple/sourcekit-lsp

tonycoco commented 6 months ago

See also: https://github.com/zed-industries/zed/issues/7096

furby-tm commented 5 months ago

I'm also quite interested in using Zed, but sadly due to lacking an integration with Swift's SourceKit-LSP it renders the text editor completely useless for me 😅.

I'd love to help out with this, if it means we can see an integration with SourceKit-LSP that much sooner.

I'm unsure the difference between "baked in" plugins vs. external plugins (such as this one), but got something very minimally working with SourceKit-LSP using a "baked in" approach here.

[!TIP] I fudged up on that initial attempt, but corrected it here.

Thanks!

louisnicolas-longheval-vinci commented 5 months ago

I'm also quite interested in using Zed, but sadly due to lacking an integration with Swift's SourceKit-LSP it renders the text editor completely useless for me 😅.

I'd love to help out with this, if it means we can see an integration with SourceKit-LSP that much sooner.

I'm unsure the difference between "baked in" plugins vs. external plugins (such as this one), but got something very minimally working with SourceKit-LSP using a "baked in" approach here.

Tip

I fudged up on that initial attempt, but corrected it here.

Thanks!

Hi, for the moment i don't have the time to understand and integrate the LSP. In addition i'm not too familiar with it... So if you would like to add it to this repo feel free to fork it and create a PR!

nervenes commented 5 months ago

Hi, for the moment i don't have the time to understand and integrate the LSP. In addition i'm not too familiar with it... So if you would like to add it to this repo feel free to fork it and create a PR!

Hi, have you considered transferring ownership of the repository to someone who have the time to maintain this extension? You could alternatively transfer it to @zed-extensions which is what I did with the Kotlin extension https://github.com/zed-extensions/zed-kotlin/issues/1

tonycoco commented 5 months ago

Would be ideal if the repo lived in the @zed-extensions. I can also help here. @evrsen your changes look good to me. Pretty straight forward.

louisnicolas-longheval-vinci commented 5 months ago

@evrsen I don't really know the process to transfer it, could you guide me like you did for your extension?

WeetHet commented 5 months ago

@evrsen I don't really know the process to transfer it, could you guide me like you did for your extension?

There is a button in the repo settings to transfer the repository. You could try transferring it to @maxdeviant if he is okay with it and then he would transfer it to zed-extensions

louisnicolas-longheval-vinci commented 5 months ago

@maxdeviant would you be okay with that?

maxdeviant commented 5 months ago

@maxdeviant would you be okay with that?

Yep, feel free to transfer to me and I can transfer it to the @zed-extensions org.

ejjonny commented 5 months ago

If anyone comes across this - I tried to get LSP working as an extension & ran into sourcekit troubles. Would appreciate any ideas! Code: https://github.com/ejjonny/swift-ext Troubles: https://github.com/zed-industries/extensions/issues/139#issuecomment-2080282984

yaroslavyaroslav commented 5 months ago

FYI: There's a tool to add support for iOS lsp leveraged code completion with low effort:

buildServer.json

{
    "name": "xcode build server",
    "version": "0.2",
    "bspVersion": "2.0",
    "languages": [
        "c",
        "cpp",
        "objective-c",
        "objective-cpp",
        "swift"
    ],
    "argv": [
        "/opt/homebrew/bin/xcode-build-server"
    ],
    "indexStorePath": "/Users/user/Library/Developer/Xcode/DerivedData/TheApp-brevdtkvkmeibkbvojjivinndsjo/Index.noindex/DataStore",
    "kind": "xcode",
    "workspace": "/Users/user/Development/Work/TheApp/mobile-ios/TheApp.xcworkspace",
    "build_root": "/Users/user/Library/Developer/Xcode/DerivedData/TheApp-brevdtkvkmeibkbvojjivinndsjo",
    "scheme": "TheAppScheme"
}

The repo itself of a tool itself. https://github.com/SolaWing/xcode-build-server