mirror of https://github.com/kgabis/parson.git
commit
cb362064ad
After Width: | Height: | Size: 943 B |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.1 KiB |
After Width: | Height: | Size: 16 KiB |
@ -0,0 +1,138 @@ |
|||||||
|
<!DOCTYPE html> |
||||||
|
<html> |
||||||
|
|
||||||
|
<head> |
||||||
|
<meta charset='utf-8' /> |
||||||
|
<meta http-equiv="X-UA-Compatible" content="chrome=1" /> |
||||||
|
<meta name="description" content="parson : Small json parser and reader written in C." /> |
||||||
|
|
||||||
|
<link rel="stylesheet" type="text/css" media="screen" href="stylesheets/stylesheet.css"> |
||||||
|
|
||||||
|
<title>parson</title> |
||||||
|
</head> |
||||||
|
|
||||||
|
<body> |
||||||
|
|
||||||
|
<!-- HEADER --> |
||||||
|
<div id="header_wrap" class="outer"> |
||||||
|
<header class="inner"> |
||||||
|
<a id="forkme_banner" href="https://github.com/kgabis/parson">View on GitHub</a> |
||||||
|
|
||||||
|
<h1 id="project_title">parson</h1> |
||||||
|
<h2 id="project_tagline">Small json parser and reader written in C.</h2> |
||||||
|
|
||||||
|
<section id="downloads"> |
||||||
|
<a class="zip_download_link" href="https://github.com/kgabis/parson/zipball/master">Download this project as a .zip file</a> |
||||||
|
<a class="tar_download_link" href="https://github.com/kgabis/parson/tarball/master">Download this project as a tar.gz file</a> |
||||||
|
</section> |
||||||
|
</header> |
||||||
|
</div> |
||||||
|
|
||||||
|
<!-- MAIN CONTENT --> |
||||||
|
<div id="main_content_wrap" class="outer"> |
||||||
|
<section id="main_content" class="inner"> |
||||||
|
<h2>About</h2> |
||||||
|
|
||||||
|
<p>Parson is a small json parser and reader written in C.</p> |
||||||
|
|
||||||
|
<h2>Features</h2> |
||||||
|
|
||||||
|
<ul> |
||||||
|
<li>Small (only 2 files)</li> |
||||||
|
<li>Simple API</li> |
||||||
|
<li>Addressing json values with dot notation (similiar to C structs or objects in most OO languages, e.g. "objectA.objectB.value")</li> |
||||||
|
<li>C89 compatible</li> |
||||||
|
<li>Test suites</li> |
||||||
|
</ul><h2>Installation</h2> |
||||||
|
|
||||||
|
<p>Run the following code:</p> |
||||||
|
|
||||||
|
<pre><code>git clone http://github.com/kgabis/parson.git |
||||||
|
</code></pre> |
||||||
|
|
||||||
|
<p>and copy parson.h and parson.c to you source code tree.</p> |
||||||
|
|
||||||
|
<h2>Example</h2> |
||||||
|
|
||||||
|
<p>Here is a function, which prints basic commit info (date, sha and author) from a github repository. It's also included in tests.c file, you can just uncomment and run it.</p> |
||||||
|
|
||||||
|
<div class="highlight"><pre><span class="kt">void</span> <span class="nf">print_commit_info</span><span class="p">(</span><span class="k">const</span> <span class="kt">char</span> <span class="o">*</span><span class="n">username</span><span class="p">,</span> <span class="k">const</span> <span class="kt">char</span> <span class="o">*</span> <span class="n">repo</span><span class="p">)</span> <span class="p">{</span> |
||||||
|
<span class="n">JSON_Value</span> <span class="o">*</span><span class="n">root_value</span><span class="p">;</span> |
||||||
|
<span class="n">JSON_Array</span> <span class="o">*</span><span class="n">commits</span><span class="p">;</span> |
||||||
|
<span class="n">JSON_Object</span> <span class="o">*</span><span class="n">commit</span><span class="p">;</span> |
||||||
|
<span class="kt">int</span> <span class="n">i</span><span class="p">;</span> |
||||||
|
|
||||||
|
<span class="kt">char</span> <span class="n">curl_command</span><span class="p">[</span><span class="mi">512</span><span class="p">];</span> |
||||||
|
<span class="kt">char</span> <span class="n">cleanup_command</span><span class="p">[</span><span class="mi">256</span><span class="p">];</span> |
||||||
|
<span class="kt">char</span> <span class="o">*</span><span class="n">output_filename</span> <span class="o">=</span> <span class="s">"commits.json"</span><span class="p">;</span> |
||||||
|
|
||||||
|
<span class="cm">/* it ain't pretty, but it's not a libcurl tutorial */</span> |
||||||
|
<span class="n">sprintf</span><span class="p">(</span><span class="n">curl_command</span><span class="p">,</span> <span class="s">"curl </span><span class="se">\"</span><span class="s">https://api.github.com/repos/%s/%s/commits</span><span class="se">\"</span><span class="s">\</span> |
||||||
|
<span class="s"> > %s 2> /dev/null"</span><span class="p">,</span> <span class="n">username</span><span class="p">,</span> <span class="n">repo</span><span class="p">,</span> <span class="n">output_filename</span><span class="p">);</span> |
||||||
|
<span class="n">sprintf</span><span class="p">(</span><span class="n">cleanup_command</span><span class="p">,</span> <span class="s">"rm -f %s"</span><span class="p">,</span> <span class="n">output_filename</span><span class="p">);</span> |
||||||
|
<span class="n">system</span><span class="p">(</span><span class="n">curl_command</span><span class="p">);</span> |
||||||
|
|
||||||
|
<span class="cm">/* parsing json and validating output */</span> |
||||||
|
<span class="n">root_value</span> <span class="o">=</span> <span class="n">json_parse_file</span><span class="p">(</span><span class="n">output_filename</span><span class="p">);</span> |
||||||
|
<span class="k">if</span> <span class="p">(</span><span class="n">root_value</span> <span class="o">==</span> <span class="nb">NULL</span> <span class="o">||</span> <span class="n">json_value_get_type</span><span class="p">(</span><span class="n">root_value</span><span class="p">)</span> <span class="o">!=</span> <span class="n">JSONArray</span><span class="p">)</span> <span class="p">{</span> |
||||||
|
<span class="n">system</span><span class="p">(</span><span class="n">cleanup_command</span><span class="p">);</span> |
||||||
|
<span class="k">return</span><span class="p">;</span> |
||||||
|
<span class="p">}</span> |
||||||
|
|
||||||
|
<span class="cm">/* getting array from root value and printing commit info */</span> |
||||||
|
<span class="n">commits</span> <span class="o">=</span> <span class="n">json_value_get_array</span><span class="p">(</span><span class="n">root_value</span><span class="p">);</span> |
||||||
|
<span class="n">printf</span><span class="p">(</span><span class="s">"%-10.10s %-10.10s %s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> <span class="s">"Date"</span><span class="p">,</span> <span class="s">"SHA"</span><span class="p">,</span> <span class="s">"Author"</span><span class="p">);</span> |
||||||
|
<span class="k">for</span> <span class="p">(</span><span class="n">i</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span> <span class="n">i</span> <span class="o"><</span> <span class="n">json_array_get_count</span><span class="p">(</span><span class="n">commits</span><span class="p">);</span> <span class="n">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> |
||||||
|
<span class="n">commit</span> <span class="o">=</span> <span class="n">json_array_get_object</span><span class="p">(</span><span class="n">commits</span><span class="p">,</span> <span class="n">i</span><span class="p">);</span> |
||||||
|
<span class="n">printf</span><span class="p">(</span><span class="s">"%.10s %.10s %s</span><span class="se">\n</span><span class="s">"</span><span class="p">,</span> |
||||||
|
<span class="n">json_object_dotget_string</span><span class="p">(</span><span class="n">commit</span><span class="p">,</span> <span class="s">"commit.author.date"</span><span class="p">),</span> |
||||||
|
<span class="n">json_object_get_string</span><span class="p">(</span><span class="n">commit</span><span class="p">,</span> <span class="s">"sha"</span><span class="p">),</span> |
||||||
|
<span class="n">json_object_dotget_string</span><span class="p">(</span><span class="n">commit</span><span class="p">,</span> <span class="s">"commit.author.name"</span><span class="p">));</span> |
||||||
|
<span class="p">}</span> |
||||||
|
|
||||||
|
<span class="cm">/* cleanup code */</span> |
||||||
|
<span class="n">json_value_free</span><span class="p">(</span><span class="n">root_value</span><span class="p">);</span> |
||||||
|
<span class="n">system</span><span class="p">(</span><span class="n">cleanup_command</span><span class="p">);</span> |
||||||
|
<span class="p">}</span> |
||||||
|
</pre></div> |
||||||
|
|
||||||
|
<p>Calling <code>print_commit_info("torvalds", "linux");</code> prints: </p> |
||||||
|
|
||||||
|
<pre><code>Date SHA Author |
||||||
|
2012-10-15 dd8e8c4a2c David Rientjes |
||||||
|
2012-10-15 3ce9e53e78 Michal Marek |
||||||
|
2012-10-14 29bb4cc5e0 Randy Dunlap |
||||||
|
2012-10-15 325adeb55e Ralf Baechle |
||||||
|
2012-10-14 68687c842c Russell King |
||||||
|
2012-10-14 ddffeb8c4d Linus Torvalds |
||||||
|
... |
||||||
|
</code></pre> |
||||||
|
|
||||||
|
<h2>License</h2> |
||||||
|
|
||||||
|
<p><a href="http://opensource.org/licenses/mit-license.php">The MIT License (MIT)</a></p> |
||||||
|
</section> |
||||||
|
</div> |
||||||
|
|
||||||
|
<!-- FOOTER --> |
||||||
|
<div id="footer_wrap" class="outer"> |
||||||
|
<footer class="inner"> |
||||||
|
<p class="copyright">parson maintained by <a href="https://github.com/kgabis">kgabis</a></p> |
||||||
|
<p>Published with <a href="http://pages.github.com">GitHub Pages</a></p> |
||||||
|
</footer> |
||||||
|
</div> |
||||||
|
|
||||||
|
<script type="text/javascript"> |
||||||
|
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); |
||||||
|
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); |
||||||
|
</script> |
||||||
|
<script type="text/javascript"> |
||||||
|
try { |
||||||
|
var pageTracker = _gat._getTracker("UA-35563760-2"); |
||||||
|
pageTracker._trackPageview(); |
||||||
|
} catch(err) {} |
||||||
|
</script> |
||||||
|
|
||||||
|
|
||||||
|
</body> |
||||||
|
</html> |
@ -0,0 +1 @@ |
|||||||
|
console.log('This would be the main JS file.'); |
@ -0,0 +1 @@ |
|||||||
|
{"note":"Don't delete this file! It's used internally to help with page regeneration.","tagline":"Small json parser and reader written in C.","name":"parson","google":"UA-35563760-2","body":"##About\r\nParson is a small json parser and reader written in C.\r\n\r\n##Features\r\n* Small (only 2 files)\r\n* Simple API\r\n* Addressing json values with dot notation (similiar to C structs or objects in most OO languages, e.g. \"objectA.objectB.value\")\r\n* C89 compatible\r\n* Test suites\r\n\r\n##Installation\r\nRun the following code:\r\n```\r\ngit clone http://github.com/kgabis/parson.git\r\n```\r\nand copy parson.h and parson.c to you source code tree.\r\n\r\n##Example\r\nHere is a function, which prints basic commit info (date, sha and author) from a github repository. It's also included in tests.c file, you can just uncomment and run it.\r\n```c\r\nvoid print_commit_info(const char *username, const char * repo) {\r\n JSON_Value *root_value;\r\n JSON_Array *commits;\r\n JSON_Object *commit;\r\n int i;\r\n \r\n char curl_command[512];\r\n char cleanup_command[256];\r\n char *output_filename = \"commits.json\";\r\n \r\n /* it ain't pretty, but it's not a libcurl tutorial */\r\n sprintf(curl_command, \"curl \\\"https://api.github.com/repos/%s/%s/commits\\\"\\\r\n > %s 2> /dev/null\", username, repo, output_filename);\r\n sprintf(cleanup_command, \"rm -f %s\", output_filename);\r\n system(curl_command);\r\n \r\n /* parsing json and validating output */\r\n root_value = json_parse_file(output_filename); \r\n if (root_value == NULL || json_value_get_type(root_value) != JSONArray) { \r\n system(cleanup_command);\r\n return;\r\n }\r\n \r\n /* getting array from root value and printing commit info */\r\n commits = json_value_get_array(root_value);\r\n printf(\"%-10.10s %-10.10s %s\\n\", \"Date\", \"SHA\", \"Author\");\r\n for (i = 0; i < json_array_get_count(commits); i++) {\r\n commit = json_array_get_object(commits, i);\r\n printf(\"%.10s %.10s %s\\n\",\r\n json_object_dotget_string(commit, \"commit.author.date\"),\r\n json_object_get_string(commit, \"sha\"),\r\n json_object_dotget_string(commit, \"commit.author.name\"));\r\n }\r\n \r\n /* cleanup code */\r\n json_value_free(root_value);\r\n system(cleanup_command);\r\n}\r\n```\r\nCalling ```print_commit_info(\"torvalds\", \"linux\");``` prints: \r\n```\r\nDate SHA Author\r\n2012-10-15 dd8e8c4a2c David Rientjes\r\n2012-10-15 3ce9e53e78 Michal Marek\r\n2012-10-14 29bb4cc5e0 Randy Dunlap\r\n2012-10-15 325adeb55e Ralf Baechle\r\n2012-10-14 68687c842c Russell King\r\n2012-10-14 ddffeb8c4d Linus Torvalds\r\n...\r\n```\r\n\r\n##License\r\n[The MIT License (MIT)](http://opensource.org/licenses/mit-license.php)"} |
@ -0,0 +1,70 @@ |
|||||||
|
.highlight .hll { background-color: #ffffcc } |
||||||
|
.highlight { background: #f0f3f3; } |
||||||
|
.highlight .c { color: #0099FF; font-style: italic } /* Comment */ |
||||||
|
.highlight .err { color: #AA0000; background-color: #FFAAAA } /* Error */ |
||||||
|
.highlight .k { color: #006699; font-weight: bold } /* Keyword */ |
||||||
|
.highlight .o { color: #555555 } /* Operator */ |
||||||
|
.highlight .cm { color: #0099FF; font-style: italic } /* Comment.Multiline */ |
||||||
|
.highlight .cp { color: #009999 } /* Comment.Preproc */ |
||||||
|
.highlight .c1 { color: #0099FF; font-style: italic } /* Comment.Single */ |
||||||
|
.highlight .cs { color: #0099FF; font-weight: bold; font-style: italic } /* Comment.Special */ |
||||||
|
.highlight .gd { background-color: #FFCCCC; border: 1px solid #CC0000 } /* Generic.Deleted */ |
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */ |
||||||
|
.highlight .gr { color: #FF0000 } /* Generic.Error */ |
||||||
|
.highlight .gh { color: #003300; font-weight: bold } /* Generic.Heading */ |
||||||
|
.highlight .gi { background-color: #CCFFCC; border: 1px solid #00CC00 } /* Generic.Inserted */ |
||||||
|
.highlight .go { color: #AAAAAA } /* Generic.Output */ |
||||||
|
.highlight .gp { color: #000099; font-weight: bold } /* Generic.Prompt */ |
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */ |
||||||
|
.highlight .gu { color: #003300; font-weight: bold } /* Generic.Subheading */ |
||||||
|
.highlight .gt { color: #99CC66 } /* Generic.Traceback */ |
||||||
|
.highlight .kc { color: #006699; font-weight: bold } /* Keyword.Constant */ |
||||||
|
.highlight .kd { color: #006699; font-weight: bold } /* Keyword.Declaration */ |
||||||
|
.highlight .kn { color: #006699; font-weight: bold } /* Keyword.Namespace */ |
||||||
|
.highlight .kp { color: #006699 } /* Keyword.Pseudo */ |
||||||
|
.highlight .kr { color: #006699; font-weight: bold } /* Keyword.Reserved */ |
||||||
|
.highlight .kt { color: #007788; font-weight: bold } /* Keyword.Type */ |
||||||
|
.highlight .m { color: #FF6600 } /* Literal.Number */ |
||||||
|
.highlight .s { color: #CC3300 } /* Literal.String */ |
||||||
|
.highlight .na { color: #330099 } /* Name.Attribute */ |
||||||
|
.highlight .nb { color: #336666 } /* Name.Builtin */ |
||||||
|
.highlight .nc { color: #00AA88; font-weight: bold } /* Name.Class */ |
||||||
|
.highlight .no { color: #336600 } /* Name.Constant */ |
||||||
|
.highlight .nd { color: #9999FF } /* Name.Decorator */ |
||||||
|
.highlight .ni { color: #999999; font-weight: bold } /* Name.Entity */ |
||||||
|
.highlight .ne { color: #CC0000; font-weight: bold } /* Name.Exception */ |
||||||
|
.highlight .nf { color: #CC00FF } /* Name.Function */ |
||||||
|
.highlight .nl { color: #9999FF } /* Name.Label */ |
||||||
|
.highlight .nn { color: #00CCFF; font-weight: bold } /* Name.Namespace */ |
||||||
|
.highlight .nt { color: #330099; font-weight: bold } /* Name.Tag */ |
||||||
|
.highlight .nv { color: #003333 } /* Name.Variable */ |
||||||
|
.highlight .ow { color: #000000; font-weight: bold } /* Operator.Word */ |
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */ |
||||||
|
.highlight .mf { color: #FF6600 } /* Literal.Number.Float */ |
||||||
|
.highlight .mh { color: #FF6600 } /* Literal.Number.Hex */ |
||||||
|
.highlight .mi { color: #FF6600 } /* Literal.Number.Integer */ |
||||||
|
.highlight .mo { color: #FF6600 } /* Literal.Number.Oct */ |
||||||
|
.highlight .sb { color: #CC3300 } /* Literal.String.Backtick */ |
||||||
|
.highlight .sc { color: #CC3300 } /* Literal.String.Char */ |
||||||
|
.highlight .sd { color: #CC3300; font-style: italic } /* Literal.String.Doc */ |
||||||
|
.highlight .s2 { color: #CC3300 } /* Literal.String.Double */ |
||||||
|
.highlight .se { color: #CC3300; font-weight: bold } /* Literal.String.Escape */ |
||||||
|
.highlight .sh { color: #CC3300 } /* Literal.String.Heredoc */ |
||||||
|
.highlight .si { color: #AA0000 } /* Literal.String.Interpol */ |
||||||
|
.highlight .sx { color: #CC3300 } /* Literal.String.Other */ |
||||||
|
.highlight .sr { color: #33AAAA } /* Literal.String.Regex */ |
||||||
|
.highlight .s1 { color: #CC3300 } /* Literal.String.Single */ |
||||||
|
.highlight .ss { color: #FFCC33 } /* Literal.String.Symbol */ |
||||||
|
.highlight .bp { color: #336666 } /* Name.Builtin.Pseudo */ |
||||||
|
.highlight .vc { color: #003333 } /* Name.Variable.Class */ |
||||||
|
.highlight .vg { color: #003333 } /* Name.Variable.Global */ |
||||||
|
.highlight .vi { color: #003333 } /* Name.Variable.Instance */ |
||||||
|
.highlight .il { color: #FF6600 } /* Literal.Number.Integer.Long */ |
||||||
|
|
||||||
|
.type-csharp .highlight .k { color: #0000FF } |
||||||
|
.type-csharp .highlight .kt { color: #0000FF } |
||||||
|
.type-csharp .highlight .nf { color: #000000; font-weight: normal } |
||||||
|
.type-csharp .highlight .nc { color: #2B91AF } |
||||||
|
.type-csharp .highlight .nn { color: #000000 } |
||||||
|
.type-csharp .highlight .s { color: #A31515 } |
||||||
|
.type-csharp .highlight .sc { color: #A31515 } |
@ -0,0 +1,431 @@ |
|||||||
|
/******************************************************************************* |
||||||
|
Slate Theme for Github Pages |
||||||
|
by Jason Costello, @jsncostello |
||||||
|
*******************************************************************************/ |
||||||
|
|
||||||
|
@import url(pygment_trac.css); |
||||||
|
|
||||||
|
/******************************************************************************* |
||||||
|
MeyerWeb Reset |
||||||
|
*******************************************************************************/ |
||||||
|
|
||||||
|
html, body, div, span, applet, object, iframe, |
||||||
|
h1, h2, h3, h4, h5, h6, p, blockquote, pre, |
||||||
|
a, abbr, acronym, address, big, cite, code, |
||||||
|
del, dfn, em, img, ins, kbd, q, s, samp, |
||||||
|
small, strike, strong, sub, sup, tt, var, |
||||||
|
b, u, i, center, |
||||||
|
dl, dt, dd, ol, ul, li, |
||||||
|
fieldset, form, label, legend, |
||||||
|
table, caption, tbody, tfoot, thead, tr, th, td, |
||||||
|
article, aside, canvas, details, embed, |
||||||
|
figure, figcaption, footer, header, hgroup, |
||||||
|
menu, nav, output, ruby, section, summary, |
||||||
|
time, mark, audio, video { |
||||||
|
margin: 0; |
||||||
|
padding: 0; |
||||||
|
border: 0; |
||||||
|
font: inherit; |
||||||
|
vertical-align: baseline; |
||||||
|
} |
||||||
|
|
||||||
|
/* HTML5 display-role reset for older browsers */ |
||||||
|
article, aside, details, figcaption, figure, |
||||||
|
footer, header, hgroup, menu, nav, section { |
||||||
|
display: block; |
||||||
|
} |
||||||
|
|
||||||
|
ol, ul { |
||||||
|
list-style: none; |
||||||
|
} |
||||||
|
|
||||||
|
blockquote, q { |
||||||
|
} |
||||||
|
|
||||||
|
table { |
||||||
|
border-collapse: collapse; |
||||||
|
border-spacing: 0; |
||||||
|
} |
||||||
|
|
||||||
|
a:focus { |
||||||
|
outline: none; |
||||||
|
} |
||||||
|
|
||||||
|
/******************************************************************************* |
||||||
|
Theme Styles |
||||||
|
*******************************************************************************/ |
||||||
|
|
||||||
|
body { |
||||||
|
box-sizing: border-box; |
||||||
|
color:#373737; |
||||||
|
background: #212121; |
||||||
|
font-size: 16px; |
||||||
|
font-family: 'Myriad Pro', Calibri, Helvetica, Arial, sans-serif; |
||||||
|
line-height: 1.5; |
||||||
|
-webkit-font-smoothing: antialiased; |
||||||
|
} |
||||||
|
|
||||||
|
h1, h2, h3, h4, h5, h6 { |
||||||
|
margin: 10px 0; |
||||||
|
font-weight: 700; |
||||||
|
color:#222222; |
||||||
|
font-family: 'Lucida Grande', 'Calibri', Helvetica, Arial, sans-serif; |
||||||
|
letter-spacing: -1px; |
||||||
|
} |
||||||
|
|
||||||
|
h1 { |
||||||
|
font-size: 36px; |
||||||
|
font-weight: 700; |
||||||
|
} |
||||||
|
|
||||||
|
h2 { |
||||||
|
padding-bottom: 10px; |
||||||
|
font-size: 32px; |
||||||
|
background: url('../images/bg_hr.png') repeat-x bottom; |
||||||
|
} |
||||||
|
|
||||||
|
h3 { |
||||||
|
font-size: 24px; |
||||||
|
} |
||||||
|
|
||||||
|
h4 { |
||||||
|
font-size: 21px; |
||||||
|
} |
||||||
|
|
||||||
|
h5 { |
||||||
|
font-size: 18px; |
||||||
|
} |
||||||
|
|
||||||
|
h6 { |
||||||
|
font-size: 16px; |
||||||
|
} |
||||||
|
|
||||||
|
p { |
||||||
|
margin: 10px 0 15px 0; |
||||||
|
} |
||||||
|
|
||||||
|
footer p { |
||||||
|
color: #f2f2f2; |
||||||
|
} |
||||||
|
|
||||||
|
a { |
||||||
|
text-decoration: none; |
||||||
|
color: #007edf; |
||||||
|
text-shadow: none; |
||||||
|
|
||||||
|
transition: color 0.5s ease; |
||||||
|
transition: text-shadow 0.5s ease; |
||||||
|
-webkit-transition: color 0.5s ease; |
||||||
|
-webkit-transition: text-shadow 0.5s ease; |
||||||
|
-moz-transition: color 0.5s ease; |
||||||
|
-moz-transition: text-shadow 0.5s ease; |
||||||
|
-o-transition: color 0.5s ease; |
||||||
|
-o-transition: text-shadow 0.5s ease; |
||||||
|
-ms-transition: color 0.5s ease; |
||||||
|
-ms-transition: text-shadow 0.5s ease; |
||||||
|
} |
||||||
|
|
||||||
|
#main_content a:hover { |
||||||
|
color: #0069ba; |
||||||
|
text-shadow: #0090ff 0px 0px 2px; |
||||||
|
} |
||||||
|
|
||||||
|
footer a:hover { |
||||||
|
color: #43adff; |
||||||
|
text-shadow: #0090ff 0px 0px 2px; |
||||||
|
} |
||||||
|
|
||||||
|
em { |
||||||
|
font-style: italic; |
||||||
|
} |
||||||
|
|
||||||
|
strong { |
||||||
|
font-weight: bold; |
||||||
|
} |
||||||
|
|
||||||
|
img { |
||||||
|
position: relative; |
||||||
|
margin: 0 auto; |
||||||
|
max-width: 739px; |
||||||
|
padding: 5px; |
||||||
|
margin: 10px 0 10px 0; |
||||||
|
border: 1px solid #ebebeb; |
||||||
|
|
||||||
|
box-shadow: 0 0 5px #ebebeb; |
||||||
|
-webkit-box-shadow: 0 0 5px #ebebeb; |
||||||
|
-moz-box-shadow: 0 0 5px #ebebeb; |
||||||
|
-o-box-shadow: 0 0 5px #ebebeb; |
||||||
|
-ms-box-shadow: 0 0 5px #ebebeb; |
||||||
|
} |
||||||
|
|
||||||
|
pre, code { |
||||||
|
width: 100%; |
||||||
|
color: #222; |
||||||
|
background-color: #fff; |
||||||
|
|
||||||
|
font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal, monospace; |
||||||
|
font-size: 14px; |
||||||
|
|
||||||
|
border-radius: 2px; |
||||||
|
-moz-border-radius: 2px; |
||||||
|
-webkit-border-radius: 2px; |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} |
||||||
|
|
||||||
|
pre { |
||||||
|
width: 100%; |
||||||
|
padding: 10px; |
||||||
|
box-shadow: 0 0 10px rgba(0,0,0,.1); |
||||||
|
overflow: auto; |
||||||
|
} |
||||||
|
|
||||||
|
code { |
||||||
|
padding: 3px; |
||||||
|
margin: 0 3px; |
||||||
|
box-shadow: 0 0 10px rgba(0,0,0,.1); |
||||||
|
} |
||||||
|
|
||||||
|
pre code { |
||||||
|
display: block; |
||||||
|
box-shadow: none; |
||||||
|
} |
||||||
|
|
||||||
|
blockquote { |
||||||
|
color: #666; |
||||||
|
margin-bottom: 20px; |
||||||
|
padding: 0 0 0 20px; |
||||||
|
border-left: 3px solid #bbb; |
||||||
|
} |
||||||
|
|
||||||
|
ul, ol, dl { |
||||||
|
margin-bottom: 15px |
||||||
|
} |
||||||
|
|
||||||
|
ul li { |
||||||
|
list-style: inside; |
||||||
|
padding-left: 20px; |
||||||
|
} |
||||||
|
|
||||||
|
ol li { |
||||||
|
list-style: decimal inside; |
||||||
|
padding-left: 20px; |
||||||
|
} |
||||||
|
|
||||||
|
dl dt { |
||||||
|
font-weight: bold; |
||||||
|
} |
||||||
|
|
||||||
|
dl dd { |
||||||
|
padding-left: 20px; |
||||||
|
font-style: italic; |
||||||
|
} |
||||||
|
|
||||||
|
dl p { |
||||||
|
padding-left: 20px; |
||||||
|
font-style: italic; |
||||||
|
} |
||||||
|
|
||||||
|
hr { |
||||||
|
height: 1px; |
||||||
|
margin-bottom: 5px; |
||||||
|
border: none; |
||||||
|
background: url('../images/bg_hr.png') repeat-x center; |
||||||
|
} |
||||||
|
|
||||||
|
table { |
||||||
|
border: 1px solid #373737; |
||||||
|
margin-bottom: 20px; |
||||||
|
text-align: left; |
||||||
|
} |
||||||
|
|
||||||
|
th { |
||||||
|
font-family: 'Lucida Grande', 'Helvetica Neue', Helvetica, Arial, sans-serif; |
||||||
|
padding: 10px; |
||||||
|
background: #373737; |
||||||
|
color: #fff; |
||||||
|
} |
||||||
|
|
||||||
|
td { |
||||||
|
padding: 10px; |
||||||
|
border: 1px solid #373737; |
||||||
|
} |
||||||
|
|
||||||
|
form { |
||||||
|
background: #f2f2f2; |
||||||
|
padding: 20px; |
||||||
|
} |
||||||
|
|
||||||
|
img { |
||||||
|
width: 100%; |
||||||
|
max-width: 100%; |
||||||
|
} |
||||||
|
|
||||||
|
/******************************************************************************* |
||||||
|
Full-Width Styles |
||||||
|
*******************************************************************************/ |
||||||
|
|
||||||
|
.outer { |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
|
||||||
|
.inner { |
||||||
|
position: relative; |
||||||
|
max-width: 640px; |
||||||
|
padding: 20px 10px; |
||||||
|
margin: 0 auto; |
||||||
|
} |
||||||
|
|
||||||
|
#forkme_banner { |
||||||
|
display: block; |
||||||
|
position: absolute; |
||||||
|
top:0; |
||||||
|
right: 10px; |
||||||
|
z-index: 10; |
||||||
|
padding: 10px 50px 10px 10px; |
||||||
|
color: #fff; |
||||||
|
background: url('../images/blacktocat.png') #0090ff no-repeat 95% 50%; |
||||||
|
font-weight: 700; |
||||||
|
box-shadow: 0 0 10px rgba(0,0,0,.5); |
||||||
|
border-bottom-left-radius: 2px; |
||||||
|
border-bottom-right-radius: 2px; |
||||||
|
} |
||||||
|
|
||||||
|
#header_wrap { |
||||||
|
background: #212121; |
||||||
|
background: -moz-linear-gradient(top, #373737, #212121); |
||||||
|
background: -webkit-linear-gradient(top, #373737, #212121); |
||||||
|
background: -ms-linear-gradient(top, #373737, #212121); |
||||||
|
background: -o-linear-gradient(top, #373737, #212121); |
||||||
|
background: linear-gradient(top, #373737, #212121); |
||||||
|
} |
||||||
|
|
||||||
|
#header_wrap .inner { |
||||||
|
padding: 50px 10px 30px 10px; |
||||||
|
} |
||||||
|
|
||||||
|
#project_title { |
||||||
|
margin: 0; |
||||||
|
color: #fff; |
||||||
|
font-size: 42px; |
||||||
|
font-weight: 700; |
||||||
|
text-shadow: #111 0px 0px 10px; |
||||||
|
} |
||||||
|
|
||||||
|
#project_tagline { |
||||||
|
color: #fff; |
||||||
|
font-size: 24px; |
||||||
|
font-weight: 300; |
||||||
|
background: none; |
||||||
|
text-shadow: #111 0px 0px 10px; |
||||||
|
} |
||||||
|
|
||||||
|
#downloads { |
||||||
|
position: absolute; |
||||||
|
width: 210px; |
||||||
|
z-index: 10; |
||||||
|
bottom: -40px; |
||||||
|
right: 0; |
||||||
|
height: 70px; |
||||||
|
background: url('../images/icon_download.png') no-repeat 0% 90%; |
||||||
|
} |
||||||
|
|
||||||
|
.zip_download_link { |
||||||
|
display: block; |
||||||
|
float: right; |
||||||
|
width: 90px; |
||||||
|
height:70px; |
||||||
|
text-indent: -5000px; |
||||||
|
overflow: hidden; |
||||||
|
background: url(../images/sprite_download.png) no-repeat bottom left; |
||||||
|
} |
||||||
|
|
||||||
|
.tar_download_link { |
||||||
|
display: block; |
||||||
|
float: right; |
||||||
|
width: 90px; |
||||||
|
height:70px; |
||||||
|
text-indent: -5000px; |
||||||
|
overflow: hidden; |
||||||
|
background: url(../images/sprite_download.png) no-repeat bottom right; |
||||||
|
margin-left: 10px; |
||||||
|
} |
||||||
|
|
||||||
|
.zip_download_link:hover { |
||||||
|
background: url(../images/sprite_download.png) no-repeat top left; |
||||||
|
} |
||||||
|
|
||||||
|
.tar_download_link:hover { |
||||||
|
background: url(../images/sprite_download.png) no-repeat top right; |
||||||
|
} |
||||||
|
|
||||||
|
#main_content_wrap { |
||||||
|
background: #f2f2f2; |
||||||
|
border-top: 1px solid #111; |
||||||
|
border-bottom: 1px solid #111; |
||||||
|
} |
||||||
|
|
||||||
|
#main_content { |
||||||
|
padding-top: 40px; |
||||||
|
} |
||||||
|
|
||||||
|
#footer_wrap { |
||||||
|
background: #212121; |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/******************************************************************************* |
||||||
|
Small Device Styles |
||||||
|
*******************************************************************************/ |
||||||
|
|
||||||
|
@media screen and (max-width: 480px) { |
||||||
|
body { |
||||||
|
font-size:14px; |
||||||
|
} |
||||||
|
|
||||||
|
#downloads { |
||||||
|
display: none; |
||||||
|
} |
||||||
|
|
||||||
|
.inner { |
||||||
|
min-width: 320px; |
||||||
|
max-width: 480px; |
||||||
|
} |
||||||
|
|
||||||
|
#project_title { |
||||||
|
font-size: 32px; |
||||||
|
} |
||||||
|
|
||||||
|
h1 { |
||||||
|
font-size: 28px; |
||||||
|
} |
||||||
|
|
||||||
|
h2 { |
||||||
|
font-size: 24px; |
||||||
|
} |
||||||
|
|
||||||
|
h3 { |
||||||
|
font-size: 21px; |
||||||
|
} |
||||||
|
|
||||||
|
h4 { |
||||||
|
font-size: 18px; |
||||||
|
} |
||||||
|
|
||||||
|
h5 { |
||||||
|
font-size: 14px; |
||||||
|
} |
||||||
|
|
||||||
|
h6 { |
||||||
|
font-size: 12px; |
||||||
|
} |
||||||
|
|
||||||
|
code, pre { |
||||||
|
min-width: 320px; |
||||||
|
max-width: 480px; |
||||||
|
font-size: 11px; |
||||||
|
} |
||||||
|
|
||||||
|
} |
Loading…
Reference in new issue