Introduction
- What this book is working towards
- The structure of this book
- Conventions
- Learning more about Emacs
- Let’s get started!
Part I: Essential Packages
php-mode
- Overview
- Installation
- First Steps
- Useful Shortcuts
- Customization - Indentation and Coding Styles
- Customization - PHP Documentation Lookup
- Customization - Browsing Documentation Within Emacs
- Customization - Generating a TAGS File
- Evaluating PHP Code
- Running PHP’s Built-in Server
- Viewing PHP’s Configuration Paths with
php-ini
web-mode
- Overview
- Installation
- Configuring web-mode for PHP file extensions
- First Steps
- Highlighting embedded code
- Configuring indentation
- Useful shortcuts
- Snippets
Part II: Getting More out of Emacs
Checking syntax (and more) with flycheck
- Installing flycheck
- Installing PHP checkers
- Globally enabling and disabling checkers
- Per-project enabling and disabling checkers
Quickly navigating projects with projectile
- What is projectile?
- Getting Started
- Useful key bindings
Using lsp for intelligent code features
- What is lsp?
- What can lsp-mode do?
- Installation
- Configuring
lsp-mode - Configuring
lsp-ui - Installing and configuring each PHP
lspserver - Setting up automatic-completion with
company-mode - Adding icons to
company-mode
Part III: Recipes
Using .dir-locals.el to automatically set project preferences
- Just what is a
.dir-locals.elfile? - Setting values within Emacs
- Setting values directly
- Useful settings for PHP developers
- Setting the coding style
- Setting tab and space styles
- Setting flycheck phpcs coding standard
- Enabling and disabling flycheck checkers
- Learning more
Generating HTML code quickly with emmet
- Overview
- Installation
- Quick syntax overview
Looking up documentation with dash
- Overview
- Installation
- Installing and using documentation sets
- Automatically activating docsets for a mode
- Setting per-project docsets
- Fixing the GnuTLS error
Adding a project sidebar using dired-sidebar
- Overview
- Installation
- Usage
- Customization
Configuring a Drupal 7 project
- Overview
- Setting up indentation
- Setting up Drupal documentation lookup
- Setting up coding standards checking
- Adding Drupal 7 file type associations
- The full .dir-locals.el configuration
Configuring a Drupal 8 project
- Overview
- Setting up indentation
- Setting up Drupal documentation lookup
- Setting up coding standards checking
- Adding Drupal 8 file type associations
- The full .dir-locals.el configuration
Configuring a Laravel project
- Overview
- Setting up tabs and indentation
- Setting up Laravel documentation lookup
- Setting up coding standards checking with flycheck
- The full .dir-locals.el configuration
Configuring a Symfony project
- Overview
- Setting up tabs and indentation
- Setting up Symfony documentation lookup
- Setting up coding standards checking with flycheck
- The full .dir-locals.el configuration
Configuring a WordPress project
- Overview
- Setting up tabs and indentation
- Setting up WordPress documentation lookup
- Setting up coding standards checking with flycheck
- WordPress-specific
lspconfiguration - The full .dir-locals.el configuration