Skip to content

Commit c467363

Browse files
committed
fix centering add tagging options
1 parent ac99f27 commit c467363

File tree

5 files changed

+302
-28
lines changed

5 files changed

+302
-28
lines changed

assets/_layout.html

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,10 @@ <h1 class="btn btn-ghost text-xl">TCP.WIKI</h1>
4040
</div>
4141
</header>
4242
<main class="bg-base-300">
43-
<div class="prose content-center">
44-
{{ .Content }}
43+
<div class="w-full p-4">
44+
<div class="prose prose-lg mx-auto">
45+
{{ .Content }}
46+
</div>
4547
</div>
4648
{{ if .UseGit }}
4749
<footer class="footer px-10 py-4 border-t bg-base-200 text-base-content border-base-300">

assets/main.css

Lines changed: 264 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1141,6 +1141,253 @@ html {
11411141
margin-bottom: 0;
11421142
}
11431143

1144+
.prose-lg {
1145+
font-size: 1.125rem;
1146+
line-height: 1.7777778;
1147+
}
1148+
1149+
.prose-lg :where(p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1150+
margin-top: 1.3333333em;
1151+
margin-bottom: 1.3333333em;
1152+
}
1153+
1154+
.prose-lg :where([class~="lead"]):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1155+
font-size: 1.2222222em;
1156+
line-height: 1.4545455;
1157+
margin-top: 1.0909091em;
1158+
margin-bottom: 1.0909091em;
1159+
}
1160+
1161+
.prose-lg :where(blockquote):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1162+
margin-top: 1.6666667em;
1163+
margin-bottom: 1.6666667em;
1164+
padding-left: 1em;
1165+
}
1166+
1167+
.prose-lg :where(h1):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1168+
font-size: 2.6666667em;
1169+
margin-top: 0;
1170+
margin-bottom: 0.8333333em;
1171+
line-height: 1;
1172+
}
1173+
1174+
.prose-lg :where(h2):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1175+
font-size: 1.6666667em;
1176+
margin-top: 1.8666667em;
1177+
margin-bottom: 1.0666667em;
1178+
line-height: 1.3333333;
1179+
}
1180+
1181+
.prose-lg :where(h3):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1182+
font-size: 1.3333333em;
1183+
margin-top: 1.6666667em;
1184+
margin-bottom: 0.6666667em;
1185+
line-height: 1.5;
1186+
}
1187+
1188+
.prose-lg :where(h4):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1189+
margin-top: 1.7777778em;
1190+
margin-bottom: 0.4444444em;
1191+
line-height: 1.5555556;
1192+
}
1193+
1194+
.prose-lg :where(img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1195+
margin-top: 1.7777778em;
1196+
margin-bottom: 1.7777778em;
1197+
}
1198+
1199+
.prose-lg :where(picture):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1200+
margin-top: 1.7777778em;
1201+
margin-bottom: 1.7777778em;
1202+
}
1203+
1204+
.prose-lg :where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1205+
margin-top: 0;
1206+
margin-bottom: 0;
1207+
}
1208+
1209+
.prose-lg :where(video):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1210+
margin-top: 1.7777778em;
1211+
margin-bottom: 1.7777778em;
1212+
}
1213+
1214+
.prose-lg :where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1215+
font-size: 0.8888889em;
1216+
border-radius: 0.3125rem;
1217+
padding-top: 0.2222222em;
1218+
padding-right: 0.4444444em;
1219+
padding-bottom: 0.2222222em;
1220+
padding-left: 0.4444444em;
1221+
}
1222+
1223+
.prose-lg :where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1224+
font-size: 0.8888889em;
1225+
}
1226+
1227+
.prose-lg :where(h2 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1228+
font-size: 0.8666667em;
1229+
}
1230+
1231+
.prose-lg :where(h3 code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1232+
font-size: 0.875em;
1233+
}
1234+
1235+
.prose-lg :where(pre):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1236+
font-size: 0.8888889em;
1237+
line-height: 1.75;
1238+
margin-top: 2em;
1239+
margin-bottom: 2em;
1240+
border-radius: 0.375rem;
1241+
padding-top: 1em;
1242+
padding-right: 1.5em;
1243+
padding-bottom: 1em;
1244+
padding-left: 1.5em;
1245+
}
1246+
1247+
.prose-lg :where(ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1248+
margin-top: 1.3333333em;
1249+
margin-bottom: 1.3333333em;
1250+
padding-left: 1.5555556em;
1251+
}
1252+
1253+
.prose-lg :where(ul):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1254+
margin-top: 1.3333333em;
1255+
margin-bottom: 1.3333333em;
1256+
padding-left: 1.5555556em;
1257+
}
1258+
1259+
.prose-lg :where(li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1260+
margin-top: 0.6666667em;
1261+
margin-bottom: 0.6666667em;
1262+
}
1263+
1264+
.prose-lg :where(ol > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1265+
padding-left: 0.4444444em;
1266+
}
1267+
1268+
.prose-lg :where(ul > li):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1269+
padding-left: 0.4444444em;
1270+
}
1271+
1272+
.prose-lg :where(.prose-lg > ul > li p):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1273+
margin-top: 0.8888889em;
1274+
margin-bottom: 0.8888889em;
1275+
}
1276+
1277+
.prose-lg :where(.prose-lg > ul > li > *:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1278+
margin-top: 1.3333333em;
1279+
}
1280+
1281+
.prose-lg :where(.prose-lg > ul > li > *:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1282+
margin-bottom: 1.3333333em;
1283+
}
1284+
1285+
.prose-lg :where(.prose-lg > ol > li > *:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1286+
margin-top: 1.3333333em;
1287+
}
1288+
1289+
.prose-lg :where(.prose-lg > ol > li > *:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1290+
margin-bottom: 1.3333333em;
1291+
}
1292+
1293+
.prose-lg :where(ul ul, ul ol, ol ul, ol ol):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1294+
margin-top: 0.8888889em;
1295+
margin-bottom: 0.8888889em;
1296+
}
1297+
1298+
.prose-lg :where(dl):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1299+
margin-top: 1.3333333em;
1300+
margin-bottom: 1.3333333em;
1301+
}
1302+
1303+
.prose-lg :where(dt):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1304+
margin-top: 1.3333333em;
1305+
}
1306+
1307+
.prose-lg :where(dd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1308+
margin-top: 0.6666667em;
1309+
padding-left: 1.5555556em;
1310+
}
1311+
1312+
.prose-lg :where(hr):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1313+
margin-top: 3.1111111em;
1314+
margin-bottom: 3.1111111em;
1315+
}
1316+
1317+
.prose-lg :where(hr + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1318+
margin-top: 0;
1319+
}
1320+
1321+
.prose-lg :where(h2 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1322+
margin-top: 0;
1323+
}
1324+
1325+
.prose-lg :where(h3 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1326+
margin-top: 0;
1327+
}
1328+
1329+
.prose-lg :where(h4 + *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1330+
margin-top: 0;
1331+
}
1332+
1333+
.prose-lg :where(table):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1334+
font-size: 0.8888889em;
1335+
line-height: 1.5;
1336+
}
1337+
1338+
.prose-lg :where(thead th):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1339+
padding-right: 0.75em;
1340+
padding-bottom: 0.75em;
1341+
padding-left: 0.75em;
1342+
}
1343+
1344+
.prose-lg :where(thead th:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1345+
padding-left: 0;
1346+
}
1347+
1348+
.prose-lg :where(thead th:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1349+
padding-right: 0;
1350+
}
1351+
1352+
.prose-lg :where(tbody td, tfoot td):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1353+
padding-top: 0.75em;
1354+
padding-right: 0.75em;
1355+
padding-bottom: 0.75em;
1356+
padding-left: 0.75em;
1357+
}
1358+
1359+
.prose-lg :where(tbody td:first-child, tfoot td:first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1360+
padding-left: 0;
1361+
}
1362+
1363+
.prose-lg :where(tbody td:last-child, tfoot td:last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1364+
padding-right: 0;
1365+
}
1366+
1367+
.prose-lg :where(figure):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1368+
margin-top: 1.7777778em;
1369+
margin-bottom: 1.7777778em;
1370+
}
1371+
1372+
.prose-lg :where(figure > *):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1373+
margin-top: 0;
1374+
margin-bottom: 0;
1375+
}
1376+
1377+
.prose-lg :where(figcaption):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1378+
font-size: 0.8888889em;
1379+
line-height: 1.5;
1380+
margin-top: 1em;
1381+
}
1382+
1383+
.prose-lg :where(.prose-lg > :first-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1384+
margin-top: 0;
1385+
}
1386+
1387+
.prose-lg :where(.prose-lg > :last-child):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
1388+
margin-bottom: 0;
1389+
}
1390+
11441391
.avatar.placeholder > div {
11451392
display: flex;
11461393
align-items: center;
@@ -2400,6 +2647,11 @@ html {
24002647
z-index: 1;
24012648
}
24022649

2650+
.mx-auto {
2651+
margin-left: auto;
2652+
margin-right: auto;
2653+
}
2654+
24032655
.hidden {
24042656
display: none;
24052657
}
@@ -2416,10 +2668,18 @@ html {
24162668
width: 1.5rem;
24172669
}
24182670

2671+
.w-full {
2672+
width: 100%;
2673+
}
2674+
24192675
.max-w-md {
24202676
max-width: 28rem;
24212677
}
24222678

2679+
.max-w-none {
2680+
max-width: none;
2681+
}
2682+
24232683
.max-w-xs {
24242684
max-width: 20rem;
24252685
}
@@ -2436,10 +2696,6 @@ html {
24362696
flex-shrink: 0;
24372697
}
24382698

2439-
.content-center {
2440-
align-content: center;
2441-
}
2442-
24432699
.space-y-0 > :not([hidden]) ~ :not([hidden]) {
24442700
--tw-space-y-reverse: 0;
24452701
margin-top: calc(0px * calc(1 - var(--tw-space-y-reverse)));
@@ -2488,6 +2744,10 @@ html {
24882744
padding: 0.5rem;
24892745
}
24902746

2747+
.p-4 {
2748+
padding: 1rem;
2749+
}
2750+
24912751
.px-1 {
24922752
padding-left: 0.25rem;
24932753
padding-right: 0.25rem;

sass/tail.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@
22
@tailwind components;
33
@tailwind utilities;
44
@tailwindcss/typography;
5+

src/main.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,14 +117,16 @@ func handler(config *Config, w http.ResponseWriter, r *http.Request) {
117117
csp := "default-src 'self'; font-src 'self' data:; frame-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; connect-src 'self';"
118118
w.Header().Set("Content-Security-Policy", csp)
119119

120+
tag := r.URL.Query().Get("tag")
121+
120122
markdownFiles, err := listMarkdownFiles(config.Git.LocalPath)
121123
if err != nil {
122124
log.Printf("Error listing markdown files: %v", err)
123125
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
124126
return
125127
}
126128

127-
err = renderPage(w, r, config, filePath, commentsDB, markdownFiles)
129+
err = renderPage(w, r, config, filePath, commentsDB, markdownFiles, tag)
128130
if err != nil {
129131
log.Printf("Failed to render page: %v", err)
130132
http.Error(w, "File not found", http.StatusNotFound)

0 commit comments

Comments
 (0)