aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--grammars/builtins.bp35
1 files changed, 4 insertions, 31 deletions
diff --git a/grammars/builtins.bp b/grammars/builtins.bp
index c620164..e5106c0 100644
--- a/grammars/builtins.bp
+++ b/grammars/builtins.bp
@@ -1,28 +1,4 @@
-yes: ''
-no: !''
-
-# Configurable options:
-is-tty: no # Defined as either always-match or always-fail, depending on stdout
-include-binary-files: no;
-is-text-file: >32(\t/\n/\r/\x20-x7e/!\x00-x7f utf8-codepoint/$$)
-
-# Meta-rules for acting on everything:
-pattern: !'' # Not defined by default
-replacement: !'' # Not defined by default
-
-# Helper definitions (commonly used)
-url: (
- "file://" +(`/ *url-char)
- / "mailto:" email
- / ("https"/"http"/"ftp") "://" [>..`@ +url-char [`: +url-char] `@]
- (ipv4/ipv6/domain) [`: int] [url-path]
-)
-url-path: +(`/ *url-char) [`? +(+url-char`=+url-char)%`&]
-ipv4: 4 int % `.
-ipv6: 8 (4 Hex) % `:
-domain: +(+(Abc/digit/`-))%`.
-url-char: Abc/digit/`$,-,_,.,+,!,*,',(,),,,%
-email: +(Abc/digit/`.,-,+) `@ domain
+# This file contains some default general-purpose definitions.
nodent: \N !(\t/` )
indent: \N (` /\t)
@@ -56,19 +32,16 @@ hex: `0-9,a-f
number: +`0-9 [`. *`0-9] / `. +`0-9
int: +`0-9
digit: `0-9
+Abc123: `a-z,A-Z,0-9
+ABC123: `A-Z,0-9
+abc123: `a-z,0-9
Abc: `a-z,A-Z
ABC: `A-Z
abc: `a-z
esc: \e
tab: \t
nl: \n; lf: \n
-c-block-comment: '/*'..'*/'%\n
-c-line-comment: '//'..$
-c-comment: c-line-comment / c-block-comment
-hash-comment: `# ..$
comment: !''; # No default definition, can be overridden
-WS: ` /\t/\n/\r/comment
-ws: ` /\t
$$: !(./\n)
$: !.
^^: !<(./\n)