Compare commits
No commits in common. "master" and "gh-pages" have entirely different histories.
24
LICENSE
24
LICENSE
|
@ -1,24 +0,0 @@
|
||||||
This is free and unencumbered software released into the public domain.
|
|
||||||
|
|
||||||
Anyone is free to copy, modify, publish, use, compile, sell, or
|
|
||||||
distribute this software, either in source code form or as a compiled
|
|
||||||
binary, for any purpose, commercial or non-commercial, and by any
|
|
||||||
means.
|
|
||||||
|
|
||||||
In jurisdictions that recognize copyright laws, the author or authors
|
|
||||||
of this software dedicate any and all copyright interest in the
|
|
||||||
software to the public domain. We make this dedication for the benefit
|
|
||||||
of the public at large and to the detriment of our heirs and
|
|
||||||
successors. We intend this dedication to be an overt act of
|
|
||||||
relinquishment in perpetuity of all present and future rights to this
|
|
||||||
software under copyright law.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
||||||
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
||||||
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
|
||||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
||||||
OTHER DEALINGS IN THE SOFTWARE.
|
|
||||||
|
|
||||||
For more information, please refer to <http://unlicense.org>
|
|
Binary file not shown.
After Width: | Height: | Size: 8.7 KiB |
Binary file not shown.
After Width: | Height: | Size: 33 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.0 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.6 KiB |
|
@ -0,0 +1,76 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset='utf-8'>
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="chrome=1">
|
||||||
|
<link href='https://fonts.googleapis.com/css?family=Chivo:900' rel='stylesheet' type='text/css'>
|
||||||
|
<link rel="stylesheet" type="text/css" href="stylesheets/stylesheet.css" media="screen" />
|
||||||
|
<link rel="stylesheet" type="text/css" href="stylesheets/pygment_trac.css" media="screen" />
|
||||||
|
<link rel="stylesheet" type="text/css" href="stylesheets/print.css" media="print" />
|
||||||
|
<!--[if lt IE 9]>
|
||||||
|
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
|
||||||
|
<![endif]-->
|
||||||
|
<title>Pypass by sk-5</title>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div id="container">
|
||||||
|
<div class="inner">
|
||||||
|
|
||||||
|
<header>
|
||||||
|
<h1>Pypass</h1>
|
||||||
|
<h2>Python Password Creator</h2>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<section id="downloads" class="clearfix">
|
||||||
|
<a href="https://github.com/sk-5/pypass/zipball/master" id="download-zip" class="button"><span>Download .zip</span></a>
|
||||||
|
<a href="https://github.com/sk-5/pypass/tarball/master" id="download-tar-gz" class="button"><span>Download .tar.gz</span></a>
|
||||||
|
<a href="https://github.com/sk-5/pypass" id="view-on-github" class="button"><span>View on GitHub</span></a>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
|
||||||
|
<section id="main_content">
|
||||||
|
<h3>
|
||||||
|
<a name="welcome-to-github-pages" class="anchor" href="#welcome-to-github-pages"><span class="octicon octicon-link"></span></a>Welcome to GitHub Pages.</h3>
|
||||||
|
|
||||||
|
<p>This automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:</p>
|
||||||
|
|
||||||
|
<pre><code>$ cd your_repo_root/repo_name
|
||||||
|
$ git fetch origin
|
||||||
|
$ git checkout gh-pages
|
||||||
|
</code></pre>
|
||||||
|
|
||||||
|
<p>If you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.</p>
|
||||||
|
|
||||||
|
<h3>
|
||||||
|
<a name="designer-templates" class="anchor" href="#designer-templates"><span class="octicon octicon-link"></span></a>Designer Templates</h3>
|
||||||
|
|
||||||
|
<p>We've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.</p>
|
||||||
|
|
||||||
|
<h3>
|
||||||
|
<a name="rather-drive-stick" class="anchor" href="#rather-drive-stick"><span class="octicon octicon-link"></span></a>Rather Drive Stick?</h3>
|
||||||
|
|
||||||
|
<p>If you prefer to not use the automatic generator, push a branch named <code>gh-pages</code> to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.</p>
|
||||||
|
|
||||||
|
<h3>
|
||||||
|
<a name="authors-and-contributors" class="anchor" href="#authors-and-contributors"><span class="octicon octicon-link"></span></a>Authors and Contributors</h3>
|
||||||
|
|
||||||
|
<p>You can <a href="https://github.com/blog/821" class="user-mention">@mention</a> a GitHub username to generate a link to their profile. The resulting <code><a></code> element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (<a href="https://github.com/defunkt" class="user-mention">@defunkt</a>), PJ Hyett (<a href="https://github.com/pjhyett" class="user-mention">@pjhyett</a>), and Tom Preston-Werner (<a href="https://github.com/mojombo" class="user-mention">@mojombo</a>) founded GitHub.</p>
|
||||||
|
|
||||||
|
<h3>
|
||||||
|
<a name="support-or-contact" class="anchor" href="#support-or-contact"><span class="octicon octicon-link"></span></a>Support or Contact</h3>
|
||||||
|
|
||||||
|
<p>Having trouble with Pages? Check out the documentation at <a href="http://help.github.com/pages">http://help.github.com/pages</a> or contact <a href="mailto:support@github.com">support@github.com</a> and we’ll help you sort it out.</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
Pypass is maintained by <a href="https://github.com/sk-5">sk-5</a><br>
|
||||||
|
This page was generated by <a href="http://pages.github.com">GitHub Pages</a>. Tactile theme by <a href="https://twitter.com/jasonlong">Jason Long</a>.
|
||||||
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1 @@
|
||||||
|
console.log('This would be the main JS file.');
|
|
@ -0,0 +1 @@
|
||||||
|
{"name":"Pypass","tagline":"Python Password Creator","body":"### Welcome to GitHub Pages.\r\nThis automatic page generator is the easiest way to create beautiful pages for all of your projects. Author your page content here using GitHub Flavored Markdown, select a template crafted by a designer, and publish. After your page is generated, you can check out the new branch:\r\n\r\n```\r\n$ cd your_repo_root/repo_name\r\n$ git fetch origin\r\n$ git checkout gh-pages\r\n```\r\n\r\nIf you're using the GitHub for Mac, simply sync your repository and you'll see the new branch.\r\n\r\n### Designer Templates\r\nWe've crafted some handsome templates for you to use. Go ahead and continue to layouts to browse through them. You can easily go back to edit your page before publishing. After publishing your page, you can revisit the page generator and switch to another theme. Your Page content will be preserved if it remained markdown format.\r\n\r\n### Rather Drive Stick?\r\nIf you prefer to not use the automatic generator, push a branch named `gh-pages` to your repository to create a page manually. In addition to supporting regular HTML content, GitHub Pages support Jekyll, a simple, blog aware static site generator written by our own Tom Preston-Werner. Jekyll makes it easy to create site-wide headers and footers without having to copy them across every page. It also offers intelligent blog support and other advanced templating features.\r\n\r\n### Authors and Contributors\r\nYou can @mention a GitHub username to generate a link to their profile. The resulting `<a>` element will link to the contributor's GitHub Profile. For example: In 2007, Chris Wanstrath (@defunkt), PJ Hyett (@pjhyett), and Tom Preston-Werner (@mojombo) founded GitHub.\r\n\r\n### Support or Contact\r\nHaving trouble with Pages? Check out the documentation at http://help.github.com/pages or contact support@github.com and we’ll help you sort it out.\r\n","google":"","note":"Don't delete this file! It's used internally to help with page regeneration."}
|
268
pypass.py
268
pypass.py
|
@ -1,268 +0,0 @@
|
||||||
#!/usr/bin/env python
|
|
||||||
|
|
||||||
|
|
||||||
'''Asks for two words, puts them together and creates a md5 password. All you have to do is remember a name, place or date and type in the site.'''
|
|
||||||
__author__ = "sk5 <eric@godta.com>"
|
|
||||||
__desc__ = 'Asks for two words, puts them together and creates a md5 password. All you have to do is remember a name, place or date and type in the site.'
|
|
||||||
__prog__ = 'PyPass [Python Password Creator]'
|
|
||||||
__version__ = '0.1'
|
|
||||||
|
|
||||||
SUPPORTED_VERSIONS = [(2, 6),(2, 7)]
|
|
||||||
|
|
||||||
import os, re, sys, string
|
|
||||||
from Tkinter import Tk
|
|
||||||
from hashlib import md5 as m
|
|
||||||
|
|
||||||
class bcolors:
|
|
||||||
'''Pretty Colors Oooooh!'''
|
|
||||||
YELLOW = '\033[93m'
|
|
||||||
RED = '\033[91m'
|
|
||||||
GREY = '\033[0m'
|
|
||||||
CYAN = '\033[96m'
|
|
||||||
DCYAN = '\033[36m'
|
|
||||||
DBLUE = '\033[34m'
|
|
||||||
BLACK = '\033[90m'
|
|
||||||
WHITE = '\033[97m'
|
|
||||||
|
|
||||||
def disable(self):
|
|
||||||
'''Resets all colors'''
|
|
||||||
self.YELLOW = ''
|
|
||||||
self.RED = ''
|
|
||||||
self.GREY = ''
|
|
||||||
self.CYAN = ''
|
|
||||||
self.DCYAN = ''
|
|
||||||
self.DBLUE = ''
|
|
||||||
self.BLACK = ''
|
|
||||||
self.WHITE = ''
|
|
||||||
|
|
||||||
|
|
||||||
# Pyperclip v1.3
|
|
||||||
# A cross-platform clipboard module for Python. (only handles plain text for now)
|
|
||||||
# By Al Sweigart al@coffeeghost.net
|
|
||||||
|
|
||||||
# Usage:
|
|
||||||
# import pyperclip
|
|
||||||
# pyperclip.copy('The text to be copied to the clipboard.')
|
|
||||||
# spam = pyperclip.paste()
|
|
||||||
|
|
||||||
# On Mac, this module makes use of the pbcopy and pbpaste commands, which should come with the os.
|
|
||||||
# On Linux, this module makes use of the xclip command, which should come with the os. Otherwise run "sudo apt-get install xclip"
|
|
||||||
|
|
||||||
|
|
||||||
# Copyright (c) 2010, Albert Sweigart
|
|
||||||
# All rights reserved.
|
|
||||||
#
|
|
||||||
# BSD-style license:
|
|
||||||
#
|
|
||||||
# Redistribution and use in source and binary forms, with or without
|
|
||||||
# modification, are permitted provided that the following conditions are met:
|
|
||||||
# * Redistributions of source code must retain the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer.
|
|
||||||
# * Redistributions in binary form must reproduce the above copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer in the
|
|
||||||
# documentation and/or other materials provided with the distribution.
|
|
||||||
# * Neither the name of the pyperclip nor the
|
|
||||||
# names of its contributors may be used to endorse or promote products
|
|
||||||
# derived from this software without specific prior written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY Albert Sweigart "AS IS" AND ANY
|
|
||||||
# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
||||||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
||||||
# DISCLAIMED. IN NO EVENT SHALL Albert Sweigart BE LIABLE FOR ANY
|
|
||||||
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
||||||
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
||||||
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
|
|
||||||
# Change Log:
|
|
||||||
# 1.2 Use the platform module to help determine OS.
|
|
||||||
# 1.3 Changed ctypes.windll.user32.OpenClipboard(None) to ctypes.windll.user32.OpenClipboard(0), after some people ran into some TypeError
|
|
||||||
|
|
||||||
import platform, os
|
|
||||||
|
|
||||||
def winGetClipboard():
|
|
||||||
ctypes.windll.user32.OpenClipboard(0)
|
|
||||||
pcontents = ctypes.windll.user32.GetClipboardData(1) # 1 is CF_TEXT
|
|
||||||
data = ctypes.c_char_p(pcontents).value
|
|
||||||
#ctypes.windll.kernel32.GlobalUnlock(pcontents)
|
|
||||||
ctypes.windll.user32.CloseClipboard()
|
|
||||||
return data
|
|
||||||
|
|
||||||
def winSetClipboard(text):
|
|
||||||
GMEM_DDESHARE = 0x2000
|
|
||||||
ctypes.windll.user32.OpenClipboard(0)
|
|
||||||
ctypes.windll.user32.EmptyClipboard()
|
|
||||||
try:
|
|
||||||
# works on Python 2 (bytes() only takes one argument)
|
|
||||||
hCd = ctypes.windll.kernel32.GlobalAlloc(GMEM_DDESHARE, len(bytes(text))+1)
|
|
||||||
except TypeError:
|
|
||||||
# works on Python 3 (bytes() requires an encoding)
|
|
||||||
hCd = ctypes.windll.kernel32.GlobalAlloc(GMEM_DDESHARE, len(bytes(text, 'ascii'))+1)
|
|
||||||
pchData = ctypes.windll.kernel32.GlobalLock(hCd)
|
|
||||||
try:
|
|
||||||
# works on Python 2 (bytes() only takes one argument)
|
|
||||||
ctypes.cdll.msvcrt.strcpy(ctypes.c_char_p(pchData), bytes(text))
|
|
||||||
except TypeError:
|
|
||||||
# works on Python 3 (bytes() requires an encoding)
|
|
||||||
ctypes.cdll.msvcrt.strcpy(ctypes.c_char_p(pchData), bytes(text, 'ascii'))
|
|
||||||
ctypes.windll.kernel32.GlobalUnlock(hCd)
|
|
||||||
ctypes.windll.user32.SetClipboardData(1,hCd)
|
|
||||||
ctypes.windll.user32.CloseClipboard()
|
|
||||||
|
|
||||||
def macSetClipboard(text):
|
|
||||||
outf = os.popen('pbcopy', 'w')
|
|
||||||
outf.write(text)
|
|
||||||
outf.close()
|
|
||||||
|
|
||||||
def macGetClipboard():
|
|
||||||
outf = os.popen('pbpaste', 'r')
|
|
||||||
content = outf.read()
|
|
||||||
outf.close()
|
|
||||||
return content
|
|
||||||
|
|
||||||
def gtkGetClipboard():
|
|
||||||
return gtk.Clipboard().wait_for_text()
|
|
||||||
|
|
||||||
def gtkSetClipboard(text):
|
|
||||||
cb = gtk.Clipboard()
|
|
||||||
cb.set_text(text)
|
|
||||||
cb.store()
|
|
||||||
|
|
||||||
def qtGetClipboard():
|
|
||||||
return str(cb.text())
|
|
||||||
|
|
||||||
def qtSetClipboard(text):
|
|
||||||
cb.setText(text)
|
|
||||||
|
|
||||||
def xclipSetClipboard(text):
|
|
||||||
outf = os.popen('xclip -selection c', 'w')
|
|
||||||
outf.write(text)
|
|
||||||
outf.close()
|
|
||||||
|
|
||||||
def xclipGetClipboard():
|
|
||||||
outf = os.popen('xclip -selection c -o', 'r')
|
|
||||||
content = outf.read()
|
|
||||||
outf.close()
|
|
||||||
return content
|
|
||||||
|
|
||||||
def xselSetClipboard(text):
|
|
||||||
outf = os.popen('xsel -i', 'w')
|
|
||||||
outf.write(text)
|
|
||||||
outf.close()
|
|
||||||
|
|
||||||
def xselGetClipboard():
|
|
||||||
outf = os.popen('xsel -o', 'r')
|
|
||||||
content = outf.read()
|
|
||||||
outf.close()
|
|
||||||
return content
|
|
||||||
|
|
||||||
|
|
||||||
if os.name == 'nt' or platform.system() == 'Windows':
|
|
||||||
import ctypes
|
|
||||||
getcb = winGetClipboard
|
|
||||||
setcb = winSetClipboard
|
|
||||||
elif os.name == 'mac' or platform.system() == 'Darwin':
|
|
||||||
getcb = macGetClipboard
|
|
||||||
setcb = macSetClipboard
|
|
||||||
elif os.name == 'posix' or platform.system() == 'Linux':
|
|
||||||
xclipExists = os.system('which xclip') == 0
|
|
||||||
if xclipExists:
|
|
||||||
getcb = xclipGetClipboard
|
|
||||||
setcb = xclipSetClipboard
|
|
||||||
else:
|
|
||||||
xselExists = os.system('which xsel') == 0
|
|
||||||
if xselExists:
|
|
||||||
getcb = xselGetClipboard
|
|
||||||
setcb = xselSetClipboard
|
|
||||||
try:
|
|
||||||
import gtk
|
|
||||||
getcb = gtkGetClipboard
|
|
||||||
setcb = gtkSetClipboard
|
|
||||||
except:
|
|
||||||
try:
|
|
||||||
import PyQt4.QtCore
|
|
||||||
import PyQt4.QtGui
|
|
||||||
app = QApplication([])
|
|
||||||
cb = PyQt4.QtGui.QApplication.clipboard()
|
|
||||||
getcb = qtGetClipboard
|
|
||||||
setcb = qtSetClipboard
|
|
||||||
except:
|
|
||||||
raise Exception('Pyperclip requires the gtk or PyQt4 module installed, or the xclip command.')
|
|
||||||
copyClip = setcb
|
|
||||||
pasteClip = getcb
|
|
||||||
|
|
||||||
|
|
||||||
def clear():
|
|
||||||
'''uhm... this clears the screen ...'''
|
|
||||||
if os.name == 'nt':
|
|
||||||
os.system('cls')
|
|
||||||
else:
|
|
||||||
os.system('clear')
|
|
||||||
return 0
|
|
||||||
|
|
||||||
def run():
|
|
||||||
'''Runs the Python Password Creator Program. No arguments are required'''
|
|
||||||
|
|
||||||
rows, columns = os.popen('stty size', 'r').read().split()
|
|
||||||
TYPE = 0
|
|
||||||
clear()
|
|
||||||
print
|
|
||||||
print(bcolors.CYAN)
|
|
||||||
header = bcolors.DCYAN+" -[ Python Password Creator v"+bcolors.CYAN+"0.1"+bcolors.DCYAN+" ]- "
|
|
||||||
print(header.center(int(columns)+12))
|
|
||||||
print
|
|
||||||
|
|
||||||
Pass1 = raw_input(bcolors.DCYAN+' Enter First Password '+bcolors.WHITE+': '+bcolors.CYAN)
|
|
||||||
Pass2 = raw_input(bcolors.DCYAN+' Now The Second '+bcolors.WHITE+': '+bcolors.CYAN)
|
|
||||||
while True:
|
|
||||||
h = set(['1','2', 'q'])
|
|
||||||
print
|
|
||||||
print(bcolors.DCYAN+' ['+bcolors.CYAN+'1'+bcolors.DCYAN+'] Hex Digest ('+bcolors.WHITE+'23fd44228071730e3457dc5de887b3ae'+bcolors.DCYAN+')')
|
|
||||||
print(bcolors.DCYAN+' ['+bcolors.CYAN+'2'+bcolors.DCYAN+'] Digest ('+bcolors.WHITE+'#\xfdD"\x80qs\x0e4W\xdc]\xe8\x87\xb3\xae'.encode('string_escape')+bcolors.DCYAN+')')
|
|
||||||
print
|
|
||||||
TYPE = raw_input(bcolors.DCYAN+' Type of Digest ['+bcolors.CYAN+'1'+bcolors.DCYAN+'-'+bcolors.CYAN+'2'+bcolors.DCYAN+', '+bcolors.WHITE+'Q'+bcolors.DCYAN+'] '+bcolors.WHITE+': '+bcolors.CYAN);
|
|
||||||
if TYPE in h:
|
|
||||||
break
|
|
||||||
elif TYPE not in h:
|
|
||||||
TYPE = 0
|
|
||||||
|
|
||||||
if (string.lower(TYPE) == 'q'):
|
|
||||||
print
|
|
||||||
print(bcolors.RED+" Program Terminated")
|
|
||||||
print(bcolors.GREY)
|
|
||||||
quit(0)
|
|
||||||
|
|
||||||
elif (TYPE == '1'):
|
|
||||||
md5_hash = m(Pass1+Pass2).hexdigest()
|
|
||||||
s = bcolors.WHITE+md5_hash
|
|
||||||
md = md5_hash
|
|
||||||
else:
|
|
||||||
md5_hash = m(Pass1+Pass2).digest()
|
|
||||||
s = bcolors.WHITE+md5_hash.encode('string_escape')
|
|
||||||
md = md5_hash.encode('string_escape')
|
|
||||||
|
|
||||||
clear()
|
|
||||||
copyClip(md) # copy to clipboard
|
|
||||||
print
|
|
||||||
print
|
|
||||||
|
|
||||||
newpass = bcolors.CYAN+unichr(0x2212)+bcolors.DCYAN+'[ your new password is ]'+bcolors.CYAN+unichr(0x2212)
|
|
||||||
clipboard = bcolors.CYAN+pasteClip()+bcolors.DCYAN+' has been copied to the clipboard!'
|
|
||||||
|
|
||||||
print(newpass.center(int(columns)+10))
|
|
||||||
print (bcolors.GREY)
|
|
||||||
print(s.center( int(columns)-2 ) )
|
|
||||||
print(bcolors.GREY)
|
|
||||||
print(clipboard.center(int(columns)+10))
|
|
||||||
print
|
|
||||||
print
|
|
||||||
|
|
||||||
if (len(sys.argv) > 1):
|
|
||||||
if (string.lower(sys.argv[1]) == 'run'):
|
|
||||||
run()
|
|
||||||
else:
|
|
||||||
print("Either import this, or run '" + sys.argv[0] + " run' to start.")
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,226 @@
|
||||||
|
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-size: 100%;
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
ol, ul {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
blockquote, q {
|
||||||
|
quotes: none;
|
||||||
|
}
|
||||||
|
blockquote:before, blockquote:after,
|
||||||
|
q:before, q:after {
|
||||||
|
content: '';
|
||||||
|
content: none;
|
||||||
|
}
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
font-size: 13px;
|
||||||
|
line-height: 1.5;
|
||||||
|
font-family: 'Helvetica Neue', Helvetica, Arial, serif;
|
||||||
|
color: #000;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #d5000d;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
padding-top: 35px;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
header h1 {
|
||||||
|
font-weight: bold;
|
||||||
|
letter-spacing: -1px;
|
||||||
|
font-size: 48px;
|
||||||
|
color: #303030;
|
||||||
|
line-height: 1.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
header h2 {
|
||||||
|
letter-spacing: -1px;
|
||||||
|
font-size: 24px;
|
||||||
|
color: #aaa;
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: 1.3;
|
||||||
|
}
|
||||||
|
#downloads {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
#main_content {
|
||||||
|
padding-top: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
code, pre {
|
||||||
|
font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal;
|
||||||
|
color: #222;
|
||||||
|
margin-bottom: 30px;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
|
code {
|
||||||
|
padding: 0 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
border: solid 1px #ddd;
|
||||||
|
padding: 20px;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
pre code {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul, ol, dl {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* COMMON STYLES */
|
||||||
|
|
||||||
|
table {
|
||||||
|
width: 100%;
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
}
|
||||||
|
|
||||||
|
th {
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
td {
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
text-align: center;
|
||||||
|
font-weight: 300;
|
||||||
|
}
|
||||||
|
|
||||||
|
form {
|
||||||
|
background: #f2f2f2;
|
||||||
|
padding: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* GENERAL ELEMENT TYPE STYLES */
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 2.8em;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 22px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #303030;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
color: #d5000d;
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
font-size: 16px;
|
||||||
|
color: #303030;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
h5 {
|
||||||
|
font-size: 1em;
|
||||||
|
color: #303030;
|
||||||
|
}
|
||||||
|
|
||||||
|
h6 {
|
||||||
|
font-size: .8em;
|
||||||
|
color: #303030;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
font-weight: 300;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
p a {
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
font-size: 1.6em;
|
||||||
|
border-left: 10px solid #e9e9e9;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
padding: 0 0 0 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul li {
|
||||||
|
list-style: disc inside;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol li {
|
||||||
|
list-style: decimal inside;
|
||||||
|
padding-left: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
dl dd {
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 100;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
margin-top: 40px;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-bottom: 30px;
|
||||||
|
font-size: 13px;
|
||||||
|
color: #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer a {
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* MISC */
|
||||||
|
.clearfix:after {
|
||||||
|
clear: both;
|
||||||
|
content: '.';
|
||||||
|
display: block;
|
||||||
|
visibility: hidden;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.clearfix {display: inline-block;}
|
||||||
|
* html .clearfix {height: 1%;}
|
||||||
|
.clearfix {display: block;}
|
|
@ -0,0 +1,69 @@
|
||||||
|
.highlight { background: #ffffff; }
|
||||||
|
.highlight .c { color: #999988; font-style: italic } /* Comment */
|
||||||
|
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
|
||||||
|
.highlight .k { font-weight: bold } /* Keyword */
|
||||||
|
.highlight .o { font-weight: bold } /* Operator */
|
||||||
|
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
|
||||||
|
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
|
||||||
|
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
|
||||||
|
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
|
||||||
|
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
|
||||||
|
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
|
||||||
|
.highlight .ge { font-style: italic } /* Generic.Emph */
|
||||||
|
.highlight .gr { color: #aa0000 } /* Generic.Error */
|
||||||
|
.highlight .gh { color: #999999 } /* Generic.Heading */
|
||||||
|
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
|
||||||
|
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
|
||||||
|
.highlight .go { color: #888888 } /* Generic.Output */
|
||||||
|
.highlight .gp { color: #555555 } /* Generic.Prompt */
|
||||||
|
.highlight .gs { font-weight: bold } /* Generic.Strong */
|
||||||
|
.highlight .gu { color: #800080; font-weight: bold; } /* Generic.Subheading */
|
||||||
|
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
|
||||||
|
.highlight .kc { font-weight: bold } /* Keyword.Constant */
|
||||||
|
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
|
||||||
|
.highlight .kn { font-weight: bold } /* Keyword.Namespace */
|
||||||
|
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
|
||||||
|
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
|
||||||
|
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
|
||||||
|
.highlight .m { color: #009999 } /* Literal.Number */
|
||||||
|
.highlight .s { color: #d14 } /* Literal.String */
|
||||||
|
.highlight .na { color: #008080 } /* Name.Attribute */
|
||||||
|
.highlight .nb { color: #0086B3 } /* Name.Builtin */
|
||||||
|
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
|
||||||
|
.highlight .no { color: #008080 } /* Name.Constant */
|
||||||
|
.highlight .ni { color: #800080 } /* Name.Entity */
|
||||||
|
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
|
||||||
|
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
|
||||||
|
.highlight .nn { color: #555555 } /* Name.Namespace */
|
||||||
|
.highlight .nt { color: #000080 } /* Name.Tag */
|
||||||
|
.highlight .nv { color: #008080 } /* Name.Variable */
|
||||||
|
.highlight .ow { font-weight: bold } /* Operator.Word */
|
||||||
|
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
|
||||||
|
.highlight .mf { color: #009999 } /* Literal.Number.Float */
|
||||||
|
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
|
||||||
|
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
|
||||||
|
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
|
||||||
|
.highlight .sb { color: #d14 } /* Literal.String.Backtick */
|
||||||
|
.highlight .sc { color: #d14 } /* Literal.String.Char */
|
||||||
|
.highlight .sd { color: #d14 } /* Literal.String.Doc */
|
||||||
|
.highlight .s2 { color: #d14 } /* Literal.String.Double */
|
||||||
|
.highlight .se { color: #d14 } /* Literal.String.Escape */
|
||||||
|
.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
|
||||||
|
.highlight .si { color: #d14 } /* Literal.String.Interpol */
|
||||||
|
.highlight .sx { color: #d14 } /* Literal.String.Other */
|
||||||
|
.highlight .sr { color: #009926 } /* Literal.String.Regex */
|
||||||
|
.highlight .s1 { color: #d14 } /* Literal.String.Single */
|
||||||
|
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
|
||||||
|
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
|
||||||
|
.highlight .vc { color: #008080 } /* Name.Variable.Class */
|
||||||
|
.highlight .vg { color: #008080 } /* Name.Variable.Global */
|
||||||
|
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
|
||||||
|
.highlight .il { color: #009999 } /* 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,371 @@
|
||||||
|
/* http://meyerweb.com/eric/tools/css/reset/
|
||||||
|
v2.0 | 20110126
|
||||||
|
License: none (public domain)
|
||||||
|
*/
|
||||||
|
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-size: 100%;
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
body {
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
ol, ul {
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
blockquote, q {
|
||||||
|
quotes: none;
|
||||||
|
}
|
||||||
|
blockquote:before, blockquote:after,
|
||||||
|
q:before, q:after {
|
||||||
|
content: '';
|
||||||
|
content: none;
|
||||||
|
}
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* LAYOUT STYLES */
|
||||||
|
body {
|
||||||
|
font-size: 1em;
|
||||||
|
line-height: 1.5;
|
||||||
|
background: #e7e7e7 url(../images/body-bg.png) 0 0 repeat;
|
||||||
|
font-family: 'Helvetica Neue', Helvetica, Arial, serif;
|
||||||
|
text-shadow: 0 1px 0 rgba(255, 255, 255, 0.8);
|
||||||
|
color: #6d6d6d;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: #d5000d;
|
||||||
|
}
|
||||||
|
a:hover {
|
||||||
|
color: #c5000c;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
padding-top: 35px;
|
||||||
|
padding-bottom: 25px;
|
||||||
|
}
|
||||||
|
|
||||||
|
header h1 {
|
||||||
|
font-family: 'Chivo', 'Helvetica Neue', Helvetica, Arial, serif; font-weight: 900;
|
||||||
|
letter-spacing: -1px;
|
||||||
|
font-size: 48px;
|
||||||
|
color: #303030;
|
||||||
|
line-height: 1.2;
|
||||||
|
}
|
||||||
|
|
||||||
|
header h2 {
|
||||||
|
letter-spacing: -1px;
|
||||||
|
font-size: 24px;
|
||||||
|
color: #aaa;
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: 1.3;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container {
|
||||||
|
background: transparent url(../images/highlight-bg.jpg) 50% 0 no-repeat;
|
||||||
|
min-height: 595px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.inner {
|
||||||
|
width: 620px;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#container .inner img {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
#downloads {
|
||||||
|
margin-bottom: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a.button {
|
||||||
|
-moz-border-radius: 30px;
|
||||||
|
-webkit-border-radius: 30px;
|
||||||
|
border-radius: 30px;
|
||||||
|
border-top: solid 1px #cbcbcb;
|
||||||
|
border-left: solid 1px #b7b7b7;
|
||||||
|
border-right: solid 1px #b7b7b7;
|
||||||
|
border-bottom: solid 1px #b3b3b3;
|
||||||
|
color: #303030;
|
||||||
|
line-height: 25px;
|
||||||
|
font-weight: bold;
|
||||||
|
font-size: 15px;
|
||||||
|
padding: 12px 8px 12px 8px;
|
||||||
|
display: block;
|
||||||
|
float: left;
|
||||||
|
width: 179px;
|
||||||
|
margin-right: 14px;
|
||||||
|
background: #fdfdfd; /* Old browsers */
|
||||||
|
background: -moz-linear-gradient(top, #fdfdfd 0%, #f2f2f2 100%); /* FF3.6+ */
|
||||||
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fdfdfd), color-stop(100%,#f2f2f2)); /* Chrome,Safari4+ */
|
||||||
|
background: -webkit-linear-gradient(top, #fdfdfd 0%,#f2f2f2 100%); /* Chrome10+,Safari5.1+ */
|
||||||
|
background: -o-linear-gradient(top, #fdfdfd 0%,#f2f2f2 100%); /* Opera 11.10+ */
|
||||||
|
background: -ms-linear-gradient(top, #fdfdfd 0%,#f2f2f2 100%); /* IE10+ */
|
||||||
|
background: linear-gradient(top, #fdfdfd 0%,#f2f2f2 100%); /* W3C */
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fdfdfd', endColorstr='#f2f2f2',GradientType=0 ); /* IE6-9 */
|
||||||
|
-webkit-box-shadow: 10px 10px 5px #888;
|
||||||
|
-moz-box-shadow: 10px 10px 5px #888;
|
||||||
|
box-shadow: 0px 1px 5px #e8e8e8;
|
||||||
|
}
|
||||||
|
a.button:hover {
|
||||||
|
border-top: solid 1px #b7b7b7;
|
||||||
|
border-left: solid 1px #b3b3b3;
|
||||||
|
border-right: solid 1px #b3b3b3;
|
||||||
|
border-bottom: solid 1px #b3b3b3;
|
||||||
|
background: #fafafa; /* Old browsers */
|
||||||
|
background: -moz-linear-gradient(top, #fdfdfd 0%, #f6f6f6 100%); /* FF3.6+ */
|
||||||
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fdfdfd), color-stop(100%,#f6f6f6)); /* Chrome,Safari4+ */
|
||||||
|
background: -webkit-linear-gradient(top, #fdfdfd 0%,#f6f6f6 100%); /* Chrome10+,Safari5.1+ */
|
||||||
|
background: -o-linear-gradient(top, #fdfdfd 0%,#f6f6f6 100%); /* Opera 11.10+ */
|
||||||
|
background: -ms-linear-gradient(top, #fdfdfd 0%,#f6f6f6 100%); /* IE10+ */
|
||||||
|
background: linear-gradient(top, #fdfdfd 0%,#f6f6f6, 100%); /* W3C */
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fdfdfd', endColorstr='#f6f6f6',GradientType=0 ); /* IE6-9 */
|
||||||
|
}
|
||||||
|
|
||||||
|
a.button span {
|
||||||
|
padding-left: 50px;
|
||||||
|
display: block;
|
||||||
|
height: 23px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#download-zip span {
|
||||||
|
background: transparent url(../images/zip-icon.png) 12px 50% no-repeat;
|
||||||
|
}
|
||||||
|
#download-tar-gz span {
|
||||||
|
background: transparent url(../images/tar-gz-icon.png) 12px 50% no-repeat;
|
||||||
|
}
|
||||||
|
#view-on-github span {
|
||||||
|
background: transparent url(../images/octocat-icon.png) 12px 50% no-repeat;
|
||||||
|
}
|
||||||
|
#view-on-github {
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
code, pre {
|
||||||
|
font-family: Monaco, "Bitstream Vera Sans Mono", "Lucida Console", Terminal;
|
||||||
|
color: #222;
|
||||||
|
margin-bottom: 30px;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
code {
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
border: solid 1px #ddd;
|
||||||
|
padding: 0 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
pre {
|
||||||
|
padding: 20px;
|
||||||
|
background: #303030;
|
||||||
|
color: #f2f2f2;
|
||||||
|
text-shadow: none;
|
||||||
|
overflow: auto;
|
||||||
|
}
|
||||||
|
pre code {
|
||||||
|
color: #f2f2f2;
|
||||||
|
background-color: #303030;
|
||||||
|
border: none;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul, ol, dl {
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* COMMON STYLES */
|
||||||
|
|
||||||
|
hr {
|
||||||
|
height: 1px;
|
||||||
|
line-height: 1px;
|
||||||
|
margin-top: 1em;
|
||||||
|
padding-bottom: 1em;
|
||||||
|
border: none;
|
||||||
|
background: transparent url('../images/hr.png') 50% 0 no-repeat;
|
||||||
|
}
|
||||||
|
|
||||||
|
strong {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
em {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
||||||
|
table {
|
||||||
|
width: 100%;
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
}
|
||||||
|
|
||||||
|
th {
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
td {
|
||||||
|
border: 1px solid #ebebeb;
|
||||||
|
text-align: center;
|
||||||
|
font-weight: 300;
|
||||||
|
}
|
||||||
|
|
||||||
|
form {
|
||||||
|
background: #f2f2f2;
|
||||||
|
padding: 20px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* GENERAL ELEMENT TYPE STYLES */
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 22px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #303030;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
color: #d5000d;
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
h4 {
|
||||||
|
font-size: 16px;
|
||||||
|
color: #303030;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
h5 {
|
||||||
|
font-size: 1em;
|
||||||
|
color: #303030;
|
||||||
|
}
|
||||||
|
|
||||||
|
h6 {
|
||||||
|
font-size: .8em;
|
||||||
|
color: #303030;
|
||||||
|
}
|
||||||
|
|
||||||
|
p {
|
||||||
|
font-weight: 300;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
p a {
|
||||||
|
font-weight: 400;
|
||||||
|
}
|
||||||
|
|
||||||
|
blockquote {
|
||||||
|
font-size: 1.6em;
|
||||||
|
border-left: 10px solid #e9e9e9;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
padding: 0 0 0 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul li {
|
||||||
|
list-style: disc inside;
|
||||||
|
padding-left: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
ol li {
|
||||||
|
list-style: decimal inside;
|
||||||
|
padding-left: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
dl dt {
|
||||||
|
color: #303030;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer {
|
||||||
|
background: transparent url('../images/hr.png') 0 0 no-repeat;
|
||||||
|
margin-top: 40px;
|
||||||
|
padding-top: 20px;
|
||||||
|
padding-bottom: 30px;
|
||||||
|
font-size: 13px;
|
||||||
|
color: #aaa;
|
||||||
|
}
|
||||||
|
|
||||||
|
footer a {
|
||||||
|
color: #666;
|
||||||
|
}
|
||||||
|
footer a:hover {
|
||||||
|
color: #444;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* MISC */
|
||||||
|
.clearfix:after {
|
||||||
|
clear: both;
|
||||||
|
content: '.';
|
||||||
|
display: block;
|
||||||
|
visibility: hidden;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.clearfix {display: inline-block;}
|
||||||
|
* html .clearfix {height: 1%;}
|
||||||
|
.clearfix {display: block;}
|
||||||
|
|
||||||
|
/* #Media Queries
|
||||||
|
================================================== */
|
||||||
|
|
||||||
|
/* Smaller than standard 960 (devices and browsers) */
|
||||||
|
@media only screen and (max-width: 959px) {}
|
||||||
|
|
||||||
|
/* Tablet Portrait size to standard 960 (devices and browsers) */
|
||||||
|
@media only screen and (min-width: 768px) and (max-width: 959px) {}
|
||||||
|
|
||||||
|
/* All Mobile Sizes (devices and browser) */
|
||||||
|
@media only screen and (max-width: 767px) {
|
||||||
|
header {
|
||||||
|
padding-top: 10px;
|
||||||
|
padding-bottom: 10px;
|
||||||
|
}
|
||||||
|
#downloads {
|
||||||
|
margin-bottom: 25px;
|
||||||
|
}
|
||||||
|
#download-zip, #download-tar-gz {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.inner {
|
||||||
|
width: 94%;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
|
||||||
|
@media only screen and (min-width: 480px) and (max-width: 767px) {}
|
||||||
|
|
||||||
|
/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
|
||||||
|
@media only screen and (max-width: 479px) {}
|
Loading…
Reference in New Issue