This page explains how to pass your document's text to UNIX scripts that are executable via the Script menu, or how to receive the outputs from them.
If the frontmost document has already been saved, the absolute file path of the document will be referred to as an argument.
To pass text data from CotEditor to your script, you need to put a comment at the beginning of the script and write “%%%{CotEditorXInput=xxxx}%%%
” inside. Replace “xxxx
” with one of the parameters below.
Selection | To pass the text you are currently selecting. |
---|---|
AllText | To pass the whole text of your document. |
None | To pass nothing (default). |
To make CotEditor receive output data from a script, you need to put a comment at the beginning of the script and write “%%%{CotEditorXOutput=xxxx}%%%
” inside. Replace “xxxx
” with one of the parameters below.
ReplaceSelection | To replace the current selection with the contents of the output data. |
---|---|
ReplaceAllText | To replace the whole text of your document with the contents of the output data. |
InsertAfterSelection | To insert the contents of the output data right after the current selection. |
AppendToAllText | To insert the contents of the output data at the end of your document. |
NewDocument | To create a new document and insert the contents to it. |
Pasteboardputs | To store the contents of the output data in clipboard. |
Discard | To do nothing (default). |
The following Python script prepends “>” character to every line in the selection of the frontmost document.
#!/usr/bin/env python
# %%%{CotEditorXInput=Selection}%%%
# %%%{CotEditorXOutput=ReplaceSelection}%%%
import sys
for line in sys.stdin:
print(">" + line.rstrip())
You can get more sample scripts on:
coteditor/SampleScripts -GitHub