You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Hugo Thunnissen 153ff71fcf WIP: Implement psr0 and psr4 autoload strategies 3 months ago
test WIP: Implement psr0 and psr4 autoload strategies 3 months ago
.drone.yml Add drone.yml 5 months ago
.gitignore Add resolvecontext structure and optimze type resolving process 1 year ago
COPYING Add license information 1 year ago
README.md WIP: Implement psr0 and psr4 autoload strategies 3 months ago
phpinspect-autoload.el WIP: Implement psr0 and psr4 autoload strategies 3 months ago
phpinspect-cache.el Replace index-thread with more generic and encapsulated worker type 5 months ago
phpinspect-class.el Fix tests and patch bugs that came to light in the process 5 months ago
phpinspect-index.bash Index new files when no FQN can be found for a type 1 year ago
phpinspect-index.el Replace index-thread with more generic and encapsulated worker type 5 months ago
phpinspect-parser.el WIP: Split code up into separate files 5 months ago
phpinspect-project.el Replace index-thread with more generic and encapsulated worker type 5 months ago
phpinspect-serialize.el Fix tests and patch bugs that came to light in the process 5 months ago
phpinspect-type.el Fix tests and patch bugs that came to light in the process 5 months ago
phpinspect-util.el WIP: Split code up into separate files 5 months ago
phpinspect-worker.el Replace index-thread with more generic and encapsulated worker type 5 months ago
phpinspect.el Replace index-thread with more generic and encapsulated worker type 5 months ago

README.md

phpinspect.el

WIP. More documentation is in the making.

Example config

;;;###autoload
(defun my-php-personal-hook ()
  ;; It is important to enable `company-mode' before setting
  ;; the variables below.
  (company-mode)
  (setq-local company-minimum-prefix-length 0)
  (setq-local company-tooltip-align-annotations t)
  (setq-local company-idle-delay 0.1)
  (setq-local company-backends '(phpinspect-company-backend))

  ;; Shortcut to add use statements for classes you use.
  (define-key php-mode-map (kbd "C-c u") 'phpinspect-fix-uses-interactive)

  ;; Shortcuts to quickly search/open files of PHP classes.
  (global-set-key (kbd "C-c a") 'phpinspect-find-class-file)
  (global-set-key (kbd "C-c c") 'phpinspect-find-own-class-file)

  (phpinspect-mode))

(add-hook 'php-mode-hook #'my-php-personal-hook)

Install

git clone https://git.snorba.art/hugo/phpinspect.el ~/projects/phpinspect.el
(add-to-list 'load-path "~/projects/phpinspect.el")
(require 'phpinspect)

Development

Running tests

Tests are implemented using ert. You can run them in batch mode with the following command:

emacs -L ./ -batch -l ert -l ./phpinspect.el -l ./test/phpinspect-test.el -f ert-run-tests-batch-and-exit