onivim / oni2

Native, lightweight modal code editor
https://v2.onivim.io
MIT License
7.84k stars 282 forks source link

Workspace configuration #1477

Open cometkim opened 4 years ago

cometkim commented 4 years ago

Hello Onivim, such a great editor!

Recently, I've started to use yarn 2 PnP feature for a few js projects.

Yarn 2 requires some settings to integrated with editors(language servers), and they provide a tool called "pnpify" for it. pnpify is a simple endpoint let language server know how to resolve modules in pnp mode and editors have to configure the path of tsserver.

for example vscode:

// .vscode/settings.json
{
  "typescript.tsdk": ".vscode/pnpify/typescript/lib"
}

coc.vim:

//.vim/coc-settings.json
{
  "tsserver.tsdk": ".vscode/pnpify/typescript/lib"
}

VSCode and coc.vim have a configuration file for CWD, so it can be configured easily for specified projects.

If you support many more extensions, there will be more cases like this. per-workspace settings and per-user (global) settings just like VSCode or coc.vim are essential features but I haven't found it on the roadmap. Are there any plans to enable customization, before adding more extensions?

cometkim commented 4 years ago

Found settings from docs, but is there settings for a workspace too?

glennsl commented 4 years ago

There's no workspace configuration yet. And configuration isn't being sent to extensions either. I'm currently working on getting the infrastructure to a place that enables us to do this pretty easily though, so it shouldn't be too far off.

benwainwright commented 3 years ago

Hey @bryphe, @glennsl. Any movement on this? Not being able to use TypeScript at all in my PNP projects is a massive PIA :(

jrwrigh commented 3 years ago

This is a significant roadblock for me. I primarily write in LaTeX and use workspace configs to manage the correct build instructions for LaTeX-Workshop to use when building up projects.