# code-snippets/4.0.0-beta.1/js/entries/editor.ts

Code Snippets, version 4.0.0-beta.1. 22 lines.

- Page: https://pluginprobe.com/plugins/code-snippets/4.0.0-beta.1/code/js/entries/editor.ts
- Raw: https://pluginprobe.com/plugins/code-snippets/4.0.0-beta.1/raw/js/entries/editor.ts
- Modified: 2026-06-19T15:56:12+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/code-snippets/4.0.0-beta.1/code/js/entries/editor.ts#L10-L20`.

```typescript
import { defineMode, getMode, registerHelper } from 'codemirror'
import { Linter } from '../utils/Linter'
import type { EditorConfiguration, ModeSpec } from 'codemirror'

interface ModeSpecOptions {
	startOpen: boolean
}

const mode: ModeSpec<ModeSpecOptions> = {
	name: 'application/x-httpd-php',
	startOpen: true
}

defineMode('php-snippet', (config: EditorConfiguration) => getMode(config, mode))

registerHelper('lint', 'php', (text: string) => {
	const linter = new Linter(text)
	linter.lint()

	return linter.annotations
})

```
