> For the complete documentation index, see [llms.txt](https://docs.yarnspinner.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.yarnspinner.dev/3.1/api/csharp/yarn.markup/yarn.markup.lineparser/yarn.markup.lineparser.registermarkerprocessor.md).

# RegisterMarkerProcessor(string,IAttributeMarkerProcessor)

Method in [LineParser](/3.1/api/csharp/yarn.markup/yarn.markup.lineparser.md)

## Summary

Registers an object as a marker processor for a given marker name.

```csharp
public void RegisterMarkerProcessor(string attributeName, IAttributeMarkerProcessor markerProcessor)
```

## Remarks

When a marker processor is registered for a marker name, the parser will ask the processor for text to insert into the plain text. This allows users of the [LineParser](/3.1/api/csharp/yarn.markup/yarn.markup.lineparser.md) class to dynamically replace text in a line. The `nomarkup` tag is implemented in this way by the [LineParser](/3.1/api/csharp/yarn.markup/yarn.markup.lineparser.md) class directly; the [Dialogue](/3.1/api/csharp/yarn/yarn.dialogue.md) class uses this mechanism to implement the `select` , `plural` and `ordinal` markers.

## Parameters

| Name                                                                                                                          | Description                                                                    |
| ----------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| `string` attributeName                                                                                                        | The name of the marker that should use this marker processor.                  |
| [Yarn.Markup.IAttributeMarkerProcessor](/3.1/api/csharp/yarn.markup/yarn.markup.iattributemarkerprocessor.md) markerProcessor | The object that should be invoked when markers with this name are encountered. |
