SMOLNET PORTAL home about changes
gph.vim - geomyidae - A small C-based gopherd.
(URL) git clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/ (git://bitreich.org)
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Tags
(DIR) README
(DIR) LICENSE
---
gph.vim (2615B)
---
1 " Syntax colouring for gopher .gph files used by geomyidae
2 " Muddled about a bit by dive @ freenode / #gopherproject
3 " 2017-11-15
4
5 set shiftwidth=4
6 set tabstop=4
7 set noexpandtab
8
9 if version < 600
10 syntax clear
11 elseif exists("b:current_syntax")
12 finish
13 endif
14
15 " Use default terminal colours
16 hi Normal ctermbg=NONE ctermfg=NONE guifg=NONE guibg=NONE
17
18 " Use italics for comments. If this fails and you get reverse video
19 " then you may want to comment it out.
20 hi Comment cterm=italic
21
22 " Err colour (not sure about this one. It's a bit bright).
23 hi Err cterm=bold ctermbg=NONE ctermfg=130 guibg=NONE guifg=red
24
25 hi def link gopherComment comment
26 hi def link gopherType preproc
27 hi def link gopherURL statement
28 hi def link gopherHtml statement
29 hi def link gopherLink statement
30 hi def link gopherServerPort statement
31 hi def link gopherBracket preproc
32 hi def link gopherPipe preproc
33 hi def link gopherCGI type
34 hi def link gopherCGI2 type
35 hi def link gopherQuery type
36 hi def link gopherErr err
37 hi def link SynError error
38
39 " Format of lines:
40 " [<type>|<desc>|<path>|<host>|<port>]
41
42 "<desc> = description of gopher item. Most printable characters should work.
43 "
44 "<path> = full path to gopher item (base value is "/" ). Use the "Err" path for
45 "items not intended to be served.
46 "
47 "<host> = hostname or IP hosting the gopher item. Must be resolvable for the
48 "intended clients. If this is set to "server" , the server's hostname is used.
49 "
50 "<port> = TCP port number (usually 70) If this is set to "port" , the default
51 "port of the server is used.
52
53 " Comments
54 syn region gopherComment start="<!--" end="-->"
55
56 " URLs
57 syn match gopherURL "http:"
58 syn region gopherLink start="http:"lc=5 end="|"me=e-1
59 syn match gopherURL "gopher:"
60 syn match gopherURL "URL:"
61 syn match gopherURL "URI:"
62 syn region gopherLink start="gopher:"lc=7 end="|"me=e-1
63
64 " Pipes
65 syn match gopherPipe "|" containedin=gopherServerPort
66
67 " Queries and CGI
68 syn match gopherQuery "^\[7"lc=1
69 syn match gopherCGI "|[^|]*\.cgi[^|]*"lc=1
70 syn match gopherCGI2 "|[^|]*\.dcgi[^|]*"lc=1
71
72 " Server|Port
73 syn match gopherServerPort "|[^|]*|[^|]*]"
74
75 " Start and end brackets
76 match gopherBracket "[\[\]]"
77
78 " Entity
79 syn region gopherType start="^\[[0123456789ghHmswITi\+:;<PcMd\*\.]"lc=1 end="|" oneline
80
81 " HTML and networking
82 syn match gopherHtml "^\[[hHw8]"lc=1
83
84 " Text comments beginning with 't'
85 syn match gopherComment "^t"
86
87 " Err
88 syn match gopherErr "Err"
89 syn match gopherErr "^\[3"lc=1
90
Response: application/gopher-menu
Original URLgopher://bitreich.org/1/scm/geomyidae/file/gph/vim/syntax...
Content-Typeapplication/gopher-menu; charset=utf-8