the repository which powers this website
bendn 7 weeks ago
parent dfce675 · commit 93b2637
-rw-r--r--.gitignore3
-rw-r--r--compile_commands.json1424
-rwxr-xr-xfilters/html-converters/md2html150
-rwxr-xr-xfilters/syntax-highlighting.py116
-rw-r--r--themed/base.html75
-rw-r--r--themed/commit.html16
-rw-r--r--themed/diff.html19
-rw-r--r--themed/index.html27
-rw-r--r--themed/log.html20
-rw-r--r--themed/refs.html22
-rw-r--r--themed/summary.html23
-rw-r--r--themed/themed.in.css88
-rw-r--r--themed/tree.html12
-rw-r--r--themed/tree_common.html18
-rw-r--r--ui-blob.c28
-rw-r--r--ui-repolist.c2
16 files changed, 1845 insertions, 198 deletions
diff --git a/.gitignore b/.gitignore
index b474cf57..afa3b182 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,3 +13,6 @@ cgitrc.5.xml
/themed/themed.c
/themed/themed.css
+node_modules
+package.json
+package-lock.json
diff --git a/compile_commands.json b/compile_commands.json
new file mode 100644
index 00000000..41d01b87
--- /dev/null
+++ b/compile_commands.json
@@ -0,0 +1,1424 @@
+[
+ {
+ "file": "../cgit.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../cgit.o",
+ "-c",
+ "-MF",
+ "../.depend/cgit.o.d",
+ "-MQ",
+ "../cgit.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_VERSION=\"v1.2.3-109-gc580\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../cgit.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../cgit.o"
+ },
+ {
+ "file": "../cache.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../cache.o",
+ "-c",
+ "-MF",
+ "../.depend/cache.o.d",
+ "-MQ",
+ "../cache.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../cache.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../cache.o"
+ },
+ {
+ "file": "../cmd.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../cmd.o",
+ "-c",
+ "-MF",
+ "../.depend/cmd.o.d",
+ "-MQ",
+ "../cmd.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../cmd.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../cmd.o"
+ },
+ {
+ "file": "../configfile.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../configfile.o",
+ "-c",
+ "-MF",
+ "../.depend/configfile.o.d",
+ "-MQ",
+ "../configfile.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../configfile.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../configfile.o"
+ },
+ {
+ "file": "../filter.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../filter.o",
+ "-c",
+ "-MF",
+ "../.depend/filter.o.d",
+ "-MQ",
+ "../filter.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../filter.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../filter.o"
+ },
+ {
+ "file": "../html.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../html.o",
+ "-c",
+ "-MF",
+ "../.depend/html.o.d",
+ "-MQ",
+ "../html.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../html.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../html.o"
+ },
+ {
+ "file": "../parsing.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../parsing.o",
+ "-c",
+ "-MF",
+ "../.depend/parsing.o.d",
+ "-MQ",
+ "../parsing.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../parsing.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../parsing.o"
+ },
+ {
+ "file": "../scan-tree.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../scan-tree.o",
+ "-c",
+ "-MF",
+ "../.depend/scan-tree.o.d",
+ "-MQ",
+ "../scan-tree.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../scan-tree.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../scan-tree.o"
+ },
+ {
+ "file": "../shared.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../shared.o",
+ "-c",
+ "-MF",
+ "../.depend/shared.o.d",
+ "-MQ",
+ "../shared.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../shared.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../shared.o"
+ },
+ {
+ "file": "../ui-atom.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-atom.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-atom.o.d",
+ "-MQ",
+ "../ui-atom.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-atom.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-atom.o"
+ },
+ {
+ "file": "../ui-blame.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-blame.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-blame.o.d",
+ "-MQ",
+ "../ui-blame.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-blame.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-blame.o"
+ },
+ {
+ "file": "../ui-blob.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-blob.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-blob.o.d",
+ "-MQ",
+ "../ui-blob.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-blob.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-blob.o"
+ },
+ {
+ "file": "../ui-clone.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-clone.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-clone.o.d",
+ "-MQ",
+ "../ui-clone.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-clone.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-clone.o"
+ },
+ {
+ "file": "../ui-commit.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-commit.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-commit.o.d",
+ "-MQ",
+ "../ui-commit.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-commit.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-commit.o"
+ },
+ {
+ "file": "../ui-diff.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-diff.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-diff.o.d",
+ "-MQ",
+ "../ui-diff.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-diff.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-diff.o"
+ },
+ {
+ "file": "../ui-log.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-log.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-log.o.d",
+ "-MQ",
+ "../ui-log.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-log.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-log.o"
+ },
+ {
+ "file": "../ui-patch.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-patch.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-patch.o.d",
+ "-MQ",
+ "../ui-patch.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-patch.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-patch.o"
+ },
+ {
+ "file": "../ui-plain.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-plain.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-plain.o.d",
+ "-MQ",
+ "../ui-plain.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-plain.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-plain.o"
+ },
+ {
+ "file": "../ui-refs.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-refs.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-refs.o.d",
+ "-MQ",
+ "../ui-refs.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-refs.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-refs.o"
+ },
+ {
+ "file": "../ui-repolist.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-repolist.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-repolist.o.d",
+ "-MQ",
+ "../ui-repolist.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-repolist.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-repolist.o"
+ },
+ {
+ "file": "../ui-shared.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-shared.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-shared.o.d",
+ "-MQ",
+ "../ui-shared.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-shared.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-shared.o"
+ },
+ {
+ "file": "../ui-snapshot.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-snapshot.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-snapshot.o.d",
+ "-MQ",
+ "../ui-snapshot.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-snapshot.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-snapshot.o"
+ },
+ {
+ "file": "../ui-ssdiff.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-ssdiff.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-ssdiff.o.d",
+ "-MQ",
+ "../ui-ssdiff.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-ssdiff.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-ssdiff.o"
+ },
+ {
+ "file": "../ui-stats.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-stats.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-stats.o.d",
+ "-MQ",
+ "../ui-stats.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-stats.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-stats.o"
+ },
+ {
+ "file": "../ui-summary.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-summary.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-summary.o.d",
+ "-MQ",
+ "../ui-summary.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-summary.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-summary.o"
+ },
+ {
+ "file": "../ui-tag.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-tag.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-tag.o.d",
+ "-MQ",
+ "../ui-tag.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-tag.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-tag.o"
+ },
+ {
+ "file": "../ui-tree.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../ui-tree.o",
+ "-c",
+ "-MF",
+ "../.depend/ui-tree.o.d",
+ "-MQ",
+ "../ui-tree.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../ui-tree.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../ui-tree.o"
+ },
+ {
+ "file": "../themed/themed.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../themed/themed.o",
+ "-c",
+ "-MF",
+ "../themed/.depend/themed.o.d",
+ "-MQ",
+ "../themed/themed.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../themed/themed.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../themed/themed.o"
+ },
+ {
+ "file": "../themed/mincrypt_sha256.c",
+ "arguments": [
+ "cc",
+ "-o",
+ "../themed/mincrypt_sha256.o",
+ "-c",
+ "-MF",
+ "../themed/.depend/mincrypt_sha256.o.d",
+ "-MQ",
+ "../themed/mincrypt_sha256.o",
+ "-MMD",
+ "-MP",
+ "-g",
+ "-O2",
+ "-Wall",
+ "-I.",
+ "-DHAVE_SYSINFO",
+ "-DGIT_HOST_CPU=\"x86_64\"",
+ "-DHAVE_ALLOCA_H",
+ "-DNO_CURL",
+ "-DSUPPORTS_SIMPLE_IPC",
+ "-DSHA1_DC",
+ "-DDC_SHA1_SUBMODULE",
+ "-DSHA1DC_NO_STANDARD_INCLUDES",
+ "-DSHA1DC_INIT_SAFE_HASH_DEFAULT=0",
+ "-DSHA1DC_CUSTOM_INCLUDE_SHA1_C=\"git-compat-util.h\"",
+ "-DSHA1DC_CUSTOM_INCLUDE_UBC_CHECK_C=\"git-compat-util.h\"",
+ "-DSHA256_BLK",
+ "-DHAVE_PATHS_H",
+ "-DHAVE_DEV_TTY",
+ "-DHAVE_CLOCK_GETTIME",
+ "-DHAVE_CLOCK_MONOTONIC",
+ "-DHAVE_SYNC_FILE_RANGE",
+ "-DHAVE_GETDELIM",
+ "-DPROCFS_EXECUTABLE_PATH=\"/proc/self/exe\"",
+ "-DFREAD_READS_DIRECTORIES",
+ "-DNO_STRLCPY",
+ "-DSHELL_PATH=\"/bin/sh\"",
+ "-DCGIT_CONFIG=\"/etc/cgitrc\"",
+ "-DCGIT_SCRIPT_NAME=\"cgit.cgi\"",
+ "-DCGIT_CACHE_ROOT=\"/var/cache/cgit\"",
+ "-I/usr/include/luajit-2.1",
+ "-DHAVE_LINUX_SENDFILE",
+ "../themed/mincrypt_sha256.c"
+ ],
+ "directory": "/home/os/cgit-yli-theme/git",
+ "output": "../themed/mincrypt_sha256.o"
+ }
+] \ No newline at end of file
diff --git a/filters/html-converters/md2html b/filters/html-converters/md2html
index 59f43a84..1038b50f 100755
--- a/filters/html-converters/md2html
+++ b/filters/html-converters/md2html
@@ -12,6 +12,7 @@ sys.stdout.write('''
font-size: 14px;
line-height: 1.6;
overflow: hidden;
+ color: #CCCAC2;
}
.markdown-body>*:first-child {
margin-top: 0 !important;
@@ -20,7 +21,7 @@ sys.stdout.write('''
margin-bottom: 0 !important;
}
.markdown-body a.absent {
- color: #c00;
+ color: #FF6666;
}
.markdown-body a.anchor {
display: block;
@@ -39,10 +40,11 @@ sys.stdout.write('''
-webkit-font-smoothing: antialiased;
cursor: text;
position: relative;
+ color: #CCCAC2;
}
.markdown-body h1 .mini-icon-link, .markdown-body h2 .mini-icon-link, .markdown-body h3 .mini-icon-link, .markdown-body h4 .mini-icon-link, .markdown-body h5 .mini-icon-link, .markdown-body h6 .mini-icon-link {
display: none;
- color: #000;
+ color: #CCCAC2;
}
.markdown-body h1:hover a.anchor, .markdown-body h2:hover a.anchor, .markdown-body h3:hover a.anchor, .markdown-body h4:hover a.anchor, .markdown-body h5:hover a.anchor, .markdown-body h6:hover a.anchor {
text-decoration: none;
@@ -55,38 +57,41 @@ sys.stdout.write('''
display: inline-block;
}
div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#cgit .markdown-body h3 a.toclink, div#cgit .markdown-body h4 a.toclink, div#cgit .markdown-body h5 a.toclink, div#cgit .markdown-body h6 a.toclink {
- color: black;
+ color: #CCCAC2;
}
.markdown-body h1 tt, .markdown-body h1 code, .markdown-body h2 tt, .markdown-body h2 code, .markdown-body h3 tt, .markdown-body h3 code, .markdown-body h4 tt, .markdown-body h4 code, .markdown-body h5 tt, .markdown-body h5 code, .markdown-body h6 tt, .markdown-body h6 code {
font-size: inherit;
}
.markdown-body h1 {
font-size: 28px;
- color: #000;
+ color: #CCCAC2;
}
.markdown-body h2 {
font-size: 24px;
- border-bottom: 1px solid #ccc;
- color: #000;
+ border-bottom: 1px solid #8A9199;
+ color: #CCCAC2;
}
.markdown-body h3 {
font-size: 18px;
+ color: #CCCAC2;
}
.markdown-body h4 {
font-size: 16px;
+ color: #CCCAC2;
}
.markdown-body h5 {
font-size: 14px;
+ color: #CCCAC2;
}
.markdown-body h6 {
- color: #777;
+ color: #CCCAC2;
font-size: 14px;
}
.markdown-body p, .markdown-body blockquote, .markdown-body ul, .markdown-body ol, .markdown-body dl, .markdown-body table, .markdown-body pre {
margin: 15px 0;
}
.markdown-body hr {
- border: 2px solid #ccc;
+ border: 2px solid #8A9199;
}
.markdown-body>h2:first-child, .markdown-body>h1:first-child, .markdown-body>h1:first-child+h2, .markdown-body>h3:first-child, .markdown-body>h4:first-child, .markdown-body>h5:first-child, .markdown-body>h6:first-child {
margin-top: 0;
@@ -148,9 +153,9 @@ div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#
margin-bottom: 0px;
}
.markdown-body blockquote {
- border-left: 4px solid #DDD;
+ border-left: 4px solid #FFAD66;
padding: 0 15px;
- color: #777;
+ color: #B8CFE6;
}
.markdown-body blockquote>:first-child {
margin-top: 0px;
@@ -162,15 +167,15 @@ div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#
font-weight: bold;
}
.markdown-body table th, .markdown-body table td {
- border: 1px solid #ccc;
+ border: 1px solid #8A9199;
padding: 6px 13px;
}
.markdown-body table tr {
- border-top: 1px solid #ccc;
- background-color: #fff;
+ border-top: 1px solid #8A9199;
+ background-color: #242936;
}
.markdown-body table tr:nth-child(2n) {
- background-color: #f8f8f8;
+ background-color: #1A1F29;
}
.markdown-body img {
max-width: 100%;
@@ -182,7 +187,7 @@ div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#
overflow: hidden;
}
.markdown-body span.frame>span {
- border: 1px solid #ddd;
+ border: 1px solid #8A9199;
display: block;
float: left;
overflow: hidden;
@@ -196,7 +201,7 @@ div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#
}
.markdown-body span.frame span span {
clear: both;
- color: #333;
+ color: #CCCAC2;
display: block;
padding: 5px 0 0;
}
@@ -254,9 +259,10 @@ div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#
.markdown-body code, .markdown-body tt {
margin: 0 2px;
padding: 0px 5px;
- border: 1px solid #eaeaea;
- background-color: #f8f8f8;
+ border: 1px solid #8A9199;
+ background-color: #282E3B;
border-radius: 3px;
+ color: #CCCAC2;
}
.markdown-body code {
white-space: nowrap;
@@ -269,8 +275,8 @@ div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#
background: transparent;
}
.markdown-body .highlight pre, .markdown-body pre {
- background-color: #f8f8f8;
- border: 1px solid #ccc;
+ background-color: #282E3B;
+ border: 1px solid #8A9199;
font-size: 13px;
line-height: 19px;
overflow: auto;
@@ -284,7 +290,109 @@ div#cgit .markdown-body h1 a.toclink, div#cgit .markdown-body h2 a.toclink, div#
border: none;
}
''')
-sys.stdout.write(HtmlFormatter(style='pastie').get_style_defs('.highlight'))
+
+
+from pygments.style import Style
+from pygments.token import (
+ Comment,
+ Keyword,
+ Name,
+ String,
+ Error,
+ Generic,
+ Number,
+ Operator,
+ Text,
+)
+
+__all__ = ["AyuMirageStyle"]
+
+
+class Colors:
+ # https://github.com/ayu-theme/ayu-colors
+ syntax_tag = "#5CCFE6"
+ syntax_func = "#FFD173"
+ syntax_entity = "#73D0FF"
+ syntax_string = "#D5FF80"
+ syntax_regexp = "#95E6CB"
+ syntax_doc = "#95E6CB"
+ syntax_markup = "#F28779"
+ syntax_keyword = "#FFAD66"
+ syntax_special = "#FFDFB3"
+ syntax_comment = "#6E7C8E" # convert from B8CFE680
+ syntax_constant = "#DFBFFF"
+ syntax_operator = "#F29E74"
+
+ vcs_added = "#87D96C"
+ vcs_modified = "#80BFFF"
+ vcs_removed = "#F27983"
+
+ editor_foreground = "#CCCAC2"
+ editor_background = "#242936"
+ editor_gutter = "#363C48" # #8A91992E on #242936
+
+ accent = "#FFCC66"
+ error = "#FF6666"
+
+
+class AyuMirageStyle(Style):
+ """
+ Pygments style based on the Ayu Mirage VS Code theme.
+
+ https://github.com/ayu-theme/ayu-colors
+ """
+
+ name = "ayu-mirage"
+ aliases = ["Ayu Mirage"]
+
+ background_color = Colors.editor_background
+ highlight_color = Colors.editor_gutter
+ # https://github.com/ayu-theme/vscode-ayu/blob/master/ayu-mirage.json#L98
+ line_number_color = "#8a919966"
+
+ styles = {
+ Text: Colors.editor_foreground,
+ Error: Colors.error,
+ Comment: Colors.syntax_comment,
+ Comment.Multiline: "italic",
+ Comment.Single: "italic",
+ Comment.Preproc: Colors.syntax_keyword,
+ Comment.PreprocFile: Colors.syntax_string,
+ Keyword: Colors.syntax_keyword,
+ Keyword.Type: Colors.syntax_entity,
+ Keyword.Constant: Colors.syntax_constant,
+ Keyword.Declaration: Colors.accent,
+ Operator: Colors.syntax_operator,
+ Name.Attribute: Colors.syntax_func,
+ Name.Builtin: Colors.syntax_markup,
+ Name.Class: Colors.syntax_tag,
+ Name.Constant: Colors.syntax_constant,
+ Name.Decorator: Colors.syntax_special,
+ Name.Function: Colors.syntax_func,
+ Name.Tag: Colors.syntax_tag,
+ Name.Variable.Instance: Colors.accent,
+ Name.Variable.Magic: f"italic {Colors.syntax_tag}",
+ String: Colors.syntax_string,
+ String.Backtick: Colors.syntax_operator,
+ String.Char: Colors.syntax_string,
+ String.Doc: f"italic {Colors.syntax_doc}",
+ String.Escape: Colors.syntax_string,
+ String.Regex: Colors.syntax_regexp,
+ String.Symbol: Colors.syntax_string,
+ Number: Colors.syntax_constant,
+ Generic: Colors.editor_foreground,
+ Generic.Deleted: Colors.vcs_removed,
+ Generic.Inserted: Colors.vcs_added,
+ Generic.Emph: f"italic {Colors.syntax_func}",
+ Generic.Strong: f"bold {Colors.syntax_func}",
+ Generic.Heading: f"bold {Colors.syntax_func}",
+ Generic.Output: Colors.syntax_string,
+ Generic.Prompt: Colors.syntax_operator,
+ Generic.Error: Colors.error,
+ Generic.Traceback: Colors.error,
+ }
+
+sys.stdout.write(HtmlFormatter(style=AyuMirageStyle, nobackground=True).get_style_defs('.highlight'))
sys.stdout.write('''
</style>
''')
diff --git a/filters/syntax-highlighting.py b/filters/syntax-highlighting.py
index e912594c..a5fa367b 100755
--- a/filters/syntax-highlighting.py
+++ b/filters/syntax-highlighting.py
@@ -29,12 +29,111 @@ from pygments.lexers import guess_lexer
from pygments.lexers import guess_lexer_for_filename
from pygments.formatters import HtmlFormatter
+from pygments.style import Style
+from pygments.token import (
+ Comment,
+ Keyword,
+ Name,
+ String,
+ Error,
+ Generic,
+ Number,
+ Operator,
+ Text,
+)
+
+__all__ = ["AyuMirageStyle"]
+
+
+class Colors:
+ # https://github.com/ayu-theme/ayu-colors
+ syntax_tag = "#5CCFE6"
+ syntax_func = "#FFD173"
+ syntax_entity = "#73D0FF"
+ syntax_string = "#D5FF80"
+ syntax_regexp = "#95E6CB"
+ syntax_doc = "#95E6CB"
+ syntax_markup = "#F28779"
+ syntax_keyword = "#FFAD66"
+ syntax_special = "#FFDFB3"
+ syntax_comment = "#6E7C8E" # convert from B8CFE680
+ syntax_constant = "#DFBFFF"
+ syntax_operator = "#F29E74"
+
+ vcs_added = "#87D96C"
+ vcs_modified = "#80BFFF"
+ vcs_removed = "#F27983"
+
+ editor_foreground = "#CCCAC2"
+ editor_background = "#242936"
+ editor_gutter = "#363C48" # #8A91992E on #242936
+
+ accent = "#FFCC66"
+ error = "#FF6666"
+
+
+class AyuMirageStyle(Style):
+ """
+ Pygments style based on the Ayu Mirage VS Code theme.
+
+ https://github.com/ayu-theme/ayu-colors
+ """
+
+ name = "ayu-mirage"
+ aliases = ["Ayu Mirage"]
+
+ background_color = Colors.editor_background
+ highlight_color = Colors.editor_gutter
+ # https://github.com/ayu-theme/vscode-ayu/blob/master/ayu-mirage.json#L98
+ line_number_color = "#8a919966"
+
+ styles = {
+ Text: Colors.editor_foreground,
+ Error: Colors.error,
+ Comment: Colors.syntax_comment,
+ Comment.Multiline: "italic",
+ Comment.Single: "italic",
+ Comment.Preproc: Colors.syntax_keyword,
+ Comment.PreprocFile: Colors.syntax_string,
+ Keyword: Colors.syntax_keyword,
+ Keyword.Type: Colors.syntax_entity,
+ Keyword.Constant: Colors.syntax_constant,
+ Keyword.Declaration: Colors.accent,
+ Operator: Colors.syntax_operator,
+ Name.Attribute: Colors.syntax_func,
+ Name.Builtin: Colors.syntax_markup,
+ Name.Class: Colors.syntax_tag,
+ Name.Constant: Colors.syntax_constant,
+ Name.Decorator: Colors.syntax_special,
+ Name.Function: Colors.syntax_func,
+ Name.Tag: Colors.syntax_tag,
+ Name.Variable.Instance: Colors.accent,
+ Name.Variable.Magic: f"italic {Colors.syntax_tag}",
+ String: Colors.syntax_string,
+ String.Backtick: Colors.syntax_operator,
+ String.Char: Colors.syntax_string,
+ String.Doc: f"italic {Colors.syntax_doc}",
+ String.Escape: Colors.syntax_string,
+ String.Regex: Colors.syntax_regexp,
+ String.Symbol: Colors.syntax_string,
+ Number: Colors.syntax_constant,
+ Generic: Colors.editor_foreground,
+ Generic.Deleted: Colors.vcs_removed,
+ Generic.Inserted: Colors.vcs_added,
+ Generic.Emph: f"italic {Colors.syntax_func}",
+ Generic.Strong: f"bold {Colors.syntax_func}",
+ Generic.Heading: f"bold {Colors.syntax_func}",
+ Generic.Output: Colors.syntax_string,
+ Generic.Prompt: Colors.syntax_operator,
+ Generic.Error: Colors.error,
+ Generic.Traceback: Colors.error,
+ }
sys.stdin = io.TextIOWrapper(sys.stdin.buffer, encoding='utf-8', errors='replace')
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8', errors='replace')
data = sys.stdin.read()
filename = sys.argv[1]
-formatter = HtmlFormatter(style='pastie', nobackground=True)
+formatter = HtmlFormatter(style=AyuMirageStyle, nobackground=True)
try:
lexer = guess_lexer_for_filename(filename, data)
@@ -51,5 +150,18 @@ except TypeError:
# printout pygments' css definitions as well
sys.stdout.write('<style>')
sys.stdout.write(formatter.get_style_defs('.highlight'))
+sys.stdout.write(
+"""
+.linenumbers {
+ color: #474c57
+}
+.linenumbers:hover {
+ color: #727982;
+}
+.lines {
+ color: "#CCCAC2";
+}
+"""
+)
sys.stdout.write('</style>')
-sys.stdout.write(highlight(data, lexer, formatter, outfile=None))
+sys.stdout.write(highlight(data, lexer, formatter, outfile=None)) \ No newline at end of file
diff --git a/themed/base.html b/themed/base.html
index 32929825..a1e270d5 100644
--- a/themed/base.html
+++ b/themed/base.html
@@ -6,21 +6,21 @@
<head>
<meta charset="utf-8">
<title>{{ ctx.page.title }}</title>{# ctx.page.title is usually set by prepare_repo_cmd #}
- <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap">
{% if ctx.cfg.css_themed.items %}
{! for_each_string_list(&ctx.cfg.css_themed, cgit_shared_emit_css_link, NULL); !}
{% else %}
{! cgit_shared_emit_css_link(NULL, "/themed.css"); !}
{% endif %}
+
+ <link rel='shortcut icon' href='/favicon.ico'>
</head>
- <body class="text-gray-900">
+ <body class="bg-[#1F2430] text-[#CCCAC2]">
{% endblock %}
{% block repo_header %}
- <header class="bg-gray-50 border-b border-gray-300">{# Repo header #}
- <div class="max-w-[1280px] mx-auto py-4 flex gap-x-1">
- {# Heroicons outline cube
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-6"><path stroke-linecap="round" stroke-linejoin="round" d="m21 7.5-9-5.25L3 7.5m18 0-9 5.25m9-5.25v9l-9 5.25M3 7.5l9 5.25M3 7.5v9l9 5.25m0-9v9" /></svg>#}
- <div class="text-lg"><a href="{{ cgit_rooturl()|attr }}" class="hover:text-blue-600 hover:underline">{{ ctx.cfg.root_title }}</a> / <a href="{! cgit_shared_repolink_url(NULL, NULL, NULL); !}" class="font-semibold hover:text-blue-600 hover:underline">{{ ctx.repo->name }}</a></div>
+ <header class="bg-[#262F3F] border-b border-[#333A45]">{# Repo header #}
+ <div class="max-w-7xl mx-auto py-4 flex gap-x-1 items-center">
+ <img width="40px" height="40px" src="/favicon.ico"></img>
+ <div class="text-4xl"><a href="{{ cgit_rooturl()|attr }}" class="hover:text-[#73D0FF] hover:underline">{{ ctx.cfg.root_title }}</a> / <a href="{! cgit_shared_repolink_url(NULL, NULL, NULL); !}" class="font-semibold hover:text-[#73D0FF] hover:underline">{{ ctx.repo->name }}</a></div>
</div>
</header>
{% endblock %}
@@ -31,9 +31,9 @@
</div>
{% endblock %}
{% block repo_summary_bar_current_branch %}
- <a href="{! cgit_shared_repolink_url("refs", ctx.qry.head, NULL); !}" class="flex gap-x-1.5 py-1.5 px-3 bg-gray-50 border border-gray-300 rounded-md hover:bg-gray-100">
+ <a href="{! cgit_shared_repolink_url("refs", ctx.qry.head, NULL); !}" class="flex gap-x-1.5 py-1.5 px-3 bg-[#262F3F] border border-[#333A45] rounded-md hover:bg-[#333A45]">
{# Heroicons micro list-bullet #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-gray-500"><path d="M3 4.75a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM6.25 3a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 7.25a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 11.5a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM4 12.25a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM3 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-[#a3a29c]"><path d="M3 4.75a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM6.25 3a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 7.25a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 11.5a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM4 12.25a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM3 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" /></svg>
<span class="font-semibold self-baseline">
{% if (strcmp(ctx.qry.page, "tree") == 0 || strcmp(ctx.qry.page, "summary") == 0) && ctx.qry.oid %}
{! short_commit_id(ctx.qry.oid); !}
@@ -42,36 +42,36 @@
{% endif %}
</span>
{# Heroicons micro chevron-down #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-gray-500"><path fill-rule="evenodd" d="M4.22 6.22a.75.75 0 0 1 1.06 0L8 8.94l2.72-2.72a.75.75 0 1 1 1.06 1.06l-3.25 3.25a.75.75 0 0 1-1.06 0L4.22 7.28a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-[#a3a29c]"><path fill-rule="evenodd" d="M4.22 6.22a.75.75 0 0 1 1.06 0L8 8.94l2.72-2.72a.75.75 0 1 1 1.06 1.06l-3.25 3.25a.75.75 0 0 1-1.06 0L4.22 7.28a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd" /></svg>
</a>
{% endblock %}
{% block repo_summary_bar %}
<nav class="flex text-sm mb-4">
{# Repo navigation panel #}
{! repo_summary_bar_current_branch(); !}
- <a href="{! cgit_shared_repolink_url("log", ctx.qry.head, NULL); !}" class="flex gap-x-1 py-1.5 px-3 ml-3 rounded-md hover:bg-gray-100">
+ <a href="{! cgit_shared_repolink_url("log", ctx.qry.head, NULL); !}" class="flex gap-x-1 py-1.5 px-3 ml-3 rounded-md hover:bg-[#333A45]">
{# Heroicons micro clock #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-gray-500"><path fill-rule="evenodd" d="M1 8a7 7 0 1 1 14 0A7 7 0 0 1 1 8Zm7.75-4.25a.75.75 0 0 0-1.5 0V8c0 .414.336.75.75.75h3.25a.75.75 0 0 0 0-1.5h-2.5v-3.5Z" clip-rule="evenodd" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-[#a3a29c]"><path fill-rule="evenodd" d="M1 8a7 7 0 1 1 14 0A7 7 0 0 1 1 8Zm7.75-4.25a.75.75 0 0 0-1.5 0V8c0 .414.336.75.75.75h3.25a.75.75 0 0 0 0-1.5h-2.5v-3.5Z" clip-rule="evenodd" /></svg>
{! int num_commits = get_num_commits(); !}
- <span class="font-semibold">{{ num_commits|%d }}</span><span class="font-semibold text-gray-500">Commit{% if num_commits != 1 %}s{% endif %}</span>
+ <span class="font-semibold">{{ num_commits|%d }}</span><span class="font-semibold text-[#a3a29c]">Commit{% if num_commits != 1 %}s{% endif %}</span>
</a>
- <a href="{! cgit_shared_repolink_url("refs", ctx.qry.head, "heads"); !}" class="flex gap-x-1 py-1.5 px-3 rounded-md hover:bg-gray-100">
+ <a href="{! cgit_shared_repolink_url("refs", ctx.qry.head, "heads"); !}" class="flex gap-x-1 py-1.5 px-3 rounded-md hover:bg-[#333A45]">
{# Heroicons micro list-bullet #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-gray-500"><path d="M3 4.75a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM6.25 3a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 7.25a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 11.5a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM4 12.25a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM3 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-[#a3a29c]"><path d="M3 4.75a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM6.25 3a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 7.25a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM6.25 11.5a.75.75 0 0 0 0 1.5h7a.75.75 0 0 0 0-1.5h-7ZM4 12.25a1 1 0 1 1-2 0 1 1 0 0 1 2 0ZM3 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" /></svg>
{! int num_branches = get_num_branches(); !}
- <span class="font-semibold">{{ num_branches|%d }}</span><span class="font-semibold text-gray-500">Branch{% if num_branches != 1 %}es{% endif %}</span>
+ <span class="font-semibold">{{ num_branches|%d }}</span><span class="font-semibold text-[#a3a29c]">Branch{% if num_branches != 1 %}es{% endif %}</span>
</a>
- <a href="{! cgit_shared_repolink_url("refs", ctx.qry.head, "tags"); !}" class="flex gap-x-1 py-1.5 px-3 rounded-md hover:bg-gray-100">
+ <a href="{! cgit_shared_repolink_url("refs", ctx.qry.head, "tags"); !}" class="flex gap-x-1 py-1.5 px-3 rounded-md hover:bg-[#333A45]">
{# Heroicons micro tag #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-gray-500"><path fill-rule="evenodd" d="M4.5 2A2.5 2.5 0 0 0 2 4.5v2.879a2.5 2.5 0 0 0 .732 1.767l4.5 4.5a2.5 2.5 0 0 0 3.536 0l2.878-2.878a2.5 2.5 0 0 0 0-3.536l-4.5-4.5A2.5 2.5 0 0 0 7.38 2H4.5ZM5 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center text-[#a3a29c]"><path fill-rule="evenodd" d="M4.5 2A2.5 2.5 0 0 0 2 4.5v2.879a2.5 2.5 0 0 0 .732 1.767l4.5 4.5a2.5 2.5 0 0 0 3.536 0l2.878-2.878a2.5 2.5 0 0 0 0-3.536l-4.5-4.5A2.5 2.5 0 0 0 7.38 2H4.5ZM5 6a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z" clip-rule="evenodd" /></svg>
{! int num_tags = get_num_tags(); !}
- <span class="font-semibold">{{ num_tags|%d }}</span><span class="font-semibold text-gray-500">Tag{% if num_tags != 1 %}s{% endif %}</span>
+ <span class="font-semibold">{{ num_tags|%d }}</span><span class="font-semibold text-[#a3a29c]">Tag{% if num_tags != 1 %}s{% endif %}</span>
</a>
<div class="flex-1"></div>
<!--
- <div class="flex outline-1 outline-gray-300 rounded-lg has-[input:focus-within]:outline-2 has-[input:focus-within]:outline-blue-600">
+ <div class="flex outline-1 outline-[#333A45] rounded-lg has-[input:focus-within]:outline-2 has-[input:focus-within]:outline-[#73D0FF]">
{# Search box #}
- <select class="py-1.5 px-2 text-sm text-gray-500 focus:outline-none">
+ <select class="py-1.5 px-2 text-sm text-[#a3a29c] focus:outline-none">
<option>Log msg</option>
<option>Author</option>
<option>Committer</option>
@@ -80,13 +80,13 @@
<input type="text" placeholder="Search commits&hellip;" class="py-1.5 pl-2 text-sm focus:outline-none">
<button class="py-1.5 px-2 cursor-pointer">
{# Heroicons micro magnifying-glass #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="text-gray-700 size-4"><path fill-rule="evenodd" d="M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z" clip-rule="evenodd" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="text-[#CCCAC2] size-4"><path fill-rule="evenodd" d="M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z" clip-rule="evenodd" /></svg>
</button>
</div>
-->
<div class="flex relative">
{# Code box and panel #}
- <button class="flex gap-x-1.5 py-1.5 px-3 ml-3 bg-blue-500 text-white rounded-md cursor-pointer hover:bg-blue-600 peer">
+ <button class="flex gap-x-1.5 py-1.5 px-3 ml-3 bg-[#73D0FF] text-[#1F2430] rounded-md cursor-pointer hover:bg-[#4CB3FF] peer">
{# Code box #}
{# Heroicons micro code-bracket #}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center"><path fill-rule="evenodd" d="M4.78 4.97a.75.75 0 0 1 0 1.06L2.81 8l1.97 1.97a.75.75 0 1 1-1.06 1.06l-2.5-2.5a.75.75 0 0 1 0-1.06l2.5-2.5a.75.75 0 0 1 1.06 0ZM11.22 4.97a.75.75 0 0 0 0 1.06L13.19 8l-1.97 1.97a.75.75 0 1 0 1.06 1.06l2.5-2.5a.75.75 0 0 0 0-1.06l-2.5-2.5a.75.75 0 0 0-1.06 0ZM8.856 2.008a.75.75 0 0 1 .636.848l-1.5 10.5a.75.75 0 0 1-1.484-.212l1.5-10.5a.75.75 0 0 1 .848-.636Z" clip-rule="evenodd" /></svg>
@@ -94,51 +94,46 @@
{# Heroicons micro chevron-down #}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 self-center"><path fill-rule="evenodd" d="M4.22 6.22a.75.75 0 0 1 1.06 0L8 8.94l2.72-2.72a.75.75 0 1 1 1.06 1.06l-3.25 3.25a.75.75 0 0 1-1.06 0L4.22 7.28a.75.75 0 0 1 0-1.06Z" clip-rule="evenodd" /></svg>
</button>
- <div class="absolute top-10 right-0 w-[300px] border border-gray-300 rounded-md bg-white p-2 hidden peer-focus:block hover:block">
+ <div class="absolute top-10 right-0 w-75 border border-[#333A45] rounded-md bg-[#262F3F] p-2 hidden peer-focus:block hover:block">
{# Code panel #}
<div class="flex gap-x-1 items-center mb-2">
{# Heroicons micro command-line #}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path fill-rule="evenodd" d="M2 4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4Zm2.22 1.97a.75.75 0 0 0 0 1.06l.97.97-.97.97a.75.75 0 1 0 1.06 1.06l1.5-1.5a.75.75 0 0 0 0-1.06l-1.5-1.5a.75.75 0 0 0-1.06 0ZM8.75 8.5a.75.75 0 0 0 0 1.5h2.5a.75.75 0 0 0 0-1.5h-2.5Z" clip-rule="evenodd" /></svg>
<span class="font-semibold text-sm">Clone</span>
</div>
- <div class="flex outline-1 outline-gray-300 rounded-lg mb-2 has-[input:focus-within]:outline-2 has-[input:focus-within]:outline-blue-600">
+ <div class="flex outline-1 outline-[#333A45] rounded-lg mb-2 has-[input:focus-within]:outline-2 has-[input:focus-within]:outline-[#73D0FF]">
{# Clone URL box #}
- <span class="py-1.5 px-2 text-sm text-gray-500 bg-gray-50 border-r border-gray-300">
+ <span class="py-1.5 px-2 text-sm text-[#a3a29c] bg-[#262F3F] border-r border-[#333A45]">
HTTPS
</span>
- <input type="text" value="{! cgit_add_clone_urls(html_attr); !}" class="repo-clone-url flex-1 py-1.5 pl-2 text-sm focus:outline-none" onfocus="this.select();" readonly>
+ <input type="text" value="{! cgit_add_clone_urls(html_attr); !}" class="repo-clone-url flex-1 py-1.5 pl-2 text-sm focus:outline-none bg-[#1F2430] text-[#CCCAC2]" onfocus="this.select();" readonly>
<button class="py-1.5 px-2 cursor-pointer" onclick="document.querySelector('.repo-clone-url').select();document.execCommand('copy');">
{# Heroicons micro clipboard #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 text-gray-500"><path fill-rule="evenodd" d="M10.986 3H12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h1.014A2.25 2.25 0 0 1 7.25 1h1.5a2.25 2.25 0 0 1 2.236 2ZM9.5 4v-.75a.75.75 0 0 0-.75-.75h-1.5a.75.75 0 0 0-.75.75V4h3Z" clip-rule="evenodd" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4 text-[#a3a29c]"><path fill-rule="evenodd" d="M10.986 3H12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h1.014A2.25 2.25 0 0 1 7.25 1h1.5a2.25 2.25 0 0 1 2.236 2ZM9.5 4v-.75a.75.75 0 0 0-.75-.75h-1.5a.75.75 0 0 0-.75.75V4h3Z" clip-rule="evenodd" /></svg>
</button>
</div>
- <a href="vscode://vscode.git/clone?url={! cgit_add_clone_urls(html_url_arg); !}" class="flex items-center gap-x-1 hover:text-blue-600 hover:underline mb-2">
+ <a href="vscode://vscode.git/clone?url={! cgit_add_clone_urls(html_url_arg); !}" class="flex items-center gap-x-1 hover:text-[#73D0FF] hover:underline mb-2">
{# Heroicons micro arrow-top-right-on-square #}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path d="M6.22 8.72a.75.75 0 0 0 1.06 1.06l5.22-5.22v1.69a.75.75 0 0 0 1.5 0v-3.5a.75.75 0 0 0-.75-.75h-3.5a.75.75 0 0 0 0 1.5h1.69L6.22 8.72Z" /><path d="M3.5 6.75c0-.69.56-1.25 1.25-1.25H7A.75.75 0 0 0 7 4H4.75A2.75 2.75 0 0 0 2 6.75v4.5A2.75 2.75 0 0 0 4.75 14h4.5A2.75 2.75 0 0 0 12 11.25V9a.75.75 0 0 0-1.5 0v2.25c0 .69-.56 1.25-1.25 1.25h-4.5c-.69 0-1.25-.56-1.25-1.25v-4.5Z" /></svg>
Open with VS Code
</a>
- <a href="vscodium://vscode.git/clone?url={! cgit_add_clone_urls(html_url_arg); !}" class="flex items-center gap-x-1 hover:text-blue-600 hover:underline mb-2">
+ <a href="vscodium://vscode.git/clone?url={! cgit_add_clone_urls(html_url_arg); !}" class="flex items-center gap-x-1 hover:text-[#73D0FF] hover:underline mb-2">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path d="M6.22 8.72a.75.75 0 0 0 1.06 1.06l5.22-5.22v1.69a.75.75 0 0 0 1.5 0v-3.5a.75.75 0 0 0-.75-.75h-3.5a.75.75 0 0 0 0 1.5h1.69L6.22 8.72Z" /><path d="M3.5 6.75c0-.69.56-1.25 1.25-1.25H7A.75.75 0 0 0 7 4H4.75A2.75 2.75 0 0 0 2 6.75v4.5A2.75 2.75 0 0 0 4.75 14h4.5A2.75 2.75 0 0 0 12 11.25V9a.75.75 0 0 0-1.5 0v2.25c0 .69-.56 1.25-1.25 1.25h-4.5c-.69 0-1.25-.56-1.25-1.25v-4.5Z" /></svg>
Open with VSCodium
</a>
- <a href="jetbrains://idea/checkout/git?idea.required.plugins.id=Git4Idea&checkout.repo={! cgit_add_clone_urls(html_url_arg); !}" class="flex items-center gap-x-1 hover:text-blue-600 hover:underline">
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path d="M6.22 8.72a.75.75 0 0 0 1.06 1.06l5.22-5.22v1.69a.75.75 0 0 0 1.5 0v-3.5a.75.75 0 0 0-.75-.75h-3.5a.75.75 0 0 0 0 1.5h1.69L6.22 8.72Z" /><path d="M3.5 6.75c0-.69.56-1.25 1.25-1.25H7A.75.75 0 0 0 7 4H4.75A2.75 2.75 0 0 0 2 6.75v4.5A2.75 2.75 0 0 0 4.75 14h4.5A2.75 2.75 0 0 0 12 11.25V9a.75.75 0 0 0-1.5 0v2.25c0 .69-.56 1.25-1.25 1.25h-4.5c-.69 0-1.25-.56-1.25-1.25v-4.5Z" /></svg>
- Open with IntelliJ IDEA
- </a>
</div>
</div>
</nav>
{% endblock %}
{% block page_end %}
- <footer class="border-t border-gray-300">
+ <footer class="border-t border-[#333A45]">
{# Footer panel #}
- <div class="max-w-[1280px] mx-auto py-4">
- <div class="text-sm text-gray-500">
+ <div class="max-w-7xl mx-auto py-4">
+ <div class="text-sm text-[#a3a29c]">
{# cgit footer #}
generated by
- <a href="https://git.zx2c4.com/cgit/about/" class="hover:text-blue-600 hover:underline">cgit</a>
- (<a href="https://yingtongli.me/git/cgit-yli-theme" class="hover:text-blue-600 hover:underline">cgit-yli-theme {{ cgit_version }}</a>,
- <a href="https://git-scm.com/" class="hover:text-blue-600 hover:underline">git {{ git_version_string }}</a>)
+ <a href="https://git.zx2c4.com/cgit/about/" class="hover:text-[#73D0FF] hover:underline">cgit</a>
+ <a href="https://git-scm.com/" class="hover:text-[#73D0FF] hover:underline">git {{ git_version_string }}</a>)
at
{{ show_date(time(NULL), 0, cgit_date_mode(DATE_ISO8601)) }}
</div>
diff --git a/themed/commit.html b/themed/commit.html
index eef61107..d5f95c77 100644
--- a/themed/commit.html
+++ b/themed/commit.html
@@ -22,36 +22,36 @@
<main class="max-w-[1280px] mx-auto py-4">{# Main content #}
{! repo_description_panel(); !}
{! repo_summary_bar(); !}
- <div class="grid grid-cols-1 border border-gray-300 rounded-md divide-y divide-gray-300 mb-4">
+ <div class="grid grid-cols-1 border border-[#333A45] rounded-md divide-y divide-[#333A45] mb-4">
{# Commit info box #}
<div class="px-3 py-2 flex items-top">
<div class="flex-1">
{# Description panel #}
<div class="text-lg font-semibold">{{ info->subject }}</div>
{% if info-> msg %}
- <div class="text-gray-500 pt-1">{{ info->msg }}</div>
+ <div class="text-[#a3a29c] pt-1">{{ info->msg }}</div>
{% endif %}
</div>
<div class="py-2">
- <a href="{! cgit_shared_reporevlink_url("tree", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="p-2 text-sm text-white bg-blue-500 rounded-md hover:bg-blue-600">Browse Source</a>
+ <a href="{! cgit_shared_reporevlink_url("tree", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="p-2 text-sm text-[#1F2430] bg-[#73D0FF] rounded-md hover:bg-[#4CB3FF]">Browse Source</a>
</div>
</div>
- <div class="px-3 py-2 rounded-b-md bg-gray-50 flex gap-x-1 items-center">
+ <div class="px-3 py-2 rounded-b-md bg-[#262F3F] flex gap-x-1 items-center">
<img src="{! gravatar_url(info->author_email); !}?s=24">
<span class="font-semibold text-sm">{{ info->author }}</span>
- <span class="text-gray-500 text-sm">{! cgit_print_age_themed(info->committer_date, info->committer_tz, TM_MONTH * 12); !}</span>
+ <span class="text-[#a3a29c] text-sm">{! cgit_print_age_themed(info->committer_date, info->committer_tz, TM_MONTH * 12); !}</span>
<div class="flex-1"></div>
- <span class="text-gray-500 text-sm">
+ <span class="text-[#a3a29c] text-sm">
{% for struct commit_list *p = commit->parents; p; p = p->next %}
{! struct commit *parent = lookup_commit_reference(the_repository, &p->item->object.oid); !}
{% if parent %}
parent
- <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&p->item->object.oid), ctx.qry.vpath); !}" class="font-mono text-blue-500 hover:text-blue-600 hover:underline">{! short_commit_id(oid_to_hex(&p->item->object.oid)); !}</a>
+ <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&p->item->object.oid), ctx.qry.vpath); !}" class="font-mono text-[#73D0FF] hover:text-[#4CB3FF] hover:underline">{! short_commit_id(oid_to_hex(&p->item->object.oid)); !}</a>
&middot;
{% endif %}
{% endfor %}
commit
- <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="font-mono text-blue-500 hover:text-blue-600 hover:underline">{! short_commit_id(oid_to_hex(&commit->object.oid)); !}</a>
+ <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="font-mono text-[#73D0FF] hover:text-[#4CB3FF] hover:underline">{! short_commit_id(oid_to_hex(&commit->object.oid)); !}</a>
</span>
</div>
</div>
diff --git a/themed/diff.html b/themed/diff.html
index 40c5f086..633264dc 100644
--- a/themed/diff.html
+++ b/themed/diff.html
@@ -1,15 +1,10 @@
-{! #include "../ui-diff.h" !}
-
-{% page cgit_print_diff_page %}
-{! page_start(); !}
-{! repo_header(); !}
- <main class="max-w-[1280px] mx-auto py-4">{# Main content #}
-{! repo_description_panel(); !}
-{! repo_summary_bar(); !}
+{! #include "../ui-diff.h" !} {% page cgit_print_diff_page %} {! page_start();
+!} {! repo_header(); !}
+<main class="max-w-[1280px] mx-auto py-4">
+ {# Main content #} {! repo_description_panel(); !} {! repo_summary_bar(); !}
<div class="diff-panel overflow-x-auto">
- {# Diff panel #}
- {! cgit_print_diff(ctx.qry.oid, ctx.qry.oid2, ctx.qry.path, 0, 0); !}
+ {# Diff panel #} {! cgit_print_diff(ctx.qry.oid, ctx.qry.oid2, ctx.qry.path,
+ 0, 0); !}
</div>
</main>
-{! page_end(); !}
-{% endpage %}
+{! page_end(); !} {% endpage %}
diff --git a/themed/index.html b/themed/index.html
index 712307e2..88fb6abc 100644
--- a/themed/index.html
+++ b/themed/index.html
@@ -3,20 +3,21 @@
{% page cgit_print_repolist %}
{! ctx.page.title = ctx.cfg.root_title; !}
{! page_start(); !}
- <header class="bg-gray-50 border-b border-gray-300">
+ <header class="bg-[#262F3F] border-b border-[#333A45]">
{# Repo header #}
- <div class="max-w-[1280px] mx-auto py-4 flex gap-x-1">
- <a href="{{ cgit_rooturl()|attr }}" class="text-lg hover:underline">{{ ctx.cfg.root_title }}</a>
+ <div class="max-w-7xl mx-auto py-4 flex gap-x-1 items-center">
+ <img width="40px" height="40px" src="/favicon.ico"></img>
+ <a href="{{ cgit_rooturl()|attr }}" class="text-4xl text-[#CCCAC2] hover:text-[#73D0FF] hover:underline">{{ ctx.cfg.root_title }}</a>
</div>
</header>
- <main class="max-w-[1280px] mx-auto py-4">
+ <main class="max-w-7xl mx-auto py-4">
{# Main content #}
- <form method="GET" action="{{ cgit_rooturl()|attr }}" class="flex text-sm mb-4 outline-1 outline-gray-300 rounded-lg has-[input:focus-within]:outline-2 has-[input:focus-within]:outline-blue-600">
+ <form method="GET" action="{{ cgit_rooturl()|attr }}" class="flex text-sm mb-4 outline-1 outline-[#333A45] rounded-lg has-[input:focus-within]:outline-2 has-[input:focus-within]:outline-[#73D0FF]">
{# Search box #}
- <input name="q" value="{{ ctx.qry.search|attr }}" type="text" placeholder="Search repos&hellip;" class="flex-1 py-1.5 pl-2 text-sm focus:outline-none">
+ <input name="q" value="{{ ctx.qry.search|attr }}" type="text" placeholder="Search repos&hellip;" class="flex-1 py-1.5 pl-2 text-sm focus:outline-none bg-[#1F2430] text-[#CCCAC2]">
<button class="py-1.5 px-2 cursor-pointer" action="submit" value="search">
{# Heroicons micro magnifying-glass #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="text-gray-700 size-4"><path fill-rule="evenodd" d="M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z" clip-rule="evenodd" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="text-[#CCCAC2] size-4"><path fill-rule="evenodd" d="M9.965 11.026a5 5 0 1 1 1.06-1.06l2.755 2.754a.75.75 0 1 1-1.06 1.06l-2.755-2.754ZM10.5 7a3.5 3.5 0 1 1-7 0 3.5 3.5 0 0 1 7 0Z" clip-rule="evenodd" /></svg>
</button>
</form>
<div class="grid grid-cols-[auto_1fr]">
@@ -25,16 +26,16 @@
{% for int i = 0; i < cgit_repolist.count; i++ %}
{! ctx.repo = &cgit_repolist.repos[i]; !}
{! if (!cgit_repolist_is_visible(ctx.repo)) { continue; } !}
- <div{% if i > 0 %} class="border-t border-gray-300 pt-2 mt-2"{% endif %}>
+ <div{% if i > 0 %} class="border-t border-[#333A45] pt-2 mt-2"{% endif %}>
{# Heroicons outline cube #}
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-6"><path stroke-linecap="round" stroke-linejoin="round" d="m21 7.5-9-5.25L3 7.5m18 0-9 5.25m9-5.25v9l-9 5.25M3 7.5l9 5.25M3 7.5v9l9 5.25m0-9v9" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-6 text-[#a3a29c]"><path stroke-linecap="round" stroke-linejoin="round" d="m21 7.5-9-5.25L3 7.5m18 0-9 5.25m9-5.25v9l-9 5.25M3 7.5l9 5.25M3 7.5v9l9 5.25m0-9v9" /></svg>
</div>
- <div class="{% if i > 0 %}border-t border-gray-300 pt-2 mt-2 {% endif %}pl-2">
+ <div class="{% if i > 0 %}border-t border-[#333A45] pt-2 mt-2 {% endif %}pl-2">
{! char *repourl = cgit_repourl(ctx.repo->url); !}
- <div><a href="{{ repourl|attr }}" class="font-semibold text-blue-500 hover:text-blue-600 hover:underline">{{ ctx.repo->name }}</a></div>
+ <div><a href="{{ repourl|attr }}" class="font-semibold text-[#73D0FF] hover:text-[#4CB3FF] hover:underline">{{ ctx.repo->name }}</a></div>
{! free(repourl); !}
- <div class="text-sm text-gray-500">{{ ctx.repo->desc }}</div>
- <div class="text-sm text-gray-500">Updated {! cgit_repolist_print_modtime_themed(ctx.repo); !}</div>
+ <div class="text-sm text-[#a3a29c]">{{ ctx.repo->desc }}</div>
+ <div class="text-sm text-[#a3a29c]">Updated {! cgit_repolist_print_modtime_themed(ctx.repo); !}</div>
</div>
{% endfor %}
</div>
diff --git a/themed/log.html b/themed/log.html
index 850e11d4..ff8370a2 100644
--- a/themed/log.html
+++ b/themed/log.html
@@ -1,7 +1,7 @@
{% page cgit_print_log %}
{! page_start(); !}
{! repo_header(); !}
- <main class="max-w-[1280px] mx-auto py-4">{# Main content #}
+ <main class="max-w-7xl mx-auto py-4">{# Main content #}
{! repo_description_panel(); !}
{! repo_summary_bar(); !}
{!
@@ -21,27 +21,27 @@
setup_revisions(argc, argv, &rev, NULL);
prepare_revision_walk(&rev);
!}
- <div class="grid grid-cols-[1fr_auto_auto] border border-gray-300 rounded-md">
+ <div class="grid grid-cols-[1fr_auto_auto] border border-[#333A45] rounded-md">
{# Commits list #}
- <div class="col-span-3 rounded-t-md bg-gray-50 px-3 py-2 font-semibold text-sm">
+ <div class="col-span-3 rounded-t-md bg-[#262F3F] px-3 py-2 font-semibold text-sm">
Commits
</div>
{% while (commit = get_revision(&rev)) != NULL %}
{! struct commitinfo *info = cgit_parse_commit(commit); !}
- <div class="px-3 py-2 border-t border-gray-300">
- <div><a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="hover:text-blue-600 hover:underline">{{ info->subject }}</a></div>
- <div class="mt-2 text-sm text-gray-500 flex gap-x-1 items-center">
+ <div class="px-3 py-2 border-t border-[#333A45]">
+ <div><a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="hover:text-[#73D0FF] hover:underline">{{ info->subject }}</a></div>
+ <div class="mt-2 text-sm text-[#a3a29c] flex gap-x-1 items-center">
<img src="{! gravatar_url(info->author_email); !}?s=16">
{{ info->author }} committed {! cgit_print_age_themed(info->committer_date, info->committer_tz, TM_MONTH * 12); !}
</div>
</div>
- <div class="px-3 py-2 border-t border-gray-300 flex items-center">
- <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="text-sm font-mono text-gray-500 hover:text-blue-600 hover:underline">
+ <div class="px-3 py-2 border-t border-[#333A45] flex items-center">
+ <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="text-sm font-mono text-[#a3a29c] hover:text-[#73D0FF] hover:underline">
{! short_commit_id(oid_to_hex(&commit->object.oid)); !}
</a>
</div>
- <div class="px-3 py-2 border-t border-gray-300 flex items-center">
- <a href="{! cgit_shared_reporevlink_url("tree", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="text-gray-500 hover:text-blue-600">
+ <div class="px-3 py-2 border-t border-[#333A45] flex items-center">
+ <a href="{! cgit_shared_reporevlink_url("tree", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="text-[#a3a29c] hover:text-[#73D0FF]">
{# Heroicons mini code-bracket #}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-5"><path fill-rule="evenodd" d="M6.28 5.22a.75.75 0 0 1 0 1.06L2.56 10l3.72 3.72a.75.75 0 0 1-1.06 1.06L.97 10.53a.75.75 0 0 1 0-1.06l4.25-4.25a.75.75 0 0 1 1.06 0Zm7.44 0a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L17.44 10l-3.72-3.72a.75.75 0 0 1 0-1.06ZM11.377 2.011a.75.75 0 0 1 .612.867l-2.5 14.5a.75.75 0 0 1-1.478-.255l2.5-14.5a.75.75 0 0 1 .866-.612Z" clip-rule="evenodd" /></svg>
</a>
diff --git a/themed/refs.html b/themed/refs.html
index 18d7d2da..9267d1bc 100644
--- a/themed/refs.html
+++ b/themed/refs.html
@@ -5,7 +5,7 @@
{% page cgit_print_refs %}
{! page_start(); !}
{! repo_header(); !}
- <main class="max-w-[1280px] mx-auto py-4">{# Main content #}
+ <main class="max-w-7xl mx-auto py-4">{# Main content #}
{! repo_description_panel(); !}
{! repo_summary_bar(); !}
{% if !ctx.qry.path || starts_with(ctx.qry.path, "heads") %}
@@ -19,9 +19,9 @@
qsort(list.refs, list.count, sizeof(*list.refs), cgit_refs_cmp_ref_name);
}
!}
- <div class="grid grid-cols-1 border border-gray-300 rounded-md divide-y divide-gray-300">
+ <div class="grid grid-cols-1 border border-[#333A45] rounded-md divide-y divide-[#333A45]">
{# Branches list #}
- <div class="rounded-t-md bg-gray-50 px-3 py-2 font-semibold text-sm">
+ <div class="rounded-t-md bg-[#262F3F] px-3 py-2 font-semibold text-sm">
Branches
</div>
{% for int i = 0; i < list.count; i++ %}
@@ -32,9 +32,9 @@
<div class="px-3 py-2 flex">
<div>
{# Branch info #}
- <div><a href="{! cgit_shared_repolink_url(NULL, name, NULL); !}" class="text-blue-500 hover:text-blue-600 hover:underline">{{ name }}</a></div>
+ <div><a href="{! cgit_shared_repolink_url(NULL, name, NULL); !}" class="text-[#73D0FF] hover:text-[#4CB3FF] hover:underline">{{ name }}</a></div>
{% if ref->object->type == OBJ_COMMIT %}
- <div class="text-sm text-gray-500 flex gap-x-1">
+ <div class="text-sm text-[#a3a29c] flex gap-x-1">
{{ info->subject }} &middot; Updated {! cgit_print_age_themed(info->committer_date, info->committer_tz, TM_MONTH * 12); !}
<img src="{! gravatar_url(info->author_email); !}?s=24" class="mt-[-0.2rem]">
{{ info->author }}
@@ -43,7 +43,7 @@
</div>
{% if strcmp(name, ctx.qry.head) %}{# Only show compare button if not equal to current branch #}
<div class="flex-1"></div>
- <a href="{! cgit_shared_reporevlink_url("diff", ctx.qry.head, name, NULL); !}&id2={{ ctx.qry.head|urlencode }}" class="py-1.5 px-3 self-center text-gray-500 bg-gray-50 border border-gray-300 rounded-md hover:bg-gray-100">
+ <a href="{! cgit_shared_reporevlink_url("diff", ctx.qry.head, name, NULL); !}&id2={{ ctx.qry.head|urlencode }}" class="py-1.5 px-3 self-center text-[#a3a29c] bg-[#262F3F] border border-[#333A45] rounded-md hover:bg-[#333A45]">
Compare
</a>
{% endif %}
@@ -61,9 +61,9 @@
!}
{% if list.count > 0 %}
{! qsort(list.refs, list.count, sizeof(*list.refs), cgit_refs_cmp_tag_age); !}
- <div class="grid grid-cols-1 border border-gray-300 rounded-md divide-y divide-gray-300 mt-4">
+ <div class="grid grid-cols-1 border border-[#333A45] rounded-md divide-y divide-[#333A45] mt-4">
{# Tags list #}
- <div class="rounded-t-md bg-gray-50 px-3 py-2 font-semibold text-sm">
+ <div class="rounded-t-md bg-[#262F3F] px-3 py-2 font-semibold text-sm">
Tags
</div>
{% for int i = 0; i < list.count; i++ %}
@@ -82,9 +82,9 @@
}
!}
<div class="px-3 py-2">
- <div><a href="{! cgit_shared_repolink_url(NULL, name, NULL); !}" class="text-blue-500 hover:text-blue-600 hover:underline">{{ name }}</a></div>
+ <div><a href="{! cgit_shared_repolink_url(NULL, name, NULL); !}" class="text-[#73D0FF] hover:text-[#4CB3FF] hover:underline">{{ name }}</a></div>
{% if info && (info->tagger_date > 0 || info->tagger) %}
- <div class="text-sm text-gray-500 flex gap-x-1">
+ <div class="text-sm text-[#a3a29c] flex gap-x-1">
{% if info->tagger_date > 0 %}
Updated {! cgit_print_age_themed(info->tagger_date, info->tagger_tz, TM_MONTH * 12); !}
{% endif %}
@@ -94,7 +94,7 @@
{% endif %}
</div>
{% elif ref->object->type == OBJ_COMMIT %}
- <div class="text-sm text-gray-500 flex gap-x-1">
+ <div class="text-sm text-[#a3a29c] flex gap-x-1">
Updated {! cgit_print_age_themed(ref->commit->commit->date, 0, TM_MONTH * 12); !}
<img src="{! gravatar_url(ref->commit->author_email); !}?s=24" class="mt-[-0.2rem]">
{{ ref->commit->author }}
diff --git a/themed/summary.html b/themed/summary.html
index be88b54a..26342d53 100644
--- a/themed/summary.html
+++ b/themed/summary.html
@@ -10,10 +10,10 @@
{% block cgit_print_summary_impl %}
{! page_start(); !}
{! repo_header(); !}
- <main class="max-w-[1280px] mx-auto py-4">{# Main content #}
+ <main class="max-w-7xl mx-auto py-4">{# Main content #}
{! repo_description_panel(); !}
{! repo_summary_bar(); !}
- <div class="grid grid-cols-[auto_1fr_auto_auto] border border-gray-300 rounded-md mb-4">
+ <div class="grid grid-cols-[auto_1fr_auto_auto] border border-[#333A45] rounded-md mb-4">
{# Latest commit panel (specify rounded-t-md so background does not cover border) #}
{!
char *hex = ctx.qry.oid;
@@ -29,13 +29,13 @@
}
struct commitinfo *info = cgit_parse_commit(commit);
!}
- <div class="col-span-4 rounded-t-md bg-gray-50 px-3 py-2 flex gap-x-1">
+ <div class="col-span-4 rounded-t-md bg-[#262F3F] px-3 py-2 flex gap-x-1">
<img src="{! gravatar_url(info->author_email); !}?s=24">
<span class="font-semibold">{{ info->author }}</span>
- <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="ml-2 text-gray-500 hover:text-blue-600 hover:underline">{{ info->subject }}</a>
+ <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="ml-2 text-[#a3a29c] hover:text-[#73D0FF] hover:underline">{{ info->subject }}</a>
<div class="flex-1"></div>
- <span class="text-gray-500">
- <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="font-mono hover:text-blue-600 hover:underline">
+ <span class="text-[#a3a29c]">
+ <a href="{! cgit_shared_reporevlink_url("commit", ctx.qry.head, oid_to_hex(&commit->object.oid), ctx.qry.vpath); !}" class="font-mono hover:text-[#73D0FF] hover:underline">
{! short_commit_id(oid_to_hex(&commit->object.oid)); !}
</a>
&middot;
@@ -53,20 +53,21 @@
read_tree(the_repository, tree, &paths, ls_item, NULL);
!}
</div>
+
{% if ctx.repo->readme.nr > 0 %}
{!
char *filename = ctx.repo->readme.items[0].string;
char *ref = ctx.repo->readme.items[0].util;
!}
- <div class="flex flex-col border border-gray-300 rounded-md">
+ <div class="readme flex flex-col border border-[#333A45] rounded-md">
{# Readme panel #}
- <div class="rounded-t-md bg-gray-50 px-3 py-2 flex gap-x-1 items-center">
+ <div class="rounded-t-md bg-[#262F3F] px-3 py-2 flex gap-x-1 items-center">
{# Heroicons micro book-open #}
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path d="M7.25 3.688a8.035 8.035 0 0 0-4.872-.523A.48.48 0 0 0 2 3.64v7.994c0 .345.342.588.679.512a6.02 6.02 0 0 1 4.571.81V3.688ZM8.75 12.956a6.02 6.02 0 0 1 4.571-.81c.337.075.679-.167.679-.512V3.64a.48.48 0 0 0-.378-.475 8.034 8.034 0 0 0-4.872.523v9.268Z" /></svg>
<span class="font-semibold text-sm">{{ filename }}</span>
+ {# Readme content #}
</div>
- {# Readme content #}
- <div class="rendered-file p-7 border-t border-gray-300">
+ <div class="rendered-file p-1 border-t border-[#333A45] text-[#CCCAC2]">
{!
cgit_open_filter(ctx.repo->about_filter, filename);
if (ref) {
@@ -78,7 +79,7 @@
!}
</div>
</div>
- {% endif %}
+ <!-- {% endif %} -->
</main>
{! page_end(); !}
{% endblock %}
diff --git a/themed/themed.in.css b/themed/themed.in.css
index f82fb5b4..646ad259 100644
--- a/themed/themed.in.css
+++ b/themed/themed.in.css
@@ -1,11 +1,12 @@
@import "tailwindcss";
@theme {
- --font-sans: "Noto Sans", Helvetica, Arial, sans-serif;
+ --font-sans: "Cascadia Code", ui-monospace;
+ --font-mono: "Cascadia Code", ui-monospace;
}
:root {
- font-size: 11pt;
+ font-size: 13pt;
}
.rendered-file {
@@ -25,21 +26,19 @@
table.blob {
margin-top: 0.5em;
- border-top: solid 1px black;
}
table.blob td.hashes,
table.blob td.lines {
margin: 0; padding: 0 0 0 0.5em;
vertical-align: top;
- color: black;
}
table.blob td.linenumbers {
margin: 0; padding: 0 0.5em 0 0.5em;
vertical-align: top;
text-align: right;
- border-right: 1px solid gray;
+ /* border-right: 1px solid gray; */
}
table.blob pre {
@@ -48,121 +47,122 @@
table.blob td.linenumbers a,
table.ssdiff td.lineno a {
- color: gray;
text-align: right;
text-decoration: none;
}
table.blob td.linenumbers a:hover,
table.ssdiff td.lineno a:hover {
- color: black;
+ color: #727982;
}
}
-
.diff-panel {
a {
- @apply text-blue-500 hover:text-blue-600 hover:underline;
+ @apply text-[#73D0FF] hover:text-[#4CB3FF] hover:underline;
}
-
+
/* From cgit.css */
-
+
div.diffstat-header {
font-weight: bold;
}
-
+
table.diffstat {
border-collapse: collapse;
- border: solid 1px #aaa;
- background-color: #eee;
+ border: solid 1px #333A45;
+ background-color: #262F3F;
}
-
+
table.diffstat th {
font-weight: normal;
text-align: left;
text-decoration: underline;
padding: 0.1em 1em 0.1em 0.1em;
font-size: 100%;
+ color: #A9B1D6;
}
-
+
table.diffstat td {
padding: 0.2em 0.2em 0.1em 0.1em;
font-size: 100%;
border: none;
}
-
+
table.diffstat td.mode {
white-space: nowrap;
}
-
+
table.diffstat td span.modechange {
padding-left: 1em;
- color: red;
+ color: #F27983;
}
-
+
table.diffstat td.add a {
- color: green;
+ color: #87D96C;
}
-
+
table.diffstat td.del a {
- color: red;
+ color: #F27983;
}
-
+
table.diffstat td.upd a {
- color: blue;
+ color: #73D0FF;
}
-
+
table.diffstat td.graph {
width: 500px;
vertical-align: middle;
}
-
+
table.diffstat td.graph table {
border: none;
}
-
+
table.diffstat td.graph td {
padding: 0px;
border: 0px;
height: 7pt;
}
-
+
table.diffstat td.graph td.add {
- background-color: #5c5;
+ background-color: #87D96C;
}
-
+
table.diffstat td.graph td.rem {
- background-color: #c55;
+ background-color: #F27983;
}
-
+
div.diffstat-summary {
- color: #888;
+ color: #5C6773;
padding-top: 0.5em;
}
-
+
table.diff {
width: 100%;
}
-
+
table.diff td {
@apply font-mono;
white-space: pre;
+ background-color: #171B24;
+ border: 1px #8A91992E;
}
-
+
table.diff td div.head {
font-weight: bold;
margin-top: 1em;
- color: black;
+ color: #A9B1D6;
}
-
+
table.diff td div.hunk {
- color: #009;
+ color: #73D0FF;
}
-
+
table.diff td div.add {
- color: green;
+ color: #87D96C;
}
-
+
table.diff td div.del {
- color: red;
+ color: #F27983;
}
}
diff --git a/themed/tree.html b/themed/tree.html
index bfd3709e..eaa2b4a4 100644
--- a/themed/tree.html
+++ b/themed/tree.html
@@ -4,7 +4,7 @@
<div class="px-3">
{# Breadcrumbs #}
{# TODO: Make breadcrumbs hyperlinks #}
- <a href="{! cgit_shared_reporevlink_url(NULL, ctx.qry.head, ctx.qry.oid, NULL); !}" class="text-blue-500 hover:text-blue-600 hover:underline">{{ ctx.repo->name }}</a> / {{ ctx.qry.path }}
+ <a href="{! cgit_shared_reporevlink_url(NULL, ctx.qry.head, ctx.qry.oid, NULL); !}" class="text-[#73D0FF] hover:text-[#73D0FF] hover:underline">{{ ctx.repo->name }}</a> / {{ ctx.qry.path }}
</div>
{% endblock %}
@@ -15,7 +15,7 @@
{! repo_summary_bar_current_branch(); !}
{! repo_navigation_breadcrumbs(); !}
</nav>
- <div class="grid grid-cols-[auto_1fr_auto_auto] border border-gray-300 rounded-md mb-4">
+ <div class="grid grid-cols-[auto_1fr_auto_auto] border border-[#333A45] rounded-md mb-4">
{% endblock %}
{% block tree_content_directory_footer %}
{# Footer for directory listing #}
@@ -29,7 +29,7 @@
<div class="flex-1"></div>
<div class="flex">
{# File buttons #}
- <a href="{! cgit_shared_repolink_url("plain", ctx.qry.head, ctx.qry.path); !}" class="text-sm text-gray-500 py-1.5 px-3 bg-gray-50 border border-gray-300 rounded-md hover:bg-gray-100">Raw</a>
+ <a href="{! cgit_shared_repolink_url("plain", ctx.qry.head, ctx.qry.path); !}" class="text-sm text-[#a3a29c] py-1.5 px-3 bg-[#262F3F] border border-[#333A45] rounded-md hover:bg-[#333A45]">Raw</a>
</div>
</nav>
{!
@@ -45,7 +45,7 @@
bool is_binary = buffer_is_binary(buf, size);
!}
{% if ctx.cfg.max_blob_size && size / 1024 > ctx.cfg.max_blob_size %}
- <div class="text-red-600">
+ <div class="text-[#F07178]">
blob size ({{ size / 1024|%ld }}KB) exceeds display size limit ({{ ctx.cfg.max_blob_size|%d }}KB).
</div>
{% else %}
@@ -135,7 +135,7 @@
!}
{! page_start(); !}
{! repo_header(); !}
- <main class="max-w-[1280px] mx-auto py-4">{# Main content #}
+ <main class="max-w-7xl mx-auto py-4">{# Main content #}
{! repo_description_panel(); !}
{!
char *hex = ctx.qry.oid;
@@ -174,7 +174,7 @@
{! repo_summary_bar_current_branch(); !}
{! repo_navigation_breadcrumbs(); !}
</nav>
- <div class="text-red-600">File not found</div>
+ <div class="text-[#F07178]">File not found</div>
{% endif %}
</main>
{! page_end(); !}
diff --git a/themed/tree_common.html b/themed/tree_common.html
index 51f7cd2a..f04659e1 100644
--- a/themed/tree_common.html
+++ b/themed/tree_common.html
@@ -9,37 +9,37 @@
struct strbuf fullpath = STRBUF_INIT;
strbuf_addf(&fullpath, "%s%s", base->buf, pathname);
!}
- <div class="pl-3 pr-1 py-2{% if border_above %} border-t border-gray-300{% endif %}">
+ <div class="pl-3 pr-1 py-2{% if border_above %} border-t border-[#333A45]{% endif %}">
{# File icon #}
{% if S_ISGITLINK(mode) %}
{# Heroicons solid folder #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="size-5 text-gray-500 mt-[0.1rem]"><path d="M19.5 21a3 3 0 0 0 3-3v-4.5a3 3 0 0 0-3-3h-15a3 3 0 0 0-3 3V18a3 3 0 0 0 3 3h15ZM1.5 10.146V6a3 3 0 0 1 3-3h5.379a2.25 2.25 0 0 1 1.59.659l2.122 2.121c.14.141.331.22.53.22H19.5a3 3 0 0 1 3 3v1.146A4.483 4.483 0 0 0 19.5 9h-15a4.483 4.483 0 0 0-3 1.146Z" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="size-5 text-[#a3a29c] mt-[0.1rem]"><path d="M19.5 21a3 3 0 0 0 3-3v-4.5a3 3 0 0 0-3-3h-15a3 3 0 0 0-3 3V18a3 3 0 0 0 3 3h15ZM1.5 10.146V6a3 3 0 0 1 3-3h5.379a2.25 2.25 0 0 1 1.59.659l2.122 2.121c.14.141.331.22.53.22H19.5a3 3 0 0 1 3 3v1.146A4.483 4.483 0 0 0 19.5 9h-15a4.483 4.483 0 0 0-3 1.146Z" /></svg>
{% elif S_ISDIR(mode) %}
{# Heroicons solid folder #}
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="size-5 text-blue-400 mt-[0.1rem]"><path d="M19.5 21a3 3 0 0 0 3-3v-4.5a3 3 0 0 0-3-3h-15a3 3 0 0 0-3 3V18a3 3 0 0 0 3 3h15ZM1.5 10.146V6a3 3 0 0 1 3-3h5.379a2.25 2.25 0 0 1 1.59.659l2.122 2.121c.14.141.331.22.53.22H19.5a3 3 0 0 1 3 3v1.146A4.483 4.483 0 0 0 19.5 9h-15a4.483 4.483 0 0 0-3 1.146Z" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="size-5 text-[#73D0FF] mt-[0.1rem]"><path d="M19.5 21a3 3 0 0 0 3-3v-4.5a3 3 0 0 0-3-3h-15a3 3 0 0 0-3 3V18a3 3 0 0 0 3 3h15ZM1.5 10.146V6a3 3 0 0 1 3-3h5.379a2.25 2.25 0 0 1 1.59.659l2.122 2.121c.14.141.331.22.53.22H19.5a3 3 0 0 1 3 3v1.146A4.483 4.483 0 0 0 19.5 9h-15a4.483 4.483 0 0 0-3 1.146Z" /></svg>
{% elif S_ISLNK(mode) %}
{# Heroicons outline link #}
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-5 text-gray-500 mt-[0.1rem]"><path stroke-linecap="round" stroke-linejoin="round" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-5 text-[#a3a29c] mt-[0.1rem]"><path stroke-linecap="round" stroke-linejoin="round" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244" /></svg>
{% else %}
{# Heroicons outline document #}
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-5 text-gray-500 mt-[0.1rem]"><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9Z" /></svg>
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-5 text-[#a3a29c] mt-[0.1rem]"><path stroke-linecap="round" stroke-linejoin="round" d="M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9Z" /></svg>
{% endif %}
</div>
- <div class="pr-3 py-2{% if border_above %} border-t border-gray-300{% endif %}">
+ <div class="font-mono pr-3 py-2{% if border_above %} border-t border-[#333A45]{% endif %}">
{# File name and link #}
{% if S_ISGITLINK(mode) %}
{! cgit_submodule_link("ls-mod", fullpath.buf, pathname, oid_to_hex(oid)); !}
{% else %}
- <a href="{! cgit_shared_reporevlink_url("tree", ctx.qry.head, ctx.qry.oid, fullpath.buf); !}" class="hover:text-blue-600 hover:underline">
+ <a href="{! cgit_shared_reporevlink_url("tree", ctx.qry.head, ctx.qry.oid, fullpath.buf); !}" class="hover:text-[#73D0FF] hover:underline">
{{ pathname }}
</a>
{% endif %}
</div>
- <div class="pr-3 py-2{% if border_above %} border-t border-gray-300{% endif %} text-gray-500 font-mono">
+ <div class="pr-3 py-2{% if border_above %} border-t border-[#333A45]{% endif %} text-[#a3a29c] font-mono">
{# Mode #}
{! cgit_print_filemode(mode); !}
</div>
- <div class="pr-3 py-2{% if border_above %} border-t border-gray-300{% endif %} text-gray-500 text-end">
+ <div class="pr-3 py-2{% if border_above %} border-t border-[#333A45]{% endif %} text-[#a3a29c] text-end">
{# File size #}
{% if !S_ISGITLINK(mode) && !S_ISDIR(mode) && !S_ISLNK(mode) %}
{{ size|%ld }}
diff --git a/ui-blob.c b/ui-blob.c
index e554fe9c..3a40f5ab 100644
--- a/ui-blob.c
+++ b/ui-blob.c
@@ -23,7 +23,7 @@ struct walk_tree_context {
static int walk_tree(const struct object_id *oid, struct strbuf *base,
const char *pathname, unsigned mode, void *cbdata)
{
- struct walk_tree_context *walk_tree_ctx = cbdata;
+ struct walk_tree_context *walk_tree_ctx = cbdata;
if (walk_tree_ctx->file_only && !S_ISREG(mode))
return READ_TREE_RECURSIVE;
@@ -88,21 +88,29 @@ int cgit_print_file(char *path, const char *head, int file_only)
.found_path = 0,
.file_only = file_only
};
-
+ // html("<p>");
if (repo_get_oid(the_repository, head, &oid))
return -1;
type = oid_object_info(the_repository, &oid, &size);
- if (type == OBJ_COMMIT) {
- commit = lookup_commit_reference(the_repository, &oid);
- read_tree(the_repository, repo_get_commit_tree(the_repository, commit),
- &paths, walk_tree, &walk_tree_ctx);
- if (!walk_tree_ctx.found_path)
- return -1;
+ // htmlf("%ld %s %ld", oid, head, type);
+ if (type == OBJ_COMMIT) {
+ commit = lookup_commit_reference(the_repository, &oid);
+ // htmlf("%ld", commit);
+ int r = read_tree(the_repository,
+ repo_get_commit_tree(the_repository, commit), &paths,
+ walk_tree, &walk_tree_ctx);
+ // htmlf("[%d]", r);
+ if (!walk_tree_ctx.found_path) {
+ // html("couldnt find");
+ return -1;
+ }
type = oid_object_info(the_repository, &oid, &size);
- }
+ // htmlf("was commit; %ld %ld", type, size);
+ }
+
if (type == OBJ_BAD)
return -1;
- buf = repo_read_object_file(the_repository, &oid, &type, &size);
+ buf = repo_read_object_file(the_repository, &oid, &type, &size);
if (!buf)
return -1;
buf[size] = '\0';
diff --git a/ui-repolist.c b/ui-repolist.c
index 18020860..906f3629 100644
--- a/ui-repolist.c
+++ b/ui-repolist.c
@@ -386,7 +386,7 @@ void _orig_cgit_print_repolist(void)
void cgit_print_site_readme(void)
{
- cgit_print_layout_start();
+ // cgit_print_layout_start();
if (!ctx.cfg.root_readme)
goto done;
cgit_open_filter(ctx.cfg.about_filter, ctx.cfg.root_readme);