# code-snippets/3.6.6/js/editor.ts

Code Snippets, version 3.6.6. 22 lines.

- Page: https://pluginprobe.com/plugins/code-snippets/3.6.6/code/js/editor.ts
- Raw: https://pluginprobe.com/plugins/code-snippets/3.6.6/raw/js/editor.ts
- Modified: 2024-11-27T16:43:04+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/3.6.6/code/js/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
})

```
