---
title: "performEditingTransaction(_:)"
framework: appkit
role: symbol
role_heading: Instance Method
path: "appkit/nstextcontentmanager/performeditingtransaction(_:)"
---

# performEditingTransaction(_:)

Performs an editing transaction and invokes a block upon completion.

## Declaration

```swift
func performEditingTransaction(_ transaction: () -> Void)
```

## Parameters

- `transaction`: The editing transaction.

## Discussion

Discussion The primary NSTextLayoutManager controlling the active editing transaction invokes this method. It’s possible to nest multiple editing transactions. The outer most transaction toggles hasEditingTransaction and sends synchronization messages if enabled after invoking a transaction.

## See Also

### Performing transactions

- [hasEditingTransaction](appkit/nstextcontentmanager/haseditingtransaction.md)
- [recordEditAction(in:newTextRange:)](appkit/nstextcontentmanager/recordeditaction(in:newtextrange:).md)
