diff --git a/.gitattributes b/.gitattributes index 4afe792..9a3a00b 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,3 +1,4 @@ .gitattributes export-ignore .gitignore export-ignore .travis.yml export-ignore +/doc/web export-ignore diff --git a/Makefile b/Makefile index 59e9a9d..8dc2858 100644 --- a/Makefile +++ b/Makefile @@ -9,8 +9,7 @@ ARCHIVE_SOURCE:=$(LAPPNAME)-$(VERSION).tar.gz ARCHIVE_WIN32:=$(LAPPNAME)-$(VERSION).exe GITUSER:=wummel GITREPO:=$(LAPPNAME) -HOMEPAGE:=$(HOME)/public_html/$(LAPPNAME)-webpage -HOMEPAGE_META:=$(HOMEPAGE)/app.yaml +WEB_META:=doc/web/app.yaml DEBUILDDIR:=$(HOME)/projects/debian/official DEBORIGFILE:=$(DEBUILDDIR)/$(LAPPNAME)_$(VERSION).orig.tar.gz DEBPACKAGEDIR:=$(DEBUILDDIR)/$(LAPPNAME)-$(VERSION) @@ -42,13 +41,13 @@ upload: homepage: # update metadata - @echo "version: \"$(VERSION)\"" > $(HOMEPAGE_META) - @echo "name: \"$(APPNAME)\"" >> $(HOMEPAGE_META) - @echo "lname: \"$(LAPPNAME)\"" >> $(HOMEPAGE_META) - @echo "maintainer: \"$(MAINTAINER)\"" >> $(HOMEPAGE_META) - @echo "author: \"$(AUTHOR)\"" >> $(HOMEPAGE_META) -# generate static files - make -C $(HOMEPAGE) gen upload + @echo "version: \"$(VERSION)\"" > $(WEB_META) + @echo "name: \"$(APPNAME)\"" >> $(WEB_META) + @echo "lname: \"$(LAPPNAME)\"" >> $(WEB_META) + @echo "maintainer: \"$(MAINTAINER)\"" >> $(WEB_META) + @echo "author: \"$(AUTHOR)\"" >> $(WEB_META) +# relase website + $(MAKE) -C doc/web release tag: # add and push the version tag @@ -137,4 +136,4 @@ changelog: github-changelog $(DRYRUN) $(GITUSER) $(GITREPO) doc/changelog.txt .PHONY: changelog update-copyright deb test clean count pyflakes check app -.PHONY: releasecheck release upload sign dist all tag register +.PHONY: releasecheck release upload sign dist all tag register homepage diff --git a/doc/web/Makefile b/doc/web/Makefile new file mode 100644 index 0000000..8d5df54 --- /dev/null +++ b/doc/web/Makefile @@ -0,0 +1,21 @@ +HOMEPAGE:=$(HOME)/public_html/patool-webpage.git +WOK:=$(HOME)/projects/wok.git/wok + +all: + +media/favicon.ico: ../icon/favicon.ico + cp $< $@ + +gen: media/favicon.ico + $(WOK) -v + +serve: gen + xdg-open http://localhost:8080 + $(WOK) --server localhost:8080 + +upload: + cd $(HOMEPAGE) && git add . && git commit -m "Updated" && git push + +release: gen upload + +.PHONY: all gen serve upload release diff --git a/doc/web/app.yaml b/doc/web/app.yaml new file mode 100644 index 0000000..54cf3f2 --- /dev/null +++ b/doc/web/app.yaml @@ -0,0 +1,6 @@ +version: "1.0" +name: "Patool" +lname: "patool" +maintainer: "Bastian Kleineidam" +author: "Bastian Kleineidam" +output_exclude: [".*", "todo"] diff --git a/doc/web/content/index.md b/doc/web/content/index.md new file mode 100644 index 0000000..6570e9d --- /dev/null +++ b/doc/web/content/index.md @@ -0,0 +1,80 @@ +title: portable archive file manager +description: patool is a portable archive file manager +--- +Introduction +------------- +[![XKCD Tar comic](http://imgs.xkcd.com/comics/tar.png)](http://xkcd.com/1168/) + +I could never remember the correct options for all those different compression +programs. Tar, unzip, gzip - you name it and I forgot it. +Patool remembers all those options for me now so I don't have to. + +Description +------------ +Various archive types can be created, extracted, tested, listed, +compared, searched and +repacked with patool. The advantage of patool is its simplicity in +handling archive files without having to remember a myriad of +programs and options. + +The archive format is determined by the file(1) program and as +a fallback by the archive file extension. + +patool supports 7z (.7z), ACE (.ace), ADF (.adf), ALZIP (.alz), +APE (.ape), AR (.a), ARC (.arc), ARJ (.arj), BZIP2 (.bz2), CAB +(.cab), COMPRESS (.Z), CPIO (.cpio), DEB (.deb), DMS (.dms), +FLAC (.flac), GZIP (.gz), LRZIP (.lrz), LZH (.lha, .lzh), LZIP +(.lz), LZMA (.lzma), LZOP (.lzo), RPM (.rpm), RAR (.rar), RZIP +(.rz), SHN (.shn), TAR (.tar), XZ (.xz), ZIP (.zip, .jar) and +ZOO (.zoo) formats. It relies on helper applications to handle +those archive formats (for example bzip2 for BZIP2 archives). + +The archive formats TAR, ZIP, BZIP2 and +GZIP are supported natively and do not require helper +applications to be installed. + +Installation +------------- +The easy way with pip: + +```bash +pip install patool +``` + +If you install from source read the +[installation instructions](https://github.com/wummel/patool/blob/master/doc/install.txt). + +Examples +--------- + +```bash +# extract two archives +patool extract archive.zip otherarchive.rar + +# test if archive is intact +patool test --verbose dist.tar.gz + +# list files inside an archive +patool list package.deb + +# create a new archive +patool create --verbose myfiles.zip file1.txt dir/ + +# list differences between two archive contents +patool diff release1.0.tar.gz release2.0.zip + +# search archive contents +patool search "def urlopen" python-3.3.tar.gz + +# compress the archive in a different format +patool repack linux-2.6.33.tar.gz linux-2.6.33.tar.bz2 +``` + +Donate +------- +If you like patool, consider a donation to support it. Thanks! + +Donate Bitcoins + + +Flattr this diff --git a/doc/web/hooks/__hooks__.py b/doc/web/hooks/__hooks__.py new file mode 100644 index 0000000..eed8417 --- /dev/null +++ b/doc/web/hooks/__hooks__.py @@ -0,0 +1,18 @@ +# -*- coding: iso-8859-1 -*- +def compress_javascript(config, output_path): + from mediacompress import compress_js_files + compress_js_files(output_path) + + +def compress_images(config, output_path): + from mediacompress import compress_image_files + compress_image_files(output_path) + + +def compress_css(config, output_path): + from mediacompress import compress_css_files + compress_css_files(output_path) + +hooks = { + 'site.output.post': [compress_javascript, compress_images, compress_css], +} diff --git a/doc/web/media/css/print.css b/doc/web/media/css/print.css new file mode 100644 index 0000000..541695b --- /dev/null +++ b/doc/web/media/css/print.css @@ -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;} \ No newline at end of file diff --git a/doc/web/media/css/pygment_trac.css b/doc/web/media/css/pygment_trac.css new file mode 100644 index 0000000..82fb8fe --- /dev/null +++ b/doc/web/media/css/pygment_trac.css @@ -0,0 +1,69 @@ +.codehilite { background: #ffffff; } +.codehilite .c { color: #999988; font-style: italic } /* Comment */ +.codehilite .err { color: #a61717; background-color: #e3d2d2 } /* Error */ +.codehilite .k { font-weight: bold } /* Keyword */ +.codehilite .o { font-weight: bold } /* Operator */ +.codehilite .cm { color: #999988; font-style: italic } /* Comment.Multiline */ +.codehilite .cp { color: #999999; font-weight: bold } /* Comment.Preproc */ +.codehilite .c1 { color: #999988; font-style: italic } /* Comment.Single */ +.codehilite .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */ +.codehilite .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ +.codehilite .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */ +.codehilite .ge { font-style: italic } /* Generic.Emph */ +.codehilite .gr { color: #aa0000 } /* Generic.Error */ +.codehilite .gh { color: #999999 } /* Generic.Heading */ +.codehilite .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ +.codehilite .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */ +.codehilite .go { color: #888888 } /* Generic.Output */ +.codehilite .gp { color: #555555 } /* Generic.Prompt */ +.codehilite .gs { font-weight: bold } /* Generic.Strong */ +.codehilite .gu { color: #800080; font-weight: bold; } /* Generic.Subheading */ +.codehilite .gt { color: #aa0000 } /* Generic.Traceback */ +.codehilite .kc { font-weight: bold } /* Keyword.Constant */ +.codehilite .kd { font-weight: bold } /* Keyword.Declaration */ +.codehilite .kn { font-weight: bold } /* Keyword.Namespace */ +.codehilite .kp { font-weight: bold } /* Keyword.Pseudo */ +.codehilite .kr { font-weight: bold } /* Keyword.Reserved */ +.codehilite .kt { color: #445588; font-weight: bold } /* Keyword.Type */ +.codehilite .m { color: #009999 } /* Literal.Number */ +.codehilite .s { color: #d14 } /* Literal.String */ +.codehilite .na { color: #008080 } /* Name.Attribute */ +.codehilite .nb { color: #0086B3 } /* Name.Builtin */ +.codehilite .nc { color: #445588; font-weight: bold } /* Name.Class */ +.codehilite .no { color: #008080 } /* Name.Constant */ +.codehilite .ni { color: #800080 } /* Name.Entity */ +.codehilite .ne { color: #990000; font-weight: bold } /* Name.Exception */ +.codehilite .nf { color: #990000; font-weight: bold } /* Name.Function */ +.codehilite .nn { color: #555555 } /* Name.Namespace */ +.codehilite .nt { color: #000080 } /* Name.Tag */ +.codehilite .nv { color: #008080 } /* Name.Variable */ +.codehilite .ow { font-weight: bold } /* Operator.Word */ +.codehilite .w { color: #bbbbbb } /* Text.Whitespace */ +.codehilite .mf { color: #009999 } /* Literal.Number.Float */ +.codehilite .mh { color: #009999 } /* Literal.Number.Hex */ +.codehilite .mi { color: #009999 } /* Literal.Number.Integer */ +.codehilite .mo { color: #009999 } /* Literal.Number.Oct */ +.codehilite .sb { color: #d14 } /* Literal.String.Backtick */ +.codehilite .sc { color: #d14 } /* Literal.String.Char */ +.codehilite .sd { color: #d14 } /* Literal.String.Doc */ +.codehilite .s2 { color: #d14 } /* Literal.String.Double */ +.codehilite .se { color: #d14 } /* Literal.String.Escape */ +.codehilite .sh { color: #d14 } /* Literal.String.Heredoc */ +.codehilite .si { color: #d14 } /* Literal.String.Interpol */ +.codehilite .sx { color: #d14 } /* Literal.String.Other */ +.codehilite .sr { color: #009926 } /* Literal.String.Regex */ +.codehilite .s1 { color: #d14 } /* Literal.String.Single */ +.codehilite .ss { color: #990073 } /* Literal.String.Symbol */ +.codehilite .bp { color: #999999 } /* Name.Builtin.Pseudo */ +.codehilite .vc { color: #008080 } /* Name.Variable.Class */ +.codehilite .vg { color: #008080 } /* Name.Variable.Global */ +.codehilite .vi { color: #008080 } /* Name.Variable.Instance */ +.codehilite .il { color: #009999 } /* Literal.Number.Integer.Long */ + +.type-csharp .codehilite .k { color: #0000FF } +.type-csharp .codehilite .kt { color: #0000FF } +.type-csharp .codehilite .nf { color: #000000; font-weight: normal } +.type-csharp .codehilite .nc { color: #2B91AF } +.type-csharp .codehilite .nn { color: #000000 } +.type-csharp .codehilite .s { color: #A31515 } +.type-csharp .codehilite .sc { color: #A31515 } diff --git a/doc/web/media/css/stylesheet.css b/doc/web/media/css/stylesheet.css new file mode 100644 index 0000000..2a19461 --- /dev/null +++ b/doc/web/media/css/stylesheet.css @@ -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-exe span { + background: transparent url(../images/exe-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) {} diff --git a/doc/web/media/favicon.ico b/doc/web/media/favicon.ico new file mode 100644 index 0000000..9f755b3 Binary files /dev/null and b/doc/web/media/favicon.ico differ diff --git a/doc/web/media/images/body-bg.png b/doc/web/media/images/body-bg.png new file mode 100644 index 0000000..d0618fe Binary files /dev/null and b/doc/web/media/images/body-bg.png differ diff --git a/doc/web/media/images/exe-icon.png b/doc/web/media/images/exe-icon.png new file mode 100644 index 0000000..57422ac Binary files /dev/null and b/doc/web/media/images/exe-icon.png differ diff --git a/doc/web/media/images/highlight-bg.jpg b/doc/web/media/images/highlight-bg.jpg new file mode 100644 index 0000000..4c4a78e Binary files /dev/null and b/doc/web/media/images/highlight-bg.jpg differ diff --git a/doc/web/media/images/hr.png b/doc/web/media/images/hr.png new file mode 100644 index 0000000..6c723a5 Binary files /dev/null and b/doc/web/media/images/hr.png differ diff --git a/doc/web/media/images/octocat-icon.png b/doc/web/media/images/octocat-icon.png new file mode 100644 index 0000000..f0ba137 Binary files /dev/null and b/doc/web/media/images/octocat-icon.png differ diff --git a/doc/web/media/images/tar-gz-icon.png b/doc/web/media/images/tar-gz-icon.png new file mode 100644 index 0000000..77734fa Binary files /dev/null and b/doc/web/media/images/tar-gz-icon.png differ diff --git a/doc/web/templates/base.html b/doc/web/templates/base.html new file mode 100644 index 0000000..b51e457 --- /dev/null +++ b/doc/web/templates/base.html @@ -0,0 +1,28 @@ + + + + + + + + {{ site.app.name }} - {{ page.title }} + + + + + + +{% block head %}{% endblock %} + + + +
+
+{% block content %} +{% endblock content %} +
+
+ + diff --git a/doc/web/templates/default.html b/doc/web/templates/default.html new file mode 100644 index 0000000..273edfc --- /dev/null +++ b/doc/web/templates/default.html @@ -0,0 +1,33 @@ +{% extends "base.html" %} + +{%- block content %} +
+

{{site.app.name}}

+

{{site.app.name}} is a portable archive file manager

+
+ +
+ {{site.app.name}}.tar.gz {{site.app.version}} + {{site.app.name}}.exe {{site.app.version}} + View on GitHub + +
+ +
+ +
+{{page.content}} +
+ + + +{%- endblock %} diff --git a/doc/web/wokconfig b/doc/web/wokconfig new file mode 100644 index 0000000..56bbdfb --- /dev/null +++ b/doc/web/wokconfig @@ -0,0 +1,3 @@ +app: !include app.yaml +output_dir: ~/public_html/patool-webpage.git +output_exclude: ["todo"]