Like VS Code, with plugins and formatter, such as Intelephense or Prettier, you can enable the document format on save. Same goes to Zed code editor , you can also enable auto-format for your PHP documents.
Zed (next generation) code editor is bundled with phpactor and intelephese (freemium), so we can just edit our config on macOS at ~/.config/zed/settings.json.
{
"languages": {
"PHP": {
"format_on_save": "on",
"enable_language_server": true,
"language_servers": ["intelephense", "!phpactor"],
"formatter": "language_server"
}
},
} And, we are good to go. That is all needed to enable the automatic document format for PHP files, on save.
You may also read other configurations I have done.
Below is my full settings.json
// Zed settings
//
// For information on how to configure Zed, see the Zed
// documentation: https://zed.dev/docs/configuring-zed
//
// To see all of Zed's default settings without changing your
// custom settings, run `zed: open default settings` from the
// command palette (cmd-shift-p / ctrl-shift-p)
{
"edit_predictions": {
"mode": "eager",
"enabled_in_text_threads": false
},
"features": {
"edit_prediction_provider": "copilot"
},
"icon_theme": "Catppuccin Latte",
"agent": {
"always_allow_tool_actions": true,
"default_profile": "write",
"model_parameters": [],
"default_model": {
"provider": "copilot_chat",
"model": "gpt-5-mini"
}
},
"ui_font_size": 14,
"buffer_line_height": {
"custom": 1.6
},
"buffer_font_family": "Google Sans Code",
"buffer_font_size": 12,
"theme": {
"mode": "system",
"light": "One Light",
"dark": "One Dark Pro"
},
"file_scan_inclusions": ["web/app/plugins", "web/app/themes"],
"soft_wrap": "editor_width",
"context_servers": {
"laravel-boost": {
"enabled": true,
"source": "custom",
"command": "php",
"args": ["artisan", "boost:mcp"],
"env": {}
}
},
"languages": {
"CSS": {
"enable_language_server": true
},
"HTML": {
"enable_language_server": true
},
"PHP": {
"format_on_save": "on",
"enable_language_server": true,
"language_servers": ["intelephense", "!phpactor"],
"formatter": "language_server"
}
},
"lsp": {
"tailwindcss-language-server": {
"settings": {
"tailwindCSS": {
"validate": true
}
}
}
}
}
No comments yet