summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Evans <bevans@formulafolios.com>2020-03-03 13:09:45 -0800
committerBrian Evans <bevans@formulafolios.com>2020-03-03 13:09:45 -0800
commit071b71bf0ccb0fba2f5bd84bb0b9572c5f1880c0 (patch)
tree1959e03c9bb086004f62f001dee8f9fc5fafba82
parent7b3ff39ca4b578e1ea704e9382fa385d92325588 (diff)
Cleaning up comments and adding to readme
-rw-r--r--README.md12
-rw-r--r--syntax/gmi.vim6
2 files changed, 15 insertions, 3 deletions
diff --git a/README.md b/README.md
index 36a35b4..a69f5a2 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# Gemini Vim Syntax
-This repo contains basic syntax highlighting for the [Gemini protocol](https://gemini.circumlunar.space/)'s *text/gemini* format.
+This repo contains basic syntax highlighting for the [Gemini protocol](https://gemini.circumlunar.space/)'s **text/gemini** format.
## How to install
@@ -30,7 +30,15 @@ The current state of the syntax covers all items officially supported by the [ge
I plan to update the syntax when and if the spec adds more items to *text/gemini*.
-## Unexpected
+
+## Filetype
+
+This syntax is set up to be used with files labled with the **gmi** extension. For example:
+```
+$ vim my_gemini_map.gmi
+```
+
+## Surprises
It is possible that Windows users may find that the syntax does not work. I do not have a machine to test it on and would love some feedback. If it is not working it likely has to do with line endings. Windows uses \<cairrage-return\><\<line-feed\> and linux/unix use just \<line-feed\>. There are a number of ways to solve this problem ranging from just replacing the newlines manually to using software. In either case it shouldn't be too difficult.
diff --git a/syntax/gmi.vim b/syntax/gmi.vim
index cf0dccd..bb3e415 100644
--- a/syntax/gmi.vim
+++ b/syntax/gmi.vim
@@ -22,9 +22,13 @@ syn match gmiHeader /^#\{1,3}.*$/
syn match gmiLinkStart /^=>/ nextgroup=gmiLinkUrl skipwhite
" An extremely naive way of handling the URL portion of the link line
-" TODO think about improving this
+" This is left naive in a deliberate attempt to be unambiguous about
+" what part of a link line gemini considers to be the URL, regardless
+" of whether or not it is a valid URL
syn match gmiLinkUrl /\S\+/ contained nextgroup=gmiLinkTitle skipwhite
+" Skipping whitespace from the URL match all text, including whitespace,
+" until the end of the line
syn match gmiLinkTitle /.*$/ contained
" Handle list items