Fossil SCM

When displaying documents, provide class hints about the language of the document to syntax highlighter extensions.

drh 2019-09-03 20:19 trunk merge
Commit 74b538f614a33405003615e064167e2e22f89f6d537166ffd3a8d6d7b70c6e1d
2 files changed +11 -1 +11 -1
+11 -1
--- src/info.c
+++ src/info.c
@@ -2338,14 +2338,24 @@
23382338
}
23392339
blob_to_utf8_no_bom(&content, 0);
23402340
zMime = mimetype_from_content(&content);
23412341
@ <blockquote>
23422342
if( zMime==0 ){
2343
- const char *z;
2343
+ const char *z, *zFileName, *zExt;
23442344
z = blob_str(&content);
2345
+ zFileName = db_text(0,
2346
+ "SELECT name FROM mlink, filename"
2347
+ " WHERE filename.fnid=mlink.fnid"
2348
+ " AND mlink.fid=%d",
2349
+ rid);
2350
+ zExt = zFileName ? strrchr(zFileName, '.') : 0;
23452351
if( zLn ){
23462352
output_text_with_line_numbers(z, zLn);
2353
+ }else if( zExt && zExt[1] ){
2354
+ @ <pre>
2355
+ @ <code class="language-%s(zExt+1)">%h(z)</code>
2356
+ @ </pre>
23472357
}else{
23482358
@ <pre>
23492359
@ %h(z)
23502360
@ </pre>
23512361
}
23522362
--- src/info.c
+++ src/info.c
@@ -2338,14 +2338,24 @@
2338 }
2339 blob_to_utf8_no_bom(&content, 0);
2340 zMime = mimetype_from_content(&content);
2341 @ <blockquote>
2342 if( zMime==0 ){
2343 const char *z;
2344 z = blob_str(&content);
 
 
 
 
 
 
2345 if( zLn ){
2346 output_text_with_line_numbers(z, zLn);
 
 
 
 
2347 }else{
2348 @ <pre>
2349 @ %h(z)
2350 @ </pre>
2351 }
2352
--- src/info.c
+++ src/info.c
@@ -2338,14 +2338,24 @@
2338 }
2339 blob_to_utf8_no_bom(&content, 0);
2340 zMime = mimetype_from_content(&content);
2341 @ <blockquote>
2342 if( zMime==0 ){
2343 const char *z, *zFileName, *zExt;
2344 z = blob_str(&content);
2345 zFileName = db_text(0,
2346 "SELECT name FROM mlink, filename"
2347 " WHERE filename.fnid=mlink.fnid"
2348 " AND mlink.fid=%d",
2349 rid);
2350 zExt = zFileName ? strrchr(zFileName, '.') : 0;
2351 if( zLn ){
2352 output_text_with_line_numbers(z, zLn);
2353 }else if( zExt && zExt[1] ){
2354 @ <pre>
2355 @ <code class="language-%s(zExt+1)">%h(z)</code>
2356 @ </pre>
2357 }else{
2358 @ <pre>
2359 @ %h(z)
2360 @ </pre>
2361 }
2362
+11 -1
--- src/info.c
+++ src/info.c
@@ -2338,14 +2338,24 @@
23382338
}
23392339
blob_to_utf8_no_bom(&content, 0);
23402340
zMime = mimetype_from_content(&content);
23412341
@ <blockquote>
23422342
if( zMime==0 ){
2343
- const char *z;
2343
+ const char *z, *zFileName, *zExt;
23442344
z = blob_str(&content);
2345
+ zFileName = db_text(0,
2346
+ "SELECT name FROM mlink, filename"
2347
+ " WHERE filename.fnid=mlink.fnid"
2348
+ " AND mlink.fid=%d",
2349
+ rid);
2350
+ zExt = zFileName ? strrchr(zFileName, '.') : 0;
23452351
if( zLn ){
23462352
output_text_with_line_numbers(z, zLn);
2353
+ }else if( zExt && zExt[1] ){
2354
+ @ <pre>
2355
+ @ <code class="language-%s(zExt+1)">%h(z)</code>
2356
+ @ </pre>
23472357
}else{
23482358
@ <pre>
23492359
@ %h(z)
23502360
@ </pre>
23512361
}
23522362
--- src/info.c
+++ src/info.c
@@ -2338,14 +2338,24 @@
2338 }
2339 blob_to_utf8_no_bom(&content, 0);
2340 zMime = mimetype_from_content(&content);
2341 @ <blockquote>
2342 if( zMime==0 ){
2343 const char *z;
2344 z = blob_str(&content);
 
 
 
 
 
 
2345 if( zLn ){
2346 output_text_with_line_numbers(z, zLn);
 
 
 
 
2347 }else{
2348 @ <pre>
2349 @ %h(z)
2350 @ </pre>
2351 }
2352
--- src/info.c
+++ src/info.c
@@ -2338,14 +2338,24 @@
2338 }
2339 blob_to_utf8_no_bom(&content, 0);
2340 zMime = mimetype_from_content(&content);
2341 @ <blockquote>
2342 if( zMime==0 ){
2343 const char *z, *zFileName, *zExt;
2344 z = blob_str(&content);
2345 zFileName = db_text(0,
2346 "SELECT name FROM mlink, filename"
2347 " WHERE filename.fnid=mlink.fnid"
2348 " AND mlink.fid=%d",
2349 rid);
2350 zExt = zFileName ? strrchr(zFileName, '.') : 0;
2351 if( zLn ){
2352 output_text_with_line_numbers(z, zLn);
2353 }else if( zExt && zExt[1] ){
2354 @ <pre>
2355 @ <code class="language-%s(zExt+1)">%h(z)</code>
2356 @ </pre>
2357 }else{
2358 @ <pre>
2359 @ %h(z)
2360 @ </pre>
2361 }
2362

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button