> For the complete documentation index, see [llms.txt](https://tpgamesnl.gitbook.io/skript-reflect/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://tpgamesnl.gitbook.io/skript-reflect/advanced/custom-syntax.md).

# Custom syntax

Due to Skript and skript-reflect limitations, it is not easy to create custom syntax through Java calls alone. To help with this, skript-reflect offers utilities that simplify the creation of custom syntax.

## Shared Syntax

### Event Classes

```
event-classes
```

### Expression

```
[the] expr[ession][s](-| )%number%
```

{% hint style="info" %}
When used with [the raw expression](/skript-reflect/basics/utilities.md#raw-expression), you can set it to a value, which will change the input value from that argument. This can be used to store data in variables in the calling trigger.

```
import:
	ch.njol.skript.lang.Variable

effect put %objects% in %objects%:
	parse:
		expr-2 is an instance of Variable # to check if the second argument is a variable
		continue
	trigger:
		set raw expr-2 to expr-1
```

{% endhint %}

### Matched Pattern

```
[the] [matched] pattern
```

### Parser Mark

```
[the] [parse[r]] mark
```

### Parse Tag

Parse tags are like parse tags, but they're a set of strings instead of a single integer.

Parse tags were added in Skript 2.6.1, and are explained in more detail [here](https://github.com/SkriptLang/Skript/pull/4176#issuecomment-882056536)

```
[the] parse[r] tags
```

### Parser Regular Expression

```
[the] [parse[r]] (regex|regular expression)(-| )%number%
```

### Continue

```
continue
```

{% content-ref url="/pages/-M9EuK7b01uPaXhu94Ja" %}
[Effects](/skript-reflect/advanced/custom-syntax/effects.md)
{% endcontent-ref %}

{% content-ref url="/pages/-M9EuK7cpzah8vWzJeyx" %}
[Conditions](/skript-reflect/advanced/custom-syntax/conditions.md)
{% endcontent-ref %}

{% content-ref url="/pages/-M9EuK7diPt1nDHdK-a-" %}
[Expressions](/skript-reflect/advanced/custom-syntax/expressions.md)
{% endcontent-ref %}

{% content-ref url="/pages/-M9EvlwrK1FKgYjZK4ba" %}
[Events](/skript-reflect/advanced/custom-syntax/events.md)
{% endcontent-ref %}
