Zed setup with PHP intelephense and Laravel (laravel-ide-helper) #34972
bdlowery
started this conversation in
Language Support
Replies: 1 comment 1 reply
-
|
Hi! Thank you for sharing your settings. I have spent hours to get Zed working with Laravel Pint and before I found this, I used VSCodium with Laravel Pint extension installed. Now I can continue working with the project using this great editor. Thanks again! P.S: |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Does anyone mind sharing how they're using Laravel with Zed? I'm using intelephense and laravel pint to format and that's going great. I'm using laravel-ide-helper which works with types, when I hover over something, or when I'm typing i'll get a dropdown menu. I have premium intelephense to get code actions.
This is my settings.json:
{ "languages": { "PHP": { "language_servers": ["intelephense", "!phpactor"], // run laravel pint on save "formatter": { "external": { "command": "bash", "arguments": [ "-c", "cat > {buffer_path} && ./vendor/bin/pint --quiet {buffer_path} && cat {buffer_path}" ] } } }, // Use eslint for all of the formatting as it will use the eslint.config.js file, which includes prettier. "Vue.js": { "language_servers": ["vtsls"], // or "typescript-language-server" "formatter": { "code_actions": { "source.fixAll.eslint": true } }, "prettier": { "allowed": false } // using eslint }, "TypeScript": { "language_servers": ["vtsls", "!typescript-language-server", "..."], "formatter": { "code_actions": { "source.fixAll.eslint": true } }, "prettier": { "allowed": false } // using eslint }, "TSX": { "language_servers": ["vtsls", "!typescript-language-server", "..."], "formatter": { "code_actions": { "source.fixAll.eslint": true } }, "prettier": { "allowed": false } // using eslint }, "JavaScript": { "language_servers": ["vtsls", "!typescript-language-server", "..."], "formatter": { "code_actions": { "source.fixAll.eslint": true } }, "prettier": { "allowed": false } // using eslint } }, "format_on_save": "on", "file_types": { "PHP": ["*.php", "_ide_helper.php"], "Blade": ["*.blade.php"] }, "lsp": { "intelephense": { // One-time options passed during the LSP "initialize" handshake "initialization_options": { "licenceKey": "~/intelephense/licence.txt " }, // Workspace settings that the server can reload at runtime "settings": { // "stubs": [], "files": { "maxSize": 10000000, // 10 MB "associations": ["**/*.php"] }, "completion": { "insertUseDeclaration": true // auto-add `use` on accept } } }, "vue-language-server": { "initialization_options": { "vue": { "hybridMode": true } } } }, "file_scan_exclusions": [ "**/.git", "**/.svn", "**/.hg", "**/.jj", "**/CVS", "**/.DS_Store", "**/Thumbs.db", "**/.classpath", "**/.settings" ] }is there anything else I'm missing?
Beta Was this translation helpful? Give feedback.
All reactions