Nova

Extensions


Readme

⚠️ Do NOT use/replace Intelephense just yet! but feel free to play around with it 😜

This extension ports the excellent phpactor Language Server for use with Nova! with An Important Language.

I find phpactor far superior to Intelephense because of the limitless refactoring possibilities it offers for PHP 🐘 projects. Nova 🌌 is a perfect fit for this language server, making it easy to utilise all its features via the code action.

⚠️ Tutorials, examples, and detailed usage instructions will be added once the pesky bugs 🐞 are fixed.

Requirements

phpactor requires some additional tools to be installed on your Mac:

The extension automatically downloads a copy of the latest phpactor executable (no manual download required).

  • Composer
  • Git
  • PHP 8.1+
  • you also need to require PHP 8.1+ as a platform package in your composer.json see below 👇

Project Recommendation

  • As noted by phpactor

    phpactor will perform better with Composer and, to a lesser extent, with git.

  • If you're working with a commonly used PHP frameworks like Laravel, Symfony ,no additional setup is needed 😊.
  • For raw PHP projects, you’ll need a properly configured Composer project. To get the bare minimum support for the PHP standard library do the following:

shell git init \ composer init \ composer require php ^8.1 \

  • Having a proper PSR standard configured in your composer.json, greatly enhances the refactoring options available.
  • The more detailed your composer.json the more value you’ll get out of phpactor! 😝

Usage

🔜 Coming Soon

Configuration

  • the default configuration locations are used. Refer to the the docs
  • I will add a dump command in the future to export the current configuration in your project's root
**/workspace/.phpactor.yml

~/.config/phpactor/phpactor.yml

/etc/xdg/phpactor/phpactor.yml

To Do

  • [ ] Adding the possibility not to download phpactor, if the exec already exist in you PATH or give you an option to use your own. It only downloads once when the extension is loaded!
  • [ ] Add commands to support few of the missed out refactoring actions
  • [ ] Configuration via Nova GUI
  • [x] Better error handling
  • [x] Providing useful extension notification like downloading, completing or any corresponding error

Credits:


Changelog

Version 1.1.1

  • Fix the issue with cache-clean command #6

Version 1.1.0

  • Command API
  • phpactor cache:clear support

Version 1.0.1-beta

  • Refactored Source Code
  • Fixed issue #2

Version 1.0.1-beta

  • Refactored Source Code
  • Fixed issue #2

Version 1.0.0-beta

Initial release