Automating CI/CD Workflows for Enterprise Timber and Twig Template Engine Integration in Enterprise Themes for Premium Gutenberg-First Themes
Leveraging Timber and Twig for Enterprise WordPress Theming
Integrating Timber and Twig into an enterprise-grade WordPress theme development workflow offers significant advantages in terms of code organization, maintainability, and developer productivity. This approach decouples presentation logic from business logic, leading to cleaner, more testable code. For themes built with a Gutenberg-first strategy, this separation is paramount, allowing for complex block structures and dynamic content rendering without cluttering the core PHP theme files.
Setting Up a Robust CI/CD Pipeline
An effective CI/CD pipeline for such a setup must address several key areas: dependency management, code linting and formatting, automated testing (unit, integration, and end-to-end), and deployment. We’ll focus on a Git-based workflow, utilizing GitHub Actions for automation, but the principles are transferable to GitLab CI, Bitbucket Pipelines, or Jenkins.
Dependency Management with Composer
Timber itself is managed via Composer. Ensuring consistent dependency versions across development, staging, and production environments is critical. A composer.json file is the cornerstone of this. For enterprise themes, pinning specific versions or using strict version constraints is advisable to prevent unexpected breakages.
{
"name": "my-enterprise-theme/theme",
"description": "An enterprise-grade WordPress theme.",
"type": "wordpress-theme",
"require": {
"php": "^7.4 || ^8.0",
"composer/installers": "^1.9",
"timber/timber": "^1.21"
},
"autoload": {
"psr-4": {
"MyEnterpriseTheme\\": "inc/"
}
},
"extra": {
"installer-paths": {
"webroot/wp-content/themes/{$name}/": ["type:wordpress-theme"]
}
}
}
The CI pipeline should always run composer install --prefer-dist --no-dev to ensure production dependencies are installed. For development environments, composer install (which includes dev dependencies like testing frameworks) is sufficient.
Code Quality and Linting
Maintaining high code quality is non-negotiable. For Twig, we can leverage the TwigCS linter. For PHP, PHP_CodeSniffer (PHPCS) with WordPress coding standards is essential. Integrating these into the CI pipeline catches stylistic issues and potential bugs early.
Configuring TwigCS
First, install TwigCS via Composer:
composer require --dev twig/twig-cs
Create a .twig-cs.yml file in your theme’s root directory to define rules. A minimal configuration might look like this:
twig_cs:
lint:
enabled: true
format:
enabled: true
rules:
# Example: Enforce consistent indentation
Twig.Cs.TwigCore.TrailingCommaInArray: error
Twig.Cs.TwigCore.WhitespaceBeforeCommaInArray: error
Twig.Cs.TwigCore.WhitespaceAfterCommaInArray: error
Twig.Cs.TwigCore.MaxLineLength:
enabled: true
max_length: 120
ignore_comments: true
ignore_pattern:
- "^#"
Twig.Cs.TwigCore.IndentWithOneSpace: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterComma: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeComma: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterAs: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterSet: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterElseIf: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndfor: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndelseif: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterBlock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterEndblock: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterParent: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterExtends: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterInclude: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterUse: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterImport: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceAfterFrom: error
Twig.Cs.TwigCore.IndentWithOneSpaceBeforeAs: error
Twig.