From ba85f011139aa976fb3a0fced049c06d83cdb518 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Sat, 23 Jul 2022 19:29:33 -0500 Subject: [PATCH] Fixed variable template override issues for code blocks Co-authored-by: sigonasr2 --- out/DIRECTORY_LISTING | 16 +- out/articles/DIRECTORY_LISTING | 14 +- ...ove Live! Custom Arcade Controller.article | 4 +- ...ive! Custom Arcade Controller.article.html | 4 +- out/articles/curabitur vel tempus ex.article | 14 +- .../curabitur vel tempus ex.article.html | 14 +- out/articles/sigplace1.article | 976 ++++++++-------- out/articles/sigplace1.article.html | 976 ++++++++-------- out/articles/test articles/DIRECTORY_LISTING | 12 +- out/articles/test articles/test1.article | 4 +- out/articles/test articles/test1.article.html | 4 +- out/articles/test articles/test2.article | 4 +- out/articles/test articles/test2.article.html | 4 +- out/articles/test articles/test3.article | 4 +- out/articles/test articles/test3.article.html | 4 +- out/otherpage.html | 1010 +++++++++-------- sigPlace.class | Bin 18020 -> 18239 bytes sigPlace.java | 30 +- 18 files changed, 1600 insertions(+), 1494 deletions(-) diff --git a/out/DIRECTORY_LISTING b/out/DIRECTORY_LISTING index 994dad1..8807b97 100644 --- a/out/DIRECTORY_LISTING +++ b/out/DIRECTORY_LISTING @@ -17,14 +17,14 @@
-

Directory Listing for /

🗎reset.css 2022-07-23T23:57:41.43284476Z niconiconii 1093
-
📁articles 2022-07-23T23:57:42.292829103Z niconiconii 4096
-
🗎uploadform.html 2022-07-23T23:57:42.228830266Z niconiconii 884
-
🗎sig.css 2022-07-23T23:57:42.22483034Z niconiconii 6238
-
🗎testfile.html 2022-07-23T23:57:42.228830266Z niconiconii 804
-
🗎otherpage.html 2022-07-23T23:57:42.236830121Z niconiconii 80030
-
📁images 2022-07-23T23:57:42.288829174Z niconiconii 4096
-
🗎codeBackground 2022-07-23T23:57:42.228830266Z niconiconii 2635
+

Directory Listing for /

🗎reset.css 2022-07-24T00:27:54.916308747Z niconiconii 1093
+
📁articles 2022-07-24T00:27:55.628296037Z niconiconii 4096
+
🗎uploadform.html 2022-07-24T00:27:55.568297107Z niconiconii 884
+
🗎sig.css 2022-07-24T00:27:55.564297179Z niconiconii 6238
+
🗎testfile.html 2022-07-24T00:27:55.568297107Z niconiconii 804
+
🗎otherpage.html 2022-07-24T00:27:55.576296965Z niconiconii 70355
+
📁images 2022-07-24T00:27:55.624296107Z niconiconii 4096
+
🗎codeBackground 2022-07-24T00:27:55.568297107Z niconiconii 2635
diff --git a/out/articles/DIRECTORY_LISTING b/out/articles/DIRECTORY_LISTING index ed1c3bc..a26eaa7 100644 --- a/out/articles/DIRECTORY_LISTING +++ b/out/articles/DIRECTORY_LISTING @@ -17,13 +17,13 @@
-

Directory Listing for /articles/

🗎sigplace1.article 2022-07-23T23:57:42.212830557Z niconiconii 74701
-
🗎Love Live! Custom Arcade Controller.article.html 2022-07-23T23:57:42.280829319Z niconiconii 1212
-
🗎sigplace1.article.html 2022-07-23T23:57:42.272829466Z niconiconii 75418
-
🗎curabitur vel tempus ex.article 2022-07-23T23:57:42.212830557Z niconiconii 774
-
📁test articles 2022-07-23T23:57:42.280829319Z niconiconii 4096
-
🗎curabitur vel tempus ex.article.html 2022-07-23T23:57:42.272829466Z niconiconii 1491
-
🗎Love Live! Custom Arcade Controller.article 2022-07-23T23:57:42.216830485Z niconiconii 495
+

Directory Listing for /articles/

🗎sigplace1.article 2022-07-24T00:27:55.552297393Z niconiconii 65060
+
🗎Love Live! Custom Arcade Controller.article.html 2022-07-24T00:27:55.616296251Z niconiconii 1214
+
🗎sigplace1.article.html 2022-07-24T00:27:55.604296465Z niconiconii 65777
+
🗎curabitur vel tempus ex.article 2022-07-24T00:27:55.556297321Z niconiconii 734
+
📁test articles 2022-07-24T00:27:55.612296322Z niconiconii 4096
+
🗎curabitur vel tempus ex.article.html 2022-07-24T00:27:55.604296465Z niconiconii 1451
+
🗎Love Live! Custom Arcade Controller.article 2022-07-24T00:27:55.560297251Z niconiconii 497
diff --git a/out/articles/Love Live! Custom Arcade Controller.article b/out/articles/Love Live! Custom Arcade Controller.article index b8f4254..80fb2c3 100644 --- a/out/articles/Love Live! Custom Arcade Controller.article +++ b/out/articles/Love Live! Custom Arcade Controller.article @@ -1,5 +1,7 @@

My Love Live! Custom Arcade Controller


-

For over a year since I first got into Love Live! School Idol Festival ~after school ACTIVITY~ Wai-Wai!Home Meeting!! Try saying that one 10 times fast!Subscript

+

+For over a year since I first got into Love Live! School Idol Festival ~after school ACTIVITY~ Wai-Wai!Home Meeting!! Try saying that one 10 times fast!Subscript +


15 July 2022 1:53PM
%CONDITIONAL_EXPAND%
diff --git a/out/articles/Love Live! Custom Arcade Controller.article.html b/out/articles/Love Live! Custom Arcade Controller.article.html index 57af782..aae6281 100644 --- a/out/articles/Love Live! Custom Arcade Controller.article.html +++ b/out/articles/Love Live! Custom Arcade Controller.article.html @@ -19,7 +19,9 @@

My Love Live! Custom Arcade Controller


-

For over a year since I first got into Love Live! School Idol Festival ~after school ACTIVITY~ Wai-Wai!Home Meeting!! Try saying that one 10 times fast!Subscript

+

+For over a year since I first got into Love Live! School Idol Festival ~after school ACTIVITY~ Wai-Wai!Home Meeting!! Try saying that one 10 times fast!Subscript +


15 July 2022 1:53PM
diff --git a/out/articles/curabitur vel tempus ex.article b/out/articles/curabitur vel tempus ex.article index 546297a..10d06aa 100644 --- a/out/articles/curabitur vel tempus ex.article +++ b/out/articles/curabitur vel tempus ex.article @@ -1,9 +1,13 @@

Curabitur vel tempus ex

-

Curabitur vel tempus ex. Duis cursus sapien nisl, ut pulvinar dui porttitor ut. Nullam odio purus, tristique non turpis sit amet, malesuada ultricies purus. Mauris ut nulla nisl. Aenean sit amet est egestas justo volutpat consequat. Suspendisse in sagittis augue, et mattis tortor. Nullam viverra metus et nibh fringilla iaculis.

+

+Curabitur vel tempus ex. Duis cursus sapien nisl, ut pulvinar dui porttitor ut. Nullam odio purus, tristique non turpis sit amet, malesuada ultricies purus. Mauris ut nulla nisl. Aenean sit amet est egestas justo volutpat consequat. Suspendisse in sagittis augue, et mattis tortor. Nullam viverra metus et nibh fringilla iaculis. +


-

-

-

+ 
+ 
+

+

 <><Test>"</test></test2><test3>"
-            

+
+

29 Apr 2022 7:37PM
%CONDITIONAL_EXPAND%
diff --git a/out/articles/curabitur vel tempus ex.article.html b/out/articles/curabitur vel tempus ex.article.html index af8d4ec..e35900a 100644 --- a/out/articles/curabitur vel tempus ex.article.html +++ b/out/articles/curabitur vel tempus ex.article.html @@ -18,13 +18,17 @@

Curabitur vel tempus ex

-

Curabitur vel tempus ex. Duis cursus sapien nisl, ut pulvinar dui porttitor ut. Nullam odio purus, tristique non turpis sit amet, malesuada ultricies purus. Mauris ut nulla nisl. Aenean sit amet est egestas justo volutpat consequat. Suspendisse in sagittis augue, et mattis tortor. Nullam viverra metus et nibh fringilla iaculis.

+

+Curabitur vel tempus ex. Duis cursus sapien nisl, ut pulvinar dui porttitor ut. Nullam odio purus, tristique non turpis sit amet, malesuada ultricies purus. Mauris ut nulla nisl. Aenean sit amet est egestas justo volutpat consequat. Suspendisse in sagittis augue, et mattis tortor. Nullam viverra metus et nibh fringilla iaculis. +


-

-

-

+ 
+ 
+

+

 <><Test>"</test></test2><test3>"
-            

+
+

29 Apr 2022 7:37PM
diff --git a/out/articles/sigplace1.article b/out/articles/sigplace1.article index c8aae14..d63a232 100644 --- a/out/articles/sigplace1.article +++ b/out/articles/sigplace1.article @@ -1,484 +1,503 @@

Welcome to SigPlace!

-

This is a SigPlace article! It will contain information that is important (probably) and will be layed out as such.

-

Paragraphs are automatically split up for readability and generated correctly via the parser. There's quite a bit of flexibility with the system and makes it easy to post updates should they be required.

-

A lot of content management systems would do this by having a web interface and submitting content and managing it that way, but by coding my own management system and using the built-in OS' filesystem to handle the work, I save myself a lot of pains and headaches.

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. In feugiat, urna ut sollicitudin luctus, nulla magna faucibus mauris, at semper nisl nisi ut mauris. Vestibulum cursus tortor velit, ut congue ex porta in. Nullam hendrerit risus sit amet neque euismod faucibus. Sed ac diam non lectus euismod pulvinar eu non mauris. Donec accumsan nisl efficitur, sodales lectus et, finibus quam. Sed vel consectetur leo. Cras ut condimentum quam. Aliquam molestie viverra congue. Donec scelerisque nibh ac nulla dictum semper. Aliquam id massa a massa bibendum finibus id ac sapien. Integer vitae ullamcorper enim, non semper massa.

+

+ This is a SigPlace article! It will contain information that is important (probably) and will be layed out as such. +

+

+ Paragraphs are automatically split up for readability and generated correctly via the parser. There's quite a bit of flexibility with the system and makes it easy to post updates should they be required. +

