just-bash 1.3.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. package/dist/ast/types.d.ts +2 -0
  2. package/dist/bin/just-bash.js +124 -116
  3. package/dist/bin/shell/shell.js +107 -99
  4. package/dist/bundle/ai/index.js +394 -386
  5. package/dist/bundle/index.js +120 -112
  6. package/dist/interpreter/types.d.ts +6 -0
  7. package/dist/shell-metadata.d.ts +28 -0
  8. package/package.json +1 -1
  9. package/dist/bin/chunks/alias-74DFXE2E.js +0 -7
  10. package/dist/bin/chunks/awk-S63F6IYK.js +0 -15
  11. package/dist/bin/chunks/awk2-4DKPX43H.js +0 -20
  12. package/dist/bin/chunks/awk2-6XCE67AX.js +0 -20
  13. package/dist/bin/chunks/awk2-DKAZ7LPG.js +0 -20
  14. package/dist/bin/chunks/awk2-GAJ72X3Z.js +0 -20
  15. package/dist/bin/chunks/awk2-HJAPWU2N.js +0 -18
  16. package/dist/bin/chunks/awk2-LVXC5OAC.js +0 -20
  17. package/dist/bin/chunks/awk2-T6HR4EYO.js +0 -20
  18. package/dist/bin/chunks/awk2-UYU2UYZ2.js +0 -20
  19. package/dist/bin/chunks/awk2-W64AZN7P.js +0 -20
  20. package/dist/bin/chunks/base64-KNBBHA5Y.js +0 -5
  21. package/dist/bin/chunks/base64-NC7HTKLZ.js +0 -5
  22. package/dist/bin/chunks/basename-Y7JDBYHN.js +0 -6
  23. package/dist/bin/chunks/bash-5IWSVGHN.js +0 -7
  24. package/dist/bin/chunks/bash-TQGTNXAE.js +0 -7
  25. package/dist/bin/chunks/cat-YZXBF5YF.js +0 -6
  26. package/dist/bin/chunks/chmod-3G4LK462.js +0 -9
  27. package/dist/bin/chunks/chunk-5KNEBKYN.js +0 -2
  28. package/dist/bin/chunks/chunk-6QUZ7QML.js +0 -3
  29. package/dist/bin/chunks/chunk-7Q4WQLOS.js +0 -9
  30. package/dist/bin/chunks/chunk-LV662IGP.js +0 -6
  31. package/dist/bin/chunks/clear-GTCFHSB2.js +0 -2
  32. package/dist/bin/chunks/cp-77UY7PGN.js +0 -8
  33. package/dist/bin/chunks/curl-NE7XEWMN.js +0 -26
  34. package/dist/bin/chunks/cut-UYV3FM7R.js +0 -6
  35. package/dist/bin/chunks/date-7NBRXV2Z.js +0 -5
  36. package/dist/bin/chunks/diff-TG2NXCX2.js +0 -19
  37. package/dist/bin/chunks/dirname-VLHP44TU.js +0 -5
  38. package/dist/bin/chunks/du-4FZ7WF2P.js +0 -8
  39. package/dist/bin/chunks/echo-DEUIS5JO.js +0 -4
  40. package/dist/bin/chunks/env-AKGX6HSG.js +0 -9
  41. package/dist/bin/chunks/env-FVITWNHG.js +0 -9
  42. package/dist/bin/chunks/expr-HA2ZNL6S.js +0 -5
  43. package/dist/bin/chunks/file-Q4UOC4J2.js +0 -23
  44. package/dist/bin/chunks/find-4B67H4RP.js +0 -11
  45. package/dist/bin/chunks/find-7BUNQZX4.js +0 -11
  46. package/dist/bin/chunks/find-AMA6ABN5.js +0 -11
  47. package/dist/bin/chunks/find-HW2TUO6B.js +0 -11
  48. package/dist/bin/chunks/find-JADNFF7V.js +0 -11
  49. package/dist/bin/chunks/find-NCI6KGUI.js +0 -11
  50. package/dist/bin/chunks/find-QEYP42JQ.js +0 -11
  51. package/dist/bin/chunks/find-WJV3FM6L.js +0 -11
  52. package/dist/bin/chunks/find-YATLECXJ.js +0 -11
  53. package/dist/bin/chunks/grep-OVWU4WCZ.js +0 -15
  54. package/dist/bin/chunks/grep-PHBFGJCV.js +0 -15
  55. package/dist/bin/chunks/head-VGXR3WWL.js +0 -2
  56. package/dist/bin/chunks/help-5V3MPCYQ.js +0 -16
  57. package/dist/bin/chunks/help-YQGNAT2T.js +0 -16
  58. package/dist/bin/chunks/history-PRQ4B6N2.js +0 -3
  59. package/dist/bin/chunks/html-to-markdown-L4UWMK4S.js +0 -84
  60. package/dist/bin/chunks/jq-EYSXBSCP.js +0 -14
  61. package/dist/bin/chunks/ln-DB7J2W5X.js +0 -10
  62. package/dist/bin/chunks/ls-C4MPAF3H.js +0 -26
  63. package/dist/bin/chunks/md5sum-KZ4MRIXM.js +0 -2
  64. package/dist/bin/chunks/mkdir-LWULWDHP.js +0 -7
  65. package/dist/bin/chunks/mv-TDYCNSIQ.js +0 -7
  66. package/dist/bin/chunks/paste-R36J3G4K.js +0 -8
  67. package/dist/bin/chunks/printf-ASOYDPIK.js +0 -14
  68. package/dist/bin/chunks/printf-BOFQVMMK.js +0 -15
  69. package/dist/bin/chunks/printf-WM4X6IZ6.js +0 -14
  70. package/dist/bin/chunks/pwd-X4MWD4JP.js +0 -3
  71. package/dist/bin/chunks/readlink-DPNOQY67.js +0 -7
  72. package/dist/bin/chunks/rm-W6CCBEMG.js +0 -8
  73. package/dist/bin/chunks/sed-7IS44XON.js +0 -48
  74. package/dist/bin/chunks/sed-B6FXUN7R.js +0 -80
  75. package/dist/bin/chunks/sed-LTCVBSRV.js +0 -80
  76. package/dist/bin/chunks/sed-RHLDIXPL.js +0 -76
  77. package/dist/bin/chunks/sed-SYSATJXR.js +0 -75
  78. package/dist/bin/chunks/seq-DGJILX2Q.js +0 -7
  79. package/dist/bin/chunks/sha1sum-XLRE72T4.js +0 -2
  80. package/dist/bin/chunks/sha256sum-BBKWFA43.js +0 -2
  81. package/dist/bin/chunks/sleep-E4DIYGTT.js +0 -10
  82. package/dist/bin/chunks/sort-NCQNGVCX.js +0 -16
  83. package/dist/bin/chunks/sort-UJP353TM.js +0 -15
  84. package/dist/bin/chunks/sort-WGKQ3WYR.js +0 -15
  85. package/dist/bin/chunks/stat-3PHITCPO.js +0 -9
  86. package/dist/bin/chunks/tail-YSVKBQ77.js +0 -2
  87. package/dist/bin/chunks/tee-UU2VS3OM.js +0 -3
  88. package/dist/bin/chunks/timeout-OZVAGW2H.js +0 -12
  89. package/dist/bin/chunks/timeout-RP2AJGMV.js +0 -12
  90. package/dist/bin/chunks/touch-XCIAYF5I.js +0 -4
  91. package/dist/bin/chunks/tr-2EEKHHO6.js +0 -20
  92. package/dist/bin/chunks/tree-4247W67O.js +0 -12
  93. package/dist/bin/chunks/true-JCX733LK.js +0 -2
  94. package/dist/bin/chunks/uniq-W4HF6YSB.js +0 -5
  95. package/dist/bin/chunks/wc-CNJ3QDRA.js +0 -6
  96. package/dist/bin/chunks/which-HX2NMOP3.js +0 -3
  97. package/dist/bin/chunks/xargs-DKUAYNEK.js +0 -4
  98. package/dist/bin/chunks/xargs-XAZFX5J3.js +0 -4
  99. package/dist/bin/chunks/xargs-YNLVLPOF.js +0 -4
  100. package/dist/bin/shell/chunks/alias-74DFXE2E.js +0 -7
  101. package/dist/bin/shell/chunks/awk-S63F6IYK.js +0 -15
  102. package/dist/bin/shell/chunks/awk2-4DKPX43H.js +0 -20
  103. package/dist/bin/shell/chunks/awk2-6XCE67AX.js +0 -20
  104. package/dist/bin/shell/chunks/awk2-DKAZ7LPG.js +0 -20
  105. package/dist/bin/shell/chunks/awk2-GAJ72X3Z.js +0 -20
  106. package/dist/bin/shell/chunks/awk2-HJAPWU2N.js +0 -18
  107. package/dist/bin/shell/chunks/awk2-LVXC5OAC.js +0 -20
  108. package/dist/bin/shell/chunks/awk2-T6HR4EYO.js +0 -20
  109. package/dist/bin/shell/chunks/awk2-UYU2UYZ2.js +0 -20
  110. package/dist/bin/shell/chunks/awk2-W64AZN7P.js +0 -20
  111. package/dist/bin/shell/chunks/base64-KNBBHA5Y.js +0 -5
  112. package/dist/bin/shell/chunks/base64-NC7HTKLZ.js +0 -5
  113. package/dist/bin/shell/chunks/basename-Y7JDBYHN.js +0 -6
  114. package/dist/bin/shell/chunks/bash-5IWSVGHN.js +0 -7
  115. package/dist/bin/shell/chunks/bash-TQGTNXAE.js +0 -7
  116. package/dist/bin/shell/chunks/cat-YZXBF5YF.js +0 -6
  117. package/dist/bin/shell/chunks/chmod-3G4LK462.js +0 -9
  118. package/dist/bin/shell/chunks/chunk-5KNEBKYN.js +0 -2
  119. package/dist/bin/shell/chunks/chunk-6QUZ7QML.js +0 -3
  120. package/dist/bin/shell/chunks/chunk-7Q4WQLOS.js +0 -9
  121. package/dist/bin/shell/chunks/chunk-LV662IGP.js +0 -6
  122. package/dist/bin/shell/chunks/clear-GTCFHSB2.js +0 -2
  123. package/dist/bin/shell/chunks/cp-77UY7PGN.js +0 -8
  124. package/dist/bin/shell/chunks/curl-NE7XEWMN.js +0 -26
  125. package/dist/bin/shell/chunks/cut-UYV3FM7R.js +0 -6
  126. package/dist/bin/shell/chunks/date-7NBRXV2Z.js +0 -5
  127. package/dist/bin/shell/chunks/diff-TG2NXCX2.js +0 -19
  128. package/dist/bin/shell/chunks/dirname-VLHP44TU.js +0 -5
  129. package/dist/bin/shell/chunks/du-4FZ7WF2P.js +0 -8
  130. package/dist/bin/shell/chunks/echo-DEUIS5JO.js +0 -4
  131. package/dist/bin/shell/chunks/env-AKGX6HSG.js +0 -9
  132. package/dist/bin/shell/chunks/env-FVITWNHG.js +0 -9
  133. package/dist/bin/shell/chunks/expr-HA2ZNL6S.js +0 -5
  134. package/dist/bin/shell/chunks/file-Q4UOC4J2.js +0 -23
  135. package/dist/bin/shell/chunks/find-4B67H4RP.js +0 -11
  136. package/dist/bin/shell/chunks/find-7BUNQZX4.js +0 -11
  137. package/dist/bin/shell/chunks/find-AMA6ABN5.js +0 -11
  138. package/dist/bin/shell/chunks/find-HW2TUO6B.js +0 -11
  139. package/dist/bin/shell/chunks/find-JADNFF7V.js +0 -11
  140. package/dist/bin/shell/chunks/find-NCI6KGUI.js +0 -11
  141. package/dist/bin/shell/chunks/find-QEYP42JQ.js +0 -11
  142. package/dist/bin/shell/chunks/find-WJV3FM6L.js +0 -11
  143. package/dist/bin/shell/chunks/find-YATLECXJ.js +0 -11
  144. package/dist/bin/shell/chunks/grep-OVWU4WCZ.js +0 -15
  145. package/dist/bin/shell/chunks/grep-PHBFGJCV.js +0 -15
  146. package/dist/bin/shell/chunks/head-VGXR3WWL.js +0 -2
  147. package/dist/bin/shell/chunks/help-5V3MPCYQ.js +0 -16
  148. package/dist/bin/shell/chunks/help-YQGNAT2T.js +0 -16
  149. package/dist/bin/shell/chunks/history-PRQ4B6N2.js +0 -3
  150. package/dist/bin/shell/chunks/html-to-markdown-L4UWMK4S.js +0 -84
  151. package/dist/bin/shell/chunks/jq-EYSXBSCP.js +0 -14
  152. package/dist/bin/shell/chunks/ln-DB7J2W5X.js +0 -10
  153. package/dist/bin/shell/chunks/ls-C4MPAF3H.js +0 -26
  154. package/dist/bin/shell/chunks/md5sum-KZ4MRIXM.js +0 -2
  155. package/dist/bin/shell/chunks/mkdir-LWULWDHP.js +0 -7
  156. package/dist/bin/shell/chunks/mv-TDYCNSIQ.js +0 -7
  157. package/dist/bin/shell/chunks/paste-R36J3G4K.js +0 -8
  158. package/dist/bin/shell/chunks/printf-ASOYDPIK.js +0 -14
  159. package/dist/bin/shell/chunks/printf-BOFQVMMK.js +0 -15
  160. package/dist/bin/shell/chunks/printf-WM4X6IZ6.js +0 -14
  161. package/dist/bin/shell/chunks/pwd-X4MWD4JP.js +0 -3
  162. package/dist/bin/shell/chunks/readlink-DPNOQY67.js +0 -7
  163. package/dist/bin/shell/chunks/rm-W6CCBEMG.js +0 -8
  164. package/dist/bin/shell/chunks/sed-7IS44XON.js +0 -48
  165. package/dist/bin/shell/chunks/sed-B6FXUN7R.js +0 -80
  166. package/dist/bin/shell/chunks/sed-LTCVBSRV.js +0 -80
  167. package/dist/bin/shell/chunks/sed-RHLDIXPL.js +0 -76
  168. package/dist/bin/shell/chunks/sed-SYSATJXR.js +0 -75
  169. package/dist/bin/shell/chunks/seq-DGJILX2Q.js +0 -7
  170. package/dist/bin/shell/chunks/sha1sum-XLRE72T4.js +0 -2
  171. package/dist/bin/shell/chunks/sha256sum-BBKWFA43.js +0 -2
  172. package/dist/bin/shell/chunks/sleep-E4DIYGTT.js +0 -10
  173. package/dist/bin/shell/chunks/sort-NCQNGVCX.js +0 -16
  174. package/dist/bin/shell/chunks/sort-UJP353TM.js +0 -15
  175. package/dist/bin/shell/chunks/sort-WGKQ3WYR.js +0 -15
  176. package/dist/bin/shell/chunks/stat-3PHITCPO.js +0 -9
  177. package/dist/bin/shell/chunks/tail-YSVKBQ77.js +0 -2
  178. package/dist/bin/shell/chunks/tee-UU2VS3OM.js +0 -3
  179. package/dist/bin/shell/chunks/timeout-OZVAGW2H.js +0 -12
  180. package/dist/bin/shell/chunks/timeout-RP2AJGMV.js +0 -12
  181. package/dist/bin/shell/chunks/touch-XCIAYF5I.js +0 -4
  182. package/dist/bin/shell/chunks/tr-2EEKHHO6.js +0 -20
  183. package/dist/bin/shell/chunks/tree-4247W67O.js +0 -12
  184. package/dist/bin/shell/chunks/true-JCX733LK.js +0 -2
  185. package/dist/bin/shell/chunks/uniq-W4HF6YSB.js +0 -5
  186. package/dist/bin/shell/chunks/wc-CNJ3QDRA.js +0 -6
  187. package/dist/bin/shell/chunks/which-HX2NMOP3.js +0 -3
  188. package/dist/bin/shell/chunks/xargs-DKUAYNEK.js +0 -4
  189. package/dist/bin/shell/chunks/xargs-XAZFX5J3.js +0 -4
  190. package/dist/bin/shell/chunks/xargs-YNLVLPOF.js +0 -4
  191. package/dist/bundle/chunks/alias-7ZSTROM7.js +0 -6
  192. package/dist/bundle/chunks/awk-V4C3GTJI.js +0 -14
  193. package/dist/bundle/chunks/awk2-365HINHI.js +0 -19
  194. package/dist/bundle/chunks/awk2-4YCQ6UCB.js +0 -19
  195. package/dist/bundle/chunks/awk2-7YCFY7D2.js +0 -19
  196. package/dist/bundle/chunks/awk2-7YL3P4KU.js +0 -19
  197. package/dist/bundle/chunks/awk2-ETXZHQQ4.js +0 -19
  198. package/dist/bundle/chunks/awk2-FMEL7ESV.js +0 -19
  199. package/dist/bundle/chunks/awk2-LE4QUFGK.js +0 -19
  200. package/dist/bundle/chunks/awk2-MGHA6JPJ.js +0 -17
  201. package/dist/bundle/chunks/awk2-XEAK5PBN.js +0 -19
  202. package/dist/bundle/chunks/base64-JN6XXTIG.js +0 -4
  203. package/dist/bundle/chunks/base64-WATI5PWI.js +0 -4
  204. package/dist/bundle/chunks/basename-SB5JXIY3.js +0 -5
  205. package/dist/bundle/chunks/bash-5WG5RD6L.js +0 -6
  206. package/dist/bundle/chunks/bash-T4PXVRYX.js +0 -6
  207. package/dist/bundle/chunks/cat-5KESXK2M.js +0 -5
  208. package/dist/bundle/chunks/chmod-VLKWIL3N.js +0 -8
  209. package/dist/bundle/chunks/chunk-4HEWHW5W.js +0 -8
  210. package/dist/bundle/chunks/chunk-JYYFSUWP.js +0 -5
  211. package/dist/bundle/chunks/chunk-TDJNT32M.js +0 -2
  212. package/dist/bundle/chunks/clear-ZBD2DMXN.js +0 -1
  213. package/dist/bundle/chunks/cp-BLHAPLQZ.js +0 -7
  214. package/dist/bundle/chunks/curl-PA2MWGKN.js +0 -25
  215. package/dist/bundle/chunks/cut-7RHEYJ7Y.js +0 -5
  216. package/dist/bundle/chunks/date-YOOSNZVA.js +0 -4
  217. package/dist/bundle/chunks/diff-IVJFQANX.js +0 -6
  218. package/dist/bundle/chunks/dirname-Q5HDZLH2.js +0 -4
  219. package/dist/bundle/chunks/du-I5HYAKTQ.js +0 -7
  220. package/dist/bundle/chunks/echo-W2TA2N7Y.js +0 -3
  221. package/dist/bundle/chunks/env-2F2VHNYS.js +0 -8
  222. package/dist/bundle/chunks/env-OORA5GFS.js +0 -8
  223. package/dist/bundle/chunks/expr-A4LJAGVP.js +0 -4
  224. package/dist/bundle/chunks/file-JMDIXLHY.js +0 -22
  225. package/dist/bundle/chunks/find-3O5V74IR.js +0 -10
  226. package/dist/bundle/chunks/find-4QUN2ATO.js +0 -10
  227. package/dist/bundle/chunks/find-522XP4ZY.js +0 -10
  228. package/dist/bundle/chunks/find-5UN24ZV7.js +0 -10
  229. package/dist/bundle/chunks/find-JXG2HF6L.js +0 -10
  230. package/dist/bundle/chunks/find-K3NO35MZ.js +0 -10
  231. package/dist/bundle/chunks/find-K7D4PKHS.js +0 -10
  232. package/dist/bundle/chunks/find-KP4M5DWC.js +0 -10
  233. package/dist/bundle/chunks/find-WM6ZETA7.js +0 -10
  234. package/dist/bundle/chunks/grep-3D2INI4S.js +0 -14
  235. package/dist/bundle/chunks/grep-CZTYKNEE.js +0 -14
  236. package/dist/bundle/chunks/head-7H5R4WKO.js +0 -1
  237. package/dist/bundle/chunks/help-SDCRRU2F.js +0 -15
  238. package/dist/bundle/chunks/help-XHGUXTV3.js +0 -15
  239. package/dist/bundle/chunks/history-7Z2STZ6Y.js +0 -2
  240. package/dist/bundle/chunks/html-to-markdown-XMBYO6FD.js +0 -4
  241. package/dist/bundle/chunks/jq-7R2XGLLH.js +0 -13
  242. package/dist/bundle/chunks/ln-UTUVIAFP.js +0 -9
  243. package/dist/bundle/chunks/ls-B7C35UDO.js +0 -23
  244. package/dist/bundle/chunks/md5sum-3BXZVFKC.js +0 -1
  245. package/dist/bundle/chunks/mkdir-WYI2LJ6H.js +0 -6
  246. package/dist/bundle/chunks/mv-GN23UIZU.js +0 -6
  247. package/dist/bundle/chunks/paste-L4TYPVSP.js +0 -7
  248. package/dist/bundle/chunks/printf-3ZT5XOIZ.js +0 -14
  249. package/dist/bundle/chunks/printf-G2SBUNW3.js +0 -13
  250. package/dist/bundle/chunks/printf-O2UW73XK.js +0 -13
  251. package/dist/bundle/chunks/pwd-ZVX5RTL4.js +0 -2
  252. package/dist/bundle/chunks/readlink-HHC33N5C.js +0 -6
  253. package/dist/bundle/chunks/rm-5X2XSQQ6.js +0 -7
  254. package/dist/bundle/chunks/sed-2WWCANZT.js +0 -79
  255. package/dist/bundle/chunks/sed-5LZHAGFR.js +0 -74
  256. package/dist/bundle/chunks/sed-IGVS3UIY.js +0 -79
  257. package/dist/bundle/chunks/sed-UZJSXYQZ.js +0 -47
  258. package/dist/bundle/chunks/sed-V7XSBPTD.js +0 -75
  259. package/dist/bundle/chunks/seq-TFPZQZPJ.js +0 -6
  260. package/dist/bundle/chunks/sha1sum-MSBXCB4N.js +0 -1
  261. package/dist/bundle/chunks/sha256sum-YMKJMSTW.js +0 -1
  262. package/dist/bundle/chunks/sleep-QJBQD6VS.js +0 -9
  263. package/dist/bundle/chunks/sort-LHMQWYH2.js +0 -14
  264. package/dist/bundle/chunks/sort-R3YWDMTV.js +0 -14
  265. package/dist/bundle/chunks/sort-TEXV7CUR.js +0 -15
  266. package/dist/bundle/chunks/stat-TM5F5YO4.js +0 -8
  267. package/dist/bundle/chunks/tail-BLGGG2VX.js +0 -1
  268. package/dist/bundle/chunks/tee-VCNOG5VI.js +0 -2
  269. package/dist/bundle/chunks/timeout-THAT7IOO.js +0 -11
  270. package/dist/bundle/chunks/timeout-VG2N46UR.js +0 -11
  271. package/dist/bundle/chunks/touch-Z5XRYFYY.js +0 -3
  272. package/dist/bundle/chunks/tr-UV4V27RJ.js +0 -19
  273. package/dist/bundle/chunks/tree-75UXQ4XJ.js +0 -11
  274. package/dist/bundle/chunks/true-OD7ZXH3O.js +0 -1
  275. package/dist/bundle/chunks/uniq-IIOQKNTS.js +0 -4
  276. package/dist/bundle/chunks/wc-OXLYBRUE.js +0 -5
  277. package/dist/bundle/chunks/which-ONWH3TNF.js +0 -2
  278. package/dist/bundle/chunks/xargs-752VENJT.js +0 -3
  279. package/dist/bundle/chunks/xargs-7KV5F66T.js +0 -3
  280. package/dist/bundle/chunks/xargs-E5JPQL24.js +0 -3
  281. package/dist/commands/awk/awk.d.ts +0 -2
  282. package/dist/commands/awk/executor.d.ts +0 -3
  283. package/dist/commands/awk/expressions.d.ts +0 -3
  284. package/dist/commands/awk/functions.d.ts +0 -12
  285. package/dist/commands/awk/interpreter2.d.ts +0 -90
  286. package/dist/commands/awk/parser.d.ts +0 -3
  287. package/dist/commands/awk/types.d.ts +0 -44
  288. package/dist/fs-interface.d.ts +0 -186
  289. package/dist/fs.d.ts +0 -39
  290. package/dist/overlay-fs/OverlayFs.d.ts +0 -87
  291. package/dist/overlay-fs/index.d.ts +0 -1
