diff options
| author | Jon duSaint | 2022-11-24 09:17:51 -0800 |
|---|---|---|
| committer | Jon duSaint | 2022-11-24 09:39:07 -0800 |
| commit | 539d4e5f6830df03a14c1c281ee0fe7c4211a995 (patch) | |
| tree | 4ad5be74907c6662b394c5b7067a8b09e31586d7 | |
site configuration for cgit
Also includes instructions for setting git remote + cgit up.
| -rw-r--r-- | cgit/Makefile | 32 | ||||
| -rw-r--r-- | cgit/asm48.lang | 297 | ||||
| -rwxr-xr-x | cgit/cgit-about-filter.sh | 3 | ||||
| -rwxr-xr-x | cgit/cgit-syntax-filter.sh | 13 | ||||
| -rw-r--r-- | cgit/cgitrc | 55 | ||||
| -rw-r--r-- | cgit/srpl.lang | 54 |
6 files changed, 454 insertions, 0 deletions
diff --git a/cgit/Makefile b/cgit/Makefile new file mode 100644 index 0000000..bda6001 --- /dev/null +++ b/cgit/Makefile @@ -0,0 +1,32 @@ +# First do: +# pkg_add git cgit lowdown highlight +# +# Create a user with: +# shrike# userinfo git +# login git +# passwd * +# uid 1004 +# groups 1004 +# change NEVER +# class +# gecos +# dir /home/git +# shell /usr/local/bin/git-shell + +# Create git repo: +# +# mkdir /var/www/src/<repo> +# chown git /var/www/src /var/www/src/<repo> +# doas -u git git init --bare --shared /var/www/src/<repo> +# ## Add description to /var/www/src/<repo>/description +# +# See also: +# ../etc/httpd.conf +# +all: +install: + $(INSTALL) -m 0555 cgit-about-filter.sh /var/www/usr/local/bin/cgit-about-filter.sh + $(INSTALL) -m 0555 cgit-syntax-filter.sh /var/www/usr/local/bin/cgit-syntax-filter.sh + $(INSTALL) -m 0444 asm48.lang /var/www/usr/local/share/highlight/langDefs/asm48.lang + $(INSTALL) -m 0444 srpl.lang /var/www/usr/local/share/highlight/langDefs/srpl.lang + $(INSTALL) -m 0444 cgitrc /var/www/conf/cgitrc diff --git a/cgit/asm48.lang b/cgit/asm48.lang new file mode 100644 index 0000000..e9afa74 --- /dev/null +++ b/cgit/asm48.lang @@ -0,0 +1,297 @@ + +Description="Saturn Assembler" + +Categories = {"assembler"} + +Digits=[[ (?:0x|0X|\$)[0-9a-fA-F]+|\d*[\.\_]?\d+(?:[eE][\-\+]\d+)?[bBhHlLuU]* ]] + +Keywords={ + { Id=1, Regex=[[RTNSXM]], }, + { Id=1, Regex=[[RTN]], }, + { Id=1, Regex=[[RTNSC]], }, + { Id=1, Regex=[[RTNCC]], }, + { Id=1, Regex=[[SETHEX]], }, + { Id=1, Regex=[[SETDEC]], }, + { Id=1, Regex=[[RSTK=C]], }, + { Id=1, Regex=[[C=RSTK]], }, + { Id=1, Regex=[[CLRST]], }, + { Id=1, Regex=[[C=ST]], }, + { Id=1, Regex=[[ST=C]], }, + { Id=1, Regex=[[CSTEX]], }, + { Id=1, Regex=[[P=P\+1]], }, + { Id=1, Regex=[[P=P-1]], }, + { Id=1, Regex=[[P=]], }, + { Id=1, Regex=[[RTI]], }, + { Id=1, Regex=[[A=A&B]], }, + { Id=1, Regex=[[B=B&C]], }, + { Id=1, Regex=[[C=C&A]], }, + { Id=1, Regex=[[D=D&C]], }, + { Id=1, Regex=[[B=B&A]], }, + { Id=1, Regex=[[C=C&B]], }, + { Id=1, Regex=[[A=A&C]], }, + { Id=1, Regex=[[C=C&D]], }, + { Id=1, Regex=[[A=A!B]], }, + { Id=1, Regex=[[B=B!C]], }, + { Id=1, Regex=[[C=C!A]], }, + { Id=1, Regex=[[D=D!C]], }, + { Id=1, Regex=[[B=B!A]], }, + { Id=1, Regex=[[C=C!B]], }, + { Id=1, Regex=[[A=A!C]], }, + { Id=1, Regex=[[C=C!D]], }, + { Id=1, Regex=[[R0=A]], }, + { Id=1, Regex=[[R1=A]], }, + { Id=1, Regex=[[R2=A]], }, + { Id=1, Regex=[[R3=A]], }, + { Id=1, Regex=[[R4=A]], }, + { Id=1, Regex=[[R0=C]], }, + { Id=1, Regex=[[R1=C]], }, + { Id=1, Regex=[[R2=C]], }, + { Id=1, Regex=[[R3=C]], }, + { Id=1, Regex=[[R4=C]], }, + { Id=1, Regex=[[A=R0]], }, + { Id=1, Regex=[[A=R1]], }, + { Id=1, Regex=[[A=R2]], }, + { Id=1, Regex=[[A=R3]], }, + { Id=1, Regex=[[A=R4]], }, + { Id=1, Regex=[[C=R0]], }, + { Id=1, Regex=[[C=R1]], }, + { Id=1, Regex=[[C=R2]], }, + { Id=1, Regex=[[C=R3]], }, + { Id=1, Regex=[[C=R4]], }, + { Id=1, Regex=[[AR0EX]], }, + { Id=1, Regex=[[AR1EX]], }, + { Id=1, Regex=[[AR2EX]], }, + { Id=1, Regex=[[AR3EX]], }, + { Id=1, Regex=[[AR4EX]], }, + { Id=1, Regex=[[CR0EX]], }, + { Id=1, Regex=[[CR1EX]], }, + { Id=1, Regex=[[CR2EX]], }, + { Id=1, Regex=[[CR3EX]], }, + { Id=1, Regex=[[CR4EX]], }, + { Id=1, Regex=[[D0=A]], }, + { Id=1, Regex=[[D1=A]], }, + { Id=1, Regex=[[AD0EX]], }, + { Id=1, Regex=[[AD1EX]], }, + { Id=1, Regex=[[D0=C]], }, + { Id=1, Regex=[[D1=C]], }, + { Id=1, Regex=[[CD0EX]], }, + { Id=1, Regex=[[CD1EX]], }, + { Id=1, Regex=[[D0=AS]], }, + { Id=1, Regex=[[D1=AS]], }, + { Id=1, Regex=[[AD0XS]], }, + { Id=1, Regex=[[AD1XS]], }, + { Id=1, Regex=[[D0=CS]], }, + { Id=1, Regex=[[D1=CS]], }, + { Id=1, Regex=[[CD0XS]], }, + { Id=1, Regex=[[CD1XS]], }, + { Id=1, Regex=[[DAT0=A]], }, + { Id=1, Regex=[[DAT1=A]], }, + { Id=1, Regex=[[A=DAT0]], }, + { Id=1, Regex=[[A=DAT1]], }, + { Id=1, Regex=[[DAT0=C]], }, + { Id=1, Regex=[[DAT1=C]], }, + { Id=1, Regex=[[C=DAT0]], }, + { Id=1, Regex=[[C=DAT1]], }, + { Id=1, Regex=[[D0=D0\+]], }, + { Id=1, Regex=[[D1=D1\+]], }, + { Id=1, Regex=[[D0=D0-]], }, + { Id=1, Regex=[[D0=\(2\)]], }, + { Id=1, Regex=[[D0=HEX]], }, + { Id=1, Regex=[[D0=\(4\)]], }, + { Id=1, Regex=[[D0=HEX]], }, + { Id=1, Regex=[[D0=\(5\)]], }, + { Id=1, Regex=[[D0=HEX]], }, + { Id=1, Regex=[[D1=D1-]], }, + { Id=1, Regex=[[D1=\(2\)]], }, + { Id=1, Regex=[[D1=HEX]], }, + { Id=1, Regex=[[D1=\(4\)]], }, + { Id=1, Regex=[[D1=HEX]], }, + { Id=1, Regex=[[D1=\(5\)]], }, + { Id=1, Regex=[[D1=HEX]], }, + { Id=1, Regex=[[OUT=CS]], }, + { Id=1, Regex=[[OUT=C]], }, + { Id=1, Regex=[[A=IN]], }, + { Id=1, Regex=[[C=IN]], }, + { Id=1, Regex=[[UNCNFG]], }, + { Id=1, Regex=[[CONFIG]], }, + { Id=1, Regex=[[C=ID]], }, + { Id=1, Regex=[[SHUTDN]], }, + { Id=1, Regex=[[INTON]], }, + { Id=1, Regex=[[PC=\(A\)]], }, + { Id=1, Regex=[[INTOFF]], }, + { Id=1, Regex=[[C\+P\+1]], }, + { Id=1, Regex=[[RESET]], }, + { Id=1, Regex=[[BUSCC]], }, + { Id=1, Regex=[[C=P]], }, + { Id=1, Regex=[[P=C]], }, + { Id=1, Regex=[[SREQ\?]], }, + { Id=1, Regex=[[CPEX]], }, + { Id=1, Regex=[[ASLC]], }, + { Id=1, Regex=[[BSLC]], }, + { Id=1, Regex=[[CSLC]], }, + { Id=1, Regex=[[DSLC]], }, + { Id=1, Regex=[[ASRC]], }, + { Id=1, Regex=[[BSRC]], }, + { Id=1, Regex=[[CSRC]], }, + { Id=1, Regex=[[DSRC]], }, + { Id=1, Regex=[[ASRB]], }, + { Id=1, Regex=[[BSRB]], }, + { Id=1, Regex=[[CSRB]], }, + { Id=1, Regex=[[DSRB]], }, + { Id=1, Regex=[[XM=0]], }, + { Id=1, Regex=[[SB=0]], }, + { Id=1, Regex=[[SR=0]], }, + { Id=1, Regex=[[MP=0]], }, + { Id=1, Regex=[[CLRHST]], }, + { Id=1, Regex=[[\?XM=0]], }, + { Id=1, Regex=[[\?SB=0]], }, + { Id=1, Regex=[[\?SR=0]], }, + { Id=1, Regex=[[\?MP=0]], }, + { Id=1, Regex=[[ST=0]], }, + { Id=1, Regex=[[ST=1]], }, + { Id=1, Regex=[[\?ST=0]], }, + { Id=1, Regex=[[\?ST=1]], }, + { Id=1, Regex=[[\?P#]], }, + { Id=1, Regex=[[\?P=]], }, + { Id=1, Regex=[[GOLONG]], }, + { Id=1, Regex=[[GOVLNG]], }, + { Id=1, Regex=[[GOTO]], }, + { Id=1, Regex=[[GOSUB]], }, + { Id=1, Regex=[[GOSUBL]], }, + { Id=1, Regex=[[GOSBVL]], }, + { Id=1, Regex=[[RTNYES]], }, + { Id=1, Regex=[[GOYES]], }, + { Id=1, Regex=[[\?A=B]], }, + { Id=1, Regex=[[\?B=A]], }, + { Id=1, Regex=[[\?B=C]], }, + { Id=1, Regex=[[\?C=B]], }, + { Id=1, Regex=[[\?A=C]], }, + { Id=1, Regex=[[\?C=A]], }, + { Id=1, Regex=[[\?C=D]], }, + { Id=1, Regex=[[\?D=C]], }, + { Id=1, Regex=[[\?A#B]], }, + { Id=1, Regex=[[\?B#A]], }, + { Id=1, Regex=[[\?B#C]], }, + { Id=1, Regex=[[\?C#B]], }, + { Id=1, Regex=[[\?A#C]], }, + { Id=1, Regex=[[\?C#A]], }, + { Id=1, Regex=[[\?C#D]], }, + { Id=1, Regex=[[\?D#C]], }, + { Id=1, Regex=[[\?A=0]], }, + { Id=1, Regex=[[\?B=0]], }, + { Id=1, Regex=[[\?C=0]], }, + { Id=1, Regex=[[\?D=0]], }, + { Id=1, Regex=[[\?A#0]], }, + { Id=1, Regex=[[\?B#0]], }, + { Id=1, Regex=[[\?C#0]], }, + { Id=1, Regex=[[\?D#0]], }, + { Id=1, Regex=[[\?A>B]], }, + { Id=1, Regex=[[\?B>C]], }, + { Id=1, Regex=[[\?C>A]], }, + { Id=1, Regex=[[\?D>C]], }, + { Id=1, Regex=[[\?A<B]], }, + { Id=1, Regex=[[\?B<C]], }, + { Id=1, Regex=[[\?C<A]], }, + { Id=1, Regex=[[\?D<C]], }, + { Id=1, Regex=[[\?A>=B]], }, + { Id=1, Regex=[[\?B>=C]], }, + { Id=1, Regex=[[\?C>=A]], }, + { Id=1, Regex=[[\?D>=C]], }, + { Id=1, Regex=[[\?A<=B]], }, + { Id=1, Regex=[[\?B<=C]], }, + { Id=1, Regex=[[\?C<=A]], }, + { Id=1, Regex=[[\?D<=C]], }, + { Id=1, Regex=[[A=A\+B]], }, + { Id=1, Regex=[[B=B\+C]], }, + { Id=1, Regex=[[C=C\+A]], }, + { Id=1, Regex=[[D=D\+C]], }, + { Id=1, Regex=[[A=A\+A]], }, + { Id=1, Regex=[[B=B\+B]], }, + { Id=1, Regex=[[C=C\+C]], }, + { Id=1, Regex=[[D=D\+D]], }, + { Id=1, Regex=[[B=B\+A]], }, + { Id=1, Regex=[[C=C\+B]], }, + { Id=1, Regex=[[A=A\+C]], }, + { Id=1, Regex=[[C=C\+D]], }, + { Id=1, Regex=[[A=A-1]], }, + { Id=1, Regex=[[B=B-1]], }, + { Id=1, Regex=[[C=C-1]], }, + { Id=1, Regex=[[D=D-1]], }, + { Id=1, Regex=[[A=0]], }, + { Id=1, Regex=[[B=0]], }, + { Id=1, Regex=[[C=0]], }, + { Id=1, Regex=[[D=0]], }, + { Id=1, Regex=[[A=B]], }, + { Id=1, Regex=[[B=C]], }, + { Id=1, Regex=[[C=A]], }, + { Id=1, Regex=[[D=C]], }, + { Id=1, Regex=[[B=A]], }, + { Id=1, Regex=[[C=B]], }, + { Id=1, Regex=[[A=C]], }, + { Id=1, Regex=[[C=D]], }, + { Id=1, Regex=[[ABEX]], }, + { Id=1, Regex=[[BCEX]], }, + { Id=1, Regex=[[ACEX]], }, + { Id=1, Regex=[[CDEX]], }, + { Id=1, Regex=[[A=A\+B]], }, + { Id=1, Regex=[[B=B\+C]], }, + { Id=1, Regex=[[C=C\+A]], }, + { Id=1, Regex=[[D=D\+C]], }, + { Id=1, Regex=[[A=A\+1]], }, + { Id=1, Regex=[[B=B\+1]], }, + { Id=1, Regex=[[C=C\+1]], }, + { Id=1, Regex=[[D=D\+1]], }, + { Id=1, Regex=[[B=B-A]], }, + { Id=1, Regex=[[C=C-B]], }, + { Id=1, Regex=[[A=A-C]], }, + { Id=1, Regex=[[C=C-D]], }, + { Id=1, Regex=[[A=B-A]], }, + { Id=1, Regex=[[B=C-B]], }, + { Id=1, Regex=[[C=A-C]], }, + { Id=1, Regex=[[D=C-D]], }, + { Id=1, Regex=[[ASL]], }, + { Id=1, Regex=[[BSL]], }, + { Id=1, Regex=[[CSL]], }, + { Id=1, Regex=[[DSL]], }, + { Id=1, Regex=[[ASR]], }, + { Id=1, Regex=[[BSR]], }, + { Id=1, Regex=[[CSR]], }, + { Id=1, Regex=[[DSR]], }, + { Id=1, Regex=[[A=-A]], }, + { Id=1, Regex=[[B=-B]], }, + { Id=1, Regex=[[C=-C]], }, + { Id=1, Regex=[[D=-D]], }, + { Id=1, Regex=[[A=-A-1]], }, + { Id=1, Regex=[[B=-B-1]], }, + { Id=1, Regex=[[C=-C-1]], }, + { Id=1, Regex=[[D=-D-1]], }, + { Id=1, Regex=[[BSS]], }, + { Id=1, Regex=[[CON]], }, + { Id=1, Regex=[[REL]], }, + { Id=1, Regex=[[NIBASC]], }, + { Id=1, Regex=[[NIBASC]], }, + { Id=1, Regex=[[NIBHEX]], }, + { Id=1, Regex=[[L[AC]\(5\)]], }, + { Id=1, Regex=[[GON?C]], }, + { Id=2, List={ + "A", "B", "C", "D", "D0", "D1", "P", "PC", "R0", "R1", "R2", "R3", "R4", + "R5", "IN", "OUT", "ST", "HST", + } + }, + { Id=3, List={ + "P", "WP", "XS", "X", "S", "M", "B", "W", + } + }, +} + +-- Strings={ +-- Delimiter=[["|']], +-- } + +IgnoreCase=false + +Comments={ + { Block=false, Delimiter= { [[\*]] } } +} + +Operators=[[=\(\)]] diff --git a/cgit/cgit-about-filter.sh b/cgit/cgit-about-filter.sh new file mode 100755 index 0000000..b82d20a --- /dev/null +++ b/cgit/cgit-about-filter.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +exec lowdown diff --git a/cgit/cgit-syntax-filter.sh b/cgit/cgit-syntax-filter.sh new file mode 100755 index 0000000..b4c4ee2 --- /dev/null +++ b/cgit/cgit-syntax-filter.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +# store filename and extension in local vars +BASENAME="$1" +EXTENSION="${BASENAME##*.}" + +[ "${BASENAME}" = "${EXTENSION}" ] && EXTENSION=txt +[ -z "${EXTENSION}" ] && EXTENSION=txt + +# map Makefile and Makefile.* to .mk +[ "${BASENAME%%.*}" = "Makefile" ] && EXTENSION=mk + +exec highlight --force --inline-css -f -I -O xhtml -S "$EXTENSION" 2>/dev/null diff --git a/cgit/cgitrc b/cgit/cgitrc new file mode 100644 index 0000000..846d9cb --- /dev/null +++ b/cgit/cgitrc @@ -0,0 +1,55 @@ +clone-url=git://src.rockgeeks.net:/src/$CGIT_REPO_URL + +# /var/www/cgit/cgit.css +css=/cgit.css +# /var/www/cgit/favicon.png +favicon=/cgit.favicon.png + +enable-blame=1 +enable-commit-graph=1 +enable-follow-links=1 +enable-git-config=1 +#enable-index-owner=0 +enable-http-clone=0 +enable-http-serving=1 +enable-index-links=1 + +local-time=1 +noplainemail=1 + +footer=/cgit/cgit.footer +logo-link=/ + +# set top-left logo image +# logo=... + +# main page "about" text +root-title=Rockgeeks.net git repository +root-desc=Various pieces of software of varying utility +#root-readme=/src/about.html + +# Syntax highlighter for "README" +about-filter=/usr/local/bin/cgit-about-filter.sh + +# Syntax highlighter (cat <file> | source-filter <filename> | output) +source-filter=/usr/local/bin/cgit-syntax-filter.sh + +# Format commit text (use markdown) +commit-filter=/usr/local/bin/cgit-about-filter.sh + +mimetype.gif=image/gif +mimetype.html=text/html +mimetype.jpg=image/jpeg +mimetype.jpeg=image/jpeg +mimetype.pdf=application/pdf +mimetype.png=image/png +mimetype.svg=image/svg+xml + +readme=:README +readme=:README.txt +readme=:README.md +readme=:README.html + +remove-suffix=1 + +scan-path=/src diff --git a/cgit/srpl.lang b/cgit/srpl.lang new file mode 100644 index 0000000..feb73d2 --- /dev/null +++ b/cgit/srpl.lang @@ -0,0 +1,54 @@ +-- System RPL Language definition by Jon duSaint + +Description="System RPL" + +Categories = {"source"} + +-- Digits = [=[ (# ?[0-9A-F])|(%%?[01])|(C%%?[01])|((%%? )?[0-9]+(\.[0-9]+)?(E[0-9]+))|(HXS [0-9] [0-9A-F]+) ]=] + +-- Digits = [=[ \<(# [0-9A-F]+)|([0-9A-F]+)\> ]=] + + + +Keywords={ + { + Id=1, + List={ + "CODE", "ENDCODE", + "ASSEMBLE", "RPL", + "BEGIN", "WHILE", "REPEAT", "UNTIL", "LOOP", + "TRUE", "FALSE", + "IT", "ITE", "case", + "PTR", "NIBB", "HEX", "NULLLAM", "LAM", + "NULLNAME", + "DEFINE", "EXTERNAL", "INCLUDE", "TITLE", "STITLE", "xROMID", "xTITLE", "xCONFIG", "LABEL", "sNAME", + } + }, +} + + +-- { +-- Id=1, +-- Regex=[[ARRY\xe2\x86\x92]], +-- }, +-- + +Strings={ + Delimiter=[["]], +} + + +Comments = { + { Block=true, + Nested=false, + Delimiter = { [[\(]], [[\)]] } + } +} + +NestedSections = { + { Lang="asm48", Delimiter= { [[CODE|ASSEMBLE]], [[^(ENDCODE|RPL)]] } }, +} + +IgnoreCase=false + +Operators=[[::|;|'|@]] |
