package circular

import "github.com/alecthomas/chroma/lexers/circular"

Package circular exists to break circular dependencies between lexers.

Index

Variables

var PHP = internal.Register(MustNewLexer(
	&Config{
		Name:            "PHP",
		Aliases:         []string{"php", "php3", "php4", "php5"},
		Filenames:       []string{"*.php", "*.php[345]", "*.inc"},
		MimeTypes:       []string{"text/x-php"},
		DotAll:          true,
		CaseInsensitive: true,
		EnsureNL:        true,
	},
	phpCommonRules.Rename("php", "root"),
))

PHP lexer for pure PHP code (not embedded in HTML).

var PHTML = internal.Register(DelegatingLexer(h.HTML, MustNewLexer(
	&Config{
		Name:            "PHTML",
		Aliases:         []string{"phtml"},
		Filenames:       []string{"*.phtml"},
		MimeTypes:       []string{"application/x-php", "application/x-httpd-php", "application/x-httpd-php3", "application/x-httpd-php4", "application/x-httpd-php5"},
		DotAll:          true,
		CaseInsensitive: true,
		EnsureNL:        true,
	},
	Rules{
		"root": {
			{`<\?(php)?`, CommentPreproc, Push("php")},
			{`[^<]+`, Other, nil},
			{`<`, Other, nil},
		},
	}.Merge(phpCommonRules),
).SetAnalyser(func(text string) float32 {
	if strings.Contains(text, "<?php") {
		return 0.5
	}
	return 0.0
})))

PHTML lexer is PHP in HTML.

Source Files

doc.go php.go phtml.go

Version
v0.8.2
Published
Nov 12, 2020
Platform
js/wasm
Imports
4 packages
Last checked
6 hours ago

Tools for package owners.