@@ -1,79 +0,0 @@
1
- import{i as g}from"./chunk-JYYFSUWP.js";import{a as D,b as W,c as y}from"./chunk-74CEPOFO.js";var G=1e4;function U(i,e,t){return{patternSpace:"",holdSpace:"",lineNumber:0,totalLines:i,deleted:!1,printed:!1,quit:!1,quitSilent:!1,exitCode:void 0,appendBuffer:[],substitutionMade:!1,lineNumberOutput:[],restartCycle:!1,currentFilename:e,pendingFileReads:[],pendingFileWrites:[],pendingExecute:void 0,rangeStates:t||new Map}}function j(i){return typeof i=="object"&&"first"in i&&"step"in i}function N(i,e,t,n){if(i==="$")return e===t;if(typeof i=="number")return e===i;if(j(i)){let{first:r,step:s}=i;return s===0?e===r:(e-r)%s===0&&e>=r}if(typeof i=="object"&&"pattern"in i)try{return new RegExp(i.pattern).test(n)}catch{return!1}return!1}function Q(i){let e=t=>t===void 0?"undefined":t==="$"?"$":typeof t=="number"?String(t):"pattern"in t?`/${t.pattern}/`:"first"in t?`${t.first}~${t.step}`:"unknown";return`${e(i.start)},${e(i.end)}`}function k(i,e,t,n,r){if(!i||!i.start&&!i.end)return!0;let s=i.start,l=i.end;if(s!==void 0&&l===void 0)return N(s,e,t,n);if(s!==void 0&&l!==void 0){let h=typeof s=="object"&&"pattern"in s,p=typeof l=="object"&&"pattern"in l;if(!h&&!p){let o=typeof s=="number"?s:s==="$"?t:1,a=typeof l=="number"?l:t;return e>=o&&e<=a}if(r){let o=Q(i),a=r.get(o);return a||(a={active:!1},r.set(o,a)),a.active?(N(l,e,t,n)&&(a.active=!1,r.set(o,a)),!0):N(s,e,t,n)?(a.active=!0,a.startLine=e,r.set(o,a),N(l,e,t,n)&&(a.active=!1,r.set(o,a)),!0):!1}return N(s,e,t,n)}return!0}function K(i){let e="",t=0;for(;t<i.length;){if(i[t]==="\\"&&t+1<i.length){let n=i[t+1];if(n==="+"||n==="?"||n==="|"){e+=n,t+=2;continue}if(n==="("||n===")"){e+=n,t+=2;continue}if(n==="{"||n==="}"){e+=n,t+=2;continue}e+=i[t]+n,t+=2;continue}if(i[t]==="+"||i[t]==="?"||i[t]==="|"||i[t]==="("||i[t]===")"){e+=`\\${i[t]}`,t++;continue}e+=i[t],t++}return e}function J(i){let e="";for(let t=0;t<i.length;t++){let n=i[t],r=n.charCodeAt(0);n==="\\"?e+="\\\\":n===" "?e+="\\t":n===`
2
- `?e+=`$
3
- `:n==="\r"?e+="\\r":n==="\x07"?e+="\\a":n==="\b"?e+="\\b":n==="\f"?e+="\\f":n==="\v"?e+="\\v":r<32||r>=127?e+=`\\${r.toString(8).padStart(3,"0")}`:e+=n}return`${e}$`}function P(i,e,t){let n="",r=0;for(;r<i.length;){if(i[r]==="\\"&&r+1<i.length){let s=i[r+1];if(s==="&"){n+="&",r+=2;continue}if(s==="n"){n+=`
4
- `,r+=2;continue}if(s==="t"){n+=" ",r+=2;continue}let l=parseInt(s,10);if(l>=1&&l<=9){n+=t[l-1]||"",r+=2;continue}n+=s,r+=2;continue}if(i[r]==="&"){n+=e,r++;continue}n+=i[r],r++}return n}function V(i,e){let{lineNumber:t,totalLines:n,patternSpace:r}=e;if(i.type!=="label"&&k(i.address,t,n,r,e.rangeStates))switch(i.type){case"substitute":{let s=i,l="";s.global&&(l+="g"),s.ignoreCase&&(l+="i");let h=s.extendedRegex?s.pattern:K(s.pattern);try{let p=new RegExp(h,l),f=p.test(e.patternSpace);if(p.lastIndex=0,f){if(e.substitutionMade=!0,s.nthOccurrence&&s.nthOccurrence>0&&!s.global){let o=0,a=s.nthOccurrence;e.patternSpace=e.patternSpace.replace(new RegExp(h,`g${s.ignoreCase?"i":""}`),(u,...m)=>{if(o++,o===a){let v=m.slice(0,-2);return P(s.replacement,u,v)}return u})}else e.patternSpace=e.patternSpace.replace(p,(o,...a)=>{let u=a.slice(0,-2);return P(s.replacement,o,u)});s.printOnMatch&&(e.printed=!0)}}catch{}break}case"print":e.printed=!0;break;case"printFirstLine":{let s=e.patternSpace.indexOf(`
5
- `);s!==-1?e.lineNumberOutput.push(e.patternSpace.slice(0,s)):e.lineNumberOutput.push(e.patternSpace);break}case"delete":e.deleted=!0;break;case"deleteFirstLine":{let s=e.patternSpace.indexOf(`
6
- `);s!==-1?(e.patternSpace=e.patternSpace.slice(s+1),e.restartCycle=!0):e.deleted=!0;break}case"zap":e.patternSpace="";break;case"append":e.appendBuffer.push(i.text);break;case"insert":e.appendBuffer.unshift(`__INSERT__${i.text}`);break;case"change":e.patternSpace=i.text,e.deleted=!0,e.appendBuffer.push(i.text);break;case"hold":e.holdSpace=e.patternSpace;break;case"holdAppend":e.holdSpace?e.holdSpace+=`
7
- ${e.patternSpace}`:e.holdSpace=e.patternSpace;break;case"get":e.patternSpace=e.holdSpace;break;case"getAppend":e.patternSpace+=`
8
- ${e.holdSpace}`;break;case"exchange":{let s=e.patternSpace;e.patternSpace=e.holdSpace,e.holdSpace=s;break}case"next":e.printed=!0;break;case"quit":e.quit=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"quitSilent":e.quit=!0,e.quitSilent=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"list":{let s=J(e.patternSpace);e.lineNumberOutput.push(s);break}case"printFilename":e.currentFilename&&e.lineNumberOutput.push(e.currentFilename);break;case"version":break;case"readFile":e.pendingFileReads.push({filename:i.filename,wholeFile:!0});break;case"readFileLine":e.pendingFileReads.push({filename:i.filename,wholeFile:!1});break;case"writeFile":e.pendingFileWrites.push({filename:i.filename,content:`${e.patternSpace}
9
- `});break;case"writeFirstLine":{let s=e.patternSpace.indexOf(`
10
- `),l=s!==-1?e.patternSpace.slice(0,s):e.patternSpace;e.pendingFileWrites.push({filename:i.filename,content:`${l}
11
- `});break}case"execute":i.command?e.pendingExecute={command:i.command,replacePattern:!1}:e.pendingExecute={command:e.patternSpace,replacePattern:!0};break;case"transliterate":e.patternSpace=Y(e.patternSpace,i);break;case"lineNumber":e.lineNumberOutput.push(String(e.lineNumber));break;case"branch":break;case"branchOnSubst":break;case"branchOnNoSubst":break;case"group":break}}function Y(i,e){let t="";for(let n of i){let r=e.source.indexOf(n);r!==-1?t+=e.dest[r]:t+=n}return t}function A(i,e,t,n){let r=new Map;for(let f=0;f<i.length;f++){let o=i[f];o.type==="label"&&r.set(o.name,f)}let s=n?.maxIterations??G,l=0,h=0,p=0;for(;p<i.length;){if(l++,l>s)throw new g(`sed: command execution exceeded maximum iterations (${s})`,"iterations");if(e.deleted||e.quit||e.quitSilent||e.restartCycle)break;let f=i[p];if(f.type==="nextAppend"){if(k(f.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates))if(t&&t.currentLineIndex+h+1<t.lines.length){h++;let o=t.lines[t.currentLineIndex+h];e.patternSpace+=`
12
- ${o}`,e.lineNumber=t.currentLineIndex+h+1}else{e.quit=!0,e.deleted=!0;break}p++;continue}if(f.type==="branch"){let o=f;if(k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)){if(o.label){let a=r.get(o.label);if(a!==void 0){p=a;continue}}break}p++;continue}if(f.type==="branchOnSubst"){let o=f;if(k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&e.substitutionMade){if(e.substitutionMade=!1,o.label){let a=r.get(o.label);if(a!==void 0){p=a;continue}}break}p++;continue}if(f.type==="branchOnNoSubst"){let o=f;if(k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&!e.substitutionMade){if(o.label){let a=r.get(o.label);if(a!==void 0){p=a;continue}}break}p++;continue}if(f.type==="group"){let o=f;k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&A(o.commands,e,t,n),p++;continue}V(f,e),p++}return h}var c;(function(i){i.NUMBER="NUMBER",i.DOLLAR="DOLLAR",i.PATTERN="PATTERN",i.STEP="STEP",i.LBRACE="LBRACE",i.RBRACE="RBRACE",i.SEMICOLON="SEMICOLON",i.NEWLINE="NEWLINE",i.COMMA="COMMA",i.COMMAND="COMMAND",i.SUBSTITUTE="SUBSTITUTE",i.TRANSLITERATE="TRANSLITERATE",i.LABEL_DEF="LABEL_DEF",i.BRANCH="BRANCH",i.BRANCH_ON_SUBST="BRANCH_ON_SUBST",i.BRANCH_ON_NO_SUBST="BRANCH_ON_NO_SUBST",i.TEXT_CMD="TEXT_CMD",i.FILE_READ="FILE_READ",i.FILE_READ_LINE="FILE_READ_LINE",i.FILE_WRITE="FILE_WRITE",i.FILE_WRITE_LINE="FILE_WRITE_LINE",i.EXECUTE="EXECUTE",i.EOF="EOF",i.ERROR="ERROR"})(c||(c={}));var I=class{input;pos=0;line=1;column=1;constructor(e){this.input=e}tokenize(){let e=[];for(;this.pos<this.input.length;){let t=this.nextToken();t&&e.push(t)}return e.push(this.makeToken(c.EOF,"")),e}makeToken(e,t,n){return{type:e,value:t,line:this.line,column:this.column,...n}}peek(e=0){return this.input[this.pos+e]||""}advance(){let e=this.input[this.pos++]||"";return e===`
13
- `?(this.line++,this.column=1):this.column++,e}skipWhitespace(){for(;this.pos<this.input.length;){let e=this.peek();if(e===" "||e===" "||e==="\r")this.advance();else if(e==="#")for(;this.pos<this.input.length&&this.peek()!==`
14
- `;)this.advance();else break}}nextToken(){if(this.skipWhitespace(),this.pos>=this.input.length)return null;let e=this.line,t=this.column,n=this.peek();return n===`
15
- `?(this.advance(),{type:c.NEWLINE,value:`
16
- `,line:e,column:t}):n===";"?(this.advance(),{type:c.SEMICOLON,value:";",line:e,column:t}):n==="{"?(this.advance(),{type:c.LBRACE,value:"{",line:e,column:t}):n==="}"?(this.advance(),{type:c.RBRACE,value:"}",line:e,column:t}):n===","?(this.advance(),{type:c.COMMA,value:",",line:e,column:t}):n==="$"?(this.advance(),{type:c.DOLLAR,value:"$",line:e,column:t}):this.isDigit(n)?this.readNumber():n==="/"?this.readPattern():n===":"?this.readLabelDef():this.readCommand()}readNumber(){let e=this.line,t=this.column,n="";for(;this.isDigit(this.peek());)n+=this.advance();if(this.peek()==="~"){this.advance();let r="";for(;this.isDigit(this.peek());)r+=this.advance();let s=parseInt(n,10),l=parseInt(r,10)||0;return{type:c.STEP,value:`${s}~${l}`,first:s,step:l,line:e,column:t}}return{type:c.NUMBER,value:parseInt(n,10),line:e,column:t}}readPattern(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length&&this.peek()!=="/";)if(this.peek()==="\\")n+=this.advance(),this.pos<this.input.length&&(n+=this.advance());else{if(this.peek()===`
17
- `)break;n+=this.advance()}return this.peek()==="/"&&this.advance(),{type:c.PATTERN,value:n,pattern:n,line:e,column:t}}readLabelDef(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===" "||r===" "||r===`
18
- `||r===";"||r==="}"||r==="{")break;n+=this.advance()}return{type:c.LABEL_DEF,value:n,label:n,line:e,column:t}}readCommand(){let e=this.line,t=this.column,n=this.advance();switch(n){case"s":return this.readSubstitute(e,t);case"y":return this.readTransliterate(e,t);case"a":case"i":case"c":return this.readTextCommand(n,e,t);case"b":return this.readBranch(c.BRANCH,"b",e,t);case"t":return this.readBranch(c.BRANCH_ON_SUBST,"t",e,t);case"T":return this.readBranch(c.BRANCH_ON_NO_SUBST,"T",e,t);case"r":return this.readFileCommand(c.FILE_READ,"r",e,t);case"R":return this.readFileCommand(c.FILE_READ_LINE,"R",e,t);case"w":return this.readFileCommand(c.FILE_WRITE,"w",e,t);case"W":return this.readFileCommand(c.FILE_WRITE_LINE,"W",e,t);case"e":return this.readExecute(e,t);case"p":case"P":case"d":case"D":case"h":case"H":case"g":case"G":case"x":case"n":case"N":case"q":case"Q":case"z":case"=":case"l":case"F":case"v":return{type:c.COMMAND,value:n,line:e,column:t};default:return{type:c.ERROR,value:n,line:e,column:t}}}readSubstitute(e,t){let n=this.advance();if(!n||n===`
19
- `)return{type:c.ERROR,value:"s",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")r+=this.advance(),this.pos<this.input.length&&this.peek()!==`
20
- `&&(r+=this.advance());else{if(this.peek()===`
21
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:c.ERROR,value:"unterminated substitution pattern",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")s+=this.advance(),this.pos<this.input.length&&this.peek()!==`
22
- `&&(s+=this.advance());else{if(this.peek()===`
23
- `)break;s+=this.advance()}this.peek()===n&&this.advance();let l="";for(;this.pos<this.input.length;){let h=this.peek();if(h==="g"||h==="i"||h==="p"||h==="I"||this.isDigit(h))l+=this.advance();else break}return{type:c.SUBSTITUTE,value:`s${n}${r}${n}${s}${n}${l}`,pattern:r,replacement:s,flags:l,line:e,column:t}}readTransliterate(e,t){let n=this.advance();if(!n||n===`
24
- `)return{type:c.ERROR,value:"y",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let l=this.advance();l==="n"?r+=`
25
- `:l==="t"?r+=" ":r+=l}else{if(this.peek()===`
26
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:c.ERROR,value:"unterminated transliteration source",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let l=this.advance();l==="n"?s+=`
27
- `:l==="t"?s+=" ":s+=l}else{if(this.peek()===`
28
- `)break;s+=this.advance()}return this.peek()===n&&this.advance(),{type:c.TRANSLITERATE,value:`y${n}${r}${n}${s}${n}`,source:r,dest:s,line:e,column:t}}readTextCommand(e,t,n){this.peek()==="\\"&&this.advance(),this.peek()===" "&&this.advance();let r="";for(;this.pos<this.input.length&&this.peek()!==`
29
- `;)r+=this.advance();return{type:c.TEXT_CMD,value:e,text:r.trim(),line:t,column:n}}readBranch(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let l=this.peek();if(l===" "||l===" "||l===`
30
- `||l===";"||l==="}"||l==="{")break;s+=this.advance()}return{type:e,value:t,label:s||void 0,line:n,column:r}}readFileCommand(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let l=this.peek();if(l===`
31
- `||l===";")break;s+=this.advance()}return{type:e,value:t,filename:s.trim(),line:n,column:r}}readExecute(e,t){for(;this.peek()===" "||this.peek()===" ";)this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===`
32
- `||r===";")break;n+=this.advance()}return{type:c.EXECUTE,value:"e",command:n.trim()||void 0,line:e,column:t}}isDigit(e){return e>="0"&&e<="9"}};var O=class{scripts;tokens=[];pos=0;extendedRegex=!1;constructor(e,t=!1){this.scripts=e,this.extendedRegex=t}parse(){let e=[];for(let t of this.scripts){let n=new I(t);for(this.tokens=n.tokenize(),this.pos=0;!this.isAtEnd();){if(this.check(c.NEWLINE)||this.check(c.SEMICOLON)){this.advance();continue}let r=this.parseCommand();if(r.error)return{commands:[],error:r.error};r.command&&e.push(r.command)}}return{commands:e}}parseCommand(){let e=this.parseAddressRange();for(;this.check(c.NEWLINE)||this.check(c.SEMICOLON);)this.advance();if(this.isAtEnd())return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null};let t=this.peek();switch(t.type){case c.COMMAND:return this.parseSimpleCommand(t,e);case c.SUBSTITUTE:return this.parseSubstituteFromToken(t,e);case c.TRANSLITERATE:return this.parseTransliterateFromToken(t,e);case c.LABEL_DEF:return this.advance(),{command:{type:"label",name:t.label||""}};case c.BRANCH:return this.advance(),{command:{type:"branch",address:e,label:t.label}};case c.BRANCH_ON_SUBST:return this.advance(),{command:{type:"branchOnSubst",address:e,label:t.label}};case c.BRANCH_ON_NO_SUBST:return this.advance(),{command:{type:"branchOnNoSubst",address:e,label:t.label}};case c.TEXT_CMD:return this.advance(),this.parseTextCommand(t,e);case c.FILE_READ:return this.advance(),{command:{type:"readFile",address:e,filename:t.filename||""}};case c.FILE_READ_LINE:return this.advance(),{command:{type:"readFileLine",address:e,filename:t.filename||""}};case c.FILE_WRITE:return this.advance(),{command:{type:"writeFile",address:e,filename:t.filename||""}};case c.FILE_WRITE_LINE:return this.advance(),{command:{type:"writeFirstLine",address:e,filename:t.filename||""}};case c.EXECUTE:return this.advance(),{command:{type:"execute",address:e,command:t.command}};case c.LBRACE:return this.parseGroup(e);case c.RBRACE:return{command:null};case c.ERROR:return{command:null,error:`invalid command: ${t.value}`};default:return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null}}}parseSimpleCommand(e,t){this.advance();let n=e.value;switch(n){case"p":return{command:{type:"print",address:t}};case"P":return{command:{type:"printFirstLine",address:t}};case"d":return{command:{type:"delete",address:t}};case"D":return{command:{type:"deleteFirstLine",address:t}};case"h":return{command:{type:"hold",address:t}};case"H":return{command:{type:"holdAppend",address:t}};case"g":return{command:{type:"get",address:t}};case"G":return{command:{type:"getAppend",address:t}};case"x":return{command:{type:"exchange",address:t}};case"n":return{command:{type:"next",address:t}};case"N":return{command:{type:"nextAppend",address:t}};case"q":return{command:{type:"quit",address:t}};case"Q":return{command:{type:"quitSilent",address:t}};case"z":return{command:{type:"zap",address:t}};case"=":return{command:{type:"lineNumber",address:t}};case"l":return{command:{type:"list",address:t}};case"F":return{command:{type:"printFilename",address:t}};case"v":return{command:{type:"version",address:t}};default:return{command:null,error:`unknown command: ${n}`}}}parseSubstituteFromToken(e,t){this.advance();let n=e.flags||"",r,s=n.match(/(\d+)/);return s&&(r=parseInt(s[1],10)),{command:{type:"substitute",address:t,pattern:e.pattern||"",replacement:e.replacement||"",global:n.includes("g"),ignoreCase:n.includes("i")||n.includes("I"),printOnMatch:n.includes("p"),nthOccurrence:r,extendedRegex:this.extendedRegex}}}parseTransliterateFromToken(e,t){this.advance();let n=e.source||"",r=e.dest||"";return n.length!==r.length?{command:null,error:"transliteration sets must have same length"}:{command:{type:"transliterate",address:t,source:n,dest:r}}}parseTextCommand(e,t){let n=e.value,r=e.text||"";switch(n){case"a":return{command:{type:"append",address:t,text:r}};case"i":return{command:{type:"insert",address:t,text:r}};case"c":return{command:{type:"change",address:t,text:r}};default:return{command:null,error:`unknown text command: ${n}`}}}parseGroup(e){this.advance();let t=[];for(;!this.isAtEnd()&&!this.check(c.RBRACE);){if(this.check(c.NEWLINE)||this.check(c.SEMICOLON)){this.advance();continue}let n=this.parseCommand();if(n.error)return{command:null,error:n.error};n.command&&t.push(n.command)}return this.check(c.RBRACE)?(this.advance(),{command:{type:"group",address:e,commands:t}}):{command:null,error:"unmatched brace in grouped commands"}}parseAddressRange(){let e=this.parseAddress();if(e===void 0)return;let t;return this.check(c.COMMA)&&(this.advance(),t=this.parseAddress()),{start:e,end:t}}parseAddress(){let e=this.peek();switch(e.type){case c.NUMBER:return this.advance(),e.value;case c.DOLLAR:return this.advance(),"$";case c.PATTERN:return this.advance(),{pattern:e.pattern||e.value};case c.STEP:return this.advance(),{first:e.first||0,step:e.step||0};default:return}}peek(){return this.tokens[this.pos]||{type:c.EOF,value:"",line:0,column:0}}advance(){return this.isAtEnd()||this.pos++,this.tokens[this.pos-1]}check(e){return this.peek().type===e}isAtEnd(){return this.peek().type===c.EOF}};function q(i,e=!1){return new O(i,e).parse()}var Z={name:"sed",summary:"stream editor for filtering and transforming text",usage:"sed [OPTION]... {script} [input-file]...",options:["-n, --quiet, --silent suppress automatic printing of pattern space","-e script add the script to commands to be executed","-f script-file read script from file","-i, --in-place edit files in place","-E, -r, --regexp-extended use extended regular expressions"," --help display this help and exit"],description:`Commands:
33
- s/regexp/replacement/[flags] substitute
34
- d delete pattern space
35
- p print pattern space
36
- a\\ text append text after line
37
- i\\ text insert text before line
38
- c\\ text change (replace) line with text
39
- h copy pattern space to hold space
40
- H append pattern space to hold space
41
- g copy hold space to pattern space
42
- G append hold space to pattern space
43
- x exchange pattern and hold spaces
44
- n read next line into pattern space
45
- N append next line to pattern space
46
- y/source/dest/ transliterate characters
47
- = print line number
48
- l list pattern space (escape special chars)
49
- b [label] branch to label
50
- t [label] branch on substitution
51
- T [label] branch if no substitution
52
- :label define label
53
- q quit
54
- Q quit without printing
55
-
56
- Addresses:
57
- N line number
58
- $ last line
59
- /regexp/ lines matching regexp
60
- N,M range from line N to M
61
- first~step every step-th line starting at first`};async function F(i,e,t,n={}){let{limits:r,filename:s,fs:l,cwd:h}=n,p=i.split(`
62
- `);p.length>0&&p[p.length-1]===""&&p.pop();let f=p.length,o="",a,u="",m=new Map,v=new Map,x=new Map,L=new Map,H=r?{maxIterations:r.maxSedIterations}:void 0;for(let C=0;C<p.length;C++){let d={...U(f,s,m),patternSpace:p[C],holdSpace:u,lineNumber:C+1,totalLines:f,substitutionMade:!1},_={lines:p,currentLineIndex:C},$=0,X=1e4,B=0;do{if($++,$>X)break;d.restartCycle=!1,d.pendingFileReads=[],d.pendingFileWrites=[];let E=A(e,d,_,H);if(B+=E,l&&h){for(let S of d.pendingFileReads){let b=l.resolvePath(h,S.filename);try{if(S.wholeFile){let R=await l.readFile(b);d.appendBuffer.push(R.replace(/\n$/,""))}else{if(!v.has(b)){let z=await l.readFile(b);v.set(b,z.split(`
63
- `)),x.set(b,0)}let R=v.get(b),w=x.get(b);R&&w!==void 0&&w<R.length&&(d.appendBuffer.push(R[w]),x.set(b,w+1))}}catch{}}for(let S of d.pendingFileWrites){let b=l.resolvePath(h,S.filename),R=L.get(b)||"";L.set(b,R+S.content)}}_.currentLineIndex+=E}while(d.restartCycle&&!d.deleted&&!d.quit&&!d.quitSilent);C+=B,u=d.holdSpace;for(let E of d.lineNumberOutput)o+=`${E}
64
- `;let M=[],T=[];for(let E of d.appendBuffer)E.startsWith("__INSERT__")?M.push(E.slice(10)):T.push(E);for(let E of M)o+=`${E}
65
- `;!d.deleted&&!d.quitSilent&&(t?d.printed&&(o+=`${d.patternSpace}
66
- `):o+=`${d.patternSpace}
67
- `);for(let E of T)o+=`${E}
68
- `;if(d.quit||d.quitSilent){d.exitCode!==void 0&&(a=d.exitCode);break}}if(l&&h)for(let[C,d]of L)try{await l.writeFile(C,d)}catch{}return{output:o,exitCode:a}}var oe={name:"sed",async execute(i,e){if(W(i))return D(Z);let t=[],n=[],r=!1,s=!1,l=!1,h=[];for(let a=0;a<i.length;a++){let u=i[a];if(u==="-n"||u==="--quiet"||u==="--silent")r=!0;else if(u==="-i"||u==="--in-place")s=!0;else if(u.startsWith("-i"))s=!0;else if(u==="-E"||u==="-r"||u==="--regexp-extended")l=!0;else if(u==="-e")a+1<i.length&&t.push(i[++a]);else if(u==="-f")a+1<i.length&&n.push(i[++a]);else{if(u.startsWith("--"))return y("sed",u);if(u.startsWith("-")&&u.length>1){for(let m of u.slice(1))if(m!=="n"&&m!=="e"&&m!=="f"&&m!=="i"&&m!=="E"&&m!=="r")return y("sed",`-${m}`);u.includes("n")&&(r=!0),u.includes("i")&&(s=!0),(u.includes("E")||u.includes("r"))&&(l=!0),u.includes("e")&&!u.includes("n")&&!u.includes("i")&&a+1<i.length&&t.push(i[++a]),u.includes("f")&&!u.includes("e")&&a+1<i.length&&n.push(i[++a])}else!u.startsWith("-")&&t.length===0&&n.length===0?t.push(u):u.startsWith("-")||h.push(u)}}for(let a of n){let u=e.fs.resolvePath(e.cwd,a);try{let m=await e.fs.readFile(u);for(let v of m.split(`
69
- `)){let x=v.trim();x&&!x.startsWith("#")&&t.push(x)}}catch{return{stdout:"",stderr:`sed: couldn't open file ${a}: No such file or directory
70
- `,exitCode:1}}}if(t.length===0)return{stdout:"",stderr:`sed: no script specified
71
- `,exitCode:1};let{commands:p,error:f}=q(t,l);if(f)return{stdout:"",stderr:`sed: ${f}
72
- `,exitCode:1};if(p.length===0)return{stdout:"",stderr:`sed: no valid commands
73
- `,exitCode:1};let o="";if(h.length===0){o=e.stdin;try{let a=await F(o,p,r,{limits:e.limits,fs:e.fs,cwd:e.cwd});return{stdout:a.output,stderr:"",exitCode:a.exitCode??0}}catch(a){if(a instanceof g)return{stdout:"",stderr:`sed: ${a.message}
74
- `,exitCode:g.EXIT_CODE};throw a}}if(s){for(let a of h){let u=e.fs.resolvePath(e.cwd,a);try{let m=await e.fs.readFile(u),v=await F(m,p,r,{limits:e.limits,filename:a,fs:e.fs,cwd:e.cwd});await e.fs.writeFile(u,v.output)}catch(m){return m instanceof g?{stdout:"",stderr:`sed: ${m.message}
75
- `,exitCode:g.EXIT_CODE}:{stdout:"",stderr:`sed: ${a}: No such file or directory
76
- `,exitCode:1}}}return{stdout:"",stderr:"",exitCode:0}}for(let a of h){let u=e.fs.resolvePath(e.cwd,a);try{o+=await e.fs.readFile(u)}catch(m){return m instanceof g?{stdout:"",stderr:`sed: ${m.message}
77
- `,exitCode:g.EXIT_CODE}:{stdout:"",stderr:`sed: ${a}: No such file or directory
78
- `,exitCode:1}}}try{let a=await F(o,p,r,{limits:e.limits,filename:h.length===1?h[0]:void 0,fs:e.fs,cwd:e.cwd});return{stdout:a.output,stderr:"",exitCode:a.exitCode??0}}catch(a){if(a instanceof g)return{stdout:"",stderr:`sed: ${a.message}
79
- `,exitCode:g.EXIT_CODE};throw a}}};export{oe as sedCommand};
@@ -1,74 +0,0 @@
1
- import{i as O}from"./chunk-JYYFSUWP.js";import{a as A,b as y,c as k}from"./chunk-74CEPOFO.js";var M=1e4;function _(i,e){return{patternSpace:"",holdSpace:"",lineNumber:0,totalLines:i,deleted:!1,printed:!1,quit:!1,quitSilent:!1,exitCode:void 0,appendBuffer:[],substitutionMade:!1,lineNumberOutput:[],restartCycle:!1,currentFilename:e,pendingFileReads:[],pendingFileWrites:[],pendingExecute:void 0}}function T(i){return typeof i=="object"&&"first"in i&&"step"in i}function w(i,e,t,n){if(i==="$")return e===t;if(typeof i=="number")return e===i;if(T(i)){let{first:r,step:s}=i;return s===0?e===r:(e-r)%s===0&&e>=r}if(typeof i=="object"&&"pattern"in i)try{return new RegExp(i.pattern).test(n)}catch{return!1}return!1}function g(i,e,t,n){if(!i||!i.start&&!i.end)return!0;let r=i.start,s=i.end;if(r!==void 0&&s===void 0)return w(r,e,t,n);if(r!==void 0&&s!==void 0){let l=typeof r=="number"?r:r==="$"?t:1,h=typeof s=="number"?s:t;return typeof r=="object"&&"pattern"in r&&w(r,e,t,n)?!0:e>=l&&e<=h}return!0}function $(i){let e="";for(let t=0;t<i.length;t++){let n=i[t],r=n.charCodeAt(0);n==="\\"?e+="\\\\":n===" "?e+="\\t":n===`
2
- `?e+=`$
3
- `:n==="\r"?e+="\\r":n==="\x07"?e+="\\a":n==="\b"?e+="\\b":n==="\f"?e+="\\f":n==="\v"?e+="\\v":r<32||r>=127?e+=`\\${r.toString(8).padStart(3,"0")}`:e+=n}return`${e}$`}function F(i,e,t){let n="",r=0;for(;r<i.length;){if(i[r]==="\\"&&r+1<i.length){let s=i[r+1];if(s==="&"){n+="&",r+=2;continue}if(s==="n"){n+=`
4
- `,r+=2;continue}if(s==="t"){n+=" ",r+=2;continue}let l=parseInt(s,10);if(l>=1&&l<=9){n+=t[l-1]||"",r+=2;continue}n+=s,r+=2;continue}if(i[r]==="&"){n+=e,r++;continue}n+=i[r],r++}return n}function D(i,e){let{lineNumber:t,totalLines:n,patternSpace:r}=e;if(i.type!=="label"&&g(i.address,t,n,r))switch(i.type){case"substitute":{let s=i,l="";s.global&&(l+="g"),s.ignoreCase&&(l+="i");try{let h=new RegExp(s.pattern,l),p=e.patternSpace;if(s.nthOccurrence&&s.nthOccurrence>0&&!s.global){let o=0,f=s.nthOccurrence;e.patternSpace=e.patternSpace.replace(new RegExp(s.pattern,`g${s.ignoreCase?"i":""}`),(u,...c)=>{if(o++,o===f){let m=c.slice(0,-2);return F(s.replacement,u,m)}return u})}else e.patternSpace=e.patternSpace.replace(h,(o,...f)=>{let u=f.slice(0,-2);return F(s.replacement,o,u)});p!==e.patternSpace&&(e.substitutionMade=!0,s.printOnMatch&&(e.printed=!0))}catch{}break}case"print":e.printed=!0;break;case"printFirstLine":{let s=e.patternSpace.indexOf(`
5
- `);s!==-1?e.lineNumberOutput.push(e.patternSpace.slice(0,s)):e.lineNumberOutput.push(e.patternSpace);break}case"delete":e.deleted=!0;break;case"deleteFirstLine":{let s=e.patternSpace.indexOf(`
6
- `);s!==-1?(e.patternSpace=e.patternSpace.slice(s+1),e.restartCycle=!0):e.deleted=!0;break}case"zap":e.patternSpace="";break;case"append":e.appendBuffer.push(i.text);break;case"insert":e.appendBuffer.unshift(`__INSERT__${i.text}`);break;case"change":e.patternSpace=i.text,e.deleted=!0,e.appendBuffer.push(i.text);break;case"hold":e.holdSpace=e.patternSpace;break;case"holdAppend":e.holdSpace?e.holdSpace+=`
7
- ${e.patternSpace}`:e.holdSpace=e.patternSpace;break;case"get":e.patternSpace=e.holdSpace;break;case"getAppend":e.patternSpace+=`
8
- ${e.holdSpace}`;break;case"exchange":{let s=e.patternSpace;e.patternSpace=e.holdSpace,e.holdSpace=s;break}case"next":e.printed=!0;break;case"quit":e.quit=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"quitSilent":e.quit=!0,e.quitSilent=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"list":{let s=$(e.patternSpace);e.lineNumberOutput.push(s);break}case"printFilename":e.currentFilename&&e.lineNumberOutput.push(e.currentFilename);break;case"version":break;case"readFile":e.pendingFileReads.push({filename:i.filename,wholeFile:!0});break;case"readFileLine":e.pendingFileReads.push({filename:i.filename,wholeFile:!1});break;case"writeFile":e.pendingFileWrites.push({filename:i.filename,content:`${e.patternSpace}
9
- `});break;case"writeFirstLine":{let s=e.patternSpace.indexOf(`
10
- `),l=s!==-1?e.patternSpace.slice(0,s):e.patternSpace;e.pendingFileWrites.push({filename:i.filename,content:`${l}
11
- `});break}case"execute":i.command?e.pendingExecute={command:i.command,replacePattern:!1}:e.pendingExecute={command:e.patternSpace,replacePattern:!0};break;case"transliterate":e.patternSpace=W(e.patternSpace,i);break;case"lineNumber":e.lineNumberOutput.push(String(e.lineNumber));break;case"branch":break;case"branchOnSubst":break;case"branchOnNoSubst":break;case"group":break}}function W(i,e){let t="";for(let n of i){let r=e.source.indexOf(n);r!==-1?t+=e.dest[r]:t+=n}return t}function R(i,e,t,n){let r=new Map;for(let d=0;d<i.length;d++){let o=i[d];o.type==="label"&&r.set(o.name,d)}let s=n?.maxIterations??M,l=0,h=0,p=0;for(;p<i.length;){if(l++,l>s)throw new O(`sed: command execution exceeded maximum iterations (${s})`,"iterations");if(e.deleted||e.quit||e.quitSilent||e.restartCycle)break;let d=i[p];if(d.type==="nextAppend"){if(g(d.address,e.lineNumber,e.totalLines,e.patternSpace))if(t&&t.currentLineIndex+h+1<t.lines.length){h++;let o=t.lines[t.currentLineIndex+h];e.patternSpace+=`
12
- ${o}`,e.lineNumber=t.currentLineIndex+h+1}else{e.quit=!0,e.deleted=!0;break}p++;continue}if(d.type==="branch"){let o=d;if(g(o.address,e.lineNumber,e.totalLines,e.patternSpace)){if(o.label){let f=r.get(o.label);if(f!==void 0){p=f;continue}}break}p++;continue}if(d.type==="branchOnSubst"){let o=d;if(g(o.address,e.lineNumber,e.totalLines,e.patternSpace)&&e.substitutionMade){if(e.substitutionMade=!1,o.label){let f=r.get(o.label);if(f!==void 0){p=f;continue}}break}p++;continue}if(d.type==="branchOnNoSubst"){let o=d;if(g(o.address,e.lineNumber,e.totalLines,e.patternSpace)&&!e.substitutionMade){if(o.label){let f=r.get(o.label);if(f!==void 0){p=f;continue}}break}p++;continue}if(d.type==="group"){let o=d;g(o.address,e.lineNumber,e.totalLines,e.patternSpace)&&R(o.commands,e,t,n),p++;continue}D(d,e),p++}return h}var a;(function(i){i.NUMBER="NUMBER",i.DOLLAR="DOLLAR",i.PATTERN="PATTERN",i.STEP="STEP",i.LBRACE="LBRACE",i.RBRACE="RBRACE",i.SEMICOLON="SEMICOLON",i.NEWLINE="NEWLINE",i.COMMA="COMMA",i.COMMAND="COMMAND",i.SUBSTITUTE="SUBSTITUTE",i.TRANSLITERATE="TRANSLITERATE",i.LABEL_DEF="LABEL_DEF",i.BRANCH="BRANCH",i.BRANCH_ON_SUBST="BRANCH_ON_SUBST",i.BRANCH_ON_NO_SUBST="BRANCH_ON_NO_SUBST",i.TEXT_CMD="TEXT_CMD",i.FILE_READ="FILE_READ",i.FILE_READ_LINE="FILE_READ_LINE",i.FILE_WRITE="FILE_WRITE",i.FILE_WRITE_LINE="FILE_WRITE_LINE",i.EXECUTE="EXECUTE",i.EOF="EOF",i.ERROR="ERROR"})(a||(a={}));var C=class{input;pos=0;line=1;column=1;constructor(e){this.input=e}tokenize(){let e=[];for(;this.pos<this.input.length;){let t=this.nextToken();t&&e.push(t)}return e.push(this.makeToken(a.EOF,"")),e}makeToken(e,t,n){return{type:e,value:t,line:this.line,column:this.column,...n}}peek(e=0){return this.input[this.pos+e]||""}advance(){let e=this.input[this.pos++]||"";return e===`
13
- `?(this.line++,this.column=1):this.column++,e}skipWhitespace(){for(;this.pos<this.input.length;){let e=this.peek();if(e===" "||e===" "||e==="\r")this.advance();else if(e==="#")for(;this.pos<this.input.length&&this.peek()!==`
14
- `;)this.advance();else break}}nextToken(){if(this.skipWhitespace(),this.pos>=this.input.length)return null;let e=this.line,t=this.column,n=this.peek();return n===`
15
- `?(this.advance(),{type:a.NEWLINE,value:`
16
- `,line:e,column:t}):n===";"?(this.advance(),{type:a.SEMICOLON,value:";",line:e,column:t}):n==="{"?(this.advance(),{type:a.LBRACE,value:"{",line:e,column:t}):n==="}"?(this.advance(),{type:a.RBRACE,value:"}",line:e,column:t}):n===","?(this.advance(),{type:a.COMMA,value:",",line:e,column:t}):n==="$"?(this.advance(),{type:a.DOLLAR,value:"$",line:e,column:t}):this.isDigit(n)?this.readNumber():n==="/"?this.readPattern():n===":"?this.readLabelDef():this.readCommand()}readNumber(){let e=this.line,t=this.column,n="";for(;this.isDigit(this.peek());)n+=this.advance();if(this.peek()==="~"){this.advance();let r="";for(;this.isDigit(this.peek());)r+=this.advance();let s=parseInt(n,10),l=parseInt(r,10)||0;return{type:a.STEP,value:`${s}~${l}`,first:s,step:l,line:e,column:t}}return{type:a.NUMBER,value:parseInt(n,10),line:e,column:t}}readPattern(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length&&this.peek()!=="/";)if(this.peek()==="\\")n+=this.advance(),this.pos<this.input.length&&(n+=this.advance());else{if(this.peek()===`
17
- `)break;n+=this.advance()}return this.peek()==="/"&&this.advance(),{type:a.PATTERN,value:n,pattern:n,line:e,column:t}}readLabelDef(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===" "||r===" "||r===`
18
- `||r===";"||r==="}"||r==="{")break;n+=this.advance()}return{type:a.LABEL_DEF,value:n,label:n,line:e,column:t}}readCommand(){let e=this.line,t=this.column,n=this.advance();switch(n){case"s":return this.readSubstitute(e,t);case"y":return this.readTransliterate(e,t);case"a":case"i":case"c":return this.readTextCommand(n,e,t);case"b":return this.readBranch(a.BRANCH,"b",e,t);case"t":return this.readBranch(a.BRANCH_ON_SUBST,"t",e,t);case"T":return this.readBranch(a.BRANCH_ON_NO_SUBST,"T",e,t);case"r":return this.readFileCommand(a.FILE_READ,"r",e,t);case"R":return this.readFileCommand(a.FILE_READ_LINE,"R",e,t);case"w":return this.readFileCommand(a.FILE_WRITE,"w",e,t);case"W":return this.readFileCommand(a.FILE_WRITE_LINE,"W",e,t);case"e":return this.readExecute(e,t);case"p":case"P":case"d":case"D":case"h":case"H":case"g":case"G":case"x":case"n":case"N":case"q":case"Q":case"z":case"=":case"l":case"F":case"v":return{type:a.COMMAND,value:n,line:e,column:t};default:return{type:a.ERROR,value:n,line:e,column:t}}}readSubstitute(e,t){let n=this.advance();if(!n||n===`
19
- `)return{type:a.ERROR,value:"s",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")r+=this.advance(),this.pos<this.input.length&&this.peek()!==`
20
- `&&(r+=this.advance());else{if(this.peek()===`
21
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:a.ERROR,value:"unterminated substitution pattern",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")s+=this.advance(),this.pos<this.input.length&&this.peek()!==`
22
- `&&(s+=this.advance());else{if(this.peek()===`
23
- `)break;s+=this.advance()}this.peek()===n&&this.advance();let l="";for(;this.pos<this.input.length;){let h=this.peek();if(h==="g"||h==="i"||h==="p"||h==="I"||this.isDigit(h))l+=this.advance();else break}return{type:a.SUBSTITUTE,value:`s${n}${r}${n}${s}${n}${l}`,pattern:r,replacement:s,flags:l,line:e,column:t}}readTransliterate(e,t){let n=this.advance();if(!n||n===`
24
- `)return{type:a.ERROR,value:"y",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let l=this.advance();l==="n"?r+=`
25
- `:l==="t"?r+=" ":r+=l}else{if(this.peek()===`
26
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:a.ERROR,value:"unterminated transliteration source",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let l=this.advance();l==="n"?s+=`
27
- `:l==="t"?s+=" ":s+=l}else{if(this.peek()===`
28
- `)break;s+=this.advance()}return this.peek()===n&&this.advance(),{type:a.TRANSLITERATE,value:`y${n}${r}${n}${s}${n}`,source:r,dest:s,line:e,column:t}}readTextCommand(e,t,n){this.peek()==="\\"&&this.advance(),this.peek()===" "&&this.advance();let r="";for(;this.pos<this.input.length&&this.peek()!==`
29
- `;)r+=this.advance();return{type:a.TEXT_CMD,value:e,text:r.trim(),line:t,column:n}}readBranch(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let l=this.peek();if(l===" "||l===" "||l===`
30
- `||l===";"||l==="}"||l==="{")break;s+=this.advance()}return{type:e,value:t,label:s||void 0,line:n,column:r}}readFileCommand(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let l=this.peek();if(l===`
31
- `||l===";")break;s+=this.advance()}return{type:e,value:t,filename:s.trim(),line:n,column:r}}readExecute(e,t){for(;this.peek()===" "||this.peek()===" ";)this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===`
32
- `||r===";")break;n+=this.advance()}return{type:a.EXECUTE,value:"e",command:n.trim()||void 0,line:e,column:t}}isDigit(e){return e>="0"&&e<="9"}};var x=class{scripts;tokens=[];pos=0;extendedRegex=!1;constructor(e,t=!1){this.scripts=e,this.extendedRegex=t}parse(){let e=[];for(let t of this.scripts){let n=new C(t);for(this.tokens=n.tokenize(),this.pos=0;!this.isAtEnd();){if(this.check(a.NEWLINE)||this.check(a.SEMICOLON)){this.advance();continue}let r=this.parseCommand();if(r.error)return{commands:[],error:r.error};r.command&&e.push(r.command)}}return{commands:e}}parseCommand(){let e=this.parseAddressRange();for(;this.check(a.NEWLINE)||this.check(a.SEMICOLON);)this.advance();if(this.isAtEnd())return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null};let t=this.peek();switch(t.type){case a.COMMAND:return this.parseSimpleCommand(t,e);case a.SUBSTITUTE:return this.parseSubstituteFromToken(t,e);case a.TRANSLITERATE:return this.parseTransliterateFromToken(t,e);case a.LABEL_DEF:return this.advance(),{command:{type:"label",name:t.label||""}};case a.BRANCH:return this.advance(),{command:{type:"branch",address:e,label:t.label}};case a.BRANCH_ON_SUBST:return this.advance(),{command:{type:"branchOnSubst",address:e,label:t.label}};case a.BRANCH_ON_NO_SUBST:return this.advance(),{command:{type:"branchOnNoSubst",address:e,label:t.label}};case a.TEXT_CMD:return this.advance(),this.parseTextCommand(t,e);case a.FILE_READ:return this.advance(),{command:{type:"readFile",address:e,filename:t.filename||""}};case a.FILE_READ_LINE:return this.advance(),{command:{type:"readFileLine",address:e,filename:t.filename||""}};case a.FILE_WRITE:return this.advance(),{command:{type:"writeFile",address:e,filename:t.filename||""}};case a.FILE_WRITE_LINE:return this.advance(),{command:{type:"writeFirstLine",address:e,filename:t.filename||""}};case a.EXECUTE:return this.advance(),{command:{type:"execute",address:e,command:t.command}};case a.LBRACE:return this.parseGroup(e);case a.RBRACE:return{command:null};case a.ERROR:return{command:null,error:`invalid command: ${t.value}`};default:return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null}}}parseSimpleCommand(e,t){this.advance();let n=e.value;switch(n){case"p":return{command:{type:"print",address:t}};case"P":return{command:{type:"printFirstLine",address:t}};case"d":return{command:{type:"delete",address:t}};case"D":return{command:{type:"deleteFirstLine",address:t}};case"h":return{command:{type:"hold",address:t}};case"H":return{command:{type:"holdAppend",address:t}};case"g":return{command:{type:"get",address:t}};case"G":return{command:{type:"getAppend",address:t}};case"x":return{command:{type:"exchange",address:t}};case"n":return{command:{type:"next",address:t}};case"N":return{command:{type:"nextAppend",address:t}};case"q":return{command:{type:"quit",address:t}};case"Q":return{command:{type:"quitSilent",address:t}};case"z":return{command:{type:"zap",address:t}};case"=":return{command:{type:"lineNumber",address:t}};case"l":return{command:{type:"list",address:t}};case"F":return{command:{type:"printFilename",address:t}};case"v":return{command:{type:"version",address:t}};default:return{command:null,error:`unknown command: ${n}`}}}parseSubstituteFromToken(e,t){this.advance();let n=e.flags||"",r,s=n.match(/(\d+)/);return s&&(r=parseInt(s[1],10)),{command:{type:"substitute",address:t,pattern:e.pattern||"",replacement:e.replacement||"",global:n.includes("g"),ignoreCase:n.includes("i")||n.includes("I"),printOnMatch:n.includes("p"),nthOccurrence:r,extendedRegex:this.extendedRegex}}}parseTransliterateFromToken(e,t){this.advance();let n=e.source||"",r=e.dest||"";return n.length!==r.length?{command:null,error:"transliteration sets must have same length"}:{command:{type:"transliterate",address:t,source:n,dest:r}}}parseTextCommand(e,t){let n=e.value,r=e.text||"";switch(n){case"a":return{command:{type:"append",address:t,text:r}};case"i":return{command:{type:"insert",address:t,text:r}};case"c":return{command:{type:"change",address:t,text:r}};default:return{command:null,error:`unknown text command: ${n}`}}}parseGroup(e){this.advance();let t=[];for(;!this.isAtEnd()&&!this.check(a.RBRACE);){if(this.check(a.NEWLINE)||this.check(a.SEMICOLON)){this.advance();continue}let n=this.parseCommand();if(n.error)return{command:null,error:n.error};n.command&&t.push(n.command)}return this.check(a.RBRACE)?(this.advance(),{command:{type:"group",address:e,commands:t}}):{command:null,error:"unmatched brace in grouped commands"}}parseAddressRange(){let e=this.parseAddress();if(e===void 0)return;let t;return this.check(a.COMMA)&&(this.advance(),t=this.parseAddress()),{start:e,end:t}}parseAddress(){let e=this.peek();switch(e.type){case a.NUMBER:return this.advance(),e.value;case a.DOLLAR:return this.advance(),"$";case a.PATTERN:return this.advance(),{pattern:e.pattern||e.value};case a.STEP:return this.advance(),{first:e.first||0,step:e.step||0};default:return}}peek(){return this.tokens[this.pos]||{type:a.EOF,value:"",line:0,column:0}}advance(){return this.isAtEnd()||this.pos++,this.tokens[this.pos-1]}check(e){return this.peek().type===e}isAtEnd(){return this.peek().type===a.EOF}};function B(i,e=!1){return new x(i,e).parse()}var U={name:"sed",summary:"stream editor for filtering and transforming text",usage:"sed [OPTION]... {script} [input-file]...",options:["-n, --quiet, --silent suppress automatic printing of pattern space","-e script add the script to commands to be executed","-f script-file read script from file","-i, --in-place edit files in place","-E, -r, --regexp-extended use extended regular expressions"," --help display this help and exit"],description:`Commands:
33
- s/regexp/replacement/[flags] substitute
34
- d delete pattern space
35
- p print pattern space
36
- a\\ text append text after line
37
- i\\ text insert text before line
38
- c\\ text change (replace) line with text
39
- h copy pattern space to hold space
40
- H append pattern space to hold space
41
- g copy hold space to pattern space
42
- G append hold space to pattern space
43
- x exchange pattern and hold spaces
44
- n read next line into pattern space
45
- N append next line to pattern space
46
- y/source/dest/ transliterate characters
47
- = print line number
48
- l list pattern space (escape special chars)
49
- b [label] branch to label
50
- t [label] branch on substitution
51
- T [label] branch if no substitution
52
- :label define label
53
- q quit
54
- Q quit without printing
55
-
56
- Addresses:
57
- N line number
58
- $ last line
59
- /regexp/ lines matching regexp
60
- N,M range from line N to M
61
- first~step every step-th line starting at first`};async function S(i,e,t,n={}){let{limits:r,filename:s}=n,l=i.split(`
62
- `);l.length>0&&l[l.length-1]===""&&l.pop();let h=l.length,p="",d,o="",f=r?{maxIterations:r.maxSedIterations}:void 0;for(let u=0;u<l.length;u++){let c={..._(h,s),patternSpace:l[u],holdSpace:o,lineNumber:u+1,totalLines:h,substitutionMade:!1},m={lines:l,currentLineIndex:u},E=0,v=1e4,N=0;do{if(E++,E>v)break;c.restartCycle=!1;let b=R(e,c,m,f);N+=b,m.currentLineIndex+=b}while(c.restartCycle&&!c.deleted&&!c.quit&&!c.quitSilent);u+=N,o=c.holdSpace;for(let b of c.lineNumberOutput)p+=`${b}
63
- `;let L=[],I=[];for(let b of c.appendBuffer)b.startsWith("__INSERT__")?L.push(b.slice(10)):I.push(b);for(let b of L)p+=`${b}
64
- `;!c.deleted&&!c.quitSilent&&(t?c.printed&&(p+=`${c.patternSpace}
65
- `):p+=`${c.patternSpace}
66
- `);for(let b of I)p+=`${b}
67
- `;if(c.quit||c.quitSilent){c.exitCode!==void 0&&(d=c.exitCode);break}}return{output:p,exitCode:d}}var J={name:"sed",async execute(i,e){if(y(i))return A(U);let t=[],n=[],r=!1,s=!1,l=!1,h=[];for(let u=0;u<i.length;u++){let c=i[u];if(c==="-n"||c==="--quiet"||c==="--silent")r=!0;else if(c==="-i"||c==="--in-place")s=!0;else if(c.startsWith("-i"))s=!0;else if(c==="-E"||c==="-r"||c==="--regexp-extended")l=!0;else if(c==="-e")u+1<i.length&&t.push(i[++u]);else if(c==="-f")u+1<i.length&&n.push(i[++u]);else{if(c.startsWith("--"))return k("sed",c);if(c.startsWith("-")&&c.length>1){for(let m of c.slice(1))if(m!=="n"&&m!=="e"&&m!=="f"&&m!=="i"&&m!=="E"&&m!=="r")return k("sed",`-${m}`);c.includes("n")&&(r=!0),c.includes("i")&&(s=!0),(c.includes("E")||c.includes("r"))&&(l=!0),c.includes("e")&&!c.includes("n")&&!c.includes("i")&&u+1<i.length&&t.push(i[++u]),c.includes("f")&&!c.includes("e")&&u+1<i.length&&n.push(i[++u])}else!c.startsWith("-")&&t.length===0&&n.length===0?t.push(c):c.startsWith("-")||h.push(c)}}for(let u of n){let c=e.fs.resolvePath(e.cwd,u);try{let m=await e.fs.readFile(c);for(let E of m.split(`
68
- `)){let v=E.trim();v&&!v.startsWith("#")&&t.push(v)}}catch{return{stdout:"",stderr:`sed: couldn't open file ${u}: No such file or directory
69
- `,exitCode:1}}}if(t.length===0)return{stdout:"",stderr:`sed: no script specified
70
- `,exitCode:1};let{commands:p,error:d}=B(t,l);if(d)return{stdout:"",stderr:`sed: ${d}
71
- `,exitCode:1};if(p.length===0)return{stdout:"",stderr:`sed: no valid commands
72
- `,exitCode:1};let o="";if(h.length===0){o=e.stdin;let u=await S(o,p,r,{limits:e.limits,fs:e.fs,cwd:e.cwd});return{stdout:u.output,stderr:"",exitCode:u.exitCode??0}}if(s){for(let u of h){let c=e.fs.resolvePath(e.cwd,u);try{let m=await e.fs.readFile(c),E=await S(m,p,r,{limits:e.limits,filename:u,fs:e.fs,cwd:e.cwd});await e.fs.writeFile(c,E.output)}catch{return{stdout:"",stderr:`sed: ${u}: No such file or directory
73
- `,exitCode:1}}}return{stdout:"",stderr:"",exitCode:0}}for(let u of h){let c=e.fs.resolvePath(e.cwd,u);try{o+=await e.fs.readFile(c)}catch{return{stdout:"",stderr:`sed: ${u}: No such file or directory
74
- `,exitCode:1}}}let f=await S(o,p,r,{limits:e.limits,filename:h.length===1?h[0]:void 0,fs:e.fs,cwd:e.cwd});return{stdout:f.output,stderr:"",exitCode:f.exitCode??0}}};export{J as sedCommand};
@@ -1,79 +0,0 @@
1
- import{i as g}from"./chunk-CG2HXOFG.js";import{a as D,b as W,c as y}from"./chunk-74CEPOFO.js";var G=1e4;function U(i,e,t){return{patternSpace:"",holdSpace:"",lineNumber:0,totalLines:i,deleted:!1,printed:!1,quit:!1,quitSilent:!1,exitCode:void 0,appendBuffer:[],substitutionMade:!1,lineNumberOutput:[],restartCycle:!1,currentFilename:e,pendingFileReads:[],pendingFileWrites:[],pendingExecute:void 0,rangeStates:t||new Map}}function j(i){return typeof i=="object"&&"first"in i&&"step"in i}function N(i,e,t,n){if(i==="$")return e===t;if(typeof i=="number")return e===i;if(j(i)){let{first:r,step:s}=i;return s===0?e===r:(e-r)%s===0&&e>=r}if(typeof i=="object"&&"pattern"in i)try{return new RegExp(i.pattern).test(n)}catch{return!1}return!1}function Q(i){let e=t=>t===void 0?"undefined":t==="$"?"$":typeof t=="number"?String(t):"pattern"in t?`/${t.pattern}/`:"first"in t?`${t.first}~${t.step}`:"unknown";return`${e(i.start)},${e(i.end)}`}function k(i,e,t,n,r){if(!i||!i.start&&!i.end)return!0;let s=i.start,l=i.end;if(s!==void 0&&l===void 0)return N(s,e,t,n);if(s!==void 0&&l!==void 0){let h=typeof s=="object"&&"pattern"in s,p=typeof l=="object"&&"pattern"in l;if(!h&&!p){let o=typeof s=="number"?s:s==="$"?t:1,a=typeof l=="number"?l:t;return e>=o&&e<=a}if(r){let o=Q(i),a=r.get(o);return a||(a={active:!1},r.set(o,a)),a.active?(N(l,e,t,n)&&(a.active=!1,r.set(o,a)),!0):N(s,e,t,n)?(a.active=!0,a.startLine=e,r.set(o,a),N(l,e,t,n)&&(a.active=!1,r.set(o,a)),!0):!1}return N(s,e,t,n)}return!0}function K(i){let e="",t=0;for(;t<i.length;){if(i[t]==="\\"&&t+1<i.length){let n=i[t+1];if(n==="+"||n==="?"||n==="|"){e+=n,t+=2;continue}if(n==="("||n===")"){e+=n,t+=2;continue}if(n==="{"||n==="}"){e+=n,t+=2;continue}e+=i[t]+n,t+=2;continue}if(i[t]==="+"||i[t]==="?"||i[t]==="|"||i[t]==="("||i[t]===")"){e+=`\\${i[t]}`,t++;continue}e+=i[t],t++}return e}function J(i){let e="";for(let t=0;t<i.length;t++){let n=i[t],r=n.charCodeAt(0);n==="\\"?e+="\\\\":n===" "?e+="\\t":n===`
2
- `?e+=`$
3
- `:n==="\r"?e+="\\r":n==="\x07"?e+="\\a":n==="\b"?e+="\\b":n==="\f"?e+="\\f":n==="\v"?e+="\\v":r<32||r>=127?e+=`\\${r.toString(8).padStart(3,"0")}`:e+=n}return`${e}$`}function P(i,e,t){let n="",r=0;for(;r<i.length;){if(i[r]==="\\"&&r+1<i.length){let s=i[r+1];if(s==="&"){n+="&",r+=2;continue}if(s==="n"){n+=`
4
- `,r+=2;continue}if(s==="t"){n+=" ",r+=2;continue}let l=parseInt(s,10);if(l>=1&&l<=9){n+=t[l-1]||"",r+=2;continue}n+=s,r+=2;continue}if(i[r]==="&"){n+=e,r++;continue}n+=i[r],r++}return n}function V(i,e){let{lineNumber:t,totalLines:n,patternSpace:r}=e;if(i.type!=="label"&&k(i.address,t,n,r,e.rangeStates))switch(i.type){case"substitute":{let s=i,l="";s.global&&(l+="g"),s.ignoreCase&&(l+="i");let h=s.extendedRegex?s.pattern:K(s.pattern);try{let p=new RegExp(h,l),f=p.test(e.patternSpace);if(p.lastIndex=0,f){if(e.substitutionMade=!0,s.nthOccurrence&&s.nthOccurrence>0&&!s.global){let o=0,a=s.nthOccurrence;e.patternSpace=e.patternSpace.replace(new RegExp(h,`g${s.ignoreCase?"i":""}`),(u,...m)=>{if(o++,o===a){let v=m.slice(0,-2);return P(s.replacement,u,v)}return u})}else e.patternSpace=e.patternSpace.replace(p,(o,...a)=>{let u=a.slice(0,-2);return P(s.replacement,o,u)});s.printOnMatch&&(e.printed=!0)}}catch{}break}case"print":e.printed=!0;break;case"printFirstLine":{let s=e.patternSpace.indexOf(`
5
- `);s!==-1?e.lineNumberOutput.push(e.patternSpace.slice(0,s)):e.lineNumberOutput.push(e.patternSpace);break}case"delete":e.deleted=!0;break;case"deleteFirstLine":{let s=e.patternSpace.indexOf(`
6
- `);s!==-1?(e.patternSpace=e.patternSpace.slice(s+1),e.restartCycle=!0):e.deleted=!0;break}case"zap":e.patternSpace="";break;case"append":e.appendBuffer.push(i.text);break;case"insert":e.appendBuffer.unshift(`__INSERT__${i.text}`);break;case"change":e.patternSpace=i.text,e.deleted=!0,e.appendBuffer.push(i.text);break;case"hold":e.holdSpace=e.patternSpace;break;case"holdAppend":e.holdSpace?e.holdSpace+=`
7
- ${e.patternSpace}`:e.holdSpace=e.patternSpace;break;case"get":e.patternSpace=e.holdSpace;break;case"getAppend":e.patternSpace+=`
8
- ${e.holdSpace}`;break;case"exchange":{let s=e.patternSpace;e.patternSpace=e.holdSpace,e.holdSpace=s;break}case"next":e.printed=!0;break;case"quit":e.quit=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"quitSilent":e.quit=!0,e.quitSilent=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"list":{let s=J(e.patternSpace);e.lineNumberOutput.push(s);break}case"printFilename":e.currentFilename&&e.lineNumberOutput.push(e.currentFilename);break;case"version":break;case"readFile":e.pendingFileReads.push({filename:i.filename,wholeFile:!0});break;case"readFileLine":e.pendingFileReads.push({filename:i.filename,wholeFile:!1});break;case"writeFile":e.pendingFileWrites.push({filename:i.filename,content:`${e.patternSpace}
9
- `});break;case"writeFirstLine":{let s=e.patternSpace.indexOf(`
10
- `),l=s!==-1?e.patternSpace.slice(0,s):e.patternSpace;e.pendingFileWrites.push({filename:i.filename,content:`${l}
11
- `});break}case"execute":i.command?e.pendingExecute={command:i.command,replacePattern:!1}:e.pendingExecute={command:e.patternSpace,replacePattern:!0};break;case"transliterate":e.patternSpace=Y(e.patternSpace,i);break;case"lineNumber":e.lineNumberOutput.push(String(e.lineNumber));break;case"branch":break;case"branchOnSubst":break;case"branchOnNoSubst":break;case"group":break}}function Y(i,e){let t="";for(let n of i){let r=e.source.indexOf(n);r!==-1?t+=e.dest[r]:t+=n}return t}function A(i,e,t,n){let r=new Map;for(let f=0;f<i.length;f++){let o=i[f];o.type==="label"&&r.set(o.name,f)}let s=n?.maxIterations??G,l=0,h=0,p=0;for(;p<i.length;){if(l++,l>s)throw new g(`sed: command execution exceeded maximum iterations (${s})`,"iterations");if(e.deleted||e.quit||e.quitSilent||e.restartCycle)break;let f=i[p];if(f.type==="nextAppend"){if(k(f.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates))if(t&&t.currentLineIndex+h+1<t.lines.length){h++;let o=t.lines[t.currentLineIndex+h];e.patternSpace+=`
12
- ${o}`,e.lineNumber=t.currentLineIndex+h+1}else{e.quit=!0,e.deleted=!0;break}p++;continue}if(f.type==="branch"){let o=f;if(k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)){if(o.label){let a=r.get(o.label);if(a!==void 0){p=a;continue}}break}p++;continue}if(f.type==="branchOnSubst"){let o=f;if(k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&e.substitutionMade){if(e.substitutionMade=!1,o.label){let a=r.get(o.label);if(a!==void 0){p=a;continue}}break}p++;continue}if(f.type==="branchOnNoSubst"){let o=f;if(k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&!e.substitutionMade){if(o.label){let a=r.get(o.label);if(a!==void 0){p=a;continue}}break}p++;continue}if(f.type==="group"){let o=f;k(o.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&A(o.commands,e,t,n),p++;continue}V(f,e),p++}return h}var c;(function(i){i.NUMBER="NUMBER",i.DOLLAR="DOLLAR",i.PATTERN="PATTERN",i.STEP="STEP",i.LBRACE="LBRACE",i.RBRACE="RBRACE",i.SEMICOLON="SEMICOLON",i.NEWLINE="NEWLINE",i.COMMA="COMMA",i.COMMAND="COMMAND",i.SUBSTITUTE="SUBSTITUTE",i.TRANSLITERATE="TRANSLITERATE",i.LABEL_DEF="LABEL_DEF",i.BRANCH="BRANCH",i.BRANCH_ON_SUBST="BRANCH_ON_SUBST",i.BRANCH_ON_NO_SUBST="BRANCH_ON_NO_SUBST",i.TEXT_CMD="TEXT_CMD",i.FILE_READ="FILE_READ",i.FILE_READ_LINE="FILE_READ_LINE",i.FILE_WRITE="FILE_WRITE",i.FILE_WRITE_LINE="FILE_WRITE_LINE",i.EXECUTE="EXECUTE",i.EOF="EOF",i.ERROR="ERROR"})(c||(c={}));var I=class{input;pos=0;line=1;column=1;constructor(e){this.input=e}tokenize(){let e=[];for(;this.pos<this.input.length;){let t=this.nextToken();t&&e.push(t)}return e.push(this.makeToken(c.EOF,"")),e}makeToken(e,t,n){return{type:e,value:t,line:this.line,column:this.column,...n}}peek(e=0){return this.input[this.pos+e]||""}advance(){let e=this.input[this.pos++]||"";return e===`
13
- `?(this.line++,this.column=1):this.column++,e}skipWhitespace(){for(;this.pos<this.input.length;){let e=this.peek();if(e===" "||e===" "||e==="\r")this.advance();else if(e==="#")for(;this.pos<this.input.length&&this.peek()!==`
14
- `;)this.advance();else break}}nextToken(){if(this.skipWhitespace(),this.pos>=this.input.length)return null;let e=this.line,t=this.column,n=this.peek();return n===`
15
- `?(this.advance(),{type:c.NEWLINE,value:`
16
- `,line:e,column:t}):n===";"?(this.advance(),{type:c.SEMICOLON,value:";",line:e,column:t}):n==="{"?(this.advance(),{type:c.LBRACE,value:"{",line:e,column:t}):n==="}"?(this.advance(),{type:c.RBRACE,value:"}",line:e,column:t}):n===","?(this.advance(),{type:c.COMMA,value:",",line:e,column:t}):n==="$"?(this.advance(),{type:c.DOLLAR,value:"$",line:e,column:t}):this.isDigit(n)?this.readNumber():n==="/"?this.readPattern():n===":"?this.readLabelDef():this.readCommand()}readNumber(){let e=this.line,t=this.column,n="";for(;this.isDigit(this.peek());)n+=this.advance();if(this.peek()==="~"){this.advance();let r="";for(;this.isDigit(this.peek());)r+=this.advance();let s=parseInt(n,10),l=parseInt(r,10)||0;return{type:c.STEP,value:`${s}~${l}`,first:s,step:l,line:e,column:t}}return{type:c.NUMBER,value:parseInt(n,10),line:e,column:t}}readPattern(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length&&this.peek()!=="/";)if(this.peek()==="\\")n+=this.advance(),this.pos<this.input.length&&(n+=this.advance());else{if(this.peek()===`
17
- `)break;n+=this.advance()}return this.peek()==="/"&&this.advance(),{type:c.PATTERN,value:n,pattern:n,line:e,column:t}}readLabelDef(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===" "||r===" "||r===`
18
- `||r===";"||r==="}"||r==="{")break;n+=this.advance()}return{type:c.LABEL_DEF,value:n,label:n,line:e,column:t}}readCommand(){let e=this.line,t=this.column,n=this.advance();switch(n){case"s":return this.readSubstitute(e,t);case"y":return this.readTransliterate(e,t);case"a":case"i":case"c":return this.readTextCommand(n,e,t);case"b":return this.readBranch(c.BRANCH,"b",e,t);case"t":return this.readBranch(c.BRANCH_ON_SUBST,"t",e,t);case"T":return this.readBranch(c.BRANCH_ON_NO_SUBST,"T",e,t);case"r":return this.readFileCommand(c.FILE_READ,"r",e,t);case"R":return this.readFileCommand(c.FILE_READ_LINE,"R",e,t);case"w":return this.readFileCommand(c.FILE_WRITE,"w",e,t);case"W":return this.readFileCommand(c.FILE_WRITE_LINE,"W",e,t);case"e":return this.readExecute(e,t);case"p":case"P":case"d":case"D":case"h":case"H":case"g":case"G":case"x":case"n":case"N":case"q":case"Q":case"z":case"=":case"l":case"F":case"v":return{type:c.COMMAND,value:n,line:e,column:t};default:return{type:c.ERROR,value:n,line:e,column:t}}}readSubstitute(e,t){let n=this.advance();if(!n||n===`
19
- `)return{type:c.ERROR,value:"s",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")r+=this.advance(),this.pos<this.input.length&&this.peek()!==`
20
- `&&(r+=this.advance());else{if(this.peek()===`
21
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:c.ERROR,value:"unterminated substitution pattern",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")s+=this.advance(),this.pos<this.input.length&&this.peek()!==`
22
- `&&(s+=this.advance());else{if(this.peek()===`
23
- `)break;s+=this.advance()}this.peek()===n&&this.advance();let l="";for(;this.pos<this.input.length;){let h=this.peek();if(h==="g"||h==="i"||h==="p"||h==="I"||this.isDigit(h))l+=this.advance();else break}return{type:c.SUBSTITUTE,value:`s${n}${r}${n}${s}${n}${l}`,pattern:r,replacement:s,flags:l,line:e,column:t}}readTransliterate(e,t){let n=this.advance();if(!n||n===`
24
- `)return{type:c.ERROR,value:"y",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let l=this.advance();l==="n"?r+=`
25
- `:l==="t"?r+=" ":r+=l}else{if(this.peek()===`
26
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:c.ERROR,value:"unterminated transliteration source",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let l=this.advance();l==="n"?s+=`
27
- `:l==="t"?s+=" ":s+=l}else{if(this.peek()===`
28
- `)break;s+=this.advance()}return this.peek()===n&&this.advance(),{type:c.TRANSLITERATE,value:`y${n}${r}${n}${s}${n}`,source:r,dest:s,line:e,column:t}}readTextCommand(e,t,n){this.peek()==="\\"&&this.advance(),this.peek()===" "&&this.advance();let r="";for(;this.pos<this.input.length&&this.peek()!==`
29
- `;)r+=this.advance();return{type:c.TEXT_CMD,value:e,text:r.trim(),line:t,column:n}}readBranch(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let l=this.peek();if(l===" "||l===" "||l===`
30
- `||l===";"||l==="}"||l==="{")break;s+=this.advance()}return{type:e,value:t,label:s||void 0,line:n,column:r}}readFileCommand(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let l=this.peek();if(l===`
31
- `||l===";")break;s+=this.advance()}return{type:e,value:t,filename:s.trim(),line:n,column:r}}readExecute(e,t){for(;this.peek()===" "||this.peek()===" ";)this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===`
32
- `||r===";")break;n+=this.advance()}return{type:c.EXECUTE,value:"e",command:n.trim()||void 0,line:e,column:t}}isDigit(e){return e>="0"&&e<="9"}};var O=class{scripts;tokens=[];pos=0;extendedRegex=!1;constructor(e,t=!1){this.scripts=e,this.extendedRegex=t}parse(){let e=[];for(let t of this.scripts){let n=new I(t);for(this.tokens=n.tokenize(),this.pos=0;!this.isAtEnd();){if(this.check(c.NEWLINE)||this.check(c.SEMICOLON)){this.advance();continue}let r=this.parseCommand();if(r.error)return{commands:[],error:r.error};r.command&&e.push(r.command)}}return{commands:e}}parseCommand(){let e=this.parseAddressRange();for(;this.check(c.NEWLINE)||this.check(c.SEMICOLON);)this.advance();if(this.isAtEnd())return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null};let t=this.peek();switch(t.type){case c.COMMAND:return this.parseSimpleCommand(t,e);case c.SUBSTITUTE:return this.parseSubstituteFromToken(t,e);case c.TRANSLITERATE:return this.parseTransliterateFromToken(t,e);case c.LABEL_DEF:return this.advance(),{command:{type:"label",name:t.label||""}};case c.BRANCH:return this.advance(),{command:{type:"branch",address:e,label:t.label}};case c.BRANCH_ON_SUBST:return this.advance(),{command:{type:"branchOnSubst",address:e,label:t.label}};case c.BRANCH_ON_NO_SUBST:return this.advance(),{command:{type:"branchOnNoSubst",address:e,label:t.label}};case c.TEXT_CMD:return this.advance(),this.parseTextCommand(t,e);case c.FILE_READ:return this.advance(),{command:{type:"readFile",address:e,filename:t.filename||""}};case c.FILE_READ_LINE:return this.advance(),{command:{type:"readFileLine",address:e,filename:t.filename||""}};case c.FILE_WRITE:return this.advance(),{command:{type:"writeFile",address:e,filename:t.filename||""}};case c.FILE_WRITE_LINE:return this.advance(),{command:{type:"writeFirstLine",address:e,filename:t.filename||""}};case c.EXECUTE:return this.advance(),{command:{type:"execute",address:e,command:t.command}};case c.LBRACE:return this.parseGroup(e);case c.RBRACE:return{command:null};case c.ERROR:return{command:null,error:`invalid command: ${t.value}`};default:return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null}}}parseSimpleCommand(e,t){this.advance();let n=e.value;switch(n){case"p":return{command:{type:"print",address:t}};case"P":return{command:{type:"printFirstLine",address:t}};case"d":return{command:{type:"delete",address:t}};case"D":return{command:{type:"deleteFirstLine",address:t}};case"h":return{command:{type:"hold",address:t}};case"H":return{command:{type:"holdAppend",address:t}};case"g":return{command:{type:"get",address:t}};case"G":return{command:{type:"getAppend",address:t}};case"x":return{command:{type:"exchange",address:t}};case"n":return{command:{type:"next",address:t}};case"N":return{command:{type:"nextAppend",address:t}};case"q":return{command:{type:"quit",address:t}};case"Q":return{command:{type:"quitSilent",address:t}};case"z":return{command:{type:"zap",address:t}};case"=":return{command:{type:"lineNumber",address:t}};case"l":return{command:{type:"list",address:t}};case"F":return{command:{type:"printFilename",address:t}};case"v":return{command:{type:"version",address:t}};default:return{command:null,error:`unknown command: ${n}`}}}parseSubstituteFromToken(e,t){this.advance();let n=e.flags||"",r,s=n.match(/(\d+)/);return s&&(r=parseInt(s[1],10)),{command:{type:"substitute",address:t,pattern:e.pattern||"",replacement:e.replacement||"",global:n.includes("g"),ignoreCase:n.includes("i")||n.includes("I"),printOnMatch:n.includes("p"),nthOccurrence:r,extendedRegex:this.extendedRegex}}}parseTransliterateFromToken(e,t){this.advance();let n=e.source||"",r=e.dest||"";return n.length!==r.length?{command:null,error:"transliteration sets must have same length"}:{command:{type:"transliterate",address:t,source:n,dest:r}}}parseTextCommand(e,t){let n=e.value,r=e.text||"";switch(n){case"a":return{command:{type:"append",address:t,text:r}};case"i":return{command:{type:"insert",address:t,text:r}};case"c":return{command:{type:"change",address:t,text:r}};default:return{command:null,error:`unknown text command: ${n}`}}}parseGroup(e){this.advance();let t=[];for(;!this.isAtEnd()&&!this.check(c.RBRACE);){if(this.check(c.NEWLINE)||this.check(c.SEMICOLON)){this.advance();continue}let n=this.parseCommand();if(n.error)return{command:null,error:n.error};n.command&&t.push(n.command)}return this.check(c.RBRACE)?(this.advance(),{command:{type:"group",address:e,commands:t}}):{command:null,error:"unmatched brace in grouped commands"}}parseAddressRange(){let e=this.parseAddress();if(e===void 0)return;let t;return this.check(c.COMMA)&&(this.advance(),t=this.parseAddress()),{start:e,end:t}}parseAddress(){let e=this.peek();switch(e.type){case c.NUMBER:return this.advance(),e.value;case c.DOLLAR:return this.advance(),"$";case c.PATTERN:return this.advance(),{pattern:e.pattern||e.value};case c.STEP:return this.advance(),{first:e.first||0,step:e.step||0};default:return}}peek(){return this.tokens[this.pos]||{type:c.EOF,value:"",line:0,column:0}}advance(){return this.isAtEnd()||this.pos++,this.tokens[this.pos-1]}check(e){return this.peek().type===e}isAtEnd(){return this.peek().type===c.EOF}};function q(i,e=!1){return new O(i,e).parse()}var Z={name:"sed",summary:"stream editor for filtering and transforming text",usage:"sed [OPTION]... {script} [input-file]...",options:["-n, --quiet, --silent suppress automatic printing of pattern space","-e script add the script to commands to be executed","-f script-file read script from file","-i, --in-place edit files in place","-E, -r, --regexp-extended use extended regular expressions"," --help display this help and exit"],description:`Commands:
33
- s/regexp/replacement/[flags] substitute
34
- d delete pattern space
35
- p print pattern space
36
- a\\ text append text after line
37
- i\\ text insert text before line
38
- c\\ text change (replace) line with text
39
- h copy pattern space to hold space
40
- H append pattern space to hold space
41
- g copy hold space to pattern space
42
- G append hold space to pattern space
43
- x exchange pattern and hold spaces
44
- n read next line into pattern space
45
- N append next line to pattern space
46
- y/source/dest/ transliterate characters
47
- = print line number
48
- l list pattern space (escape special chars)
49
- b [label] branch to label
50
- t [label] branch on substitution
51
- T [label] branch if no substitution
52
- :label define label
53
- q quit
54
- Q quit without printing
55
-
56
- Addresses:
57
- N line number
58
- $ last line
59
- /regexp/ lines matching regexp
60
- N,M range from line N to M
61
- first~step every step-th line starting at first`};async function F(i,e,t,n={}){let{limits:r,filename:s,fs:l,cwd:h}=n,p=i.split(`
62
- `);p.length>0&&p[p.length-1]===""&&p.pop();let f=p.length,o="",a,u="",m=new Map,v=new Map,x=new Map,L=new Map,H=r?{maxIterations:r.maxSedIterations}:void 0;for(let C=0;C<p.length;C++){let d={...U(f,s,m),patternSpace:p[C],holdSpace:u,lineNumber:C+1,totalLines:f,substitutionMade:!1},_={lines:p,currentLineIndex:C},$=0,X=1e4,B=0;do{if($++,$>X)break;d.restartCycle=!1,d.pendingFileReads=[],d.pendingFileWrites=[];let E=A(e,d,_,H);if(B+=E,l&&h){for(let S of d.pendingFileReads){let b=l.resolvePath(h,S.filename);try{if(S.wholeFile){let R=await l.readFile(b);d.appendBuffer.push(R.replace(/\n$/,""))}else{if(!v.has(b)){let z=await l.readFile(b);v.set(b,z.split(`
63
- `)),x.set(b,0)}let R=v.get(b),w=x.get(b);R&&w!==void 0&&w<R.length&&(d.appendBuffer.push(R[w]),x.set(b,w+1))}}catch{}}for(let S of d.pendingFileWrites){let b=l.resolvePath(h,S.filename),R=L.get(b)||"";L.set(b,R+S.content)}}_.currentLineIndex+=E}while(d.restartCycle&&!d.deleted&&!d.quit&&!d.quitSilent);C+=B,u=d.holdSpace;for(let E of d.lineNumberOutput)o+=`${E}
64
- `;let M=[],T=[];for(let E of d.appendBuffer)E.startsWith("__INSERT__")?M.push(E.slice(10)):T.push(E);for(let E of M)o+=`${E}
65
- `;!d.deleted&&!d.quitSilent&&(t?d.printed&&(o+=`${d.patternSpace}
66
- `):o+=`${d.patternSpace}
67
- `);for(let E of T)o+=`${E}
68
- `;if(d.quit||d.quitSilent){d.exitCode!==void 0&&(a=d.exitCode);break}}if(l&&h)for(let[C,d]of L)try{await l.writeFile(C,d)}catch{}return{output:o,exitCode:a}}var oe={name:"sed",async execute(i,e){if(W(i))return D(Z);let t=[],n=[],r=!1,s=!1,l=!1,h=[];for(let a=0;a<i.length;a++){let u=i[a];if(u==="-n"||u==="--quiet"||u==="--silent")r=!0;else if(u==="-i"||u==="--in-place")s=!0;else if(u.startsWith("-i"))s=!0;else if(u==="-E"||u==="-r"||u==="--regexp-extended")l=!0;else if(u==="-e")a+1<i.length&&t.push(i[++a]);else if(u==="-f")a+1<i.length&&n.push(i[++a]);else{if(u.startsWith("--"))return y("sed",u);if(u.startsWith("-")&&u.length>1){for(let m of u.slice(1))if(m!=="n"&&m!=="e"&&m!=="f"&&m!=="i"&&m!=="E"&&m!=="r")return y("sed",`-${m}`);u.includes("n")&&(r=!0),u.includes("i")&&(s=!0),(u.includes("E")||u.includes("r"))&&(l=!0),u.includes("e")&&!u.includes("n")&&!u.includes("i")&&a+1<i.length&&t.push(i[++a]),u.includes("f")&&!u.includes("e")&&a+1<i.length&&n.push(i[++a])}else!u.startsWith("-")&&t.length===0&&n.length===0?t.push(u):u.startsWith("-")||h.push(u)}}for(let a of n){let u=e.fs.resolvePath(e.cwd,a);try{let m=await e.fs.readFile(u);for(let v of m.split(`
69
- `)){let x=v.trim();x&&!x.startsWith("#")&&t.push(x)}}catch{return{stdout:"",stderr:`sed: couldn't open file ${a}: No such file or directory
70
- `,exitCode:1}}}if(t.length===0)return{stdout:"",stderr:`sed: no script specified
71
- `,exitCode:1};let{commands:p,error:f}=q(t,l);if(f)return{stdout:"",stderr:`sed: ${f}
72
- `,exitCode:1};if(p.length===0)return{stdout:"",stderr:`sed: no valid commands
73
- `,exitCode:1};let o="";if(h.length===0){o=e.stdin;try{let a=await F(o,p,r,{limits:e.limits,fs:e.fs,cwd:e.cwd});return{stdout:a.output,stderr:"",exitCode:a.exitCode??0}}catch(a){if(a instanceof g)return{stdout:"",stderr:`sed: ${a.message}
74
- `,exitCode:g.EXIT_CODE};throw a}}if(s){for(let a of h){let u=e.fs.resolvePath(e.cwd,a);try{let m=await e.fs.readFile(u),v=await F(m,p,r,{limits:e.limits,filename:a,fs:e.fs,cwd:e.cwd});await e.fs.writeFile(u,v.output)}catch(m){return m instanceof g?{stdout:"",stderr:`sed: ${m.message}
75
- `,exitCode:g.EXIT_CODE}:{stdout:"",stderr:`sed: ${a}: No such file or directory
76
- `,exitCode:1}}}return{stdout:"",stderr:"",exitCode:0}}for(let a of h){let u=e.fs.resolvePath(e.cwd,a);try{o+=await e.fs.readFile(u)}catch(m){return m instanceof g?{stdout:"",stderr:`sed: ${m.message}
77
- `,exitCode:g.EXIT_CODE}:{stdout:"",stderr:`sed: ${a}: No such file or directory
78
- `,exitCode:1}}}try{let a=await F(o,p,r,{limits:e.limits,filename:h.length===1?h[0]:void 0,fs:e.fs,cwd:e.cwd});return{stdout:a.output,stderr:"",exitCode:a.exitCode??0}}catch(a){if(a instanceof g)return{stdout:"",stderr:`sed: ${a.message}
79
- `,exitCode:g.EXIT_CODE};throw a}}};export{oe as sedCommand};
@@ -1,47 +0,0 @@
1
- import{i as $}from"./chunk-JYYFSUWP.js";import{a as I,b as N,c as S}from"./chunk-74CEPOFO.js";var R=1e4;function W(t){return{patternSpace:"",holdSpace:"",lineNumber:0,totalLines:t,deleted:!1,printed:!1,quit:!1,appendBuffer:[],substitutionMade:!1,lineNumberOutput:[],restartCycle:!1}}function _(t){return typeof t=="object"&&"first"in t&&"step"in t}function M(t,e,i,s){if(t==="$")return e===i;if(typeof t=="number")return e===t;if(_(t)){let{first:n,step:a}=t;return a===0?e===n:(e-n)%a===0&&e>=n}if(typeof t=="object"&&"pattern"in t)try{return new RegExp(t.pattern).test(s)}catch{return!1}return!1}function x(t,e,i,s){if(!t||!t.start&&!t.end)return!0;let n=t.start,a=t.end;if(n!==void 0&&a===void 0)return M(n,e,i,s);if(n!==void 0&&a!==void 0){let r=typeof n=="number"?n:n==="$"?i:1,o=typeof a=="number"?a:i;return typeof n=="object"&&"pattern"in n&&M(n,e,i,s)?!0:e>=r&&e<=o}return!0}function O(t,e,i){let s="",n=0;for(;n<t.length;){if(t[n]==="\\"&&n+1<t.length){let a=t[n+1];if(a==="&"){s+="&",n+=2;continue}if(a==="n"){s+=`
2
- `,n+=2;continue}if(a==="t"){s+=" ",n+=2;continue}let r=parseInt(a,10);if(r>=1&&r<=9){s+=i[r-1]||"",n+=2;continue}s+=a,n+=2;continue}if(t[n]==="&"){s+=e,n++;continue}s+=t[n],n++}return s}function v(t,e){let{lineNumber:i,totalLines:s,patternSpace:n}=e;if(t.type!=="label"&&x(t.address,i,s,n))switch(t.type){case"substitute":{let a=t,r="";a.global&&(r+="g"),a.ignoreCase&&(r+="i");try{let o=new RegExp(a.pattern,r),u=e.patternSpace;if(a.nthOccurrence&&a.nthOccurrence>0&&!a.global){let l=0,p=a.nthOccurrence;e.patternSpace=e.patternSpace.replace(new RegExp(a.pattern,`g${a.ignoreCase?"i":""}`),(d,...c)=>{if(l++,l===p){let h=c.slice(0,-2);return O(a.replacement,d,h)}return d})}else e.patternSpace=e.patternSpace.replace(o,(l,...p)=>{let d=p.slice(0,-2);return O(a.replacement,l,d)});u!==e.patternSpace&&(e.substitutionMade=!0,a.printOnMatch&&(e.printed=!0))}catch{}break}case"print":e.printed=!0;break;case"printFirstLine":{let a=e.patternSpace.indexOf(`
3
- `);a!==-1?e.lineNumberOutput.push(e.patternSpace.slice(0,a)):e.lineNumberOutput.push(e.patternSpace);break}case"delete":e.deleted=!0;break;case"deleteFirstLine":{let a=e.patternSpace.indexOf(`
4
- `);a!==-1?(e.patternSpace=e.patternSpace.slice(a+1),e.restartCycle=!0):e.deleted=!0;break}case"zap":e.patternSpace="";break;case"append":e.appendBuffer.push(t.text);break;case"insert":e.appendBuffer.unshift(`__INSERT__${t.text}`);break;case"change":e.patternSpace=t.text,e.deleted=!0,e.appendBuffer.push(t.text);break;case"hold":e.holdSpace=e.patternSpace;break;case"holdAppend":e.holdSpace?e.holdSpace+=`
5
- ${e.patternSpace}`:e.holdSpace=e.patternSpace;break;case"get":e.patternSpace=e.holdSpace;break;case"getAppend":e.patternSpace+=`
6
- ${e.holdSpace}`;break;case"exchange":{let a=e.patternSpace;e.patternSpace=e.holdSpace,e.holdSpace=a;break}case"next":e.printed=!0;break;case"quit":e.quit=!0;break;case"transliterate":e.patternSpace=P(e.patternSpace,t);break;case"lineNumber":e.lineNumberOutput.push(String(e.lineNumber));break;case"branch":break;case"branchOnSubst":break;case"branchOnNoSubst":break;case"group":break}}function P(t,e){let i="";for(let s of t){let n=e.source.indexOf(s);n!==-1?i+=e.dest[n]:i+=s}return i}function y(t,e,i,s){let n=new Map;for(let f=0;f<t.length;f++){let l=t[f];l.type==="label"&&n.set(l.name,f)}let a=s?.maxIterations??R,r=0,o=0,u=0;for(;u<t.length;){if(r++,r>a)throw new $(`sed: command execution exceeded maximum iterations (${a})`,"iterations");if(e.deleted||e.quit||e.restartCycle)break;let f=t[u];if(f.type==="nextAppend"){if(x(f.address,e.lineNumber,e.totalLines,e.patternSpace))if(i&&i.currentLineIndex+o+1<i.lines.length){o++;let l=i.lines[i.currentLineIndex+o];e.patternSpace+=`
7
- ${l}`,e.lineNumber=i.currentLineIndex+o+1}else{e.quit=!0,e.deleted=!0;break}u++;continue}if(f.type==="branch"){let l=f;if(x(l.address,e.lineNumber,e.totalLines,e.patternSpace)){if(l.label){let p=n.get(l.label);if(p!==void 0){u=p;continue}}break}u++;continue}if(f.type==="branchOnSubst"){let l=f;if(x(l.address,e.lineNumber,e.totalLines,e.patternSpace)&&e.substitutionMade){if(e.substitutionMade=!1,l.label){let p=n.get(l.label);if(p!==void 0){u=p;continue}}break}u++;continue}if(f.type==="branchOnNoSubst"){let l=f;if(x(l.address,e.lineNumber,e.totalLines,e.patternSpace)&&!e.substitutionMade){if(l.label){let p=n.get(l.label);if(p!==void 0){u=p;continue}}break}u++;continue}if(f.type==="group"){let l=f;x(l.address,e.lineNumber,e.totalLines,e.patternSpace)&&y(l.commands,e,i,s),u++;continue}v(f,e),u++}return o}var A={r:"r (read file) - file operations not supported",R:"R (read line from file) - file operations not supported",w:"w (write to file) - file operations not supported",W:"W (write first line to file) - file operations not supported",e:"e (execute shell command) - shell execution not supported",l:"l (list/escape special chars) - not implemented",F:"F (print filename) - not implemented",Q:"Q (quit without printing) - use 'q' instead",v:"v (version check) - not implemented"};function C(t){if(t==="$")return"$";let e=t.match(/^(\d+)~(\d+)$/);if(e)return{first:parseInt(e[1],10),step:parseInt(e[2],10)};let i=parseInt(t,10);if(!Number.isNaN(i))return i;if(t.startsWith("/")&&t.endsWith("/"))return{pattern:t.slice(1,-1)}}function T(t){let e=t,i,s,n=e.match(/^(\d+)~(\d+)/);if(n)return i={first:parseInt(n[1],10),step:parseInt(n[2],10)},e=e.slice(n[0].length),{range:{start:i,end:void 0},rest:e};if(e.startsWith("$")){if(i="$",e=e.slice(1),e.startsWith(",")){e=e.slice(1);let r=e.match(/^(\d+|\$)/);r&&(s=C(r[1]),e=e.slice(r[0].length))}return{range:{start:i,end:s},rest:e}}let a=e.match(/^(\d+)/);if(a){if(i=parseInt(a[1],10),e=e.slice(a[0].length),e.startsWith(",")){e=e.slice(1);let r=e.match(/^(\d+|\$)/);r&&(s=C(r[1]),e=e.slice(r[0].length))}return{range:{start:i,end:s},rest:e}}if(e.startsWith("/")){let r=1;for(;r<e.length&&e[r]!=="/";)e[r]==="\\"&&r+1<e.length?r+=2:r++;if(r<e.length){if(i={pattern:e.slice(1,r)},e=e.slice(r+1),e.startsWith(","))if(e=e.slice(1),e.startsWith("/")){let o=1;for(;o<e.length&&e[o]!=="/";)e[o]==="\\"&&o+1<e.length?o+=2:o++;o<e.length&&(s={pattern:e.slice(1,o)},e=e.slice(o+1))}else{let o=e.match(/^(\d+|\$)/);o&&(s=C(o[1]),e=e.slice(o[0].length))}return{range:{start:i,end:s},rest:e}}}return{rest:e}}function q(t){let e=t.trim();if(!e)return{command:null};let{range:i,rest:s}=T(e),n=s.trim();if(!n&&i)return{command:{type:"print",address:i}};let a=n[0];switch(a){case"p":return{command:{type:"print",address:i}};case"d":return{command:{type:"delete",address:i}};case"h":return{command:{type:"hold",address:i}};case"H":return{command:{type:"holdAppend",address:i}};case"g":if(n.length===1||/^\s/.test(n[1]))return{command:{type:"get",address:i}};break;case"G":return{command:{type:"getAppend",address:i}};case"x":return{command:{type:"exchange",address:i}};case"n":return{command:{type:"next",address:i}};case"N":return{command:{type:"nextAppend",address:i}};case"P":return{command:{type:"printFirstLine",address:i}};case"D":return{command:{type:"deleteFirstLine",address:i}};case"q":return{command:{type:"quit",address:i}};case"z":return{command:{type:"zap",address:i}};case"=":return{command:{type:"lineNumber",address:i}};case"y":return D(n,i);case"b":{let r=n.slice(1).trim();return{command:{type:"branch",address:i,label:r||void 0}}}case"t":{let r=n.slice(1).trim();return{command:{type:"branchOnSubst",address:i,label:r||void 0}}}case"T":{let r=n.slice(1).trim();return{command:{type:"branchOnNoSubst",address:i,label:r||void 0}}}case"{":return B(n,i);case":":{let r=n.slice(1).trim();return r?{command:{type:"label",name:r}}:{command:null,error:"missing label name"}}case"a":if(n[1]==="\\"||n[1]===" "){let r=n.slice(2).replace(/^[\s]*/,"");return{command:{type:"append",address:i,text:r}}}break;case"i":if(n[1]==="\\"||n[1]===" "){let r=n.slice(2).replace(/^[\s]*/,"");return{command:{type:"insert",address:i,text:r}}}break;case"c":if(n[1]==="\\"||n[1]===" "){let r=n.slice(2).replace(/^[\s]*/,"");return{command:{type:"change",address:i,text:r}}}break;case"s":return L(n,i)}return n.startsWith("s")?L(n,i):a&&A[a]?{command:null,error:`unsupported command: ${A[a]}`}:{command:null,error:`invalid command: ${t}`}}function D(t,e){if(!t.startsWith("y")||t.length<4)return{command:null,error:"invalid transliteration"};let i=t[1],s=2,n="",a="";for(;s<t.length&&t[s]!==i;)if(t[s]==="\\"&&s+1<t.length){let r=t[s+1];r==="n"?n+=`
8
- `:r==="t"?n+=" ":n+=r,s+=2}else n+=t[s],s++;if(s>=t.length)return{command:null,error:"unterminated transliteration source"};for(s++;s<t.length&&t[s]!==i;)if(t[s]==="\\"&&s+1<t.length){let r=t[s+1];r==="n"?a+=`
9
- `:r==="t"?a+=" ":a+=r,s+=2}else a+=t[s],s++;return n.length!==a.length?{command:null,error:"transliteration sets must have same length"}:{command:{type:"transliterate",address:e,source:n,dest:a}}}function L(t,e){if(!t.startsWith("s")||t.length<4)return{command:null,error:"invalid substitution"};let i=t[1],s="",n="",a="",r=2;for(;r<t.length&&t[r]!==i;)t[r]==="\\"&&r+1<t.length?(s+=t[r]+t[r+1],r+=2):(s+=t[r],r++);if(r>=t.length)return{command:null,error:"unterminated substitution pattern"};for(r++;r<t.length&&t[r]!==i;)t[r]==="\\"&&r+1<t.length?(n+=t[r]+t[r+1],r+=2):(n+=t[r],r++);r<t.length&&(r++,a=t.slice(r));let o,u=a.match(/(\d+)/);return u&&(o=parseInt(u[1],10)),{command:{type:"substitute",address:e,pattern:s,replacement:n,global:a.includes("g"),ignoreCase:a.includes("i"),printOnMatch:a.includes("p"),nthOccurrence:o}}}function B(t,e){let i=1,s=1,n=!1,a="",r=0;for(;s<t.length&&i>0;){let l=t[s];if(l==="\\"&&s+1<t.length){s+=2;continue}if(!n&&l==="s"&&s+1<t.length&&/[^a-zA-Z0-9]/.test(t[s+1])){n=!0,a=t[s+1],r=0,s++;continue}if(n&&l===a){r++,r>=3&&(n=!1),s++;continue}n||(l==="{"?i++:l==="}"&&i--),s++}if(i!==0)return{command:null,error:"unmatched brace in grouped commands"};let o=t.slice(1,s-1).trim(),u=F(o),f=[];for(let l of u){let p=q(l);if(p.error)return{command:null,error:p.error};p.command&&f.push(p.command)}return{command:{type:"group",address:e,commands:f}}}function E(t,e=!1){let i=[];for(let s of t){let n=F(s);for(let a of n){let r=q(a);if(r.error)return{commands:[],error:r.error};r.command&&(r.command.type==="substitute"&&e&&(r.command.extendedRegex=!0),i.push(r.command))}}return{commands:i}}function F(t){let e=[],i="",s=!1,n="",a=0,r=0,o=0;for(;o<t.length;){let u=t[o];if(u==="\\"&&o+1<t.length){i+=u+t[o+1],o+=2;continue}if(!s){if(u==="{"){r++,i+=u,o++;continue}if(u==="}"){r--,i+=u,o++;continue}}if(!s&&u==="s"&&o+1<t.length&&/[^a-zA-Z0-9]/.test(t[o+1])){n=t[o+1],a=0,s=!0,i+=u,o++;continue}if(s&&u===n){a++,i+=u,a>=3&&(s=!1),o++;continue}if(!s&&r===0&&u===";"){i.trim()&&e.push(i.trim()),i="",o++;continue}i+=u,o++}return i.trim()&&e.push(i.trim()),e}var z={name:"sed",summary:"stream editor for filtering and transforming text",usage:"sed [OPTION]... {script} [input-file]...",options:["-n, --quiet, --silent suppress automatic printing of pattern space","-e script add the script to commands to be executed","-f script-file read script from file","-i, --in-place edit files in place","-E, -r, --regexp-extended use extended regular expressions"," --help display this help and exit"],description:`Commands:
10
- s/regexp/replacement/[flags] substitute
11
- d delete pattern space
12
- p print pattern space
13
- a\\ text append text after line
14
- i\\ text insert text before line
15
- c\\ text change (replace) line with text
16
- h copy pattern space to hold space
17
- H append pattern space to hold space
18
- g copy hold space to pattern space
19
- G append hold space to pattern space
20
- x exchange pattern and hold spaces
21
- n read next line into pattern space
22
- N append next line to pattern space
23
- y/source/dest/ transliterate characters
24
- = print line number
25
- b [label] branch to label
26
- t [label] branch on substitution
27
- :label define label
28
- q quit
29
-
30
- Addresses:
31
- N line number
32
- $ last line
33
- /regexp/ lines matching regexp
34
- N,M range from line N to M`};function w(t,e,i,s){let n=t.split(`
35
- `);n.length>0&&n[n.length-1]===""&&n.pop();let a=n.length,r="",o="",u=!1,f=s?{maxIterations:s.maxSedIterations}:void 0;for(let l=0;l<n.length;l++){let p={...W(a),patternSpace:n[l],holdSpace:o,lineNumber:l+1,totalLines:a,substitutionMade:!1},d={lines:n,currentLineIndex:l},c=0,h=1e4,b=0;do{if(c++,c>h)break;p.restartCycle=!1;let m=y(e,p,d,f);b+=m,d.currentLineIndex+=m}while(p.restartCycle&&!p.deleted&&!p.quit);l+=b,o=p.holdSpace,u=p.substitutionMade;for(let m of p.lineNumberOutput)r+=`${m}
36
- `;let g=[],k=[];for(let m of p.appendBuffer)m.startsWith("__INSERT__")?g.push(m.slice(10)):k.push(m);for(let m of g)r+=`${m}
37
- `;p.deleted||(i?p.printed&&(r+=`${p.patternSpace}
38
- `):r+=`${p.patternSpace}
39
- `);for(let m of k)r+=`${m}
40
- `;if(p.quit)break}return r}var X={name:"sed",async execute(t,e){if(N(t))return I(z);let i=[],s=[],n=!1,a=!1,r=!1,o=[];for(let d=0;d<t.length;d++){let c=t[d];if(c==="-n"||c==="--quiet"||c==="--silent")n=!0;else if(c==="-i"||c==="--in-place")a=!0;else if(c.startsWith("-i"))a=!0;else if(c==="-E"||c==="-r"||c==="--regexp-extended")r=!0;else if(c==="-e")d+1<t.length&&i.push(t[++d]);else if(c==="-f")d+1<t.length&&s.push(t[++d]);else{if(c.startsWith("--"))return S("sed",c);if(c.startsWith("-")&&c.length>1){for(let h of c.slice(1))if(h!=="n"&&h!=="e"&&h!=="f"&&h!=="i"&&h!=="E"&&h!=="r")return S("sed",`-${h}`);c.includes("n")&&(n=!0),c.includes("i")&&(a=!0),(c.includes("E")||c.includes("r"))&&(r=!0),c.includes("e")&&!c.includes("n")&&!c.includes("i")&&d+1<t.length&&i.push(t[++d]),c.includes("f")&&!c.includes("e")&&d+1<t.length&&s.push(t[++d])}else!c.startsWith("-")&&i.length===0&&s.length===0?i.push(c):c.startsWith("-")||o.push(c)}}for(let d of s){let c=e.fs.resolvePath(e.cwd,d);try{let h=await e.fs.readFile(c);for(let b of h.split(`
41
- `)){let g=b.trim();g&&!g.startsWith("#")&&i.push(g)}}catch{return{stdout:"",stderr:`sed: couldn't open file ${d}: No such file or directory
42
- `,exitCode:1}}}if(i.length===0)return{stdout:"",stderr:`sed: no script specified
43
- `,exitCode:1};let{commands:u,error:f}=E(i,r);if(f)return{stdout:"",stderr:`sed: ${f}
44
- `,exitCode:1};if(u.length===0)return{stdout:"",stderr:`sed: no valid commands
45
- `,exitCode:1};let l="";if(o.length===0)return l=e.stdin,{stdout:w(l,u,n,e.limits),stderr:"",exitCode:0};if(a){for(let d of o){let c=e.fs.resolvePath(e.cwd,d);try{let h=await e.fs.readFile(c),b=w(h,u,n,e.limits);await e.fs.writeFile(c,b)}catch{return{stdout:"",stderr:`sed: ${d}: No such file or directory
46
- `,exitCode:1}}}return{stdout:"",stderr:"",exitCode:0}}for(let d of o){let c=e.fs.resolvePath(e.cwd,d);try{l+=await e.fs.readFile(c)}catch{return{stdout:"",stderr:`sed: ${d}: No such file or directory
47
- `,exitCode:1}}}return{stdout:w(l,u,n,e.limits),stderr:"",exitCode:0}}};export{X as sedCommand};
@@ -1,75 +0,0 @@
1
- import{i as W}from"./chunk-JYYFSUWP.js";import{a as T,b as D,c as I}from"./chunk-74CEPOFO.js";var G=1e4;function U(i,e,t){return{patternSpace:"",holdSpace:"",lineNumber:0,totalLines:i,deleted:!1,printed:!1,quit:!1,quitSilent:!1,exitCode:void 0,appendBuffer:[],substitutionMade:!1,lineNumberOutput:[],restartCycle:!1,currentFilename:e,pendingFileReads:[],pendingFileWrites:[],pendingExecute:void 0,rangeStates:t||new Map}}function j(i){return typeof i=="object"&&"first"in i&&"step"in i}function N(i,e,t,n){if(i==="$")return e===t;if(typeof i=="number")return e===i;if(j(i)){let{first:r,step:s}=i;return s===0?e===r:(e-r)%s===0&&e>=r}if(typeof i=="object"&&"pattern"in i)try{return new RegExp(i.pattern).test(n)}catch{return!1}return!1}function Q(i){let e=t=>t===void 0?"undefined":t==="$"?"$":typeof t=="number"?String(t):"pattern"in t?`/${t.pattern}/`:"first"in t?`${t.first}~${t.step}`:"unknown";return`${e(i.start)},${e(i.end)}`}function k(i,e,t,n,r){if(!i||!i.start&&!i.end)return!0;let s=i.start,c=i.end;if(s!==void 0&&c===void 0)return N(s,e,t,n);if(s!==void 0&&c!==void 0){let d=typeof s=="object"&&"pattern"in s,h=typeof c=="object"&&"pattern"in c;if(!d&&!h){let l=typeof s=="number"?s:s==="$"?t:1,u=typeof c=="number"?c:t;return e>=l&&e<=u}if(r){let l=Q(i),u=r.get(l);return u||(u={active:!1},r.set(l,u)),u.active?(N(c,e,t,n)&&(u.active=!1,r.set(l,u)),!0):N(s,e,t,n)?(u.active=!0,u.startLine=e,r.set(l,u),N(c,e,t,n)&&(u.active=!1,r.set(l,u)),!0):!1}return N(s,e,t,n)}return!0}function K(i){let e="",t=0;for(;t<i.length;){if(i[t]==="\\"&&t+1<i.length){let n=i[t+1];if(n==="+"||n==="?"||n==="|"){e+=n,t+=2;continue}if(n==="("||n===")"){e+=n,t+=2;continue}if(n==="{"||n==="}"){e+=n,t+=2;continue}e+=i[t]+n,t+=2;continue}if(i[t]==="+"||i[t]==="?"||i[t]==="|"||i[t]==="("||i[t]===")"){e+=`\\${i[t]}`,t++;continue}e+=i[t],t++}return e}function J(i){let e="";for(let t=0;t<i.length;t++){let n=i[t],r=n.charCodeAt(0);n==="\\"?e+="\\\\":n===" "?e+="\\t":n===`
2
- `?e+=`$
3
- `:n==="\r"?e+="\\r":n==="\x07"?e+="\\a":n==="\b"?e+="\\b":n==="\f"?e+="\\f":n==="\v"?e+="\\v":r<32||r>=127?e+=`\\${r.toString(8).padStart(3,"0")}`:e+=n}return`${e}$`}function P(i,e,t){let n="",r=0;for(;r<i.length;){if(i[r]==="\\"&&r+1<i.length){let s=i[r+1];if(s==="&"){n+="&",r+=2;continue}if(s==="n"){n+=`
4
- `,r+=2;continue}if(s==="t"){n+=" ",r+=2;continue}let c=parseInt(s,10);if(c>=1&&c<=9){n+=t[c-1]||"",r+=2;continue}n+=s,r+=2;continue}if(i[r]==="&"){n+=e,r++;continue}n+=i[r],r++}return n}function V(i,e){let{lineNumber:t,totalLines:n,patternSpace:r}=e;if(i.type!=="label"&&k(i.address,t,n,r,e.rangeStates))switch(i.type){case"substitute":{let s=i,c="";s.global&&(c+="g"),s.ignoreCase&&(c+="i");let d=s.extendedRegex?s.pattern:K(s.pattern);try{let h=new RegExp(d,c),m=h.test(e.patternSpace);if(h.lastIndex=0,m){if(e.substitutionMade=!0,s.nthOccurrence&&s.nthOccurrence>0&&!s.global){let l=0,u=s.nthOccurrence;e.patternSpace=e.patternSpace.replace(new RegExp(d,`g${s.ignoreCase?"i":""}`),(p,...o)=>{if(l++,l===u){let b=o.slice(0,-2);return P(s.replacement,p,b)}return p})}else e.patternSpace=e.patternSpace.replace(h,(l,...u)=>{let p=u.slice(0,-2);return P(s.replacement,l,p)});s.printOnMatch&&(e.printed=!0)}}catch{}break}case"print":e.printed=!0;break;case"printFirstLine":{let s=e.patternSpace.indexOf(`
5
- `);s!==-1?e.lineNumberOutput.push(e.patternSpace.slice(0,s)):e.lineNumberOutput.push(e.patternSpace);break}case"delete":e.deleted=!0;break;case"deleteFirstLine":{let s=e.patternSpace.indexOf(`
6
- `);s!==-1?(e.patternSpace=e.patternSpace.slice(s+1),e.restartCycle=!0):e.deleted=!0;break}case"zap":e.patternSpace="";break;case"append":e.appendBuffer.push(i.text);break;case"insert":e.appendBuffer.unshift(`__INSERT__${i.text}`);break;case"change":e.patternSpace=i.text,e.deleted=!0,e.appendBuffer.push(i.text);break;case"hold":e.holdSpace=e.patternSpace;break;case"holdAppend":e.holdSpace?e.holdSpace+=`
7
- ${e.patternSpace}`:e.holdSpace=e.patternSpace;break;case"get":e.patternSpace=e.holdSpace;break;case"getAppend":e.patternSpace+=`
8
- ${e.holdSpace}`;break;case"exchange":{let s=e.patternSpace;e.patternSpace=e.holdSpace,e.holdSpace=s;break}case"next":e.printed=!0;break;case"quit":e.quit=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"quitSilent":e.quit=!0,e.quitSilent=!0,i.exitCode!==void 0&&(e.exitCode=i.exitCode);break;case"list":{let s=J(e.patternSpace);e.lineNumberOutput.push(s);break}case"printFilename":e.currentFilename&&e.lineNumberOutput.push(e.currentFilename);break;case"version":break;case"readFile":e.pendingFileReads.push({filename:i.filename,wholeFile:!0});break;case"readFileLine":e.pendingFileReads.push({filename:i.filename,wholeFile:!1});break;case"writeFile":e.pendingFileWrites.push({filename:i.filename,content:`${e.patternSpace}
9
- `});break;case"writeFirstLine":{let s=e.patternSpace.indexOf(`
10
- `),c=s!==-1?e.patternSpace.slice(0,s):e.patternSpace;e.pendingFileWrites.push({filename:i.filename,content:`${c}
11
- `});break}case"execute":i.command?e.pendingExecute={command:i.command,replacePattern:!1}:e.pendingExecute={command:e.patternSpace,replacePattern:!0};break;case"transliterate":e.patternSpace=Y(e.patternSpace,i);break;case"lineNumber":e.lineNumberOutput.push(String(e.lineNumber));break;case"branch":break;case"branchOnSubst":break;case"branchOnNoSubst":break;case"group":break}}function Y(i,e){let t="";for(let n of i){let r=e.source.indexOf(n);r!==-1?t+=e.dest[r]:t+=n}return t}function y(i,e,t,n){let r=new Map;for(let m=0;m<i.length;m++){let l=i[m];l.type==="label"&&r.set(l.name,m)}let s=n?.maxIterations??G,c=0,d=0,h=0;for(;h<i.length;){if(c++,c>s)throw new W(`sed: command execution exceeded maximum iterations (${s})`,"iterations");if(e.deleted||e.quit||e.quitSilent||e.restartCycle)break;let m=i[h];if(m.type==="nextAppend"){if(k(m.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates))if(t&&t.currentLineIndex+d+1<t.lines.length){d++;let l=t.lines[t.currentLineIndex+d];e.patternSpace+=`
12
- ${l}`,e.lineNumber=t.currentLineIndex+d+1}else{e.quit=!0,e.deleted=!0;break}h++;continue}if(m.type==="branch"){let l=m;if(k(l.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)){if(l.label){let u=r.get(l.label);if(u!==void 0){h=u;continue}}break}h++;continue}if(m.type==="branchOnSubst"){let l=m;if(k(l.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&e.substitutionMade){if(e.substitutionMade=!1,l.label){let u=r.get(l.label);if(u!==void 0){h=u;continue}}break}h++;continue}if(m.type==="branchOnNoSubst"){let l=m;if(k(l.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&!e.substitutionMade){if(l.label){let u=r.get(l.label);if(u!==void 0){h=u;continue}}break}h++;continue}if(m.type==="group"){let l=m;k(l.address,e.lineNumber,e.totalLines,e.patternSpace,e.rangeStates)&&y(l.commands,e,t,n),h++;continue}V(m,e),h++}return d}var a;(function(i){i.NUMBER="NUMBER",i.DOLLAR="DOLLAR",i.PATTERN="PATTERN",i.STEP="STEP",i.LBRACE="LBRACE",i.RBRACE="RBRACE",i.SEMICOLON="SEMICOLON",i.NEWLINE="NEWLINE",i.COMMA="COMMA",i.COMMAND="COMMAND",i.SUBSTITUTE="SUBSTITUTE",i.TRANSLITERATE="TRANSLITERATE",i.LABEL_DEF="LABEL_DEF",i.BRANCH="BRANCH",i.BRANCH_ON_SUBST="BRANCH_ON_SUBST",i.BRANCH_ON_NO_SUBST="BRANCH_ON_NO_SUBST",i.TEXT_CMD="TEXT_CMD",i.FILE_READ="FILE_READ",i.FILE_READ_LINE="FILE_READ_LINE",i.FILE_WRITE="FILE_WRITE",i.FILE_WRITE_LINE="FILE_WRITE_LINE",i.EXECUTE="EXECUTE",i.EOF="EOF",i.ERROR="ERROR"})(a||(a={}));var L=class{input;pos=0;line=1;column=1;constructor(e){this.input=e}tokenize(){let e=[];for(;this.pos<this.input.length;){let t=this.nextToken();t&&e.push(t)}return e.push(this.makeToken(a.EOF,"")),e}makeToken(e,t,n){return{type:e,value:t,line:this.line,column:this.column,...n}}peek(e=0){return this.input[this.pos+e]||""}advance(){let e=this.input[this.pos++]||"";return e===`
13
- `?(this.line++,this.column=1):this.column++,e}skipWhitespace(){for(;this.pos<this.input.length;){let e=this.peek();if(e===" "||e===" "||e==="\r")this.advance();else if(e==="#")for(;this.pos<this.input.length&&this.peek()!==`
14
- `;)this.advance();else break}}nextToken(){if(this.skipWhitespace(),this.pos>=this.input.length)return null;let e=this.line,t=this.column,n=this.peek();return n===`
15
- `?(this.advance(),{type:a.NEWLINE,value:`
16
- `,line:e,column:t}):n===";"?(this.advance(),{type:a.SEMICOLON,value:";",line:e,column:t}):n==="{"?(this.advance(),{type:a.LBRACE,value:"{",line:e,column:t}):n==="}"?(this.advance(),{type:a.RBRACE,value:"}",line:e,column:t}):n===","?(this.advance(),{type:a.COMMA,value:",",line:e,column:t}):n==="$"?(this.advance(),{type:a.DOLLAR,value:"$",line:e,column:t}):this.isDigit(n)?this.readNumber():n==="/"?this.readPattern():n===":"?this.readLabelDef():this.readCommand()}readNumber(){let e=this.line,t=this.column,n="";for(;this.isDigit(this.peek());)n+=this.advance();if(this.peek()==="~"){this.advance();let r="";for(;this.isDigit(this.peek());)r+=this.advance();let s=parseInt(n,10),c=parseInt(r,10)||0;return{type:a.STEP,value:`${s}~${c}`,first:s,step:c,line:e,column:t}}return{type:a.NUMBER,value:parseInt(n,10),line:e,column:t}}readPattern(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length&&this.peek()!=="/";)if(this.peek()==="\\")n+=this.advance(),this.pos<this.input.length&&(n+=this.advance());else{if(this.peek()===`
17
- `)break;n+=this.advance()}return this.peek()==="/"&&this.advance(),{type:a.PATTERN,value:n,pattern:n,line:e,column:t}}readLabelDef(){let e=this.line,t=this.column;this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===" "||r===" "||r===`
18
- `||r===";"||r==="}"||r==="{")break;n+=this.advance()}return{type:a.LABEL_DEF,value:n,label:n,line:e,column:t}}readCommand(){let e=this.line,t=this.column,n=this.advance();switch(n){case"s":return this.readSubstitute(e,t);case"y":return this.readTransliterate(e,t);case"a":case"i":case"c":return this.readTextCommand(n,e,t);case"b":return this.readBranch(a.BRANCH,"b",e,t);case"t":return this.readBranch(a.BRANCH_ON_SUBST,"t",e,t);case"T":return this.readBranch(a.BRANCH_ON_NO_SUBST,"T",e,t);case"r":return this.readFileCommand(a.FILE_READ,"r",e,t);case"R":return this.readFileCommand(a.FILE_READ_LINE,"R",e,t);case"w":return this.readFileCommand(a.FILE_WRITE,"w",e,t);case"W":return this.readFileCommand(a.FILE_WRITE_LINE,"W",e,t);case"e":return this.readExecute(e,t);case"p":case"P":case"d":case"D":case"h":case"H":case"g":case"G":case"x":case"n":case"N":case"q":case"Q":case"z":case"=":case"l":case"F":case"v":return{type:a.COMMAND,value:n,line:e,column:t};default:return{type:a.ERROR,value:n,line:e,column:t}}}readSubstitute(e,t){let n=this.advance();if(!n||n===`
19
- `)return{type:a.ERROR,value:"s",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")r+=this.advance(),this.pos<this.input.length&&this.peek()!==`
20
- `&&(r+=this.advance());else{if(this.peek()===`
21
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:a.ERROR,value:"unterminated substitution pattern",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\")s+=this.advance(),this.pos<this.input.length&&this.peek()!==`
22
- `&&(s+=this.advance());else{if(this.peek()===`
23
- `)break;s+=this.advance()}this.peek()===n&&this.advance();let c="";for(;this.pos<this.input.length;){let d=this.peek();if(d==="g"||d==="i"||d==="p"||d==="I"||this.isDigit(d))c+=this.advance();else break}return{type:a.SUBSTITUTE,value:`s${n}${r}${n}${s}${n}${c}`,pattern:r,replacement:s,flags:c,line:e,column:t}}readTransliterate(e,t){let n=this.advance();if(!n||n===`
24
- `)return{type:a.ERROR,value:"y",line:e,column:t};let r="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let c=this.advance();c==="n"?r+=`
25
- `:c==="t"?r+=" ":r+=c}else{if(this.peek()===`
26
- `)break;r+=this.advance()}if(this.peek()!==n)return{type:a.ERROR,value:"unterminated transliteration source",line:e,column:t};this.advance();let s="";for(;this.pos<this.input.length&&this.peek()!==n;)if(this.peek()==="\\"){this.advance();let c=this.advance();c==="n"?s+=`
27
- `:c==="t"?s+=" ":s+=c}else{if(this.peek()===`
28
- `)break;s+=this.advance()}return this.peek()===n&&this.advance(),{type:a.TRANSLITERATE,value:`y${n}${r}${n}${s}${n}`,source:r,dest:s,line:e,column:t}}readTextCommand(e,t,n){this.peek()==="\\"&&this.advance(),this.peek()===" "&&this.advance();let r="";for(;this.pos<this.input.length&&this.peek()!==`
29
- `;)r+=this.advance();return{type:a.TEXT_CMD,value:e,text:r.trim(),line:t,column:n}}readBranch(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let c=this.peek();if(c===" "||c===" "||c===`
30
- `||c===";"||c==="}"||c==="{")break;s+=this.advance()}return{type:e,value:t,label:s||void 0,line:n,column:r}}readFileCommand(e,t,n,r){for(;this.peek()===" "||this.peek()===" ";)this.advance();let s="";for(;this.pos<this.input.length;){let c=this.peek();if(c===`
31
- `||c===";")break;s+=this.advance()}return{type:e,value:t,filename:s.trim(),line:n,column:r}}readExecute(e,t){for(;this.peek()===" "||this.peek()===" ";)this.advance();let n="";for(;this.pos<this.input.length;){let r=this.peek();if(r===`
32
- `||r===";")break;n+=this.advance()}return{type:a.EXECUTE,value:"e",command:n.trim()||void 0,line:e,column:t}}isDigit(e){return e>="0"&&e<="9"}};var A=class{scripts;tokens=[];pos=0;extendedRegex=!1;constructor(e,t=!1){this.scripts=e,this.extendedRegex=t}parse(){let e=[];for(let t of this.scripts){let n=new L(t);for(this.tokens=n.tokenize(),this.pos=0;!this.isAtEnd();){if(this.check(a.NEWLINE)||this.check(a.SEMICOLON)){this.advance();continue}let r=this.parseCommand();if(r.error)return{commands:[],error:r.error};r.command&&e.push(r.command)}}return{commands:e}}parseCommand(){let e=this.parseAddressRange();for(;this.check(a.NEWLINE)||this.check(a.SEMICOLON);)this.advance();if(this.isAtEnd())return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null};let t=this.peek();switch(t.type){case a.COMMAND:return this.parseSimpleCommand(t,e);case a.SUBSTITUTE:return this.parseSubstituteFromToken(t,e);case a.TRANSLITERATE:return this.parseTransliterateFromToken(t,e);case a.LABEL_DEF:return this.advance(),{command:{type:"label",name:t.label||""}};case a.BRANCH:return this.advance(),{command:{type:"branch",address:e,label:t.label}};case a.BRANCH_ON_SUBST:return this.advance(),{command:{type:"branchOnSubst",address:e,label:t.label}};case a.BRANCH_ON_NO_SUBST:return this.advance(),{command:{type:"branchOnNoSubst",address:e,label:t.label}};case a.TEXT_CMD:return this.advance(),this.parseTextCommand(t,e);case a.FILE_READ:return this.advance(),{command:{type:"readFile",address:e,filename:t.filename||""}};case a.FILE_READ_LINE:return this.advance(),{command:{type:"readFileLine",address:e,filename:t.filename||""}};case a.FILE_WRITE:return this.advance(),{command:{type:"writeFile",address:e,filename:t.filename||""}};case a.FILE_WRITE_LINE:return this.advance(),{command:{type:"writeFirstLine",address:e,filename:t.filename||""}};case a.EXECUTE:return this.advance(),{command:{type:"execute",address:e,command:t.command}};case a.LBRACE:return this.parseGroup(e);case a.RBRACE:return{command:null};case a.ERROR:return{command:null,error:`invalid command: ${t.value}`};default:return e&&(e.start!==void 0||e.end!==void 0)?{command:{type:"print",address:e}}:{command:null}}}parseSimpleCommand(e,t){this.advance();let n=e.value;switch(n){case"p":return{command:{type:"print",address:t}};case"P":return{command:{type:"printFirstLine",address:t}};case"d":return{command:{type:"delete",address:t}};case"D":return{command:{type:"deleteFirstLine",address:t}};case"h":return{command:{type:"hold",address:t}};case"H":return{command:{type:"holdAppend",address:t}};case"g":return{command:{type:"get",address:t}};case"G":return{command:{type:"getAppend",address:t}};case"x":return{command:{type:"exchange",address:t}};case"n":return{command:{type:"next",address:t}};case"N":return{command:{type:"nextAppend",address:t}};case"q":return{command:{type:"quit",address:t}};case"Q":return{command:{type:"quitSilent",address:t}};case"z":return{command:{type:"zap",address:t}};case"=":return{command:{type:"lineNumber",address:t}};case"l":return{command:{type:"list",address:t}};case"F":return{command:{type:"printFilename",address:t}};case"v":return{command:{type:"version",address:t}};default:return{command:null,error:`unknown command: ${n}`}}}parseSubstituteFromToken(e,t){this.advance();let n=e.flags||"",r,s=n.match(/(\d+)/);return s&&(r=parseInt(s[1],10)),{command:{type:"substitute",address:t,pattern:e.pattern||"",replacement:e.replacement||"",global:n.includes("g"),ignoreCase:n.includes("i")||n.includes("I"),printOnMatch:n.includes("p"),nthOccurrence:r,extendedRegex:this.extendedRegex}}}parseTransliterateFromToken(e,t){this.advance();let n=e.source||"",r=e.dest||"";return n.length!==r.length?{command:null,error:"transliteration sets must have same length"}:{command:{type:"transliterate",address:t,source:n,dest:r}}}parseTextCommand(e,t){let n=e.value,r=e.text||"";switch(n){case"a":return{command:{type:"append",address:t,text:r}};case"i":return{command:{type:"insert",address:t,text:r}};case"c":return{command:{type:"change",address:t,text:r}};default:return{command:null,error:`unknown text command: ${n}`}}}parseGroup(e){this.advance();let t=[];for(;!this.isAtEnd()&&!this.check(a.RBRACE);){if(this.check(a.NEWLINE)||this.check(a.SEMICOLON)){this.advance();continue}let n=this.parseCommand();if(n.error)return{command:null,error:n.error};n.command&&t.push(n.command)}return this.check(a.RBRACE)?(this.advance(),{command:{type:"group",address:e,commands:t}}):{command:null,error:"unmatched brace in grouped commands"}}parseAddressRange(){let e=this.parseAddress();if(e===void 0)return;let t;return this.check(a.COMMA)&&(this.advance(),t=this.parseAddress()),{start:e,end:t}}parseAddress(){let e=this.peek();switch(e.type){case a.NUMBER:return this.advance(),e.value;case a.DOLLAR:return this.advance(),"$";case a.PATTERN:return this.advance(),{pattern:e.pattern||e.value};case a.STEP:return this.advance(),{first:e.first||0,step:e.step||0};default:return}}peek(){return this.tokens[this.pos]||{type:a.EOF,value:"",line:0,column:0}}advance(){return this.isAtEnd()||this.pos++,this.tokens[this.pos-1]}check(e){return this.peek().type===e}isAtEnd(){return this.peek().type===a.EOF}};function q(i,e=!1){return new A(i,e).parse()}var Z={name:"sed",summary:"stream editor for filtering and transforming text",usage:"sed [OPTION]... {script} [input-file]...",options:["-n, --quiet, --silent suppress automatic printing of pattern space","-e script add the script to commands to be executed","-f script-file read script from file","-i, --in-place edit files in place","-E, -r, --regexp-extended use extended regular expressions"," --help display this help and exit"],description:`Commands:
33
- s/regexp/replacement/[flags] substitute
34
- d delete pattern space
35
- p print pattern space
36
- a\\ text append text after line
37
- i\\ text insert text before line
38
- c\\ text change (replace) line with text
39
- h copy pattern space to hold space
40
- H append pattern space to hold space
41
- g copy hold space to pattern space
42
- G append hold space to pattern space
43
- x exchange pattern and hold spaces
44
- n read next line into pattern space
45
- N append next line to pattern space
46
- y/source/dest/ transliterate characters
47
- = print line number
48
- l list pattern space (escape special chars)
49
- b [label] branch to label
50
- t [label] branch on substitution
51
- T [label] branch if no substitution
52
- :label define label
53
- q quit
54
- Q quit without printing
55
-
56
- Addresses:
57
- N line number
58
- $ last line
59
- /regexp/ lines matching regexp
60
- N,M range from line N to M
61
- first~step every step-th line starting at first`};async function F(i,e,t,n={}){let{limits:r,filename:s,fs:c,cwd:d}=n,h=i.split(`
62
- `);h.length>0&&h[h.length-1]===""&&h.pop();let m=h.length,l="",u,p="",o=new Map,b=new Map,C=new Map,R=new Map,H=r?{maxIterations:r.maxSedIterations}:void 0;for(let v=0;v<h.length;v++){let f={...U(m,s,o),patternSpace:h[v],holdSpace:p,lineNumber:v+1,totalLines:m,substitutionMade:!1},O={lines:h,currentLineIndex:v},_=0,X=1e4,$=0;do{if(_++,_>X)break;f.restartCycle=!1,f.pendingFileReads=[],f.pendingFileWrites=[];let E=y(e,f,O,H);if($+=E,c&&d){for(let S of f.pendingFileReads){let g=c.resolvePath(d,S.filename);try{if(S.wholeFile){let x=await c.readFile(g);f.appendBuffer.push(x.replace(/\n$/,""))}else{if(!b.has(g)){let z=await c.readFile(g);b.set(g,z.split(`
63
- `)),C.set(g,0)}let x=b.get(g),w=C.get(g);x&&w!==void 0&&w<x.length&&(f.appendBuffer.push(x[w]),C.set(g,w+1))}}catch{}}for(let S of f.pendingFileWrites){let g=c.resolvePath(d,S.filename),x=R.get(g)||"";R.set(g,x+S.content)}}O.currentLineIndex+=E}while(f.restartCycle&&!f.deleted&&!f.quit&&!f.quitSilent);v+=$,p=f.holdSpace;for(let E of f.lineNumberOutput)l+=`${E}
64
- `;let B=[],M=[];for(let E of f.appendBuffer)E.startsWith("__INSERT__")?B.push(E.slice(10)):M.push(E);for(let E of B)l+=`${E}
65
- `;!f.deleted&&!f.quitSilent&&(t?f.printed&&(l+=`${f.patternSpace}
66
- `):l+=`${f.patternSpace}
67
- `);for(let E of M)l+=`${E}
68
- `;if(f.quit||f.quitSilent){f.exitCode!==void 0&&(u=f.exitCode);break}}if(c&&d)for(let[v,f]of R)try{await c.writeFile(v,f)}catch{}return{output:l,exitCode:u}}var le={name:"sed",async execute(i,e){if(D(i))return T(Z);let t=[],n=[],r=!1,s=!1,c=!1,d=[];for(let p=0;p<i.length;p++){let o=i[p];if(o==="-n"||o==="--quiet"||o==="--silent")r=!0;else if(o==="-i"||o==="--in-place")s=!0;else if(o.startsWith("-i"))s=!0;else if(o==="-E"||o==="-r"||o==="--regexp-extended")c=!0;else if(o==="-e")p+1<i.length&&t.push(i[++p]);else if(o==="-f")p+1<i.length&&n.push(i[++p]);else{if(o.startsWith("--"))return I("sed",o);if(o.startsWith("-")&&o.length>1){for(let b of o.slice(1))if(b!=="n"&&b!=="e"&&b!=="f"&&b!=="i"&&b!=="E"&&b!=="r")return I("sed",`-${b}`);o.includes("n")&&(r=!0),o.includes("i")&&(s=!0),(o.includes("E")||o.includes("r"))&&(c=!0),o.includes("e")&&!o.includes("n")&&!o.includes("i")&&p+1<i.length&&t.push(i[++p]),o.includes("f")&&!o.includes("e")&&p+1<i.length&&n.push(i[++p])}else!o.startsWith("-")&&t.length===0&&n.length===0?t.push(o):o.startsWith("-")||d.push(o)}}for(let p of n){let o=e.fs.resolvePath(e.cwd,p);try{let b=await e.fs.readFile(o);for(let C of b.split(`
69
- `)){let R=C.trim();R&&!R.startsWith("#")&&t.push(R)}}catch{return{stdout:"",stderr:`sed: couldn't open file ${p}: No such file or directory
70
- `,exitCode:1}}}if(t.length===0)return{stdout:"",stderr:`sed: no script specified
71
- `,exitCode:1};let{commands:h,error:m}=q(t,c);if(m)return{stdout:"",stderr:`sed: ${m}
72
- `,exitCode:1};if(h.length===0)return{stdout:"",stderr:`sed: no valid commands
73
- `,exitCode:1};let l="";if(d.length===0){l=e.stdin;let p=await F(l,h,r,{limits:e.limits,fs:e.fs,cwd:e.cwd});return{stdout:p.output,stderr:"",exitCode:p.exitCode??0}}if(s){for(let p of d){let o=e.fs.resolvePath(e.cwd,p);try{let b=await e.fs.readFile(o),C=await F(b,h,r,{limits:e.limits,filename:p,fs:e.fs,cwd:e.cwd});await e.fs.writeFile(o,C.output)}catch{return{stdout:"",stderr:`sed: ${p}: No such file or directory
74
- `,exitCode:1}}}return{stdout:"",stderr:"",exitCode:0}}for(let p of d){let o=e.fs.resolvePath(e.cwd,p);try{l+=await e.fs.readFile(o)}catch{return{stdout:"",stderr:`sed: ${p}: No such file or directory
75
- `,exitCode:1}}}let u=await F(l,h,r,{limits:e.limits,filename:d.length===1?d[0]:void 0,fs:e.fs,cwd:e.cwd});return{stdout:u.output,stderr:"",exitCode:u.exitCode??0}}};export{le as sedCommand};
@@ -1,6 +0,0 @@
1
- var F={name:"seq",async execute(r){let d=`
2
- `,h=!1,i=[],e=0;for(;e<r.length;){let t=r[e];if(t==="-s"&&e+1<r.length){d=r[e+1],e+=2;continue}if(t==="-w"){h=!0,e++;continue}if(t==="--"){e++;break}if(t.startsWith("-")&&t!=="-"){if(t.startsWith("-s")&&t.length>2){d=t.slice(2),e++;continue}if((t==="-ws"||t==="-sw")&&(h=!0,e+1<r.length)){d=r[e+1],e+=2;continue}}i.push(t),e++}for(;e<r.length;)i.push(r[e]),e++;if(i.length===0)return{stdout:"",stderr:`seq: missing operand
3
- `,exitCode:1};let l=1,o=1,a;if(i.length===1?a=parseFloat(i[0]):i.length===2?(l=parseFloat(i[0]),a=parseFloat(i[1])):(l=parseFloat(i[0]),o=parseFloat(i[1]),a=parseFloat(i[2])),Number.isNaN(l)||Number.isNaN(o)||Number.isNaN(a))return{stdout:"",stderr:`seq: invalid floating point argument: '${i.find(n=>Number.isNaN(parseFloat(n)))}'
4
- `,exitCode:1};if(o===0)return{stdout:"",stderr:`seq: invalid Zero increment value: '0'
5
- `,exitCode:1};let s=[],f=t=>{let n=String(t),u=n.indexOf(".");return u===-1?0:n.length-u-1},c=Math.max(f(l),f(o),f(a)),p=1e5,m=0;if(o>0)for(let t=l;t<=a+1e-10&&!(m++>p);t+=o)s.push(c>0?t.toFixed(c):String(Math.round(t)));else for(let t=l;t>=a-1e-10&&!(m++>p);t+=o)s.push(c>0?t.toFixed(c):String(Math.round(t)));if(h&&s.length>0){let t=Math.max(...s.map(n=>n.replace("-","").length));for(let n=0;n<s.length;n++){let u=s[n].startsWith("-"),x=(u?s[n].slice(1):s[n]).padStart(t,"0");s[n]=u?`-${x}`:x}}let g=s.join(d);return{stdout:g?`${g}
6
- `:"",stderr:"",exitCode:0}}};export{F as seqCommand};
@@ -1 +0,0 @@
1
- import{a as m}from"./chunk-4HEWHW5W.js";import"./chunk-74CEPOFO.js";import"./chunk-2RUN43TJ.js";var e=m("sha1sum","sha1","compute SHA1 message digest");export{e as sha1sumCommand};