+

+ A lot of content management systems would do this by having a web interface and submitting content and managing it that way, but by coding my own management system and using the built-in OS' filesystem to handle the work, I save myself a lot of pains and headaches. +

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. In feugiat, urna ut sollicitudin luctus, nulla magna faucibus mauris, at semper nisl nisi ut mauris. Vestibulum cursus tortor velit, ut congue ex porta in. Nullam hendrerit risus sit amet neque euismod faucibus. Sed ac diam non lectus euismod pulvinar eu non mauris. Donec accumsan nisl efficitur, sodales lectus et, finibus quam. Sed vel consectetur leo. Cras ut condimentum quam. Aliquam molestie viverra congue. Donec scelerisque nibh ac nulla dictum semper. Aliquam id massa a massa bibendum finibus id ac sapien. Integer vitae ullamcorper enim, non semper massa. +


-

Proin cursus sodales elit, vitae volutpat mi fermentum a. In vitae magna quis leo cursus accumsan id facilisis purus. Vestibulum accumsan iaculis turpis eu sollicitudin. Sed ultricies felis non elit suscipit interdum. Maecenas sollicitudin turpis justo, vel pretium sapien scelerisque eget. Nullam sagittis finibus risus ut aliquam. Praesent quam orci, dapibus ut ex ac, sodales dapibus nunc.

+

+Proin cursus sodales elit, vitae volutpat mi fermentum a. In vitae magna quis leo cursus accumsan id facilisis purus. Vestibulum accumsan iaculis turpis eu sollicitudin. Sed ultricies felis non elit suscipit interdum. Maecenas sollicitudin turpis justo, vel pretium sapien scelerisque eget. Nullam sagittis finibus risus ut aliquam. Praesent quam orci, dapibus ut ex ac, sodales dapibus nunc. +


-

Fusce magna risus, iaculis non justo sit amet, semper sodales urna. Morbi eu eros lectus. Integer euismod venenatis eros a hendrerit. Nulla ultricies lectus nec quam condimentum fermentum. Quisque a turpis vitae orci pharetra ullamcorper. Nunc fringilla vitae nunc a aliquam. In aliquam gravida massa. Sed imperdiet dignissim sapien, ullamcorper rutrum lacus convallis ut.

+

+Fusce magna risus, iaculis non justo sit amet, semper sodales urna. Morbi eu eros lectus. Integer euismod venenatis eros a hendrerit. Nulla ultricies lectus nec quam condimentum fermentum. Quisque a turpis vitae orci pharetra ullamcorper. Nunc fringilla vitae nunc a aliquam. In aliquam gravida massa. Sed imperdiet dignissim sapien, ullamcorper rutrum lacus convallis ut. +


-

Nunc tortor sem, dapibus mattis varius id, varius eu leo. Phasellus efficitur nulla a diam faucibus, id facilisis lacus malesuada. Nulla condimentum egestas erat a fermentum. Ut interdum dui id est condimentum, vel fermentum nisi ornare. Sed eu rhoncus magna, sit amet finibus eros. In a nibh tincidunt, suscipit tellus eleifend, faucibus mauris. Vestibulum sagittis nisi et efficitur ullamcorper. Donec sodales efficitur ligula id congue. Etiam egestas tristique interdum. Mauris at massa eget metus pellentesque fermentum nec non lacus. Nulla turpis nunc, feugiat vel euismod ac, maximus id est. Praesent cursus elit ac dolor hendrerit lacinia.

+

+Nunc tortor sem, dapibus mattis varius id, varius eu leo. Phasellus efficitur nulla a diam faucibus, id facilisis lacus malesuada. Nulla condimentum egestas erat a fermentum. Ut interdum dui id est condimentum, vel fermentum nisi ornare. Sed eu rhoncus magna, sit amet finibus eros. In a nibh tincidunt, suscipit tellus eleifend, faucibus mauris. Vestibulum sagittis nisi et efficitur ullamcorper. Donec sodales efficitur ligula id congue. Etiam egestas tristique interdum. Mauris at massa eget metus pellentesque fermentum nec non lacus. Nulla turpis nunc, feugiat vel euismod ac, maximus id est. Praesent cursus elit ac dolor hendrerit lacinia. +


-

Vestibulum laoreet lorem consequat, mollis augue finibus, luctus libero. Praesent convallis sed velit vitae molestie. Vestibulum nec fringilla tellus, non dictum nulla. Donec tempor ac diam sit amet porta. Quisque mi ex, vulputate ac tincidunt vel, vestibulum vitae orci. Duis gravida mauris eget mauris pulvinar, lobortis tincidunt neque efficitur. Nunc blandit metus vitae faucibus vulputate. Curabitur rhoncus volutpat lorem, sit amet pulvinar ipsum. Fusce ultricies enim odio, a viverra quam tincidunt quis. Aliquam sollicitudin a sapien id efficitur. Proin at finibus elit, id gravida elit. Nulla facilisi. Ut tincidunt, ligula eu pulvinar dapibus, lorem nisl facilisis tellus, in ornare quam dolor quis libero. Pellentesque ut convallis orci. Donec volutpat nunc velit, tristique convallis purus lacinia sit amet. Maecenas porttitor cursus nisl sed porta.

+

+Vestibulum laoreet lorem consequat, mollis augue finibus, luctus libero. Praesent convallis sed velit vitae molestie. Vestibulum nec fringilla tellus, non dictum nulla. Donec tempor ac diam sit amet porta. Quisque mi ex, vulputate ac tincidunt vel, vestibulum vitae orci. Duis gravida mauris eget mauris pulvinar, lobortis tincidunt neque efficitur. Nunc blandit metus vitae faucibus vulputate. Curabitur rhoncus volutpat lorem, sit amet pulvinar ipsum. Fusce ultricies enim odio, a viverra quam tincidunt quis. Aliquam sollicitudin a sapien id efficitur. Proin at finibus elit, id gravida elit. Nulla facilisi. Ut tincidunt, ligula eu pulvinar dapibus, lorem nisl facilisis tellus, in ornare quam dolor quis libero. Pellentesque ut convallis orci. Donec volutpat nunc velit, tristique convallis purus lacinia sit amet. Maecenas porttitor cursus nisl sed porta. +


Hello there! You can see this is the Love Live logo indeed! It is quite smol right now but that's okay. Let's keep on going with the text. If the caption is really long and with commas, they will now be combined,,,,,see how that works? Amazing!
-

Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.

+

+Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on. +


-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + + +
-

+
-

-

-

-

-

-

-

-

+ + + + + + + +
-

+
-

-

+ +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + +
-

-

-

-

-

+ + + + +
-

-

-

-

-

-

-

-

-

+ + + + + + + + +
-

-

-

-

-

-

-

-

+ + + + + + + +
-

+
-

+
-

-

-

-

-

-

-

-

-

+ + + + + + + + +
-

+
-

-

-

-

-

+ + + + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
-

+
-

-

-

+ + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+

+

 import java.io.IOException;
 import java.nio.charset.Charset;
 import java.nio.file.CopyOption;
