Adds a makefile for local install and cleans up some of the code

This commit is contained in:
Brian Evans 2020-03-03 10:52:50 -08:00
parent cb077c34b5
commit 81b7c93c96
2 changed files with 42 additions and 13 deletions

22
Makefile Normal file
View file

@ -0,0 +1,22 @@
UNAME := $(shell uname -s)
SYN := /syntax
FT := /ftdetect
ifeq ($(UNAME), Haiku)
ROOT = /boot/home/config/settings/vim
else
ROOT := ~/.vim
endif
.PHONY: install
install: ./syntax/gmi.vim ./ftdetect/gmi.vim
install -d ${ROOT}${SYN}
install -d ${ROOT}${FT}
install -m 0644 ./syntax/gmi.vim ${ROOT}${SYN}
install -m 0644 ./syntax/gmi.vim ${ROOT}${FT}
.PHONY: remove
remove:
rm -rf ${ROOT}${SYN}/gmi.vim
rm -rf ${ROOT}${FT}/gmi.vim

View file

@ -3,32 +3,39 @@
" " Maintainer: sloum < sloum AT rawtext.club >
" " Latest Revision: 02 February 2020
if exists("b:current_syntax")
"
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
" Handle monospaced blocks
syn region Special start="```" end="```"
syn region gmiMono start="```" end="```"
" Handle between one and three heading levels
syn match Constant /^#\{1,3}.*$/
syn match gmiHeader /^#\{1,3}.*$/
" Start a link line
syn match Todo /^=>/ nextgroup=Underlined skipwhite
syn match gmiLinkStart /^=>/ nextgroup=gmiLinkUrl skipwhite
" An extremely naive way of handling the URL portion of the link line
" TODO think about improving this
syn match Underlined /\S\+/ contained nextgroup=String skipwhite
syn match gmiLinkUrl /\S\+/ contained nextgroup=gmiLinkTitle skipwhite
syn match String /.*$/ contained
syn match gmiLinkTitle /.*$/ contained
" Handle list items
syn match Identifier /^\*.*$/
syn match Ignore /^77/
syn match String /^88/
syn match Comment /^99/
syn match gmiListItem /^\*.*$/
let b:current_syntax = "gmi"
hi def link gmiMono Special
hi def link gmiHeader Constant
hi def link gmiLinkStart Todo
hi def link gmiLinkUrl Underlined
hi def link gmiLinkTitle String
hi def link gmiListItem Identifier