From 407e19d5fa2be15a9fe9041814915f57297b2b13 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 16:15:11 -0700 Subject: [PATCH 1/8] Update README.md --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 547caa4..837d3fd 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ The Built-in Calendar * Runs on Mac, Linux and Windows. * A built-in calendar and daily journal. * A built-in GetThingsDone template to help you set up GTD quickly. -* A tempalte system that automatically inserts pre-defined content into new wiki pages. +* A template system that automatically inserts pre-defined content into new wiki pages. * Full-text search. * A modernized and mobile-friendly look using [Sakura CSS](https://github.com/oxalorg/sakura). * Wiki pages save to plain text files under the "w" directory @@ -108,10 +108,10 @@ There's no difference between Tags and WikiWords. When you create a new page, th For example, you can create a page called ToDo, and put the word ToDo to other pages and see references here: http://127.0.0.1:8000/cgi-bin/wypyplus?p=ToDo&q=f -### How to define and use a tempalte -You can create a template just like any other wiki page. A tempalte name must start with "Tpl" and follow by three characters. WyPyPlus will automatically insert its content to a new wiki page when the first three characters of the page matche the tempalte. +### How to define and use a template +You can create a template just like any other wiki page. A template name must start with "Tpl" and follow by three characters. WyPyPlus will automatically insert its content to a new wiki page when the first three characters of the page matches the template -For example, If you create a template page called TplJan, a new page called Jan23 will load the content from template. +For example, If you create a template page called TplJan, a new page called Jan23 will load the content from the template. # Source Code From 07d72e3d174f4a0b93f0cdf42c35bec70cb0e3f1 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 16:15:58 -0700 Subject: [PATCH 2/8] Update WyPyPlus --- w/WyPyPlus | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/w/WyPyPlus b/w/WyPyPlus index cc6d06b..68d68e1 100644 --- a/w/WyPyPlus +++ b/w/WyPyPlus @@ -9,7 +9,7 @@ WyPyPlus (pronounced "whippy plus") is a minimalist wiki server in 23 lines of c * Runs on Mac, Linux and Windows. * A built-in calendar and daily journal. * A GetThingsDone template to help you setup your GTD system quickly. -* A tempalte system that automatically inserts pre-defined content into new wiki pages. +* A template system that automatically inserts pre-defined content into new wiki pages. * Full-text search. * A modernized and mobile-friendly look using [Sakura CSS](https://github.com/oxalorg/sakura). * Wiki pages save to plain text files under the "w" directory @@ -91,10 +91,10 @@ There's no difference between Tags and WikiWords. When you create a new page, th For example, you can create a page called ToDo, and put the word ToDo to other pages and see references here: http://127.0.0.1:8000/cgi-bin/wypyplus?p=ToDo&q=f -### How to define and use a tempalte -You can create a template just like any other wiki page. A tempalte name must start with "Tpl" and follow by three characters. WyPyPlus will automatically insert content to a new wiki page when the first three character of the page matche the tempalte. +### How to define and use a template +You can create a template just like any other wiki page. A template name must start with "Tpl" and follow by three characters. WyPyPlus will automatically insert its content to a new wiki page when the first three characters of the page matches the template -For example, If you create a template page called TplJan, a new page called Jan23 will load the content from tempalte. +For example, If you create a template page called TplJan, a new page called Jan23 will load the content from the template. # Source Code From 7474796ba37e0d31638c17825cb61fffe38a243b Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 16:19:52 -0700 Subject: [PATCH 3/8] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 837d3fd..5fd4cea 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ The Built-in Calendar * Only 23 lines of Python code with no external dependency other than the standard library. * Runs on Mac, Linux and Windows. * A built-in calendar and daily journal. -* A built-in GetThingsDone template to help you set up GTD quickly. +* A built-in GetThingsDone guide to help you set up GTD quickly. * A template system that automatically inserts pre-defined content into new wiki pages. * Full-text search. * A modernized and mobile-friendly look using [Sakura CSS](https://github.com/oxalorg/sakura). From 2a2d15a0f443eaf9c1a5282a9fd4e3702a425900 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 21:10:57 -0700 Subject: [PATCH 4/8] Update README.md --- README.md | 37 ++++++++++++++++++------------------- 1 file changed, 18 insertions(+), 19 deletions(-) diff --git a/README.md b/README.md index 5fd4cea..461db09 100644 --- a/README.md +++ b/README.md @@ -12,11 +12,11 @@ A minimal editor that does not get in the way. The Built-in Calendar

-## New Features: +## Key Features: * Only 23 lines of Python code with no external dependency other than the standard library. * Runs on Mac, Linux and Windows. -* A built-in calendar and daily journal. -* A built-in GetThingsDone guide to help you set up GTD quickly. +* An example calendar and daily journal. +* An example GetThingsDone guide to help you set up GTD quickly. * A template system that automatically inserts pre-defined content into new wiki pages. * Full-text search. * A modernized and mobile-friendly look using [Sakura CSS](https://github.com/oxalorg/sakura). @@ -27,21 +27,6 @@ The Built-in Calendar * A [top-level index](http://127.0.0.1:8000/cgi-bin/wypyplus.py?p=All&q=f) to show every page in the wiki. * AutoSave after 30 minutes of editing. - -## Text Formatting -* WikiNames are replaced with internal links. -* Markdown style ```**bold**``` -* "\n{{" starts an unordered list. -* "\n* [text]" is a list item in an unordered list. -* "\n}}" ends an unordered list. -* "\n#" inserts H1 -* "\n##" inserts H2 -* "\n###" inserts H3 -* To format code or text into its own distinct block, use triple backticks: \`\`\`. -* "---" creates an \ element. -* Markdown style [link](https://www.markdownguide.org/basic-syntax/#links) and [image tag](https://www.markdownguide.org/basic-syntax/#images-1). -* All HTML is replaced with its quoted equivalent (i.e. is forbidden). -

@@ -54,7 +39,7 @@ WyPyPlus helps you control your personal data by keeping data close to you. It d Comparing to other self-hosted Wiki, WyPyPlus is much easier to set up and maintain. You don't need to set up a Linux box and secure it. You don't need to mess with web front-end configurations and database. The more features a software has, the higher maintenance cost you will pay. Things add up pretty quickly. At the end of the day, don't you want a Wiki that just works? -### The key feature of WyPyPluse is the lack of features. +### The key feature of WyPyPluse is the lack of features. You will be amazed by how much you can accomplised just using the core feaures in WyPyPlus. Wiki pages are just text files. If you don't want WyPyPlus, you can easily move to somewhere else that supports markdown. @@ -76,6 +61,20 @@ Wiki pages are just text files. If you don't want WyPyPlus, you can easily move * To avoid depending on an external parser, WyPyPlus uses regular expresisons to match tags. It is not perfect, but farily useable. * WyPyPlus has no config file. You can't mis-configure it. If you really need something, just edit the source code. +## Text Formatting +* WikiNames are replaced with internal links. +* Markdown style ```**bold**``` +* "\n{{" starts an unordered list. +* "\n* [text]" is a list item in an unordered list. +* "\n}}" ends an unordered list. +* "\n#" inserts H1 +* "\n##" inserts H2 +* "\n###" inserts H3 +* To format code or text into its own distinct block, use triple backticks: \`\`\`. +* "---" creates an \ element. +* Markdown style [link](https://www.markdownguide.org/basic-syntax/#links) and [image tag](https://www.markdownguide.org/basic-syntax/#images-1). +* All HTML is replaced with its quoted equivalent (i.e. is forbidden). + ## Install and Use * You need Python 2 to run this application. Mac and Linux already have Python 2. For Windows users, please install Python 2.7. From 4fde84a6b00285d163fc25d5fea12cd3ed329081 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 21:59:45 -0700 Subject: [PATCH 5/8] Update README.md --- README.md | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 461db09..c508f42 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,13 @@ # WyPyPlus: A personal wiki in 23 lines of code -WyPyPlus (pronounced "whippy plus") is a minimalist wiki server in 23 lines of code. It is an extension of [wypy wiki](http://infomesh.net/2003/wypy/) written by Sean B. Palmer during a [ShortestWikiContest](http://wiki.c2.com/?ShortestWikiContest). The original project implements a wiki in just 11 lines of Python code, which is an amazing achievement. However, wypy wiki doesn't have many features I consider as essential. +WyPyPlus (pronounced "whippy plus") is a minimalist wiki server in 23 lines of code based on [wypy wiki](http://infomesh.net/2003/wypy/) written by Sean B. Palmer in 2004 during a [ShortestWikiContest](http://wiki.c2.com/?ShortestWikiContest). + + +WyPyPlus is a journey to discover the essence of personal wiki and get rid of everything else. It tries to keep a minimal set of features and pack them in the tiniest space possible. + +It tries to be an old typewriter with the magic of linking information. There’s nothing between you and your content. You don’t need to worry about configuration, backup, user authentication, subscription fee, system update and so on. It is just you and your content. At the end of the day, don't you want a Wiki that just works and is free? + +Other software projects always tell you that they are easy to set up and easy to use. WyPyPlus tells you that it is easy for you to leave. Your content are text files stored under the /w directory. You can move to other places if you need more than what WyPyPlus offers.

@@ -12,37 +19,28 @@ A minimal editor that does not get in the way. The Built-in Calendar

-## Key Features: +### The key feature of WyPyPluse is the lack of features. You will be amazed by how much you can accomplised with a simple tool. + * Only 23 lines of Python code with no external dependency other than the standard library. * Runs on Mac, Linux and Windows. +* Support basic wiki syntax. [DemoPage](https://github.com/lchen198/wypyplus/blob/main/w/DemoPage) +* No database. Your files are in the /w folder. + +### To make your life easier * An example calendar and daily journal. * An example GetThingsDone guide to help you set up GTD quickly. -* A template system that automatically inserts pre-defined content into new wiki pages. +* A template system to insert pre-defined content. * Full-text search. * A modernized and mobile-friendly look using [Sakura CSS](https://github.com/oxalorg/sakura). -* Wiki pages save to plain text files under the "w" directory * Delete a wiki page from disk by saving an empty content. -* Support common markdown syntax such as headline style and links [DemoPage](https://github.com/lchen198/wypyplus/blob/main/w/DemoPage). * Each WikiPage has a reverse index. You can use this feature to group pages by tags. -* A [top-level index](http://127.0.0.1:8000/cgi-bin/wypyplus.py?p=All&q=f) to show every page in the wiki. +* A [page](http://127.0.0.1:8000/cgi-bin/wypyplus.py?p=All&q=f) to show all your files in sorted order. * AutoSave after 30 minutes of editing.

-## WyPyPlus vs Other Wiki Software - -WyPyPlus is the result of a deep meditation to find out the essence of personal wiki and get rid of everything else. It tries to keep the purest form of wiki packed in the tiniest space possible. - -WyPyPlus helps you control your personal data by keeping data close to you. It doesn't upload your data to the cloud or a remote server. - -Comparing to other self-hosted Wiki, WyPyPlus is much easier to set up and maintain. You don't need to set up a Linux box and secure it. You don't need to mess with web front-end configurations and database. The more features a software has, the higher maintenance cost you will pay. Things add up pretty quickly. At the end of the day, don't you want a Wiki that just works? - -### The key feature of WyPyPluse is the lack of features. You will be amazed by how much you can accomplised just using the core feaures in WyPyPlus. - -Wiki pages are just text files. If you don't want WyPyPlus, you can easily move to somewhere else that supports markdown. - **Benefits** * Fast!! * Support just enough wiki syntaxes to be useful. (See [DemoPage](https://github.com/lchen198/wypyplus/blob/main/w/DemoPage)) From caeded0a9272fd82b30b0d880ba1e5f140aeb330 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 22:05:59 -0700 Subject: [PATCH 6/8] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c508f42..d45ce35 100644 --- a/README.md +++ b/README.md @@ -34,7 +34,7 @@ The Built-in Calendar * A modernized and mobile-friendly look using [Sakura CSS](https://github.com/oxalorg/sakura). * Delete a wiki page from disk by saving an empty content. * Each WikiPage has a reverse index. You can use this feature to group pages by tags. -* A [page](http://127.0.0.1:8000/cgi-bin/wypyplus.py?p=All&q=f) to show all your files in sorted order. +* An [index page](http://127.0.0.1:8000/cgi-bin/wypyplus.py?p=All&q=f) to show all your files in sorted order. * AutoSave after 30 minutes of editing.

From 38b4bc02e6e43a1bbab3736426d9247e41f910f3 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 22:11:39 -0700 Subject: [PATCH 7/8] Update README.md --- README.md | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index d45ce35..84d6e92 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ The Built-in Calendar * Only 23 lines of Python code with no external dependency other than the standard library. * Runs on Mac, Linux and Windows. * Support basic wiki syntax. [DemoPage](https://github.com/lchen198/wypyplus/blob/main/w/DemoPage) -* No database. Your files are in the /w folder. +* Your files are in the /w folder. ### To make your life easier * An example calendar and daily journal. @@ -41,17 +41,14 @@ The Built-in Calendar

-**Benefits** +**Other Benefits** * Fast!! -* Support just enough wiki syntaxes to be useful. (See [DemoPage](https://github.com/lchen198/wypyplus/blob/main/w/DemoPage)) * Takes less than a minute to set up and get going. -* Runs anywhere that has Python and a browser. * Works perfectly offline. * No config file to mess with. * No authentication. It's a personal wiki and you should run it on your own machine. * No database. Wiki pages are just text files. * Low maintenance. Just backup the entire folder. -* Extendable. **Design Tradeoffs** @@ -99,13 +96,13 @@ The UI should be fairly self-explanatory. * Click the ? mark after a CamelCased word to create a new page. * Click the Submit button to save a page. If you save an empty page, WyPyPlus will delete it from disk. -### How to create tags -There's no difference between Tags and WikiWords. When you create a new page, there will be a link on the top of the screen to show all pages that reference it. +### How to create tags? +Tags are just wiki pages. When you create a new page, there will be a link on the top of the screen to show all pages that reference it. For example, you can create a page called ToDo, and put the word ToDo to other pages and see references here: http://127.0.0.1:8000/cgi-bin/wypyplus?p=ToDo&q=f -### How to define and use a template +### How to define and use a template? You can create a template just like any other wiki page. A template name must start with "Tpl" and follow by three characters. WyPyPlus will automatically insert its content to a new wiki page when the first three characters of the page matches the template For example, If you create a template page called TplJan, a new page called Jan23 will load the content from the template. From 27cc4db4c9e565c97091121592a4aa10db0e32e5 Mon Sep 17 00:00:00 2001 From: Leo Chen Date: Fri, 23 Jul 2021 22:14:56 -0700 Subject: [PATCH 8/8] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 84d6e92..385151f 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,7 @@ You can create a template just like any other wiki page. A template name must st For example, If you create a template page called TplJan, a new page called Jan23 will load the content from the template. -# Source Code +# I want XYZ but WyPyPlus doesn't support. The original wypy code is highly compressed. However, variable names are carefully picked so that the code is still somewhat readable.