2title = "4h: Parsing (ASCII Glyphs)"
10Parses ASCII character 32, space.
29 [p=[p=1 q=2] q=[~ [p=~~. q=[p=[p=1 q=2] q=""]]]]
31 > (ace [[1 1] " abc "])
32 [p=[p=1 q=2] q=[~ [p=~~. q=[p=[p=1 q=2] q="abc "]]]]
41Parses ASCII character 124, the vertical bar.
55 > `cord`(scan "|" bar)
59 [p=[p=1 q=2] q=[~ [p=~~~7c. q=[p=[p=1 q=2] q=""]]]]
62 [p=[p=1 q=2] q=[~ [p=~~~7c. q=[p=[p=1 q=2] q="="]]]]
71Parses ASCII character 92, the backslash. Note the extra `\` in the calling of
72`bas` with [`++just`](@/docs/reference/library/4f.md) is to escape the escape
87 > `cord`(scan "\\" bas)
91 ~ <syntax error at [1 18]>
94 [p=[p=1 q=2] q=[~ [p=~~~5c. q=[p=[p=1 q=2] q=""]]]]
106Parses ASCII character 36, the dollar sign.
120 > `cord`(scan "$" buc)
124 [p=[p=1 q=2] q=[~ [p=~~~24. q=[p=[p=1 q=2] q=""]]]]
127 [p=[p=1 q=2] q=[~ [p=~~~24. q=[p=[p=1 q=2] q="%"]]]]
136Parses ASCII character 95, the underscore.
150 > `cord`(scan "_" cab)
154 [p=[p=1 q=2] q=[~ [p=~~~5f. q=[p=[p=1 q=2] q=""]]]]
166Parses ASCII character 37, the percent sign.
180 > `cord`(scan "%" cen)
184 [p=[p=1 q=2] q=[~ [p=~~~25. q=[p=[p=1 q=2] q=""]]]]
187 [p=[p=1 q=2] q=[~ [p=~~~25. q=[p=[p=1 q=2] q="^"]]]]
196Parses ASCII character 58, the colon
210 > `cord`(scan ":" col)
214 [p=[p=1 q=2] q=[~ [p=~~~3a. q=[p=[p=1 q=2] q=""]]]]
217 [p=[p=1 q=2] q=[~ [p=~~~3a. q=[p=[p=1 q=2] q="-"]]]]
225Parses ASCII character 44, the comma.
239 > `cord`(scan "," com)
243 [p=[p=1 q=2] q=[~ [p=~~~2c. q=[p=[p=1 q=2] q=""]]]]
245 > (com [[1 1] "not com"])
255Parses ASCII character 34, the double quote.
269 > `cord`(scan "\"" doq)
273 [p=[p=1 q=2] q=[~ [p=~~~22. q=[p=[p=1 q=2] q=""]]]]
275 > (doq [[1 1] "not successfully parsed"])
290Parses ASCII character 46, the period.
304 > `cord`(scan "." dot)
308 [p=[p=1 q=2] q=[~ [p=~~~. q=[p=[p=1 q=2] q=""]]]]
311 [p=[p=1 q=2] q=[~ [p=~~~. q=[p=[p=1 q=2] q="^"]]]]
320Parses ASCII character 47, the forward slash.
335 [p=[p=1 q=2] q=[~ [p=~~~2f. q=[p=[p=1 q=2] q=""]]]]
347Parses ASCII character 60, the less-than sign.
362 [p=[p=1 q=2] q=[~ [p=~~~3c. q=[p=[p=1 q=2] q=""]]]]
365 [p=[p=1 q=2] q=[~ [p=~~~3c. q=[p=[p=1 q=2] q="+"]]]]
375Parse greater-than sign
377Parses ASCII character 62, the greater-than sign.
391 > `cord`(scan ">" gar)
395 [p=[p=1 q=2] q=[~ [p=~~~3e. q=[p=[p=1 q=2] q=""]]]]
407Parses ASCII character 35, the number sign.
422 [p=[p=1 q=2] q=[~ [p=~~~23. q=[p=[p=1 q=2] q=""]]]]
425 [p=[p=1 q=2] q=[~ [p=~~~23. q=[p=[p=1 q=2] q="!"]]]]
434Parses ASCII character 45, the hyphen.
449 [p=[p=1 q=2] q=[~ [p=~~- q=[p=[p=1 q=2] q=""]]]]
459Parse left curley bracket
461Parses ASCII character 123, the left curly bracket. Note that `{`
462(`kel`) and `}` (`ker`) open and close a Hoon expression for Hoon string
463interpolation. To parse either of them, they must be escaped.
478 [p=[p=1 q=2] q=[~ [p=~~~7b. q=[p=[p=1 q=2] q=""]]]]
480 > (kel [[1 1] " \{"])
488Parse right curley bracket
490Parses ASCII character 125, the right curly bracket. Note that `{`
491(`kel`) and `}` (`ker`) open and close a Hoon expression for Hoon string
492interpolation. To parse either of them, they must be escaped.
507 [p=[p=1 q=2] q=[~ [p=~~~7d. q=[p=[p=1 q=2] q=""]]]]
509 > (ker [[1 1] "\{}"])
519Parses ASCII character 94, the caret.
534 [p=[p=1 q=2] q=[~ [p=~~~5e. q=[p=[p=1 q=2] q=""]]]]
545Parses ASCII character 43, the plus sign.
559 > `cord`(scan "+" lus)
563 [p=[p=1 q=2] q=[~ [p=~~~2b. q=[p=[p=1 q=2] q=""]]]]
575Parses ASCII character 38, the ampersand.
589 > `cord`(scan "&" pam)
593 [p=[p=1 q=2] q=[~ [p=~~~26. q=[p=[p=1 q=2] q=""]]]]
605Parses ASCII character 64, the "at" sign.
619 > `cord`(scan "@" pat)
623 [p=[p=1 q=2] q=[~ [p=~~~4. q=[p=[p=1 q=2] q=""]]]]
633Parse left parenthesis
635Parses ASCII character 40, the left parenthesis.
650 [p=[p=1 q=2] q=[~ [p=~~~28. q=[p=[p=1 q=2] q=""]]]]
660Parse right parenthesis
662Parses ASCII character 41, the right parenthesis.
677 [p=[p=1 q=2] q=[~ [p=~~~29. q=[p=[p=1 q=2] q=""]]]]
687Parse left square bracket
689Parses ASCII character 91, the left square bracket.
704 [p=[p=1 q=2] q=[~ [p=~~~5b. q=[p=[p=1 q=2] q=""]]]]
716Parses ASCII character 59, the semicolon.
731 [p=[p=1 q=2] q=[~ [p=~~~3b. q=[p=[p=1 q=2] q=""]]]]
741Parse right square bracket
743Parses ASCII character 93, the right square bracket.
758 [p=[p=1 q=2] q=[~ [p=~~~5d. q=[p=[p=1 q=2] q=""]]]]
760 > (ser [[1 1] "[ ]"])
770Parses ASCII character 126, the tilde.
785 [p=[p=1 q=2] q=[~ [p=~~~~ q=[p=[p=1 q=2] q=""]]]]
797Parses ASCII character 39, soq. Note the extra '' is to escape the first
798`soq` because soq delimits a `++cord`.
813 [p=[p=1 q=2] q=[~ [p=~~~27. q=[p=[p=1 q=2] q=""]]]]
825Parses ASCII character 42, the asterisk.
839 > `cord`(scan "*" tar)
843 [p=[p=1 q=2] q=[~ [p=~~~2a. q=[p=[p=1 q=2] q=""]]]]
855Parses ASCII character 96, the backtick (also known as the "grave
861 ++ tec (just '`') :: backTiCk
870 > `cord`(scan "`" tec)
874 [p=[p=1 q=2] q=[~ [p=~~~6. q=[p=[p=1 q=2] q=""]]]]
886Parses ASCII character 61, the equals sign.
901 [p=[p=1 q=2] q=[~ [p=~~~3d. q=[p=[p=1 q=2] q=""]]]]
912Parses ASCII character 63, the question mark.
927 [p=[p=1 q=2] q=[~ [p=~~~3f. q=[p=[p=1 q=2] q=""]]]]
939Parses ASCII character 33, the exclamation point zap.
954 [p=[p=1 q=2] q=[~ [p=~~~21. q=[p=[p=1 q=2] q=""]]]]
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list