From c358317df445bf5f5f0a77b50cc499c8a43943a2 Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 13:57:43 +0000 Subject: [PATCH 1/9] lex: add page --- pages/common/lex.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 pages/common/lex.md diff --git a/pages/common/lex.md b/pages/common/lex.md new file mode 100644 index 0000000000..22cdcc6e49 --- /dev/null +++ b/pages/common/lex.md @@ -0,0 +1,12 @@ +# lex + +> Lexical analyser generator. +> Given a lexical analyser, generates C code implementing it. + +- Generate analyser from Lex file. + +`lex example.l` + +- Compile a C file generated by lex. + +`gcc lex.yy.c -o example` From 5d07f2c4b08329eed4b98fa77660102979669a95 Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 14:00:29 +0000 Subject: [PATCH 2/9] lex: add token formatting --- pages/common/lex.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pages/common/lex.md b/pages/common/lex.md index 22cdcc6e49..59833cc80a 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -5,8 +5,8 @@ - Generate analyser from Lex file. -`lex example.l` +`lex {{path/to/example.l}}` - Compile a C file generated by lex. -`gcc lex.yy.c -o example` +`gcc {{path/to/lex.yy.c}} -o {{example}}` From 5ba8bc61f4ad66bedd52872f9ef1882c822a0ad6 Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 14:04:04 +0000 Subject: [PATCH 3/9] lex: replace `gcc` with `cc` --- pages/common/lex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/common/lex.md b/pages/common/lex.md index 59833cc80a..f201ed3966 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -9,4 +9,4 @@ - Compile a C file generated by lex. -`gcc {{path/to/lex.yy.c}} -o {{example}}` +`cc {{path/to/lex.yy.c}} -o {{example}}` From 015000ee0372dfa3fb6aab46d6e63e1fc3597292 Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 14:07:57 +0000 Subject: [PATCH 4/9] lex: follow convention of colons at end of line --- pages/common/lex.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pages/common/lex.md b/pages/common/lex.md index f201ed3966..668e92de04 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -3,10 +3,10 @@ > Lexical analyser generator. > Given a lexical analyser, generates C code implementing it. -- Generate analyser from Lex file. +- Generate analyser from Lex file: `lex {{path/to/example.l}}` -- Compile a C file generated by lex. +- Compile a C file generated by lex: `cc {{path/to/lex.yy.c}} -o {{example}}` From 7774de48d425c7d7a78cfb23791c9440d4a787e0 Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 14:08:17 +0000 Subject: [PATCH 5/9] lex: use long `--output` flag --- pages/common/lex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/common/lex.md b/pages/common/lex.md index 668e92de04..feb76b0668 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -9,4 +9,4 @@ - Compile a C file generated by lex: -`cc {{path/to/lex.yy.c}} -o {{example}}` +`cc {{path/to/lex.yy.c}} --output {{example}}` From c235838b141b67fdfe76417a347eb622a2c422c4 Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 21:28:07 +0000 Subject: [PATCH 6/9] lex: improve token names --- pages/common/lex.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pages/common/lex.md b/pages/common/lex.md index feb76b0668..aba6bff4d3 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -5,8 +5,8 @@ - Generate analyser from Lex file: -`lex {{path/to/example.l}}` +`lex {{analyser.l}}` - Compile a C file generated by lex: -`cc {{path/to/lex.yy.c}} --output {{example}}` +`cc {{path/to/lex.yy.c}} --output {{executable}}` From adf0c97b514e7e6efb86f4fc5191766e2a5ec48c Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 21:30:23 +0000 Subject: [PATCH 7/9] lex: add --outfile example --- pages/common/lex.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pages/common/lex.md b/pages/common/lex.md index aba6bff4d3..1972f72159 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -7,6 +7,10 @@ `lex {{analyser.l}}` +- Specify the output file: + +`lex {{analyser.l}} --outfile {{analyser.c}} + - Compile a C file generated by lex: `cc {{path/to/lex.yy.c}} --output {{executable}}` From 2a1931ede2bfa5b04a0a84b74c277b6a7b09e4e9 Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Mon, 11 Dec 2017 21:36:10 +0000 Subject: [PATCH 8/9] lex: fix syntax mistake --- pages/common/lex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pages/common/lex.md b/pages/common/lex.md index 1972f72159..1f60a59355 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -9,7 +9,7 @@ - Specify the output file: -`lex {{analyser.l}} --outfile {{analyser.c}} +`lex {{analyser.l}} --outfile {{analyser.c}}` - Compile a C file generated by lex: From c08906bacabb747b685f13ec9fe248f2353c1d6a Mon Sep 17 00:00:00 2001 From: Liam McMenemie Date: Thu, 28 Dec 2017 02:16:22 +0000 Subject: [PATCH 9/9] lex: improve wording --- pages/common/lex.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pages/common/lex.md b/pages/common/lex.md index 1f60a59355..7b5d95c848 100644 --- a/pages/common/lex.md +++ b/pages/common/lex.md @@ -1,9 +1,9 @@ # lex > Lexical analyser generator. -> Given a lexical analyser, generates C code implementing it. +> Given the specification for a lexical analyser, generates C code implementing it. -- Generate analyser from Lex file: +- Generate an analyser from a Lex file: `lex {{analyser.l}}` @@ -11,6 +11,6 @@ `lex {{analyser.l}} --outfile {{analyser.c}}` -- Compile a C file generated by lex: +- Compile a C file generated by Lex: `cc {{path/to/lex.yy.c}} --output {{executable}}`