Advertisement
Guest User

Untitled

a guest
Jul 26th, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.45 KB | None | 0 0
  1. alias big {
  2. if ($bigtext.unsupp($1-)) {
  3. echo -ac info * Characters not supported by Big Text present in your message: $bigtext.unsupp($1-)
  4. return
  5. }
  6. var %lia, %lib, %lic, %lid, %lie, %i 1, %text $strip($1-, bur), %colregex /^(dd?(?:,dd?)?)/
  7. var %regex = /(?<= $+ $chr(3) $+ [0-9]| $+ $chr(3) $+ [0-9][0-9]) $+ $chr(44) $+ dd?/g, %res, %dummy = $regsub(%text, %regex, $null, %text)
  8. while (%i <= $len(%text)) {
  9. if ($mid(%text, %i, 1) == $chr(3)) {
  10. var %lia $+(%lia, $chr(3)), %lib $+(%lib, $chr(3)), %lic $+(%lic, $chr(3)), %lid $+(%lid, $chr(3)), %lie $+(%lie, $chr(3))
  11. if ($mid(%text, $calc(%i + 1), 1) != $chr(32)) && ($regex(mtcol, $mid(%text, $calc(%i + 1), $mid(%text, $calc(%i + 1), 0)), %colregex)) {
  12. var %m $regml(mtcol, 1)
  13. var %lia %lia $+ %m, %lib %lib $+ %m, %lic %lic $+ %m, %lid %lid $+ %m, %lie %lie $+ %m
  14. inc %i $len(%m)
  15. }
  16. }
  17. else {
  18. tokenize 32 $bigtext.char($mid(%text, %i, 1))
  19. var %lia $+(%lia, $1), %lib $+(%lib, $2), %lic $+(%lic, $3), %lid $+(%lid, $4), %lie $+(%lie, $5)
  20. ; if ($bigtext.kern($mid(%text, %i, 2))) {
  21. var %lia $+(%lia, .), %lib $+(%lib, .), %lic $+(%lic, .), %lid $+(%lid, .), %lie $+(%lie, .)
  22. ; }
  23. }
  24. inc %i
  25. }
  26. say $bigtext.format(%lia)
  27. say $bigtext.format(%lib)
  28. say $bigtext.format(%lic)
  29. say $bigtext.format(%lid)
  30. say $bigtext.format(%lie)
  31. }
  32. alias -l bigtext.char {
  33. if ($1 === $chr(32)) || ($1 === $null) return $&
  34. ... $&
  35. ... $&
  36. ... $&
  37. ... $&
  38. ...
  39. if ($1 === $chr(160)) return $&
  40. ..... $&
  41. ..... $&
  42. ..... $&
  43. ..... $&
  44. .....
  45. elseif ($1 == 0) return $&
  46. .XXXX. $&
  47. XX..XX $&
  48. XX.XXX $&
  49. XXX.XX $&
  50. .XXXX.
  51. elseif ($1 == 1) return $&
  52. .XXXX $&
  53. XX.XX $&
  54. ...XX $&
  55. ...XX $&
  56. ...XX
  57. elseif ($1 == 2) return $&
  58. XXXXX. $&
  59. ....XX $&
  60. ..XX.. $&
  61. XX.... $&
  62. XXXXXX
  63. elseif ($1 == 3) return $&
  64. XXXXX. $&
  65. ....XX $&
  66. .XXXX. $&
  67. ....XX $&
  68. XXXXX.
  69. elseif ($1 == 4) return $&
  70. .....XXX. $&
  71. ...XX.XX. $&
  72. .XX...XX. $&
  73. XXXXXXXXX $&
  74. ......XX.
  75. elseif ($1 == 5) return $&
  76. XXXXX $&
  77. XX... $&
  78. XXXX. $&
  79. ...XX $&
  80. XXXX.
  81. elseif ($1 == 6) return $&
  82. .XXXX. $&
  83. XX.... $&
  84. XXXXX. $&
  85. XX..XX $&
  86. .XXXX.
  87. elseif ($1 == 7) return $&
  88. XXXXXX $&
  89. ...XX. $&
  90. ..XX.. $&
  91. .XX... $&
  92. XX....
  93. elseif ($1 == 8) return $&
  94. .XXXX. $&
  95. XX..XX $&
  96. .XXXX. $&
  97. XX..XX $&
  98. .XXXX.
  99. elseif ($1 == 9) return $&
  100. .XXXX. $&
  101. XX..XX $&
  102. .XXXXX $&
  103. ....XX $&
  104. .XXXX.
  105. elseif ($1 == A) return $&
  106. .XXXX. $&
  107. XX..XX $&
  108. XXXXXX $&
  109. XX..XX $&
  110. XX..XX
  111. elseif ($1 == B) return $&
  112. XXXXX. $&
  113. XX..XX $&
  114. XXXXX. $&
  115. XX..XX $&
  116. XXXXX.
  117. elseif ($1 == C) return $&
  118. .XXXX. $&
  119. XX..XX $&
  120. XX.... $&
  121. XX..XX $&
  122. .XXXX.
  123. elseif ($1 == D) return $&
  124. XXXX.. $&
  125. XX.XX. $&
  126. XX..XX $&
  127. XX..XX $&
  128. XXXXX.
  129. elseif ($1 == E) return $&
  130. XXXXX $&
  131. XX... $&
  132. XXXX. $&
  133. XX... $&
  134. XXXXX
  135. elseif ($1 == F) return $&
  136. XXXXX $&
  137. XX... $&
  138. XXXX. $&
  139. XX... $&
  140. XX...
  141. elseif ($1 == G) return $&
  142. .XXXX. $&
  143. XX.... $&
  144. XX.XXX $&
  145. XX..XX $&
  146. .XXXXX
  147. elseif ($1 == H) return $&
  148. XX...XX $&
  149. XX...XX $&
  150. XXXXXXX $&
  151. XX...XX $&
  152. XX...XX
  153. elseif ($1 == I) return $&
  154. XXXX $&
  155. .XX. $&
  156. .XX. $&
  157. .XX. $&
  158. XXXX
  159. elseif ($1 == J) return $&
  160. ....XX $&
  161. ....XX $&
  162. ....XX $&
  163. XX..XX $&
  164. .XXXX.
  165. elseif ($1 == K) return $&
  166. XX..XX $&
  167. XX.XX. $&
  168. XXXX.. $&
  169. XX.XX. $&
  170. XX..XX
  171. elseif ($1 == L) return $&
  172. XX... $&
  173. XX... $&
  174. XX... $&
  175. XX... $&
  176. XXXXX
  177. elseif ($1 == M) return $&
  178. XX....XX $&
  179. XXX..XXX $&
  180. XXXXXXXX $&
  181. XX.XX.XX $&
  182. XX....XX
  183. elseif ($1 == N) return $&
  184. XX..XX $&
  185. XXX.XX $&
  186. XXXXXX $&
  187. XX.XXX $&
  188. XX..XX
  189. elseif ($1 == O) return $&
  190. .XXXX. $&
  191. XX..XX $&
  192. XX..XX $&
  193. XX..XX $&
  194. .XXXX.
  195. elseif ($1 == P) return $&
  196. XXXXX. $&
  197. XX..XX $&
  198. XXXXX. $&
  199. XX.... $&
  200. XX....
  201. elseif ($1 == Q) return $&
  202. .XXXX.. $&
  203. XX..XX. $&
  204. XX..XX. $&
  205. XX..XX. $&
  206. .XXXXXX
  207. elseif ($1 == R) return $&
  208. XXXXX. $&
  209. XX..XX $&
  210. XXXXX. $&
  211. XX..XX $&
  212. XX..XX
  213. elseif ($1 == S) return $&
  214. .XXXX. $&
  215. XX.... $&
  216. .XXXX. $&
  217. ....XX $&
  218. XXXXX.
  219. elseif ($1 == T) return $&
  220. XXXXXX $&
  221. ..XX.. $&
  222. ..XX.. $&
  223. ..XX.. $&
  224. ..XX..
  225. elseif ($1 == U) return $&
  226. XX..XX $&
  227. XX..XX $&
  228. XX..XX $&
  229. XX..XX $&
  230. .XXXX.
  231. elseif ($1 == V) return $&
  232. XX....XX $&
  233. XX....XX $&
  234. .XX..XX. $&
  235. ..XXXX.. $&
  236. ...XX...
  237. elseif ($1 == W) return $&
  238. XX...XX $&
  239. XX...XX $&
  240. XX.X.XX $&
  241. XXXXXXX $&
  242. .XX.XX.
  243. elseif ($1 == X) return $&
  244. XX...XX $&
  245. .XX.XX. $&
  246. ..XXX.. $&
  247. .XX.XX. $&
  248. XX...XX
  249. elseif ($1 == Y) return $&
  250. XX..XX $&
  251. XX..XX $&
  252. .XXXX. $&
  253. ..XX.. $&
  254. ..XX..
  255. elseif ($1 == Z) return $&
  256. XXXXXX $&
  257. ...XX. $&
  258. ..XX.. $&
  259. .XX... $&
  260. XXXXXX
  261. elseif ($1 == $chr(35)) return $&
  262. .XX..XX. $&
  263. XXXXXXXX $&
  264. .XX..XX. $&
  265. XXXXXXXX $&
  266. .XX..XX.
  267. elseif ($1 == ') return $&
  268. .XX $&
  269. XX. $&
  270. ... $&
  271. ... $&
  272. ...
  273. elseif ($1 == ") return $&
  274. XX..XX $&
  275. XX..XX $&
  276. ...... $&
  277. ...... $&
  278. ......
  279. elseif ($1 == +) return $&
  280. ...... $&
  281. ..XX.. $&
  282. XXXXXX $&
  283. ..XX.. $&
  284. ......
  285. elseif ($1 == =) return $&
  286. ...... $&
  287. XXXXXX $&
  288. ...... $&
  289. XXXXXX $&
  290. ......
  291. elseif ($1 == -) return $&
  292. ...... $&
  293. ...... $&
  294. XXXXXX $&
  295. ...... $&
  296. ......
  297. elseif ($1 == _) return $&
  298. ...... $&
  299. ...... $&
  300. ...... $&
  301. ...... $&
  302. XXXXXX
  303. elseif ($1 == ] ) return $&
  304. XXXXXX $&
  305. ...... $&
  306. ...... $&
  307. ...... $&
  308. ......
  309. elseif ($1 == [) return $&
  310. .XXX. $&
  311. XX.XX $&
  312. .XXX. $&
  313. ..... $&
  314. .....
  315. elseif ($1 == :) return $&
  316. .. $&
  317. XX $&
  318. .. $&
  319. XX $&
  320. ..
  321. elseif ($1 == !) return $&
  322. XX $&
  323. XX $&
  324. XX $&
  325. .. $&
  326. XX
  327. elseif ($1 == ?) return $&
  328. XXX. $&
  329. ..XX $&
  330. .XX. $&
  331. .... $&
  332. .XX.
  333. elseif ($1 == .) return $&
  334. .. $&
  335. .. $&
  336. .. $&
  337. .. $&
  338. XX
  339. elseif ($1 == /) return $&
  340. ....XX $&
  341. ...XX. $&
  342. ..XX.. $&
  343. .XX... $&
  344. XX....
  345. elseif ($1 == ) return $&
  346. XX.... $&
  347. .XX... $&
  348. ..XX.. $&
  349. ...XX. $&
  350. ....XX
  351. elseif ($1 == $chr(40)) return $&
  352. ...XX $&
  353. .XX.. $&
  354. XX... $&
  355. .XX.. $&
  356. ...XX
  357. elseif ($1 == $chr(41)) return $&
  358. XX... $&
  359. ..XX. $&
  360. ...XX $&
  361. ..XX. $&
  362. XX...
  363. elseif ($1 == $chr(37)) return $&
  364. XX..XX $&
  365. ...XX. $&
  366. ..XX.. $&
  367. .XX... $&
  368. XX..XX
  369. elseif ($1 == [) return $&
  370. XXXXX $&
  371. XX... $&
  372. XX... $&
  373. XX... $&
  374. XXXXX
  375. elseif ($1 == ]) return $&
  376. XXXXX $&
  377. ...XX $&
  378. ...XX $&
  379. ...XX $&
  380. XXXXX
  381. elseif ($1 == |) return $&
  382. .XX. $&
  383. .XX. $&
  384. .XX. $&
  385. .XX. $&
  386. .XX.
  387. elseif ($1 == <) return $&
  388. ....XX $&
  389. ..XX.. $&
  390. XX.... $&
  391. ..XX.. $&
  392. ....XX
  393. elseif ($1 == >) return $&
  394. XX.... $&
  395. ..XX.. $&
  396. ....XX $&
  397. ..XX.. $&
  398. XX....
  399. elseif ($1 == ) return $&
  400. .... $&
  401. .... $&
  402. .XX. $&
  403. ..XX $&
  404. XXX.
  405. elseif ($1 == ,) return $&
  406. ... $&
  407. ... $&
  408. XXX $&
  409. .XX $&
  410. XX.
  411. }
  412.  
  413. alias bigtext.unsupp {
  414. var %res, %dummy = $regsub($1-, /[]a-z 0-9# $+ $chr(44) $+ '+=:!?./()%[|<>_"-]/igS, $null, %res)
  415. return %res
  416. }
  417. alias bigtext.kern {
  418. var %res $true
  419. if ($regex($1-, /^(.|[_GDSQL-]T|[TPFVY7/"]J|T.|L[1Y"]|[LTK<[]-|-[]>%]|S1|T4|?.|.?|[467L]|[J/]|L'|//|\|J|[_]|[T_]_|>.|.<)$/i)) %res = $false
  420. return %res
  421. }
  422. alias bigtext.format {
  423. var %res, %i 1, %previous 0, %current, %curcolor, %colregex /^(dd?(?:,dd?)?)/
  424. while (%i <= $len($1-)) {
  425. if ($mid($1-, %i, 1) == $chr(3)) {
  426. if ($regex(mtcol, $mid($1-, $calc(%i + 1), $mid($1-, $calc(%i + 1), 0)), %colregex)) {
  427. if ($gettok($regml(mtcol, 1), 1, 44) != %curcolor) {
  428. %curcolor = $gettok($regml(mtcol, 1), 1, 44)
  429. if (%i != 1) && ($mid($1-, $calc(%i - 1), 1) == X) %res = %res $+ $chr(15)
  430. }
  431. inc %i $len($regml(mtcol, 1))
  432. }
  433. elseif (%curcolor) {
  434. %curcolor =
  435. if (%i != 1) && ($mid($1-, $calc(%i - 1), 1) == X) %res = %res $+ $chr(15)
  436. }
  437. }
  438. else {
  439. %current = $iif($mid($1-, %i, 1) == ., 0, 1)
  440. if (%previous != %current) {
  441. %previous = %current
  442. if (%curcolor) {
  443. if (%current) %res = %res $+ $chr(3) $+ %curcolor $+ , $+ %curcolor
  444. else %res = %res $+ $chr(3)
  445. }
  446. else %res = %res $+ $chr(22)
  447. }
  448. %res = %res $+ $chr(160)
  449. }
  450. inc %i
  451. }
  452. return %res
  453. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement