HeadlessTerminal.html 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <title>HeadlessTerminal Class Reference</title>
  5. <link rel="stylesheet" type="text/css" href="../css/jazzy.css" />
  6. <link rel="stylesheet" type="text/css" href="../css/highlight.css" />
  7. <meta charset='utf-8'>
  8. <script src="../js/jquery.min.js" defer></script>
  9. <script src="../js/jazzy.js" defer></script>
  10. </head>
  11. <body>
  12. <a name="//apple_ref/swift/Class/HeadlessTerminal" class="dashAnchor"></a>
  13. <a title="HeadlessTerminal Class Reference"></a>
  14. <header>
  15. <div class="content-wrapper">
  16. <p><a href="../index.html">SwiftTerm 1.0 Docs</a> (61% documented)</p>
  17. <p class="header-right"><a href="https://github.com/migueldeicaza/SwiftTerm"><img src="../img/gh.png"/>View on GitHub</a></p>
  18. <p class="header-right"><a href="dash-feed://https%3A%2F%2Fmigueldeicaza%2Egithub%2Eio%2FSwiftTerm%2Fdocsets%2FSwiftTerm%2Exml"><img src="../img/dash.png"/>Install in Dash</a></p>
  19. </div>
  20. </header>
  21. <div class="content-wrapper">
  22. <p id="breadcrumbs">
  23. <a href="../index.html">SwiftTerm Reference</a>
  24. <img id="carat" src="../img/carat.png" />
  25. HeadlessTerminal Class Reference
  26. </p>
  27. </div>
  28. <div class="content-wrapper">
  29. <nav class="sidebar">
  30. <ul class="nav-groups">
  31. <li class="nav-group-name">
  32. <a href="../Classes.html">Classes</a>
  33. <ul class="nav-group-tasks">
  34. <li class="nav-group-task">
  35. <a href="../Classes/HeadlessTerminal.html">HeadlessTerminal</a>
  36. </li>
  37. <li class="nav-group-task">
  38. <a href="../Classes/LocalProcess.html">LocalProcess</a>
  39. </li>
  40. <li class="nav-group-task">
  41. <a href="../Classes/LocalProcessTerminalView.html">LocalProcessTerminalView</a>
  42. </li>
  43. <li class="nav-group-task">
  44. <a href="../Classes/PseudoTerminalHelpers.html">PseudoTerminalHelpers</a>
  45. </li>
  46. <li class="nav-group-task">
  47. <a href="../Classes/Terminal.html">Terminal</a>
  48. </li>
  49. <li class="nav-group-task">
  50. <a href="../Classes/Terminal/MouseMode.html">– MouseMode</a>
  51. </li>
  52. <li class="nav-group-task">
  53. <a href="../Classes/Terminal/WindowManipulationCommand.html">– WindowManipulationCommand</a>
  54. </li>
  55. <li class="nav-group-task">
  56. <a href="../Classes/TerminalDebugView.html">TerminalDebugView</a>
  57. </li>
  58. <li class="nav-group-task">
  59. <a href="../Classes/TerminalView.html">TerminalView</a>
  60. </li>
  61. <li class="nav-group-task">
  62. <a href="../Classes/TerminalView/Options.html">– Options</a>
  63. </li>
  64. <li class="nav-group-task">
  65. <a href="../Classes/TerminalView.html">TerminalView</a>
  66. </li>
  67. <li class="nav-group-task">
  68. <a href="../Classes/TerminalView/Options.html">– Options</a>
  69. </li>
  70. </ul>
  71. </li>
  72. <li class="nav-group-name">
  73. <a href="../Enums.html">Enumerations</a>
  74. <ul class="nav-group-tasks">
  75. <li class="nav-group-task">
  76. <a href="../Enums/CursorStyle.html">CursorStyle</a>
  77. </li>
  78. </ul>
  79. </li>
  80. <li class="nav-group-name">
  81. <a href="../Extensions.html">Extensions</a>
  82. <ul class="nav-group-tasks">
  83. <li class="nav-group-task">
  84. <a href="../Extensions/TerminalViewDelegate.html">TerminalViewDelegate</a>
  85. </li>
  86. </ul>
  87. </li>
  88. <li class="nav-group-name">
  89. <a href="../Protocols.html">Protocols</a>
  90. <ul class="nav-group-tasks">
  91. <li class="nav-group-task">
  92. <a href="../Protocols/LocalProcessDelegate.html">LocalProcessDelegate</a>
  93. </li>
  94. <li class="nav-group-task">
  95. <a href="../Protocols/LocalProcessTerminalViewDelegate.html">LocalProcessTerminalViewDelegate</a>
  96. </li>
  97. <li class="nav-group-task">
  98. <a href="../Protocols/TerminalDelegate.html">TerminalDelegate</a>
  99. </li>
  100. <li class="nav-group-task">
  101. <a href="../Protocols/TerminalViewDelegate.html">TerminalViewDelegate</a>
  102. </li>
  103. </ul>
  104. </li>
  105. <li class="nav-group-name">
  106. <a href="../Structs.html">Structures</a>
  107. <ul class="nav-group-tasks">
  108. <li class="nav-group-task">
  109. <a href="../Structs/Attribute.html">Attribute</a>
  110. </li>
  111. <li class="nav-group-task">
  112. <a href="../Structs/Attribute/Color.html">– Color</a>
  113. </li>
  114. <li class="nav-group-task">
  115. <a href="../Structs/CharData.html">CharData</a>
  116. </li>
  117. <li class="nav-group-task">
  118. <a href="../Structs/CharacterStyle.html">CharacterStyle</a>
  119. </li>
  120. <li class="nav-group-task">
  121. <a href="../Structs/TerminalOptions.html">TerminalOptions</a>
  122. </li>
  123. <li class="nav-group-task">
  124. <a href="../Structs/TinyAtom.html">TinyAtom</a>
  125. </li>
  126. </ul>
  127. </li>
  128. </ul>
  129. </nav>
  130. <article class="main-content">
  131. <section>
  132. <section class="section">
  133. <h1>HeadlessTerminal</h1>
  134. <div class="declaration">
  135. <div class="language">
  136. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">class</span> <span class="kt">HeadlessTerminal</span> <span class="p">:</span> <span class="kt"><a href="../Protocols/TerminalDelegate.html">TerminalDelegate</a></span><span class="p">,</span> <span class="kt"><a href="../Protocols/LocalProcessDelegate.html">LocalProcessDelegate</a></span></code></pre>
  137. </div>
  138. </div>
  139. <p>A <code>HeadlessTerminal</code> provides a terminal emulator that runs a local process, but the output does not go
  140. anywhere. You can use this to script applications and screen scrape the output for example, by accessing the
  141. <code>terminal</code> from this class.</p>
  142. </section>
  143. <section class="section task-group-section">
  144. <div class="task-group">
  145. <ul>
  146. <li class="item">
  147. <div>
  148. <code>
  149. <a name="/s:9SwiftTerm16HeadlessTerminalC8terminalAA0D0CSgvp"></a>
  150. <a name="//apple_ref/swift/Property/terminal" class="dashAnchor"></a>
  151. <a class="token" href="#/s:9SwiftTerm16HeadlessTerminalC8terminalAA0D0CSgvp">terminal</a>
  152. </code>
  153. </div>
  154. <div class="height-container">
  155. <div class="pointer-container"></div>
  156. <section class="section">
  157. <div class="pointer"></div>
  158. <div class="abstract">
  159. <p>Undocumented</p>
  160. </div>
  161. <div class="declaration">
  162. <h4>Declaration</h4>
  163. <div class="language">
  164. <p class="aside-title">Swift</p>
  165. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">private(set)</span> <span class="k">var</span> <span class="nv">terminal</span><span class="p">:</span> <span class="kt"><a href="../Classes/Terminal.html">Terminal</a></span><span class="o">!</span> <span class="p">{</span> <span class="k">get</span> <span class="p">}</span></code></pre>
  166. </div>
  167. </div>
  168. <div class="slightly-smaller">
  169. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L">Show on GitHub</a>
  170. </div>
  171. </section>
  172. </div>
  173. </li>
  174. <li class="item">
  175. <div>
  176. <code>
  177. <a name="/s:9SwiftTerm16HeadlessTerminalC5queue7options5onEndACSo012OS_dispatch_E0CSg_AA0D7OptionsVys5Int32VSgctcfc"></a>
  178. <a name="//apple_ref/swift/Method/init(queue:options:onEnd:)" class="dashAnchor"></a>
  179. <a class="token" href="#/s:9SwiftTerm16HeadlessTerminalC5queue7options5onEndACSo012OS_dispatch_E0CSg_AA0D7OptionsVys5Int32VSgctcfc">init(queue:<wbr>options:<wbr>onEnd:<wbr>)</a>
  180. </code>
  181. </div>
  182. <div class="height-container">
  183. <div class="pointer-container"></div>
  184. <section class="section">
  185. <div class="pointer"></div>
  186. <div class="abstract">
  187. <p>Undocumented</p>
  188. </div>
  189. <div class="declaration">
  190. <h4>Declaration</h4>
  191. <div class="language">
  192. <p class="aside-title">Swift</p>
  193. <pre class="highlight swift"><code><span class="kd">public</span> <span class="nf">init</span><span class="p">(</span><span class="nv">queue</span><span class="p">:</span> <span class="kt">DispatchQueue</span><span class="p">?</span> <span class="o">=</span> <span class="kc">nil</span><span class="p">,</span> <span class="nv">options</span><span class="p">:</span> <span class="kt"><a href="../Structs/TerminalOptions.html">TerminalOptions</a></span> <span class="o">=</span> <span class="kt"><a href="../Structs/TerminalOptions.html">TerminalOptions</a></span><span class="o">.</span><span class="k">default</span><span class="p">,</span> <span class="nv">onEnd</span><span class="p">:</span> <span class="kd">@escaping</span> <span class="p">(</span><span class="n">_</span> <span class="nv">exitCode</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">?)</span> <span class="o">-&gt;</span> <span class="p">())</span></code></pre>
  194. </div>
  195. </div>
  196. <div class="slightly-smaller">
  197. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L21-L26">Show on GitHub</a>
  198. </div>
  199. </section>
  200. </div>
  201. </li>
  202. <li class="item">
  203. <div>
  204. <code>
  205. <a name="/s:9SwiftTerm20LocalProcessDelegateP17processTerminated_8exitCodeyAA0cD0C_s5Int32VSgtF"></a>
  206. <a name="//apple_ref/swift/Method/processTerminated(_:exitCode:)" class="dashAnchor"></a>
  207. <a class="token" href="#/s:9SwiftTerm20LocalProcessDelegateP17processTerminated_8exitCodeyAA0cD0C_s5Int32VSgtF">processTerminated(_:<wbr>exitCode:<wbr>)</a>
  208. </code>
  209. </div>
  210. <div class="height-container">
  211. <div class="pointer-container"></div>
  212. <section class="section">
  213. <div class="pointer"></div>
  214. <div class="abstract">
  215. </div>
  216. <div class="declaration">
  217. <h4>Declaration</h4>
  218. <div class="language">
  219. <p class="aside-title">Swift</p>
  220. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">processTerminated</span><span class="p">(</span><span class="n">_</span> <span class="nv">source</span><span class="p">:</span> <span class="kt"><a href="../Classes/LocalProcess.html">LocalProcess</a></span><span class="p">,</span> <span class="nv">exitCode</span><span class="p">:</span> <span class="kt">Int32</span><span class="p">?)</span></code></pre>
  221. </div>
  222. </div>
  223. <div class="slightly-smaller">
  224. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L28-L30">Show on GitHub</a>
  225. </div>
  226. </section>
  227. </div>
  228. </li>
  229. <li class="item">
  230. <div>
  231. <code>
  232. <a name="/s:9SwiftTerm20LocalProcessDelegateP12dataReceived5sliceys10ArraySliceVys5UInt8VG_tF"></a>
  233. <a name="//apple_ref/swift/Method/dataReceived(slice:)" class="dashAnchor"></a>
  234. <a class="token" href="#/s:9SwiftTerm20LocalProcessDelegateP12dataReceived5sliceys10ArraySliceVys5UInt8VG_tF">dataReceived(slice:<wbr>)</a>
  235. </code>
  236. </div>
  237. <div class="height-container">
  238. <div class="pointer-container"></div>
  239. <section class="section">
  240. <div class="pointer"></div>
  241. <div class="abstract">
  242. </div>
  243. <div class="declaration">
  244. <h4>Declaration</h4>
  245. <div class="language">
  246. <p class="aside-title">Swift</p>
  247. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">dataReceived</span><span class="p">(</span><span class="nv">slice</span><span class="p">:</span> <span class="kt">ArraySlice</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">)</span></code></pre>
  248. </div>
  249. </div>
  250. <div class="slightly-smaller">
  251. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L32-L35">Show on GitHub</a>
  252. </div>
  253. </section>
  254. </div>
  255. </li>
  256. <li class="item">
  257. <div>
  258. <code>
  259. <a name="/s:9SwiftTerm16TerminalDelegateP4send6source4datayAA0C0C_s10ArraySliceVys5UInt8VGtF"></a>
  260. <a name="//apple_ref/swift/Method/send(source:data:)" class="dashAnchor"></a>
  261. <a class="token" href="#/s:9SwiftTerm16TerminalDelegateP4send6source4datayAA0C0C_s10ArraySliceVys5UInt8VGtF">send(source:<wbr>data:<wbr>)</a>
  262. </code>
  263. </div>
  264. <div class="height-container">
  265. <div class="pointer-container"></div>
  266. <section class="section">
  267. <div class="pointer"></div>
  268. <div class="abstract">
  269. </div>
  270. <div class="declaration">
  271. <h4>Declaration</h4>
  272. <div class="language">
  273. <p class="aside-title">Swift</p>
  274. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">send</span><span class="p">(</span><span class="nv">source</span><span class="p">:</span> <span class="kt"><a href="../Classes/Terminal.html">Terminal</a></span><span class="p">,</span> <span class="nv">data</span><span class="p">:</span> <span class="kt">ArraySlice</span><span class="o">&lt;</span><span class="kt">UInt8</span><span class="o">&gt;</span><span class="p">)</span></code></pre>
  275. </div>
  276. </div>
  277. <div class="slightly-smaller">
  278. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L46-L48">Show on GitHub</a>
  279. </div>
  280. </section>
  281. </div>
  282. </li>
  283. <li class="item">
  284. <div>
  285. <code>
  286. <a name="/s:9SwiftTerm20LocalProcessDelegateP13getWindowSizeSo7winsizeVyF"></a>
  287. <a name="//apple_ref/swift/Method/getWindowSize()" class="dashAnchor"></a>
  288. <a class="token" href="#/s:9SwiftTerm20LocalProcessDelegateP13getWindowSizeSo7winsizeVyF">getWindowSize()</a>
  289. </code>
  290. </div>
  291. <div class="height-container">
  292. <div class="pointer-container"></div>
  293. <section class="section">
  294. <div class="pointer"></div>
  295. <div class="abstract">
  296. </div>
  297. <div class="declaration">
  298. <h4>Declaration</h4>
  299. <div class="language">
  300. <p class="aside-title">Swift</p>
  301. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">getWindowSize</span><span class="p">()</span> <span class="o">-&gt;</span> <span class="n">winsize</span></code></pre>
  302. </div>
  303. </div>
  304. <div class="slightly-smaller">
  305. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L51-L53">Show on GitHub</a>
  306. </div>
  307. </section>
  308. </div>
  309. </li>
  310. <li class="item">
  311. <div>
  312. <code>
  313. <a name="/s:9SwiftTerm16TerminalDelegateP16mouseModeChanged6sourceyAA0C0C_tF"></a>
  314. <a name="//apple_ref/swift/Method/mouseModeChanged(source:)" class="dashAnchor"></a>
  315. <a class="token" href="#/s:9SwiftTerm16TerminalDelegateP16mouseModeChanged6sourceyAA0C0C_tF">mouseModeChanged(source:<wbr>)</a>
  316. </code>
  317. </div>
  318. <div class="height-container">
  319. <div class="pointer-container"></div>
  320. <section class="section">
  321. <div class="pointer"></div>
  322. <div class="abstract">
  323. </div>
  324. <div class="declaration">
  325. <h4>Declaration</h4>
  326. <div class="language">
  327. <p class="aside-title">Swift</p>
  328. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">mouseModeChanged</span><span class="p">(</span><span class="nv">source</span><span class="p">:</span> <span class="kt"><a href="../Classes/Terminal.html">Terminal</a></span><span class="p">)</span></code></pre>
  329. </div>
  330. </div>
  331. <div class="slightly-smaller">
  332. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L55-L56">Show on GitHub</a>
  333. </div>
  334. </section>
  335. </div>
  336. </li>
  337. <li class="item">
  338. <div>
  339. <code>
  340. <a name="/s:9SwiftTerm16TerminalDelegateP27hostCurrentDirectoryUpdated6sourceyAA0C0C_tF"></a>
  341. <a name="//apple_ref/swift/Method/hostCurrentDirectoryUpdated(source:)" class="dashAnchor"></a>
  342. <a class="token" href="#/s:9SwiftTerm16TerminalDelegateP27hostCurrentDirectoryUpdated6sourceyAA0C0C_tF">hostCurrentDirectoryUpdated(source:<wbr>)</a>
  343. </code>
  344. </div>
  345. <div class="height-container">
  346. <div class="pointer-container"></div>
  347. <section class="section">
  348. <div class="pointer"></div>
  349. <div class="abstract">
  350. </div>
  351. <div class="declaration">
  352. <h4>Declaration</h4>
  353. <div class="language">
  354. <p class="aside-title">Swift</p>
  355. <pre class="highlight swift"><code><span class="kd">public</span> <span class="kd">func</span> <span class="nf">hostCurrentDirectoryUpdated</span><span class="p">(</span><span class="nv">source</span><span class="p">:</span> <span class="kt"><a href="../Classes/Terminal.html">Terminal</a></span><span class="p">)</span></code></pre>
  356. </div>
  357. </div>
  358. <div class="slightly-smaller">
  359. <a href="https://github.com/migueldeicaza/SwiftTerm/tree/master/Sources/SwiftTerm/HeadlessTerminal.swift#L58-L60">Show on GitHub</a>
  360. </div>
  361. </section>
  362. </div>
  363. </li>
  364. </ul>
  365. </div>
  366. </section>
  367. </section>
  368. <section id="footer">
  369. <p>&copy; 2020 <a class="link" href="https://tirania.org/" target="_blank" rel="external">Miguel de Icaza</a>. All rights reserved. (Last updated: 2020-04-28)</p>
  370. <p>Generated by <a class="link" href="https://github.com/realm/jazzy" target="_blank" rel="external">jazzy ♪♫ v0.13.3</a>, a <a class="link" href="https://realm.io" target="_blank" rel="external">Realm</a> project.</p>
  371. </section>
  372. </article>
  373. </div>
  374. </body>
  375. </div>
  376. </html>