mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-27 02:24:18 +00:00
Documentation skeleton.
This commit is contained in:
parent
e236d7746a
commit
3bc7f4e1cd
25
README.mkd
25
README.mkd
@ -3,9 +3,12 @@ __pathod__ is a collection of pathological tools for testing and torturing HTTP
|
|||||||
clients and servers. The project has three components:
|
clients and servers. The project has three components:
|
||||||
|
|
||||||
- __pathod__, an pathological HTTP daemon.
|
- __pathod__, an pathological HTTP daemon.
|
||||||
- __pathoc__, a fiendishly perverse HTTP client.
|
- __pathoc__, a perverse HTTP client.
|
||||||
- __libpathod.test__, an API for easily using __pathod__ and __pathoc__ in unit tests.
|
- __libpathod.test__, an API for easily using __pathod__ and __pathoc__ in unit tests.
|
||||||
|
|
||||||
|
|
||||||
|
# pathod
|
||||||
|
|
||||||
At __pathod__'s heart is a tiny, terse language for crafting HTTP responses.
|
At __pathod__'s heart is a tiny, terse language for crafting HTTP responses.
|
||||||
The simplest way to use __pathod__ is to fire up the daemon, and specify the
|
The simplest way to use __pathod__ is to fire up the daemon, and specify the
|
||||||
response behaviour you want using this language in the request URL. Here's a
|
response behaviour you want using this language in the request URL. Here's a
|
||||||
@ -31,8 +34,7 @@ various other goodies. Try it by visiting the server root:
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
Specifying Responses
|
## Specifying Responses
|
||||||
====================
|
|
||||||
|
|
||||||
The general form of a response is as follows:
|
The general form of a response is as follows:
|
||||||
|
|
||||||
@ -117,8 +119,8 @@ once at 10 bytes and once at 20, then disconnects at 5000:
|
|||||||
200:b@1m:p10,10:p20,10:d5000
|
200:b@1m:p10,10:p20,10:d5000
|
||||||
|
|
||||||
|
|
||||||
Features
|
## Features
|
||||||
========
|
|
||||||
|
|
||||||
#### hKEY=VALUE
|
#### hKEY=VALUE
|
||||||
|
|
||||||
@ -158,8 +160,9 @@ forever. OFFSET can also be "r" to generate a random offset, or "a" for an
|
|||||||
offset just after all data has been sent.
|
offset just after all data has been sent.
|
||||||
|
|
||||||
|
|
||||||
Value Specifiers
|
|
||||||
================
|
|
||||||
|
## Value Specifiers
|
||||||
|
|
||||||
There are three different flavours of value specification.
|
There are three different flavours of value specification.
|
||||||
|
|
||||||
@ -240,7 +243,7 @@ Supported data types are:
|
|||||||
bytes
|
bytes
|
||||||
|
|
||||||
|
|
||||||
# API
|
## API
|
||||||
|
|
||||||
__pathod__ exposes a simple API, intended to make it possible to drive and
|
__pathod__ exposes a simple API, intended to make it possible to drive and
|
||||||
inspect the daemon remotely for use in unit testing and the like.
|
inspect the daemon remotely for use in unit testing and the like.
|
||||||
@ -299,6 +302,9 @@ interface.
|
|||||||
A POST to this URL clears the log buffer.
|
A POST to this URL clears the log buffer.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Installing
|
# Installing
|
||||||
|
|
||||||
If you already have __pip__ on your system, installing __pathod__ and its
|
If you already have __pip__ on your system, installing __pathod__ and its
|
||||||
@ -307,5 +313,6 @@ dependencies is dead simple:
|
|||||||
pip install pathod
|
pip install pathod
|
||||||
|
|
||||||
The project uses the __nose__ unit testing framework, which you can get here:
|
The project uses the __nose__ unit testing framework, which you can get here:
|
||||||
|
|
||||||
|
FIXME
|
||||||
|
|
||||||
|
9
doc-src/01-bootstrap.min.css
vendored
Normal file
9
doc-src/01-bootstrap.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
4
doc-src/01-jquery-1.7.2.min.js
vendored
Normal file
4
doc-src/01-jquery-1.7.2.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
6
doc-src/02-bootstrap.min.js
vendored
Normal file
6
doc-src/02-bootstrap.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
343
doc-src/03-blogstyle.css
Normal file
343
doc-src/03-blogstyle.css
Normal file
@ -0,0 +1,343 @@
|
|||||||
|
|
||||||
|
#rsstable {
|
||||||
|
margin-top: 15px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
#rsstable td {
|
||||||
|
border: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
font-size: 11px;
|
||||||
|
color: #000000;
|
||||||
|
padding-right: 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.post {
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
.posthead {
|
||||||
|
margin-bottom: 15px;
|
||||||
|
}
|
||||||
|
/* title */
|
||||||
|
.posthead h1 {
|
||||||
|
font-size: 2.4em !important;
|
||||||
|
margin: 0 0 0.2em 0;
|
||||||
|
}
|
||||||
|
/* date */
|
||||||
|
.posthead h2 {
|
||||||
|
font-size: 1.0em;
|
||||||
|
color: #999;
|
||||||
|
margin: 0 0 -0.25em 0;
|
||||||
|
font-weight: normal;
|
||||||
|
margin-bottom 5px;
|
||||||
|
}
|
||||||
|
.posthead a {
|
||||||
|
color: #3F8ED8;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.posthead a:hover {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
sup {
|
||||||
|
vertical-align: text-top;
|
||||||
|
padding: 2px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.postbody p {
|
||||||
|
line-height: 1.4em;
|
||||||
|
margin: 1em 0;
|
||||||
|
}
|
||||||
|
.postbody a {
|
||||||
|
color: #3F8ED8;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
.postbody {
|
||||||
|
margin-bottom: 10px;
|
||||||
|
border-bottom: 1px solid #CCCCCC;
|
||||||
|
}
|
||||||
|
.postbody pre {
|
||||||
|
font-size: 0.8em;
|
||||||
|
}
|
||||||
|
.footnotes {
|
||||||
|
font-size: 0.9em;
|
||||||
|
margin: 1em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.footnotes hr {
|
||||||
|
color: #ffffff;
|
||||||
|
background-color: #ffffff;
|
||||||
|
border: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#twitter_div {
|
||||||
|
margin-left: 0px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#twitter_update_list {
|
||||||
|
margin-left: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#twitter_update_list li {
|
||||||
|
list-style-image:none;
|
||||||
|
list-style-position:outside;
|
||||||
|
list-style-type:none;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.archive a {
|
||||||
|
color: #437095;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.archive a:hover {
|
||||||
|
color: #000;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
.archive li {
|
||||||
|
list-style-image:none;
|
||||||
|
list-style-position:outside;
|
||||||
|
list-style-type:none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.archive h1 {
|
||||||
|
font-size: 1.8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.archive .archive-post {
|
||||||
|
font-size: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.archive .archive-date {
|
||||||
|
font-size: 1.0em;
|
||||||
|
margin-left: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.highlight pre {
|
||||||
|
border-bottom: 1px solid #CCCCCC;
|
||||||
|
border-top: 1px solid #CCCCCC;
|
||||||
|
padding: 10px;
|
||||||
|
background: #F8F8F8 none repeat scroll 0% 0%;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
.output {
|
||||||
|
border-bottom: 1px solid #CCCCCC;
|
||||||
|
border-top: 1px solid #CCCCCC;
|
||||||
|
padding: 10px;
|
||||||
|
background: #F8F8F8 none repeat scroll 0% 0%;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#ft {
|
||||||
|
color: #aaa;
|
||||||
|
border-top: 1px solid #aaa;
|
||||||
|
clear: both;
|
||||||
|
margin: 0 0 2em 0;
|
||||||
|
font-size: 0.8em;
|
||||||
|
letter-spacing: 0.5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.imggrid td {
|
||||||
|
border: 0px;
|
||||||
|
padding: 1px;
|
||||||
|
margin: 0px;
|
||||||
|
line-height: 0%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.postimage img {
|
||||||
|
padding: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.spacertable {
|
||||||
|
width: 100%;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
.spacertable td {
|
||||||
|
border: 0px;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.layouttable {
|
||||||
|
width: 100%;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
.layouttable td {
|
||||||
|
border: 0px;
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
background: url(start_quote.png) top left no-repeat;
|
||||||
|
padding-left: 30px;
|
||||||
|
padding-right: 30px;
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.subtitle {
|
||||||
|
width: 60%;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.equation {
|
||||||
|
margin-left: 30px;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.recent a {
|
||||||
|
color: #437095;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
.recent a:hover {
|
||||||
|
color: #000;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
#yui-main .recent ul li {
|
||||||
|
list-style-image:none;
|
||||||
|
list-style-position:outside;
|
||||||
|
list-style-type:none;
|
||||||
|
margin: 5px;
|
||||||
|
}
|
||||||
|
#yui-main .recent h1 {
|
||||||
|
font-size: 1.4em;
|
||||||
|
margin-top: 20px;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.recent .recent-post {
|
||||||
|
font-size: 1.0em;
|
||||||
|
}
|
||||||
|
.recent .recent-date {
|
||||||
|
font-size: 0.8em;
|
||||||
|
margin-left: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.links_block {
|
||||||
|
margin-left: 35px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.links_block li {
|
||||||
|
list-style-type:none;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.links_title {
|
||||||
|
padding: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.links_title a p {
|
||||||
|
margin: 0px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.links_body {
|
||||||
|
padding: 0px;
|
||||||
|
margin: 0px;
|
||||||
|
margin-left: 20px;
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
.links_body p {
|
||||||
|
margin: 5px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.terminal {
|
||||||
|
color: #fff;
|
||||||
|
background: #000;
|
||||||
|
padding: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.frontpage h2 {
|
||||||
|
margin: 0.2em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.frontpage h3 {
|
||||||
|
margin: 0.2em 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.frontpage p {
|
||||||
|
margin: 0.2em 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.postlist {
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.postlist li {
|
||||||
|
list-style-type: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.postlist a {
|
||||||
|
color: #303030;
|
||||||
|
border-bottom: 1px dotted #303030;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.postlist img {
|
||||||
|
float: left;
|
||||||
|
margin-right: 5px;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
|
||||||
|
.postlist a:hover {
|
||||||
|
color: #3F8ED8;
|
||||||
|
border-bottom: 1px dotted #3F8ED8;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.postlist td {
|
||||||
|
border: 0px;
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#contact {
|
||||||
|
margin-left: 0px;
|
||||||
|
|
||||||
|
}
|
||||||
|
#contact li {
|
||||||
|
list-style: none;
|
||||||
|
margin: 5px 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.projtable {
|
||||||
|
width: 100%;
|
||||||
|
margin: 0px;
|
||||||
|
padding: 0px;
|
||||||
|
}
|
||||||
|
.projtable td {
|
||||||
|
padding-left: 0px;
|
||||||
|
vertical-align: top;
|
||||||
|
border: 0px;
|
||||||
|
padding-top: 0px;
|
||||||
|
}
|
||||||
|
.projtable th {
|
||||||
|
padding-left: 0px;
|
||||||
|
vertical-align: top;
|
||||||
|
border: 0px;
|
||||||
|
text-align: left;
|
||||||
|
padding-top: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.hidden {
|
||||||
|
display: none;
|
||||||
|
}
|
120
doc-src/04-syntax.css
Normal file
120
doc-src/04-syntax.css
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
.highlight { background: #f8f8f8; }
|
||||||
|
.highlight .c { color: #408080; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.highlight .k { color: #008000; font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { color: #666666 } /* Operator */
|
||||||
|
.highlight .cm { color: #408080; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #BC7A00 } /* Comment.Preproc */
|
||||||
|
.highlight .c1 { color: #408080; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #408080; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.highlight .go { color: #808080 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #0040D0 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kp { color: #008000 } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #B00040 } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #666666 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #BA2121 } /* Literal.String */
|
||||||
|
.highlight .na { color: #7D9029 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #008000 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #0000FF; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #880000 } /* Name.Constant */
|
||||||
|
.highlight .nd { color: #AA22FF } /* Name.Decorator */
|
||||||
|
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #0000FF } /* Name.Function */
|
||||||
|
.highlight .nl { color: #A0A000 } /* Name.Label */
|
||||||
|
.highlight .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #008000; font-weight: bold } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #19177C } /* Name.Variable */
|
||||||
|
.highlight .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mf { color: #666666 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #666666 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #666666 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #666666 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sb { color: #BA2121 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #BA2121 } /* Literal.String.Char */
|
||||||
|
.highlight .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #BA2121 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #BA2121 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #008000 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #BB6688 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #BA2121 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #19177C } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #008000 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .vc { color: #19177C } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #19177C } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #19177C } /* Name.Variable.Instance */
|
||||||
|
.highlight .il { color: #666666 } /* Literal.Number.Integer.Long */
|
||||||
|
.grokdoc { background: #f8f8f8; }
|
||||||
|
.grokdoc .c { color: #408080; font-style: italic } /* Comment */
|
||||||
|
.grokdoc .err { border: 1px solid #FF0000 } /* Error */
|
||||||
|
.grokdoc .k { color: #008000; font-weight: bold } /* Keyword */
|
||||||
|
.grokdoc .o { color: #666666 } /* Operator */
|
||||||
|
.grokdoc .cm { color: #408080; font-style: italic } /* Comment.Multiline */
|
||||||
|
.grokdoc .cp { color: #BC7A00 } /* Comment.Preproc */
|
||||||
|
.grokdoc .c1 { color: #408080; font-style: italic } /* Comment.Single */
|
||||||
|
.grokdoc .cs { color: #408080; font-style: italic } /* Comment.Special */
|
||||||
|
.grokdoc .gd { color: #A00000 } /* Generic.Deleted */
|
||||||
|
.grokdoc .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.grokdoc .gr { color: #FF0000 } /* Generic.Error */
|
||||||
|
.grokdoc .gh { color: #000080; font-weight: bold } /* Generic.Heading */
|
||||||
|
.grokdoc .gi { color: #00A000 } /* Generic.Inserted */
|
||||||
|
.grokdoc .go { color: #808080 } /* Generic.Output */
|
||||||
|
.grokdoc .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
|
||||||
|
.grokdoc .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.grokdoc .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
|
||||||
|
.grokdoc .gt { color: #0040D0 } /* Generic.Traceback */
|
||||||
|
.grokdoc .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
|
||||||
|
.grokdoc .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.grokdoc .kp { color: #008000 } /* Keyword.Pseudo */
|
||||||
|
.grokdoc .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.grokdoc .kt { color: #B00040 } /* Keyword.Type */
|
||||||
|
.grokdoc .m { color: #666666 } /* Literal.Number */
|
||||||
|
.grokdoc .s { color: #BA2121 } /* Literal.String */
|
||||||
|
.grokdoc .na { color: #7D9029 } /* Name.Attribute */
|
||||||
|
.grokdoc .nb { color: #008000 } /* Name.Builtin */
|
||||||
|
.grokdoc .nc { color: #0000FF; font-weight: bold } /* Name.Class */
|
||||||
|
.grokdoc .no { color: #880000 } /* Name.Constant */
|
||||||
|
.grokdoc .nd { color: #AA22FF } /* Name.Decorator */
|
||||||
|
.grokdoc .ni { color: #999999; font-weight: bold } /* Name.Entity */
|
||||||
|
.grokdoc .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
|
||||||
|
.grokdoc .nf { color: #0000FF } /* Name.Function */
|
||||||
|
.grokdoc .nl { color: #A0A000 } /* Name.Label */
|
||||||
|
.grokdoc .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
|
||||||
|
.grokdoc .nt { color: #008000; font-weight: bold } /* Name.Tag */
|
||||||
|
.grokdoc .nv { color: #19177C } /* Name.Variable */
|
||||||
|
.grokdoc .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
|
||||||
|
.grokdoc .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.grokdoc .mf { color: #666666 } /* Literal.Number.Float */
|
||||||
|
.grokdoc .mh { color: #666666 } /* Literal.Number.Hex */
|
||||||
|
.grokdoc .mi { color: #666666 } /* Literal.Number.Integer */
|
||||||
|
.grokdoc .mo { color: #666666 } /* Literal.Number.Oct */
|
||||||
|
.grokdoc .sb { color: #BA2121 } /* Literal.String.Backtick */
|
||||||
|
.grokdoc .sc { color: #BA2121 } /* Literal.String.Char */
|
||||||
|
.grokdoc .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
|
||||||
|
.grokdoc .s2 { color: #BA2121 } /* Literal.String.Double */
|
||||||
|
.grokdoc .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
|
||||||
|
.grokdoc .sh { color: #BA2121 } /* Literal.String.Heredoc */
|
||||||
|
.grokdoc .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
|
||||||
|
.grokdoc .sx { color: #008000 } /* Literal.String.Other */
|
||||||
|
.grokdoc .sr { color: #BB6688 } /* Literal.String.Regex */
|
||||||
|
.grokdoc .s1 { color: #BA2121 } /* Literal.String.Single */
|
||||||
|
.grokdoc .ss { color: #19177C } /* Literal.String.Symbol */
|
||||||
|
.grokdoc .bp { color: #008000 } /* Name.Builtin.Pseudo */
|
||||||
|
.grokdoc .vc { color: #19177C } /* Name.Variable.Class */
|
||||||
|
.grokdoc .vg { color: #19177C } /* Name.Variable.Global */
|
||||||
|
.grokdoc .vi { color: #19177C } /* Name.Variable.Instance */
|
||||||
|
.grokdoc .il { color: #666666 } /* Literal.Number.Integer.Long */
|
66
doc-src/_layout_full.html
Normal file
66
doc-src/_layout_full.html
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>@!pageTitle!@</title>
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="author" content="">
|
||||||
|
$!header!$
|
||||||
|
<style type="text/css">
|
||||||
|
body {
|
||||||
|
padding-top: 60px;
|
||||||
|
padding-bottom: 40px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
|
||||||
|
<!--[if lt IE 9]>
|
||||||
|
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
||||||
|
<![endif]-->
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="navbar navbar-fixed-top">
|
||||||
|
<div class="navbar-inner">
|
||||||
|
<div class="container">
|
||||||
|
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
|
||||||
|
<span class="icon-bar"></span>
|
||||||
|
<span class="icon-bar"></span>
|
||||||
|
<span class="icon-bar"></span>
|
||||||
|
</a>
|
||||||
|
<a class="brand" href="@!top!@/index.html">pathod</a>
|
||||||
|
<div class="nav-collapse">
|
||||||
|
<ul class="nav">
|
||||||
|
<li $!'class=active' if section=="index" else ""!$><a href="@!top!@/index.html">overview</a></li>
|
||||||
|
<li
|
||||||
|
$!'class="dropdown active"' if section=="docs" else 'class="dropdown"'!$>
|
||||||
|
<a class="dropdown-toggle" data-toggle="dropdown" href="@!top!@/docs.html">
|
||||||
|
docs
|
||||||
|
<b class="caret"></b>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<ul class="dropdown-menu">
|
||||||
|
<li><a href="@!top!@/index.html">pathod</a></li>
|
||||||
|
<li><a href="@!top!@/index.html">pathoc</a></li>
|
||||||
|
<li><a href="@!top!@/index.html">libpathod.test</a></li>
|
||||||
|
</ul>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<div class="row">
|
||||||
|
<div class="span12">
|
||||||
|
$!body!$
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<hr>
|
||||||
|
<footer>
|
||||||
|
<p>© Aldo Cortesi 2012</p>
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
5
doc-src/docs.html
Normal file
5
doc-src/docs.html
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
|
||||||
|
Test.
|
||||||
|
|
||||||
|
|
||||||
|
|
31
doc-src/index.html
Normal file
31
doc-src/index.html
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
|
||||||
|
<div class="hero-unit">
|
||||||
|
<h1>Tools for testing and torturing HTTP clients, servers and proxies.</h1>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="span4">
|
||||||
|
<div class="well">
|
||||||
|
<h1> pathod </h1>
|
||||||
|
|
||||||
|
A pathological web daemon.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="span4">
|
||||||
|
<div class="well">
|
||||||
|
<h1> pathoc </h1>
|
||||||
|
|
||||||
|
A perverse HTTP client.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="span4">
|
||||||
|
<div class="well">
|
||||||
|
<h1> libpathod.test </h1>
|
||||||
|
|
||||||
|
Use pathod and pathoc in your unit tests.
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
18
doc-src/index.py
Normal file
18
doc-src/index.py
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
from countershape import widgets, layout, html, blog, markup, sitemap
|
||||||
|
from countershape.doc import *
|
||||||
|
|
||||||
|
ns.foot = "Copyright 2012 Aldo Cortesi"
|
||||||
|
this.markup = markup.Markdown(extras=dict(footnotes=True))
|
||||||
|
this.layout = layout.FileLayout("_layout_full.html")
|
||||||
|
this.titlePrefix = ""
|
||||||
|
this.site_url = "http://corte.si"
|
||||||
|
pages = [
|
||||||
|
Page("index.html", "overview", namespace=dict(section="index")),
|
||||||
|
Page("docs.html", "docs", namespace=dict(section="docs")),
|
||||||
|
sitemap.Sitemap("sitemap.xml")
|
||||||
|
]
|
||||||
|
ns.sidebar = widgets.SiblingPageIndex(
|
||||||
|
pages[0],
|
||||||
|
depth=1,
|
||||||
|
divclass="sidebarmenu"
|
||||||
|
)
|
BIN
doc-src/start_quote.png
Normal file
BIN
doc-src/start_quote.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 376 B |
Loading…
Reference in New Issue
Block a user