mirror of
https://github.com/schollz/cowyo.git
synced 2023-08-10 21:13:00 +03:00
Python script for determining number of possibilities
This commit is contained in:
parent
4c6052771d
commit
2b56ce4617
24
README.md
24
README.md
@ -7,29 +7,19 @@
|
|||||||
This is a self-contained wiki webserver that makes sharing easy and _fast_. You can make any page you want, and any page is editable by anyone. Pages load instantly for editing, and have special rendering for whether you want to view as a web page or view as list.
|
This is a self-contained wiki webserver that makes sharing easy and _fast_. You can make any page you want, and any page is editable by anyone. Pages load instantly for editing, and have special rendering for whether you want to view as a web page or view as list.
|
||||||
|
|
||||||
# Features
|
# Features
|
||||||
## Simplicity
|
**Simplicity**. The philosophy here is to *just type*. To jot a note, simply load the page at [`/`](http://AwwKoala.com/) and just start typing. No need to press edit, the browser will already be focused on the text. No need to press save - it will automatically save when you stop writing. The URL at [`/`](http://AwwKoala.com/) will redirect to an easy-to-remember name that you can use to reload the page at anytime, anywhere. But, you can also use any URL you want, e.g. [`/AnythingYouWant`](http://AwwKoala.com/AnythingYouWant).
|
||||||
The philosophy here is to *just type*. To jot a note, simply load the page at [`/`](http://AwwKoala.com/) and just start typing. No need to press edit, the browser will already be focused on the text. No need to press save - it will automatically save when you stop writing. The URL at [`/`](http://AwwKoala.com/) will redirect to an easy-to-remember name that you can use to reload the page at anytime, anywhere. But, you can also use any URL you want, e.g. [`/AnythingYouWant`](http://AwwKoala.com/AnythingYouWant).
|
|
||||||
|
|
||||||
## Viewing
|
**Viewing**. All pages can be rendered into HTML by adding `/view`. For example, the page [`/AnythingYouWant`](http://AwwKoala.com/AnythingYouWant) is rendered at [`/AnythingYouWant/view`](http://AwwKoala.com/AnythingYouWant/view). You can write in HTML or [Markdown](https://daringfireball.net/projects/markdown/) for page rendering. To quickly link to `/view` pages, just use `[[AnythingYouWnat]]`. Math is supported with [Katex](https://github.com/Khan/KaTeX) using `$\frac{1}{2}$` for inline equations and `$$\frac{1}{2}$$` for regular equations.
|
||||||
All pages can be rendered into HTML by adding `/view`. For example, the page [`/AnythingYouWant`](http://AwwKoala.com/AnythingYouWant) is rendered at [`/AnythingYouWant/view`](http://AwwKoala.com/AnythingYouWant/view). You can write in HTML or [Markdown](https://daringfireball.net/projects/markdown/) for page rendering. To quickly link to `/view` pages, just use `[[AnythingYouWnat]]`. Math is supported with [Katex](https://github.com/Khan/KaTeX) using `$\frac{1}{2}$` for inline equations and `$$\frac{1}{2}$$` for regular equations.
|
|
||||||
|
|
||||||
## Listifying
|
**Listifying**. If you are writing a list and you want to tick off things really easily, just add `/list`. For example, after editing [`/grocery`](http://AwwKoala.com/grocery), goto [`/grocery/list`](http://AwwKoala.com/grocery/list). In this page, whatever you click on will be striked through and moved to the end. This is helpful if you write a grocery list and then want to easily delete things from it.
|
||||||
If you are writing a list and you want to tick off things really easily, just add `/list`. For example, after editing [`/grocery`](http://AwwKoala.com/grocery), goto [`/grocery/list`](http://AwwKoala.com/grocery/list). In this page, whatever you click on will be striked through and moved to the end. This is helpful if you write a grocery list and then want to easily delete things from it.
|
|
||||||
|
|
||||||
## Automatic versioning
|
**Automatic versioning**. All previous versions of all notes are stored and can be accessed by adding `?version=X` onto `/view` or `/edit`. If you are on the `/view` or `/edit` pages the menu below will show the most substantial changes in the history. Note, only the _current_ version can be edited (no branching allowed, yet).
|
||||||
All previous versions of all notes are stored and can be accessed by adding `?version=X` onto `/view` or `/edit`. If you are on the `/view` or `/edit` pages the menu below will show the most substantial changes in the history. Note, only the _current_ version can be edited (no branching allowed, yet).
|
|
||||||
|
|
||||||
## Security
|
**Security**. HTTPS support is provided. Also uses a HTML sanitizer to prevent XSS attacks. Though all URLs are publically accessible, you are free to secure your website by using an obscure (or random) name.
|
||||||
|
|
||||||
HTTPS support is provided. Also uses a HTML sanitizer to prevent XSS attacks.
|
**Keyboard Shortcuts**. Quickly transition between Edit/View/List by using `Ctl+Shift+E` to Edit, `Ctl+Shift+Z` to View, and `Ctl+Shift+L` to Listify.
|
||||||
|
|
||||||
## Keyboard Shortcuts
|
**Admin controls**. The Admin can view/delete all the documents by setting the `-a YourAdminKey` when starting the program. Then the admin has access to the `/ls/YourAdminKey` to view and delete any of the pages.
|
||||||
|
|
||||||
Quickly transition between Edit/View/List by using `Ctl+Shift+E` to Edit, `Ctl+Shift+Z` to View, and `Ctl+Shift+L` to Listify.
|
|
||||||
|
|
||||||
## Admin controls
|
|
||||||
|
|
||||||
The Admin can view/delete all the documents by setting the `-a YourAdminKey` when starting the program. Then the admin has access to the `/ls/YourAdminKey` to view and delete any of the pages.
|
|
||||||
|
|
||||||
# Install
|
# Install
|
||||||
|
|
||||||
|
25
static/text/howmany.py
Executable file
25
static/text/howmany.py
Executable file
@ -0,0 +1,25 @@
|
|||||||
|
adjectives = {}
|
||||||
|
with open('adjectives','r') as f:
|
||||||
|
for line in f:
|
||||||
|
word = line.strip().lower()
|
||||||
|
if word[0] not in adjectives:
|
||||||
|
adjectives[word[0]] = []
|
||||||
|
adjectives[word[0]].append(word)
|
||||||
|
|
||||||
|
print(len(adjectives.keys()))
|
||||||
|
|
||||||
|
animals = {}
|
||||||
|
for aword in open('animals','r').read().split(','):
|
||||||
|
word = aword.strip().lower()
|
||||||
|
if word[0] not in animals:
|
||||||
|
animals[word[0]] = []
|
||||||
|
animals[word[0]].append(word)
|
||||||
|
|
||||||
|
print(len(animals))
|
||||||
|
|
||||||
|
i = 0
|
||||||
|
for key in adjectives.keys():
|
||||||
|
if key in animals and key in adjectives:
|
||||||
|
i = i + len(adjectives[key])*len(animals[key])
|
||||||
|
|
||||||
|
print(i)
|
Loading…
Reference in New Issue
Block a user