@@ -507,18 +526,18 @@
     static boolean inCodeBlock = false;
     static String storedCodeBlock = "";
     final static HashMap<String,String> map = new HashMap<>(Map.ofEntries(
-        new AbstractMap.SimpleEntry<>("SITENAME", "SigPlace"),
-        new AbstractMap.SimpleEntry<>("SITE_BACKCOL", "#111"),
-        new AbstractMap.SimpleEntry<>("TITLE_CONTENT_START", "<div class=\"contentWrapper\"><h1>"),
-        new AbstractMap.SimpleEntry<>("TITLE_CONTENT_END", "</h1><div class=\"content\" >"),
-        new AbstractMap.SimpleEntry<>("CONTENT_END", "</div>"),
-        new AbstractMap.SimpleEntry<>("DATE_CONTENT_START", "<div class=\"datebar\"></div><div class=\"date\">")
+        new AbstractMap.SimpleEntry<>("$SITENAME", "SigPlace"),
+        new AbstractMap.SimpleEntry<>("$SITE_BACKCOL", "#111"),
+        new AbstractMap.SimpleEntry<>("$TITLE_CONTENT_START", "<div class=\"contentWrapper\"><h1>"),
+        new AbstractMap.SimpleEntry<>("$TITLE_CONTENT_END", "</h1><div class=\"content\" %ID%>"),
+        new AbstractMap.SimpleEntry<>("$CONTENT_END", "</div>"),
+        new AbstractMap.SimpleEntry<>("$DATE_CONTENT_START", "<div class=\"datebar\"></div><div class=\"date\">")
     ));
     final static HashMap<String,Path> ops = new HashMap<>(Map.ofEntries(
         new AbstractMap.SimpleEntry<>(
-            "", Paths.get(REFDIR,"DEFAULT.html")),
+            "%DEFAULT", Paths.get(REFDIR,"DEFAULT.html")),
         new AbstractMap.SimpleEntry<>(
-            "", Paths.get(REFDIR,"FOOTER.html"))
+            "%FOOTER", Paths.get(REFDIR,"FOOTER.html"))
     ));
     public static void main(String[] args) {
         if (args.length>0&&args.length%2==0) {
@@ -572,8 +591,8 @@
                     System.out.println("  Preparing "+f.getFileName());
                     List<String> content = Files.readAllLines(f);
                     if (isHTMLFile(f)) {
-                        content.addAll(0,Files.readAllLines(ops.get("")));
-                        content.addAll(Files.readAllLines(ops.get("")));
+                        content.addAll(0,Files.readAllLines(ops.get("%DEFAULT")));
+                        content.addAll(Files.readAllLines(ops.get("%FOOTER")));
                     }
                     System.out.println("  Parsing "+f.getFileName());
                     for (int i=0;i<content.size();i++) {
@@ -691,12 +710,12 @@
                             //Check for markdown pieces.
                             if (s.charAt(0)=='-') {
                                 //Start of a title piece.
-                                s=s.replace("-",map.get("TITLE_CONTENT_"));
-                                s=s+map.get("TITLE_CONTENT_").replace("","id=\"content_"+f+"\"");
+                                s=s.replace("-",map.get("$TITLE_CONTENT_"));
+                                s=s+map.get("$TITLE_CONTENT_").replace("%ID%","id=\"content_"+f+"\"");
                                 //Use ⤈ if there's more text to be shown than can fit.
                             } else
                             if (s.contains("===")) {
-                                s=map.get("CONTENT_")+map.get("DATE_CONTENT_")+s.replace("===","")+map.get("CONTENT_")+""+map.get("CONTENT_");
+                                s=map.get("$CONTENT_")+map.get("$DATE_CONTENT_")+s.replace("===","")+map.get("$CONTENT_")+"%CONDITIONAL_EXPAND%"+map.get("$CONTENT_");
                             } else 
                             if (s.charAt(0)==':') {
                                 //Image with caption.
@@ -751,21 +770,21 @@
                 if (Files.isRegularFile(f)&&isArticleFile(f)) {
                     System.out.println("  Creating article for "+f.getFileName());
                     List<String> content = Files.readAllLines(f);
-                    List<String> preContent = Files.readAllLines(ops.get(""));
-                    List<String> postContent = Files.readAllLines(ops.get(""));
+                    List<String> preContent = Files.readAllLines(ops.get("%"));
+                    List<String> postContent = Files.readAllLines(ops.get("%"));
                     StringBuilder sb = new StringBuilder();
                     for (String d : preContent) {
                         for (String k : sigPlace.map.keySet()) {
                             d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k));
                         }
-                        sb.append(d).append("\");
+                        sb.append(d).append("\");
                     }
                     for (String d : content) {
                         for (String k : sigPlace.map.keySet()) {
                             d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k));
                         }
                         d=d.replaceFirst("div class=\"content\"","div class=\"expandedContent\"");
-                        d=d.replaceFirst("","");
+                        d=d.replaceFirst("%CONDITIONAL_EXPAND%","");
                         sb.append(d).append("\");
                     }
                     for (String d : postContent) {
@@ -792,8 +811,8 @@
                     List<String> content = Files.readAllLines(f);
                     for (int i=0;i<content.size();i++) {
                         String s = content.get(i);
-                        if (s.length()>0&&s.contains("ARTICLE_")) {
-                            String article = ARTICLESDIR+"/"+s.replace("ARTICLE_PREVIEW ","")+".";
+                        if (s.length()>0&&s.contains("$ARTICLE_")) {
+                            String article = ARTICLESDIR+"/"+s.replace("$ARTICLE_PREVIEW ","")+".";
                             System.out.println("   Found article preview request in "+f.getFileName()+" for article "+article+".");
                             Path file = Paths.get(OUTDIR,article);
                             List<String> newData = Files.readAllLines(file);
@@ -803,7 +822,7 @@
                                     content.add(i+j, newData.get(j));
                                 }
                                 String lastline=content.get(i+newData.size()-1);
-                                lastline=lastline.replace("","<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand(this,'"+Paths.get(OUTDIR,article.toString())+"')\"><br/><br/><br/><br/>&#x2908; Click to expand.</div>");
+                                lastline=lastline.replace("%CONDITIONAL_EXPAND%","<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand(this,'"+Paths.get(OUTDIR,article.toString())+"')\"><br/><br/><br/><br/>&#x2908; Click to expand.</div>");
                                 content.set(i+newData.size()-1,lastline);//<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand("+i+")\"><br/><br/><br/><br/>⤈ Click to expand.</div>");
                             } else {
                                 content.set(i,"");
@@ -861,8 +880,8 @@
         for (String key : map.keySet()) {
             System.out.println("Creating directory listing for "+key+"...");
             StringBuilder sb = new StringBuilder("");
-            List<String> data = Files.readAllLines(ops.get(""));
-            List<String> data2 = Files.readAllLines(ops.get(""));
+            List<String> data = Files.readAllLines(ops.get("%DEFAULT"));
+            List<String> data2 = Files.readAllLines(ops.get("%FOOTER"));
             for (String d : data) {
                 for (String k : sigPlace.map.keySet()) {
                     d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k));
@@ -923,5 +942,6 @@
         
     }
 }
-

+
+

3 May 2022 10:25AM
%CONDITIONAL_EXPAND%
diff --git a/out/articles/sigplace1.article.html b/out/articles/sigplace1.article.html index 143775e..688ce94 100644 --- a/out/articles/sigplace1.article.html +++ b/out/articles/sigplace1.article.html @@ -18,486 +18,505 @@

Welcome to SigPlace!

-

This is a SigPlace article! It will contain information that is important (probably) and will be layed out as such.

-

Paragraphs are automatically split up for readability and generated correctly via the parser. There's quite a bit of flexibility with the system and makes it easy to post updates should they be required.

-

A lot of content management systems would do this by having a web interface and submitting content and managing it that way, but by coding my own management system and using the built-in OS' filesystem to handle the work, I save myself a lot of pains and headaches.

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. In feugiat, urna ut sollicitudin luctus, nulla magna faucibus mauris, at semper nisl nisi ut mauris. Vestibulum cursus tortor velit, ut congue ex porta in. Nullam hendrerit risus sit amet neque euismod faucibus. Sed ac diam non lectus euismod pulvinar eu non mauris. Donec accumsan nisl efficitur, sodales lectus et, finibus quam. Sed vel consectetur leo. Cras ut condimentum quam. Aliquam molestie viverra congue. Donec scelerisque nibh ac nulla dictum semper. Aliquam id massa a massa bibendum finibus id ac sapien. Integer vitae ullamcorper enim, non semper massa.

+

+ This is a SigPlace article! It will contain information that is important (probably) and will be layed out as such. +

+

+ Paragraphs are automatically split up for readability and generated correctly via the parser. There's quite a bit of flexibility with the system and makes it easy to post updates should they be required. +

+

+ A lot of content management systems would do this by having a web interface and submitting content and managing it that way, but by coding my own management system and using the built-in OS' filesystem to handle the work, I save myself a lot of pains and headaches. +

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. In feugiat, urna ut sollicitudin luctus, nulla magna faucibus mauris, at semper nisl nisi ut mauris. Vestibulum cursus tortor velit, ut congue ex porta in. Nullam hendrerit risus sit amet neque euismod faucibus. Sed ac diam non lectus euismod pulvinar eu non mauris. Donec accumsan nisl efficitur, sodales lectus et, finibus quam. Sed vel consectetur leo. Cras ut condimentum quam. Aliquam molestie viverra congue. Donec scelerisque nibh ac nulla dictum semper. Aliquam id massa a massa bibendum finibus id ac sapien. Integer vitae ullamcorper enim, non semper massa. +


-

Proin cursus sodales elit, vitae volutpat mi fermentum a. In vitae magna quis leo cursus accumsan id facilisis purus. Vestibulum accumsan iaculis turpis eu sollicitudin. Sed ultricies felis non elit suscipit interdum. Maecenas sollicitudin turpis justo, vel pretium sapien scelerisque eget. Nullam sagittis finibus risus ut aliquam. Praesent quam orci, dapibus ut ex ac, sodales dapibus nunc.

+

+Proin cursus sodales elit, vitae volutpat mi fermentum a. In vitae magna quis leo cursus accumsan id facilisis purus. Vestibulum accumsan iaculis turpis eu sollicitudin. Sed ultricies felis non elit suscipit interdum. Maecenas sollicitudin turpis justo, vel pretium sapien scelerisque eget. Nullam sagittis finibus risus ut aliquam. Praesent quam orci, dapibus ut ex ac, sodales dapibus nunc. +


-

Fusce magna risus, iaculis non justo sit amet, semper sodales urna. Morbi eu eros lectus. Integer euismod venenatis eros a hendrerit. Nulla ultricies lectus nec quam condimentum fermentum. Quisque a turpis vitae orci pharetra ullamcorper. Nunc fringilla vitae nunc a aliquam. In aliquam gravida massa. Sed imperdiet dignissim sapien, ullamcorper rutrum lacus convallis ut.

+

+Fusce magna risus, iaculis non justo sit amet, semper sodales urna. Morbi eu eros lectus. Integer euismod venenatis eros a hendrerit. Nulla ultricies lectus nec quam condimentum fermentum. Quisque a turpis vitae orci pharetra ullamcorper. Nunc fringilla vitae nunc a aliquam. In aliquam gravida massa. Sed imperdiet dignissim sapien, ullamcorper rutrum lacus convallis ut. +


-

Nunc tortor sem, dapibus mattis varius id, varius eu leo. Phasellus efficitur nulla a diam faucibus, id facilisis lacus malesuada. Nulla condimentum egestas erat a fermentum. Ut interdum dui id est condimentum, vel fermentum nisi ornare. Sed eu rhoncus magna, sit amet finibus eros. In a nibh tincidunt, suscipit tellus eleifend, faucibus mauris. Vestibulum sagittis nisi et efficitur ullamcorper. Donec sodales efficitur ligula id congue. Etiam egestas tristique interdum. Mauris at massa eget metus pellentesque fermentum nec non lacus. Nulla turpis nunc, feugiat vel euismod ac, maximus id est. Praesent cursus elit ac dolor hendrerit lacinia.

+

+Nunc tortor sem, dapibus mattis varius id, varius eu leo. Phasellus efficitur nulla a diam faucibus, id facilisis lacus malesuada. Nulla condimentum egestas erat a fermentum. Ut interdum dui id est condimentum, vel fermentum nisi ornare. Sed eu rhoncus magna, sit amet finibus eros. In a nibh tincidunt, suscipit tellus eleifend, faucibus mauris. Vestibulum sagittis nisi et efficitur ullamcorper. Donec sodales efficitur ligula id congue. Etiam egestas tristique interdum. Mauris at massa eget metus pellentesque fermentum nec non lacus. Nulla turpis nunc, feugiat vel euismod ac, maximus id est. Praesent cursus elit ac dolor hendrerit lacinia. +


-

Vestibulum laoreet lorem consequat, mollis augue finibus, luctus libero. Praesent convallis sed velit vitae molestie. Vestibulum nec fringilla tellus, non dictum nulla. Donec tempor ac diam sit amet porta. Quisque mi ex, vulputate ac tincidunt vel, vestibulum vitae orci. Duis gravida mauris eget mauris pulvinar, lobortis tincidunt neque efficitur. Nunc blandit metus vitae faucibus vulputate. Curabitur rhoncus volutpat lorem, sit amet pulvinar ipsum. Fusce ultricies enim odio, a viverra quam tincidunt quis. Aliquam sollicitudin a sapien id efficitur. Proin at finibus elit, id gravida elit. Nulla facilisi. Ut tincidunt, ligula eu pulvinar dapibus, lorem nisl facilisis tellus, in ornare quam dolor quis libero. Pellentesque ut convallis orci. Donec volutpat nunc velit, tristique convallis purus lacinia sit amet. Maecenas porttitor cursus nisl sed porta.

+

+Vestibulum laoreet lorem consequat, mollis augue finibus, luctus libero. Praesent convallis sed velit vitae molestie. Vestibulum nec fringilla tellus, non dictum nulla. Donec tempor ac diam sit amet porta. Quisque mi ex, vulputate ac tincidunt vel, vestibulum vitae orci. Duis gravida mauris eget mauris pulvinar, lobortis tincidunt neque efficitur. Nunc blandit metus vitae faucibus vulputate. Curabitur rhoncus volutpat lorem, sit amet pulvinar ipsum. Fusce ultricies enim odio, a viverra quam tincidunt quis. Aliquam sollicitudin a sapien id efficitur. Proin at finibus elit, id gravida elit. Nulla facilisi. Ut tincidunt, ligula eu pulvinar dapibus, lorem nisl facilisis tellus, in ornare quam dolor quis libero. Pellentesque ut convallis orci. Donec volutpat nunc velit, tristique convallis purus lacinia sit amet. Maecenas porttitor cursus nisl sed porta. +


Hello there! You can see this is the Love Live logo indeed! It is quite smol right now but that's okay. Let's keep on going with the text. If the caption is really long and with commas, they will now be combined,,,,,see how that works? Amazing!
-

Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.

+

+Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on. +


-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + + +
-

+
-

-

-

-

-

-

-

-

+ + + + + + + +
-

+
-

-

+ +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + +
-

-

-

-

-

+ + + + +
-

-

-

-

-

-

-

-

-

+ + + + + + + + +
-

-

-

-

-

-

-

-

+ + + + + + + +
-

+
-

+
-

-

-

-

-

-

-

-

-

+ + + + + + + + +
-

+
-

-

-

-

-

+ + + + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
-

+
-

-

-

+ + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+

+

 import java.io.IOException;
 import java.nio.charset.Charset;
 import java.nio.file.CopyOption;
@@ -526,18 +545,18 @@
     static boolean inCodeBlock = false;
     static String storedCodeBlock = "";
     final static HashMap<String,String> map = new HashMap<>(Map.ofEntries(
-        new AbstractMap.SimpleEntry<>("SITENAME", "SigPlace"),
-        new AbstractMap.SimpleEntry<>("SITE_BACKCOL", "#111"),
-        new AbstractMap.SimpleEntry<>("TITLE_CONTENT_START", "<div class=\"contentWrapper\"><h1>"),
-        new AbstractMap.SimpleEntry<>("TITLE_CONTENT_END", "</h1><div class=\"content\" >"),
-        new AbstractMap.SimpleEntry<>("CONTENT_END", "</div>"),
-        new AbstractMap.SimpleEntry<>("DATE_CONTENT_START", "<div class=\"datebar\"></div><div class=\"date\">")
+        new AbstractMap.SimpleEntry<>("$SITENAME", "SigPlace"),
+        new AbstractMap.SimpleEntry<>("$SITE_BACKCOL", "#111"),
+        new AbstractMap.SimpleEntry<>("$TITLE_CONTENT_START", "<div class=\"contentWrapper\"><h1>"),
+        new AbstractMap.SimpleEntry<>("$TITLE_CONTENT_END", "</h1><div class=\"content\" %ID%>"),
+        new AbstractMap.SimpleEntry<>("$CONTENT_END", "</div>"),
+        new AbstractMap.SimpleEntry<>("$DATE_CONTENT_START", "<div class=\"datebar\"></div><div class=\"date\">")
     ));
     final static HashMap<String,Path> ops = new HashMap<>(Map.ofEntries(
         new AbstractMap.SimpleEntry<>(
-            "", Paths.get(REFDIR,"DEFAULT.html")),
+            "%DEFAULT", Paths.get(REFDIR,"DEFAULT.html")),
         new AbstractMap.SimpleEntry<>(
-            "", Paths.get(REFDIR,"FOOTER.html"))
+            "%FOOTER", Paths.get(REFDIR,"FOOTER.html"))
     ));
     public static void main(String[] args) {
         if (args.length>0&&args.length%2==0) {
@@ -591,8 +610,8 @@
                     System.out.println("  Preparing "+f.getFileName());
                     List<String> content = Files.readAllLines(f);
                     if (isHTMLFile(f)) {
-                        content.addAll(0,Files.readAllLines(ops.get("")));
-                        content.addAll(Files.readAllLines(ops.get("")));
+                        content.addAll(0,Files.readAllLines(ops.get("%DEFAULT")));
+                        content.addAll(Files.readAllLines(ops.get("%FOOTER")));
                     }
                     System.out.println("  Parsing "+f.getFileName());
                     for (int i=0;i<content.size();i++) {
@@ -710,12 +729,12 @@
                             //Check for markdown pieces.
                             if (s.charAt(0)=='-') {
                                 //Start of a title piece.
-                                s=s.replace("-",map.get("TITLE_CONTENT_"));
-                                s=s+map.get("TITLE_CONTENT_").replace("","id=\"content_"+f+"\"");
+                                s=s.replace("-",map.get("$TITLE_CONTENT_"));
+                                s=s+map.get("$TITLE_CONTENT_").replace("%ID%","id=\"content_"+f+"\"");
                                 //Use ⤈ if there's more text to be shown than can fit.
                             } else
                             if (s.contains("===")) {
-                                s=map.get("CONTENT_")+map.get("DATE_CONTENT_")+s.replace("===","")+map.get("CONTENT_")+""+map.get("CONTENT_");
+                                s=map.get("$CONTENT_")+map.get("$DATE_CONTENT_")+s.replace("===","")+map.get("$CONTENT_")+"%CONDITIONAL_EXPAND%"+map.get("$CONTENT_");
                             } else 
                             if (s.charAt(0)==':') {
                                 //Image with caption.
@@ -770,21 +789,21 @@
                 if (Files.isRegularFile(f)&&isArticleFile(f)) {
                     System.out.println("  Creating article for "+f.getFileName());
                     List<String> content = Files.readAllLines(f);
-                    List<String> preContent = Files.readAllLines(ops.get(""));
-                    List<String> postContent = Files.readAllLines(ops.get(""));
+                    List<String> preContent = Files.readAllLines(ops.get("%"));
+                    List<String> postContent = Files.readAllLines(ops.get("%"));
                     StringBuilder sb = new StringBuilder();
                     for (String d : preContent) {
                         for (String k : sigPlace.map.keySet()) {
                             d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k));
                         }
-                        sb.append(d).append("\");
+                        sb.append(d).append("\");
                     }
                     for (String d : content) {
                         for (String k : sigPlace.map.keySet()) {
                             d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k));
                         }
                         d=d.replaceFirst("div class=\"content\"","div class=\"expandedContent\"");
-                        d=d.replaceFirst("","");
+                        d=d.replaceFirst("%CONDITIONAL_EXPAND%","");
                         sb.append(d).append("\");
                     }
                     for (String d : postContent) {
@@ -811,8 +830,8 @@
                     List<String> content = Files.readAllLines(f);
                     for (int i=0;i<content.size();i++) {
                         String s = content.get(i);
-                        if (s.length()>0&&s.contains("ARTICLE_")) {
-                            String article = ARTICLESDIR+"/"+s.replace("ARTICLE_PREVIEW ","")+".";
+                        if (s.length()>0&&s.contains("$ARTICLE_")) {
+                            String article = ARTICLESDIR+"/"+s.replace("$ARTICLE_PREVIEW ","")+".";
                             System.out.println("   Found article preview request in "+f.getFileName()+" for article "+article+".");
                             Path file = Paths.get(OUTDIR,article);
                             List<String> newData = Files.readAllLines(file);
@@ -822,7 +841,7 @@
                                     content.add(i+j, newData.get(j));
                                 }
                                 String lastline=content.get(i+newData.size()-1);
-                                lastline=lastline.replace("","<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand(this,'"+Paths.get(OUTDIR,article.toString())+"')\"><br/><br/><br/><br/>&#x2908; Click to expand.</div>");
+                                lastline=lastline.replace("%CONDITIONAL_EXPAND%","<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand(this,'"+Paths.get(OUTDIR,article.toString())+"')\"><br/><br/><br/><br/>&#x2908; Click to expand.</div>");
                                 content.set(i+newData.size()-1,lastline);//<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand("+i+")\"><br/><br/><br/><br/>⤈ Click to expand.</div>");
                             } else {
                                 content.set(i,"");
@@ -880,8 +899,8 @@
         for (String key : map.keySet()) {
             System.out.println("Creating directory listing for "+key+"...");
             StringBuilder sb = new StringBuilder("");
-            List<String> data = Files.readAllLines(ops.get(""));
-            List<String> data2 = Files.readAllLines(ops.get(""));
+            List<String> data = Files.readAllLines(ops.get("%DEFAULT"));
+            List<String> data2 = Files.readAllLines(ops.get("%FOOTER"));
             for (String d : data) {
                 for (String k : sigPlace.map.keySet()) {
                     d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k));
@@ -942,7 +961,8 @@
         
     }
 }
-

+
+

3 May 2022 10:25AM
diff --git a/out/articles/test articles/DIRECTORY_LISTING b/out/articles/test articles/DIRECTORY_LISTING index 3d46be7..6680ff6 100644 --- a/out/articles/test articles/DIRECTORY_LISTING +++ b/out/articles/test articles/DIRECTORY_LISTING @@ -17,12 +17,12 @@
-

Directory Listing for /articles/test articles/

🗎test3.article 2022-07-23T23:57:42.216830485Z niconiconii 992
-
🗎test2.article 2022-07-23T23:57:42.216830485Z niconiconii 779
-
🗎test2.article.html 2022-07-23T23:57:42.276829394Z niconiconii 1496
-
🗎test3.article.html 2022-07-23T23:57:42.276829394Z niconiconii 1709
-
🗎test1.article.html 2022-07-23T23:57:42.280829319Z niconiconii 1800
-
🗎test1.article 2022-07-23T23:57:42.216830485Z niconiconii 1083
+

Directory Listing for /articles/test articles/

🗎test3.article 2022-07-24T00:27:55.556297321Z niconiconii 994
+
🗎test2.article 2022-07-24T00:27:55.556297321Z niconiconii 781
+
🗎test2.article.html 2022-07-24T00:27:55.608296393Z niconiconii 1498
+
🗎test3.article.html 2022-07-24T00:27:55.608296393Z niconiconii 1711
+
🗎test1.article.html 2022-07-24T00:27:55.612296322Z niconiconii 1802
+
🗎test1.article 2022-07-24T00:27:55.560297251Z niconiconii 1085
diff --git a/out/articles/test articles/test1.article b/out/articles/test articles/test1.article index 93bba3b..540970a 100644 --- a/out/articles/test articles/test1.article +++ b/out/articles/test articles/test1.article @@ -1,3 +1,5 @@

A Test Title

-

In dolor erat, malesuada at elit cursus, convallis imperdiet turpis. Ut aliquet magna tellus, at viverra mauris ullamcorper vehicula. Nam quis urna semper magna ornare elementum sed id mauris. Suspendisse faucibus nunc ante, ac rhoncus nisl tristique sed. Vestibulum pretium odio eget scelerisque vestibulum. Aliquam viverra ex ac vestibulum interdum. Donec ligula nunc, dignissim a purus vitae, fermentum laoreet diam. Quisque nec auctor urna. Vestibulum sit amet ligula ullamcorper, congue ipsum et, accumsan ante. Phasellus fermentum, sapien nec pulvinar blandit, elit purus pretium urna, et dapibus orci urna eu metus. Nunc molestie dictum pharetra. Suspendisse luctus felis et ante tristique, vitae commodo diam porttitor. Aliquam orci eros, placerat ac justo vitae, bibendum efficitur metus. Phasellus eget bibendum mauris.

+

+ In dolor erat, malesuada at elit cursus, convallis imperdiet turpis. Ut aliquet magna tellus, at viverra mauris ullamcorper vehicula. Nam quis urna semper magna ornare elementum sed id mauris. Suspendisse faucibus nunc ante, ac rhoncus nisl tristique sed. Vestibulum pretium odio eget scelerisque vestibulum. Aliquam viverra ex ac vestibulum interdum. Donec ligula nunc, dignissim a purus vitae, fermentum laoreet diam. Quisque nec auctor urna. Vestibulum sit amet ligula ullamcorper, congue ipsum et, accumsan ante. Phasellus fermentum, sapien nec pulvinar blandit, elit purus pretium urna, et dapibus orci urna eu metus. Nunc molestie dictum pharetra. Suspendisse luctus felis et ante tristique, vitae commodo diam porttitor. Aliquam orci eros, placerat ac justo vitae, bibendum efficitur metus. Phasellus eget bibendum mauris. +

2 May 2022 10:16AM
%CONDITIONAL_EXPAND%
diff --git a/out/articles/test articles/test1.article.html b/out/articles/test articles/test1.article.html index 43e8d87..b094135 100644 --- a/out/articles/test articles/test1.article.html +++ b/out/articles/test articles/test1.article.html @@ -18,7 +18,9 @@

A Test Title

-

In dolor erat, malesuada at elit cursus, convallis imperdiet turpis. Ut aliquet magna tellus, at viverra mauris ullamcorper vehicula. Nam quis urna semper magna ornare elementum sed id mauris. Suspendisse faucibus nunc ante, ac rhoncus nisl tristique sed. Vestibulum pretium odio eget scelerisque vestibulum. Aliquam viverra ex ac vestibulum interdum. Donec ligula nunc, dignissim a purus vitae, fermentum laoreet diam. Quisque nec auctor urna. Vestibulum sit amet ligula ullamcorper, congue ipsum et, accumsan ante. Phasellus fermentum, sapien nec pulvinar blandit, elit purus pretium urna, et dapibus orci urna eu metus. Nunc molestie dictum pharetra. Suspendisse luctus felis et ante tristique, vitae commodo diam porttitor. Aliquam orci eros, placerat ac justo vitae, bibendum efficitur metus. Phasellus eget bibendum mauris.

+

+ In dolor erat, malesuada at elit cursus, convallis imperdiet turpis. Ut aliquet magna tellus, at viverra mauris ullamcorper vehicula. Nam quis urna semper magna ornare elementum sed id mauris. Suspendisse faucibus nunc ante, ac rhoncus nisl tristique sed. Vestibulum pretium odio eget scelerisque vestibulum. Aliquam viverra ex ac vestibulum interdum. Donec ligula nunc, dignissim a purus vitae, fermentum laoreet diam. Quisque nec auctor urna. Vestibulum sit amet ligula ullamcorper, congue ipsum et, accumsan ante. Phasellus fermentum, sapien nec pulvinar blandit, elit purus pretium urna, et dapibus orci urna eu metus. Nunc molestie dictum pharetra. Suspendisse luctus felis et ante tristique, vitae commodo diam porttitor. Aliquam orci eros, placerat ac justo vitae, bibendum efficitur metus. Phasellus eget bibendum mauris. +

2 May 2022 10:16AM
diff --git a/out/articles/test articles/test2.article b/out/articles/test articles/test2.article index d80674a..fc2d656 100644 --- a/out/articles/test articles/test2.article +++ b/out/articles/test articles/test2.article @@ -1,3 +1,5 @@

Another test title

-

Sed lobortis nisi id nunc tincidunt volutpat. Mauris cursus felis quis condimentum posuere. Pellentesque vitae dolor et justo suscipit ultrices. Integer dapibus leo id felis varius, ut volutpat massa bibendum. Quisque sed nunc arcu. In sit amet faucibus magna, non venenatis massa. Cras sed placerat risus, id consectetur est. Pellentesque in nunc dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Quisque eget lorem ac urna posuere accumsan. Quisque sed imperdiet nisi.

+

+ Sed lobortis nisi id nunc tincidunt volutpat. Mauris cursus felis quis condimentum posuere. Pellentesque vitae dolor et justo suscipit ultrices. Integer dapibus leo id felis varius, ut volutpat massa bibendum. Quisque sed nunc arcu. In sit amet faucibus magna, non venenatis massa. Cras sed placerat risus, id consectetur est. Pellentesque in nunc dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Quisque eget lorem ac urna posuere accumsan. Quisque sed imperdiet nisi. +

1 May 2022 05:13AM
%CONDITIONAL_EXPAND%
diff --git a/out/articles/test articles/test2.article.html b/out/articles/test articles/test2.article.html index b48b084..bf34830 100644 --- a/out/articles/test articles/test2.article.html +++ b/out/articles/test articles/test2.article.html @@ -18,7 +18,9 @@

Another test title

-

Sed lobortis nisi id nunc tincidunt volutpat. Mauris cursus felis quis condimentum posuere. Pellentesque vitae dolor et justo suscipit ultrices. Integer dapibus leo id felis varius, ut volutpat massa bibendum. Quisque sed nunc arcu. In sit amet faucibus magna, non venenatis massa. Cras sed placerat risus, id consectetur est. Pellentesque in nunc dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Quisque eget lorem ac urna posuere accumsan. Quisque sed imperdiet nisi.

+

+ Sed lobortis nisi id nunc tincidunt volutpat. Mauris cursus felis quis condimentum posuere. Pellentesque vitae dolor et justo suscipit ultrices. Integer dapibus leo id felis varius, ut volutpat massa bibendum. Quisque sed nunc arcu. In sit amet faucibus magna, non venenatis massa. Cras sed placerat risus, id consectetur est. Pellentesque in nunc dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Quisque eget lorem ac urna posuere accumsan. Quisque sed imperdiet nisi. +

1 May 2022 05:13AM
diff --git a/out/articles/test articles/test3.article b/out/articles/test articles/test3.article index 8ec6af0..964bb80 100644 --- a/out/articles/test articles/test3.article +++ b/out/articles/test articles/test3.article @@ -1,3 +1,5 @@

And More

-

Curabitur suscipit quam tellus, non rhoncus diam vehicula in. Aliquam ut dapibus tortor. Cras accumsan arcu vel ante maximus ornare. Nam tempus fermentum leo maximus euismod. Donec vehicula pretium est a ultrices. Nunc blandit nibh lorem, nec blandit leo posuere quis. Sed mauris ligula, euismod eu aliquam vel, rhoncus eget magna. Proin eget tortor ut ligula suscipit mattis. Integer rutrum aliquet eleifend. Suspendisse leo libero, placerat nec mi id, sagittis malesuada felis. Quisque euismod ante cursus elit lobortis, eu tempus ligula condimentum. Mauris viverra metus et dignissim efficitur. Ut placerat nunc nunc, eu tempus neque ultrices nec. Suspendisse et magna risus. Phasellus in ullamcorper tortor. Sed lobortis ut mi in blandit.

+

+ Curabitur suscipit quam tellus, non rhoncus diam vehicula in. Aliquam ut dapibus tortor. Cras accumsan arcu vel ante maximus ornare. Nam tempus fermentum leo maximus euismod. Donec vehicula pretium est a ultrices. Nunc blandit nibh lorem, nec blandit leo posuere quis. Sed mauris ligula, euismod eu aliquam vel, rhoncus eget magna. Proin eget tortor ut ligula suscipit mattis. Integer rutrum aliquet eleifend. Suspendisse leo libero, placerat nec mi id, sagittis malesuada felis. Quisque euismod ante cursus elit lobortis, eu tempus ligula condimentum. Mauris viverra metus et dignissim efficitur. Ut placerat nunc nunc, eu tempus neque ultrices nec. Suspendisse et magna risus. Phasellus in ullamcorper tortor. Sed lobortis ut mi in blandit. +

30 Apr 2022 6:14PM
%CONDITIONAL_EXPAND%
diff --git a/out/articles/test articles/test3.article.html b/out/articles/test articles/test3.article.html index 5fa5dfa..625391b 100644 --- a/out/articles/test articles/test3.article.html +++ b/out/articles/test articles/test3.article.html @@ -18,7 +18,9 @@

And More

-

Curabitur suscipit quam tellus, non rhoncus diam vehicula in. Aliquam ut dapibus tortor. Cras accumsan arcu vel ante maximus ornare. Nam tempus fermentum leo maximus euismod. Donec vehicula pretium est a ultrices. Nunc blandit nibh lorem, nec blandit leo posuere quis. Sed mauris ligula, euismod eu aliquam vel, rhoncus eget magna. Proin eget tortor ut ligula suscipit mattis. Integer rutrum aliquet eleifend. Suspendisse leo libero, placerat nec mi id, sagittis malesuada felis. Quisque euismod ante cursus elit lobortis, eu tempus ligula condimentum. Mauris viverra metus et dignissim efficitur. Ut placerat nunc nunc, eu tempus neque ultrices nec. Suspendisse et magna risus. Phasellus in ullamcorper tortor. Sed lobortis ut mi in blandit.

+

+ Curabitur suscipit quam tellus, non rhoncus diam vehicula in. Aliquam ut dapibus tortor. Cras accumsan arcu vel ante maximus ornare. Nam tempus fermentum leo maximus euismod. Donec vehicula pretium est a ultrices. Nunc blandit nibh lorem, nec blandit leo posuere quis. Sed mauris ligula, euismod eu aliquam vel, rhoncus eget magna. Proin eget tortor ut ligula suscipit mattis. Integer rutrum aliquet eleifend. Suspendisse leo libero, placerat nec mi id, sagittis malesuada felis. Quisque euismod ante cursus elit lobortis, eu tempus ligula condimentum. Mauris viverra metus et dignissim efficitur. Ut placerat nunc nunc, eu tempus neque ultrices nec. Suspendisse et magna risus. Phasellus in ullamcorper tortor. Sed lobortis ut mi in blandit. +

30 Apr 2022 6:14PM
diff --git a/out/otherpage.html b/out/otherpage.html index bacf9c9..0b22f0f 100644 --- a/out/otherpage.html +++ b/out/otherpage.html @@ -27,486 +27,505 @@ This is a different webpage.
}

Welcome to SigPlace!

-

This is a SigPlace article! It will contain information that is important (probably) and will be layed out as such.

-

Paragraphs are automatically split up for readability and generated correctly via the parser. There's quite a bit of flexibility with the system and makes it easy to post updates should they be required.

-

A lot of content management systems would do this by having a web interface and submitting content and managing it that way, but by coding my own management system and using the built-in OS' filesystem to handle the work, I save myself a lot of pains and headaches.

-

Lorem ipsum dolor sit amet, consectetur adipiscing elit. In feugiat, urna ut sollicitudin luctus, nulla magna faucibus mauris, at semper nisl nisi ut mauris. Vestibulum cursus tortor velit, ut congue ex porta in. Nullam hendrerit risus sit amet neque euismod faucibus. Sed ac diam non lectus euismod pulvinar eu non mauris. Donec accumsan nisl efficitur, sodales lectus et, finibus quam. Sed vel consectetur leo. Cras ut condimentum quam. Aliquam molestie viverra congue. Donec scelerisque nibh ac nulla dictum semper. Aliquam id massa a massa bibendum finibus id ac sapien. Integer vitae ullamcorper enim, non semper massa.

+

+ This is a SigPlace article! It will contain information that is important (probably) and will be layed out as such. +

+

+ Paragraphs are automatically split up for readability and generated correctly via the parser. There's quite a bit of flexibility with the system and makes it easy to post updates should they be required. +

+

+ A lot of content management systems would do this by having a web interface and submitting content and managing it that way, but by coding my own management system and using the built-in OS' filesystem to handle the work, I save myself a lot of pains and headaches. +

+

+ Lorem ipsum dolor sit amet, consectetur adipiscing elit. In feugiat, urna ut sollicitudin luctus, nulla magna faucibus mauris, at semper nisl nisi ut mauris. Vestibulum cursus tortor velit, ut congue ex porta in. Nullam hendrerit risus sit amet neque euismod faucibus. Sed ac diam non lectus euismod pulvinar eu non mauris. Donec accumsan nisl efficitur, sodales lectus et, finibus quam. Sed vel consectetur leo. Cras ut condimentum quam. Aliquam molestie viverra congue. Donec scelerisque nibh ac nulla dictum semper. Aliquam id massa a massa bibendum finibus id ac sapien. Integer vitae ullamcorper enim, non semper massa. +


-

Proin cursus sodales elit, vitae volutpat mi fermentum a. In vitae magna quis leo cursus accumsan id facilisis purus. Vestibulum accumsan iaculis turpis eu sollicitudin. Sed ultricies felis non elit suscipit interdum. Maecenas sollicitudin turpis justo, vel pretium sapien scelerisque eget. Nullam sagittis finibus risus ut aliquam. Praesent quam orci, dapibus ut ex ac, sodales dapibus nunc.

+

+Proin cursus sodales elit, vitae volutpat mi fermentum a. In vitae magna quis leo cursus accumsan id facilisis purus. Vestibulum accumsan iaculis turpis eu sollicitudin. Sed ultricies felis non elit suscipit interdum. Maecenas sollicitudin turpis justo, vel pretium sapien scelerisque eget. Nullam sagittis finibus risus ut aliquam. Praesent quam orci, dapibus ut ex ac, sodales dapibus nunc. +


-

Fusce magna risus, iaculis non justo sit amet, semper sodales urna. Morbi eu eros lectus. Integer euismod venenatis eros a hendrerit. Nulla ultricies lectus nec quam condimentum fermentum. Quisque a turpis vitae orci pharetra ullamcorper. Nunc fringilla vitae nunc a aliquam. In aliquam gravida massa. Sed imperdiet dignissim sapien, ullamcorper rutrum lacus convallis ut.

+

+Fusce magna risus, iaculis non justo sit amet, semper sodales urna. Morbi eu eros lectus. Integer euismod venenatis eros a hendrerit. Nulla ultricies lectus nec quam condimentum fermentum. Quisque a turpis vitae orci pharetra ullamcorper. Nunc fringilla vitae nunc a aliquam. In aliquam gravida massa. Sed imperdiet dignissim sapien, ullamcorper rutrum lacus convallis ut. +


-

Nunc tortor sem, dapibus mattis varius id, varius eu leo. Phasellus efficitur nulla a diam faucibus, id facilisis lacus malesuada. Nulla condimentum egestas erat a fermentum. Ut interdum dui id est condimentum, vel fermentum nisi ornare. Sed eu rhoncus magna, sit amet finibus eros. In a nibh tincidunt, suscipit tellus eleifend, faucibus mauris. Vestibulum sagittis nisi et efficitur ullamcorper. Donec sodales efficitur ligula id congue. Etiam egestas tristique interdum. Mauris at massa eget metus pellentesque fermentum nec non lacus. Nulla turpis nunc, feugiat vel euismod ac, maximus id est. Praesent cursus elit ac dolor hendrerit lacinia.

+

+Nunc tortor sem, dapibus mattis varius id, varius eu leo. Phasellus efficitur nulla a diam faucibus, id facilisis lacus malesuada. Nulla condimentum egestas erat a fermentum. Ut interdum dui id est condimentum, vel fermentum nisi ornare. Sed eu rhoncus magna, sit amet finibus eros. In a nibh tincidunt, suscipit tellus eleifend, faucibus mauris. Vestibulum sagittis nisi et efficitur ullamcorper. Donec sodales efficitur ligula id congue. Etiam egestas tristique interdum. Mauris at massa eget metus pellentesque fermentum nec non lacus. Nulla turpis nunc, feugiat vel euismod ac, maximus id est. Praesent cursus elit ac dolor hendrerit lacinia. +


-

Vestibulum laoreet lorem consequat, mollis augue finibus, luctus libero. Praesent convallis sed velit vitae molestie. Vestibulum nec fringilla tellus, non dictum nulla. Donec tempor ac diam sit amet porta. Quisque mi ex, vulputate ac tincidunt vel, vestibulum vitae orci. Duis gravida mauris eget mauris pulvinar, lobortis tincidunt neque efficitur. Nunc blandit metus vitae faucibus vulputate. Curabitur rhoncus volutpat lorem, sit amet pulvinar ipsum. Fusce ultricies enim odio, a viverra quam tincidunt quis. Aliquam sollicitudin a sapien id efficitur. Proin at finibus elit, id gravida elit. Nulla facilisi. Ut tincidunt, ligula eu pulvinar dapibus, lorem nisl facilisis tellus, in ornare quam dolor quis libero. Pellentesque ut convallis orci. Donec volutpat nunc velit, tristique convallis purus lacinia sit amet. Maecenas porttitor cursus nisl sed porta.

+

+Vestibulum laoreet lorem consequat, mollis augue finibus, luctus libero. Praesent convallis sed velit vitae molestie. Vestibulum nec fringilla tellus, non dictum nulla. Donec tempor ac diam sit amet porta. Quisque mi ex, vulputate ac tincidunt vel, vestibulum vitae orci. Duis gravida mauris eget mauris pulvinar, lobortis tincidunt neque efficitur. Nunc blandit metus vitae faucibus vulputate. Curabitur rhoncus volutpat lorem, sit amet pulvinar ipsum. Fusce ultricies enim odio, a viverra quam tincidunt quis. Aliquam sollicitudin a sapien id efficitur. Proin at finibus elit, id gravida elit. Nulla facilisi. Ut tincidunt, ligula eu pulvinar dapibus, lorem nisl facilisis tellus, in ornare quam dolor quis libero. Pellentesque ut convallis orci. Donec volutpat nunc velit, tristique convallis purus lacinia sit amet. Maecenas porttitor cursus nisl sed porta. +


Hello there! You can see this is the Love Live logo indeed! It is quite smol right now but that's okay. Let's keep on going with the text. If the caption is really long and with commas, they will now be combined,,,,,see how that works? Amazing!
-

Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.

+

+Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on.Here we demonstrate the love live logo. But wait, it's literally like in the middle wtf is going on. +


-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + + +
-

+
-

-

-

-

-

-

-

-

+ + + + + + + +
-

+
-

-

+ +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + +
-

-

-

-

-

+ + + + +
-

-

-

-

-

-

-

-

-

+ + + + + + + + +
-

-

-

-

-

-

-

-

+ + + + + + + +
-

+
-

+
-

-

-

-

-

-

-

-

-

+ + + + + + + + +
-

+
-

-

-

-

-

+ + + + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
-

+
-

-

-

+ + +
-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

-

+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+ 
+

+

 import java.io.IOException;
 import java.nio.charset.Charset;
 import java.nio.file.CopyOption;
@@ -535,18 +554,18 @@ This is a different webpage.
static boolean inCodeBlock = false; static String storedCodeBlock = ""; final static HashMap<String,String> map = new HashMap<>(Map.ofEntries( - new AbstractMap.SimpleEntry<>("SITENAME", "SigPlace"), - new AbstractMap.SimpleEntry<>("SITE_BACKCOL", "#111"), - new AbstractMap.SimpleEntry<>("TITLE_CONTENT_START", "<div class=\"contentWrapper\"><h1>"), - new AbstractMap.SimpleEntry<>("TITLE_CONTENT_END", "</h1><div class=\"content\" >"), - new AbstractMap.SimpleEntry<>("CONTENT_END", "</div>"), - new AbstractMap.SimpleEntry<>("DATE_CONTENT_START", "<div class=\"datebar\"></div><div class=\"date\">") + new AbstractMap.SimpleEntry<>("$SITENAME", "SigPlace"), + new AbstractMap.SimpleEntry<>("$SITE_BACKCOL", "#111"), + new AbstractMap.SimpleEntry<>("$TITLE_CONTENT_START", "<div class=\"contentWrapper\"><h1>"), + new AbstractMap.SimpleEntry<>("$TITLE_CONTENT_END", "</h1><div class=\"content\" %ID%>"), + new AbstractMap.SimpleEntry<>("$CONTENT_END", "</div>"), + new AbstractMap.SimpleEntry<>("$DATE_CONTENT_START", "<div class=\"datebar\"></div><div class=\"date\">") )); final static HashMap<String,Path> ops = new HashMap<>(Map.ofEntries( new AbstractMap.SimpleEntry<>( - "", Paths.get(REFDIR,"DEFAULT.html")), + "%DEFAULT", Paths.get(REFDIR,"DEFAULT.html")), new AbstractMap.SimpleEntry<>( - "", Paths.get(REFDIR,"FOOTER.html")) + "%FOOTER", Paths.get(REFDIR,"FOOTER.html")) )); public static void main(String[] args) { if (args.length>0&&args.length%2==0) { @@ -600,8 +619,8 @@ This is a different webpage.
System.out.println(" Preparing "+f.getFileName()); List<String> content = Files.readAllLines(f); if (isHTMLFile(f)) { - content.addAll(0,Files.readAllLines(ops.get(""))); - content.addAll(Files.readAllLines(ops.get(""))); + content.addAll(0,Files.readAllLines(ops.get("%DEFAULT"))); + content.addAll(Files.readAllLines(ops.get("%FOOTER"))); } System.out.println(" Parsing "+f.getFileName()); for (int i=0;i<content.size();i++) { @@ -719,12 +738,12 @@ This is a different webpage.
//Check for markdown pieces. if (s.charAt(0)=='-') { //Start of a title piece. - s=s.replace("-",map.get("TITLE_CONTENT_")); - s=s+map.get("TITLE_CONTENT_").replace("","id=\"content_"+f+"\""); + s=s.replace("-",map.get("$TITLE_CONTENT_")); + s=s+map.get("$TITLE_CONTENT_").replace("%ID%","id=\"content_"+f+"\""); //Use ⤈ if there's more text to be shown than can fit. } else if (s.contains("===")) { - s=map.get("CONTENT_")+map.get("DATE_CONTENT_")+s.replace("===","")+map.get("CONTENT_")+""+map.get("CONTENT_"); + s=map.get("$CONTENT_")+map.get("$DATE_CONTENT_")+s.replace("===","")+map.get("$CONTENT_")+"%CONDITIONAL_EXPAND%"+map.get("$CONTENT_"); } else if (s.charAt(0)==':') { //Image with caption. @@ -779,21 +798,21 @@ This is a different webpage.
if (Files.isRegularFile(f)&&isArticleFile(f)) { System.out.println("
Creating article for "+f.getFileName()); List<String> content = Files.readAllLines(f); - List<String> preContent = Files.readAllLines(ops.get("")); - List<String> postContent = Files.readAllLines(ops.get("")); + List<String> preContent = Files.readAllLines(ops.get("%")); + List<String> postContent = Files.readAllLines(ops.get("%")); StringBuilder sb = new StringBuilder(); for (String d : preContent) { for (String k : sigPlace.map.keySet()) { d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k)); } - sb.append(d).append("\"); + sb.append(d).append("\"); } for (String d : content) { for (String k : sigPlace.map.keySet()) { d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k)); } d=d.replaceFirst("div class=\"content\"","div class=\"expandedContent\""); - d=d.replaceFirst("",""); + d=d.replaceFirst("%CONDITIONAL_EXPAND%",""); sb.append(d).append("\"); } for (String d : postContent) { @@ -820,8 +839,8 @@ This is a different webpage.
List<String> content = Files.readAllLines(f); for (int i=0;i<content.size();i++) { String s = content.get(i); - if (s.length()>0&&s.contains("
ARTICLE_")) { - String article = ARTICLESDIR+"/"+s.replace("ARTICLE_PREVIEW ","")+"."; + if (s.length()>0&&s.contains("$ARTICLE_")) { + String article = ARTICLESDIR+"/"+s.replace("$ARTICLE_PREVIEW ","")+"."; System.out.println(" Found article preview request in "+f.getFileName()+" for article "+article+"."); Path file = Paths.get(OUTDIR,article); List<String> newData = Files.readAllLines(file); @@ -831,7 +850,7 @@ This is a different webpage.
content.add(i+j, newData.get(j)); } String lastline=content.get(i+newData.size()-1); - lastline=lastline.replace("
","<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand(this,'"+Paths.get(OUTDIR,article.toString())+"')\"><br/><br/><br/><br/>&#x2908; Click to expand.</div>"); + lastline=lastline.replace("%CONDITIONAL_EXPAND%","<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand(this,'"+Paths.get(OUTDIR,article.toString())+"')\"><br/><br/><br/><br/>&#x2908; Click to expand.</div>"); content.set(i+newData.size()-1,lastline);//<div class=\"unexpanded\" id=\"expand_"+i+"\" onClick=\"expand("+i+")\"><br/><br/><br/><br/>⤈ Click to expand.</div>"); } else { content.set(i,""); @@ -889,8 +908,8 @@ This is a different webpage.
for (String key : map.keySet()) { System.out.println("Creating directory listing for "+key+"..."); StringBuilder sb = new StringBuilder(""); - List<String> data = Files.readAllLines(ops.get("")); - List<String> data2 = Files.readAllLines(ops.get("")); + List<String> data = Files.readAllLines(ops.get("%DEFAULT")); + List<String> data2 = Files.readAllLines(ops.get("%FOOTER")); for (String d : data) { for (String k : sigPlace.map.keySet()) { d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k)); @@ -951,26 +970,37 @@ This is a different webpage.
} } -

+
+

3 May 2022 10:25AM




⤈ Click to expand.

A Test Title

-

In dolor erat, malesuada at elit cursus, convallis imperdiet turpis. Ut aliquet magna tellus, at viverra mauris ullamcorper vehicula. Nam quis urna semper magna ornare elementum sed id mauris. Suspendisse faucibus nunc ante, ac rhoncus nisl tristique sed. Vestibulum pretium odio eget scelerisque vestibulum. Aliquam viverra ex ac vestibulum interdum. Donec ligula nunc, dignissim a purus vitae, fermentum laoreet diam. Quisque nec auctor urna. Vestibulum sit amet ligula ullamcorper, congue ipsum et, accumsan ante. Phasellus fermentum, sapien nec pulvinar blandit, elit purus pretium urna, et dapibus orci urna eu metus. Nunc molestie dictum pharetra. Suspendisse luctus felis et ante tristique, vitae commodo diam porttitor. Aliquam orci eros, placerat ac justo vitae, bibendum efficitur metus. Phasellus eget bibendum mauris.

-
2 May 2022 10:16AM




⤈ Click to expand.
+

+ In dolor erat, malesuada at elit cursus, convallis imperdiet turpis. Ut aliquet magna tellus, at viverra mauris ullamcorper vehicula. Nam quis urna semper magna ornare elementum sed id mauris. Suspendisse faucibus nunc ante, ac rhoncus nisl tristique sed. Vestibulum pretium odio eget scelerisque vestibulum. Aliquam viverra ex ac vestibulum interdum. Donec ligula nunc, dignissim a purus vitae, fermentum laoreet diam. Quisque nec auctor urna. Vestibulum sit amet ligula ullamcorper, congue ipsum et, accumsan ante. Phasellus fermentum, sapien nec pulvinar blandit, elit purus pretium urna, et dapibus orci urna eu metus. Nunc molestie dictum pharetra. Suspendisse luctus felis et ante tristique, vitae commodo diam porttitor. Aliquam orci eros, placerat ac justo vitae, bibendum efficitur metus. Phasellus eget bibendum mauris. +

+
2 May 2022 10:16AM




⤈ Click to expand.

Another test title

-

Sed lobortis nisi id nunc tincidunt volutpat. Mauris cursus felis quis condimentum posuere. Pellentesque vitae dolor et justo suscipit ultrices. Integer dapibus leo id felis varius, ut volutpat massa bibendum. Quisque sed nunc arcu. In sit amet faucibus magna, non venenatis massa. Cras sed placerat risus, id consectetur est. Pellentesque in nunc dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Quisque eget lorem ac urna posuere accumsan. Quisque sed imperdiet nisi.

-
1 May 2022 05:13AM




⤈ Click to expand.
+

+ Sed lobortis nisi id nunc tincidunt volutpat. Mauris cursus felis quis condimentum posuere. Pellentesque vitae dolor et justo suscipit ultrices. Integer dapibus leo id felis varius, ut volutpat massa bibendum. Quisque sed nunc arcu. In sit amet faucibus magna, non venenatis massa. Cras sed placerat risus, id consectetur est. Pellentesque in nunc dolor. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per inceptos himenaeos. Quisque eget lorem ac urna posuere accumsan. Quisque sed imperdiet nisi. +

+
1 May 2022 05:13AM




⤈ Click to expand.

And More

-

Curabitur suscipit quam tellus, non rhoncus diam vehicula in. Aliquam ut dapibus tortor. Cras accumsan arcu vel ante maximus ornare. Nam tempus fermentum leo maximus euismod. Donec vehicula pretium est a ultrices. Nunc blandit nibh lorem, nec blandit leo posuere quis. Sed mauris ligula, euismod eu aliquam vel, rhoncus eget magna. Proin eget tortor ut ligula suscipit mattis. Integer rutrum aliquet eleifend. Suspendisse leo libero, placerat nec mi id, sagittis malesuada felis. Quisque euismod ante cursus elit lobortis, eu tempus ligula condimentum. Mauris viverra metus et dignissim efficitur. Ut placerat nunc nunc, eu tempus neque ultrices nec. Suspendisse et magna risus. Phasellus in ullamcorper tortor. Sed lobortis ut mi in blandit.

-
30 Apr 2022 6:14PM




⤈ Click to expand.
+

+ Curabitur suscipit quam tellus, non rhoncus diam vehicula in. Aliquam ut dapibus tortor. Cras accumsan arcu vel ante maximus ornare. Nam tempus fermentum leo maximus euismod. Donec vehicula pretium est a ultrices. Nunc blandit nibh lorem, nec blandit leo posuere quis. Sed mauris ligula, euismod eu aliquam vel, rhoncus eget magna. Proin eget tortor ut ligula suscipit mattis. Integer rutrum aliquet eleifend. Suspendisse leo libero, placerat nec mi id, sagittis malesuada felis. Quisque euismod ante cursus elit lobortis, eu tempus ligula condimentum. Mauris viverra metus et dignissim efficitur. Ut placerat nunc nunc, eu tempus neque ultrices nec. Suspendisse et magna risus. Phasellus in ullamcorper tortor. Sed lobortis ut mi in blandit. +

+
30 Apr 2022 6:14PM




⤈ Click to expand.

Curabitur vel tempus ex

-

Curabitur vel tempus ex. Duis cursus sapien nisl, ut pulvinar dui porttitor ut. Nullam odio purus, tristique non turpis sit amet, malesuada ultricies purus. Mauris ut nulla nisl. Aenean sit amet est egestas justo volutpat consequat. Suspendisse in sagittis augue, et mattis tortor. Nullam viverra metus et nibh fringilla iaculis.

+

+Curabitur vel tempus ex. Duis cursus sapien nisl, ut pulvinar dui porttitor ut. Nullam odio purus, tristique non turpis sit amet, malesuada ultricies purus. Mauris ut nulla nisl. Aenean sit amet est egestas justo volutpat consequat. Suspendisse in sagittis augue, et mattis tortor. Nullam viverra metus et nibh fringilla iaculis. +


-

-

-

+ 
+ 
+

+

 <><Test>"</test></test2><test3>"
-            

-
29 Apr 2022 7:37PM




⤈ Click to expand.
+ +

+
29 Apr 2022 7:37PM




⤈ Click to expand.
diff --git a/sigPlace.class b/sigPlace.class index fd6b83e6743a4135c1d72ed6370c0c8ed6ed7e91..4976b83cb44f2d72a3bec342a959b88f25c00ba9 100644 GIT binary patch delta 5306 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 delta 5251 zcma)Ad3;n=vaauRy6;V=2_a3EPC^LT$i4s($p%RX8c4zt1cETwBq0O?!A^rj8N(A~ z1`tG!3yUKtjzIxs?JO8JnbE-o8Qf-^0i6Li+;tEY;nh7INXEzS_v}CFo~m1?PMxYc zU!B{B*5K^@upYnMagd1e#P_?cQv*#p9+uAshT>8Aa$t1$1{*fgdmx*uW`4c1s%BK3 ztI@6FF;HLWjOnZU(K0-4!)7_a9+VhPtE^4%Lqv6~!!?{0!Dtp*9%M*Qk=>zbR4KL#_ zvNWi|@`??w;x+llpdtDjAf#*ftNb7+wAV>8S!pZYvf*vKBQ3$j1O8^i-|-H}Z~g*z z$*h8zjWzS!ezXn$V0X!1$7xv~9IHp;eZ%7qzqC!71UN zaLm)vqVv)D-&pAuE)pZM_s_LDMjd{_=j=r?vD_X~k z*ENo;bJbM28(d8~z5(@`)lgquMy-Aw`)vI)1v!W)&4P`!nY^H$BM7+VPZbMWG-YZWaKgCdlytkuo(jz-|JW4Yz&S zEn&6^i_qk_(0RRmIeJRwXA?HjOTHF5$I{zI`$d5KI?mxY+AtSrn6pc#V}O4UNXt#< zUFKVL5hB+*!eY?-%xR*CWhHWw#boD;nU)ViaeXh7dc$r6N<-`78DiFD4tSM zF|nllCL;(VY@$FE$|u5W29D%i)y;L*)-9gqP zI-|<4T@4CMDE%)7a}s%-SzLZ2i$@jQQaZ6K^t0s~{U%4u=e;eMU*F)YW*qP<8e3LY zTt2a4WXS|wG|HmLi?~PT_P^-A!YWpZRhqb;kAYY%3!{z&J-}HR*WhwTHP*PJ+znAk z)5U`_d_cIrw2Fts!9A=DCTr=!5gBj><){ZuEs6_LlzgUE?U@QnEp4ka?BB5 z@6KUKyAgk5Q63*qYFy%-9D};*yy&Wid2R-d8HOi^vB1>W;LSErg z%{6?#I+G{q;x)NAwqLIkhO1qfJt+^zCZwEFF|DX^x~gV(h43vdj;>SKn2zoP`Ht)x zHw=H1<#A2s_dr1gF4zMn^|pwA8fiOi6aORb4G{11nUApji%)M9|2Ph3r6WE8AIie` zID9N;$4A;fHBjy<^eOi~lN;i5e7<64_ZXQ51G3D1x`;f1=OWbX! z?j4zs05r+DiJP!k`X;3X^K5G^Y2;6&txIaByFeSXRkAE84l`wAQZ@GNeK$!nTSg_f zQRjxe=hL?WH_Hby#{{@`v-Nasxwe94vWrc7Kh0c)=B@OJ`8hgoK1QFJKc+9u-_lo> zq4bTVkSuO&&flE7c`gGn%_q`zckO z%%LG6N{_y#3`37s@6X{d!mTBB;C`ZAJnWGL#PIq~s^mzqvS|P(&&rv#?4fWwR(mL} zEB3g+gC(HDw5&AQ)Jdz`sQG~ncw2=ZCs;kXotA?-@Bk4{WBEg6d+4#iEgpK3Cox-Y zusg4@***tQSlNoT+2+)CJjhodi^JkgG)*@~YBg)Nwg>$^sBXt>R?!`LmrA0enTK6E zz7Ead+eW8Z)#0mFuzKiRw$^gxl*8=MJQ!uiI;N9bu53>EdIrzf|NUY6pa>Xyrzahf9VBYyUtCa#_}6vHJHPtCp=Td3-J<)a2zAqk(>FFHVT(XVNpSs6!$YlYh-2dkCgrcCCZ0~CHFXc)4a7WPYz4MGxE}~SUf8SWM{^2_h9D+ zBs$D?>^71Z-+{fvHF~Ym9hMI4lZ&#aqgB409TT!C$R{w%8(oLRg9AofJMe-G$jPuC z^2+TvB1h*Wg|(V!ne|G`m9sv1%Y4vsc}H@pH}WsaH92AGTtC9MRYEEE=`ymToMJJS z;xUeH#CR$}1(jnWO~Wlzhe@;;lW8@k&=yqEF2?9q+)76dfJrYl1BDSFcd*H%;%;zNBfeyIQi3MV@EY5Xb zi=R$6(l7%%FwCbyNj+y{)Ak$Djr zT$p1H&{l?n*GmJl7+)?%~JX!%yY=`Dx9c83JDgl=xx;`P%Vy3t8;=R?Ym6 zdfV;uwJrA$d28-_weo*kx~MGus4QK&zNIOY{eMhd?lPq!IskeItLkZ^6?{Td=Ap=%9q$SaR}|=C_2Oku{dDz!3(Bv zbebY@(3FBhrgR)OO~et?92_;x#fxI`)|CZl?k;yL9imNL9XW~bZAM29kq5!adbGS72!xpgi05nrVE9MbRYB2q>aMfybX9GPDf8xn0~ zGC3k5AmKJ{34Eh(6S3_gNj4Q_Wf}=fGHwHSl|KbuqX4|laDRfb@CHNuNovMhbT3ZP zQoKpO!#j)&XNn@4`SRPf>N9-4&1_?Qk{A8B@$!jH_E3ihV~uso8TI%gVVsZNJQQhd zB7<9xBPG?`DTY*<_J|uQDt-2d+=@0aoL^Y8eT-9EZL}l@jiQokEy?TVUF47EyD12F zkpsVF$h?O#u!Kfo8AIm1GzLp)9PU%y!k>IDQ3m&kphAsiS^})bw^oGhz{E-sG z?|Ely6kRLUkx6V28^s?K|G1)C6n#?Brxbl!(QS%8tLP3zpHp;~qI(qGr>IBKHbpy{ z)#C+44=Q?C(W8nUQ}oY@zO3kRMPF6)bw%G$^skD(sp#8^zN_5-yZDDVqxcUL{kNj$ q6#a;4BE%<(IWIov2!!#Di^X*Dg~gZup!iaJ&EGKJi0{M&a{MnZhwa$_ diff --git a/sigPlace.java b/sigPlace.java index 192bc5c..a97e1a1 100644 --- a/sigPlace.java +++ b/sigPlace.java @@ -112,7 +112,7 @@ public class sigPlace { System.out.println(" Parsing "+f.getFileName()); for (int i=0;i0&&(isHTMLFile(f)||isArticleFile(f))) { if (!inCodeBlock) { @@ -220,7 +220,7 @@ public class sigPlace { } s="
"+s;
                                 s+=endText;
-                                isPreLine=true;
+                                endPreLine=true;
                                 //System.out.println("Stored code block: "+storedCodeBlock);
                             } else 
                             if (inCodeBlock) {
@@ -228,7 +228,7 @@ public class sigPlace {
                                 s=" ";
                             }
                         }
-                        if (s.length()>0&&isArticleFile(f)) {
+                        if (s.length()>0&&isArticleFile(f)&&!inCodeBlock) {
                             //Check for markdown pieces.
                             if (s.charAt(0)=='-') {
                                 //Start of a title piece.
@@ -251,14 +251,14 @@ public class sigPlace {
                                 s="
"+captionText.toString()+"
"; } else { //It's regular content, so add paragraphs. - s="

"+s+"

"; + s="

\n"+s+"\n

"; } } else { if (s.length()==0&&isArticleFile(f)) { s="
"; //Setup a line break here. } } - if (!isPreLine) { + if (!endPreLine) { for (String key : map.keySet()) { s=s.replaceAll(Pattern.quote(key),map.get(key)); } @@ -296,6 +296,7 @@ public class sigPlace { Path f = items.next(); try { if (Files.isRegularFile(f)&&isArticleFile(f)) { + boolean inCodeBlock = false; System.out.println(" Creating article for "+f.getFileName()); List content = Files.readAllLines(f); List preContent = Files.readAllLines(ops.get("%DEFAULT")); @@ -307,12 +308,23 @@ public class sigPlace { } sb.append(d).append("\n"); } + int lineNumb=0; for (String d : content) { - for (String k : sigPlace.map.keySet()) { - d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k)); + lineNumb++; + if (d.trim().equals("
")) {
+                            System.out.println("
 in "+f+" Line "+lineNumb+": "+d);
+                            inCodeBlock=true;
+                        }
+                        if (inCodeBlock&&d.trim().equals("
")) { + inCodeBlock=false; + } + if (!inCodeBlock) { + for (String k : sigPlace.map.keySet()) { + d=d.replaceAll(Pattern.quote(k),sigPlace.map.get(k)); + } + d=d.replaceFirst("div class=\"content\"","div class=\"expandedContent\""); + d=d.replaceFirst("%CONDITIONAL_EXPAND%",""); } - d=d.replaceFirst("div class=\"content\"","div class=\"expandedContent\""); - d=d.replaceFirst("%CONDITIONAL_EXPAND%",""); sb.append(d).append("\n"); } for (String d : postContent) {