diff --git a/.gitignore b/.gitignore index 6704566..e5449c9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +content + # Logs logs *.log diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..f5b47d7 --- /dev/null +++ b/.gitmodules @@ -0,0 +1,6 @@ +[submodule "themes/ananke"] + path = themes/ananke + url = https://github.com/budparr/gohugo-theme-ananke.git +[submodule "themes/hugo-now"] + path = themes/hugo-now + url = git@github.com:mikeblum/hugo-now.git diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..9b81a06 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,36 @@ +dist: xenial +sudo: required + +language: python +python: 3.7 + +install: + - pip install markdata + +script: + # Python tests: + - cd code/py + - pip install -r requirements.txt + - pytest test.py + - cd - + + # Node.js tests: + - cd code/js + - npm install + - ./node_modules/mocha/bin/mocha + - cd - + +after_success: + # Build our content: + - markdata --root . src content/post + + # Build our site: + - hugo + +deploy: + provider: pages + skip_cleanup: true + github_token: $GITHUB_TOKEN + local_dir: public + on: + branch: master diff --git a/archetypes/default.md b/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/code/js/package-lock.json b/code/js/package-lock.json new file mode 100644 index 0000000..a439c09 --- /dev/null +++ b/code/js/package-lock.json @@ -0,0 +1,911 @@ +{ + "name": "js-markdata", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "ansi-colors": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", + "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", + "dev": true + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "binary-extensions": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", + "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browser-stdout": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz", + "integrity": "sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw==", + "dev": true + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "chokidar": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz", + "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==", + "dev": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.1", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.2.0" + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, + "requires": { + "object-keys": "^1.0.12" + } + }, + "diff": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", + "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "es-abstract": { + "version": "1.17.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", + "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.1.5", + "is-regex": "^1.0.5", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimleft": "^2.1.1", + "string.prototype.trimright": "^2.1.1" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "flat": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.0.tgz", + "integrity": "sha512-Px/TiLIznH7gEDlPXcUD4KnBusa6kR6ayRUVcnEAbreRIuhkqow/mun59BuRXwoYk7ZQOLW1ZM05ilIvK38hFw==", + "dev": true, + "requires": { + "is-buffer": "~2.0.3" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fsevents": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", + "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", + "dev": true, + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", + "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "growl": { + "version": "1.10.5", + "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", + "integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "dev": true + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-buffer": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", + "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==", + "dev": true + }, + "is-callable": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", + "dev": true + }, + "is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "is-regex": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", + "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "dev": true, + "requires": { + "has-symbols": "^1.0.1" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "js-yaml": { + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", + "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lodash": { + "version": "4.17.15", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", + "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", + "dev": true + }, + "log-symbols": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", + "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "mocha": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.0.0.tgz", + "integrity": "sha512-CirsOPbO3jU86YKjjMzFLcXIb5YiGLUrjrXFHoJ3e2z9vWiaZVCZQ2+gtRGMPWF+nFhN6AWwLM/juzAQ6KRkbA==", + "dev": true, + "requires": { + "ansi-colors": "3.2.3", + "browser-stdout": "1.3.1", + "chokidar": "3.3.0", + "debug": "3.2.6", + "diff": "3.5.0", + "escape-string-regexp": "1.0.5", + "find-up": "3.0.0", + "glob": "7.1.3", + "growl": "1.10.5", + "he": "1.2.0", + "js-yaml": "3.13.1", + "log-symbols": "2.2.0", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "ms": "2.1.1", + "node-environment-flags": "1.0.6", + "object.assign": "4.1.0", + "strip-json-comments": "2.0.1", + "supports-color": "6.0.0", + "which": "1.3.1", + "wide-align": "1.1.3", + "yargs": "13.3.0", + "yargs-parser": "13.1.1", + "yargs-unparser": "1.6.0" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "node-environment-flags": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz", + "integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==", + "dev": true, + "requires": { + "object.getownpropertydescriptors": "^2.0.3", + "semver": "^5.7.0" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "object-inspect": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", + "dev": true + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "dev": true + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "^1.1.2", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.0", + "object-keys": "^1.0.11" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", + "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "p-limit": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", + "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "picomatch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz", + "integrity": "sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==", + "dev": true + }, + "readdirp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz", + "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==", + "dev": true, + "requires": { + "picomatch": "^2.0.4" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "string.prototype.trimleft": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", + "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "string.prototype.trimright": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", + "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "function-bind": "^1.1.1" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "supports-color": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz", + "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yargs": { + "version": "13.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.0.tgz", + "integrity": "sha512-2eehun/8ALW8TLoIl7MVaRUrg+yCnenu8B4kBlRxj3GJGDKU1Og7sMXPNm1BYyM1DOJmTZ4YeN/Nwxv+8XJsUA==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + } + } + }, + "yargs-parser": { + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", + "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "yargs-unparser": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz", + "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==", + "dev": true, + "requires": { + "flat": "^4.1.0", + "lodash": "^4.17.15", + "yargs": "^13.3.0" + } + } + } +} diff --git a/code/js/package.json b/code/js/package.json new file mode 100644 index 0000000..25a3a32 --- /dev/null +++ b/code/js/package.json @@ -0,0 +1,15 @@ +{ + "name": "js-markdata", + "version": "1.0.0", + "description": "An example of using Markdata with JavaScript", + "main": "test.js", + "dependencies": {}, + "devDependencies": { + "mocha": "^7.0.0" + }, + "scripts": { + "test": "mocha" + }, + "author": "", + "license": "ISC" +} diff --git a/code/js/test.js b/code/js/test.js new file mode 100644 index 0000000..3419eb3 --- /dev/null +++ b/code/js/test.js @@ -0,0 +1,23 @@ +/* Testing Node.js with Markdata + +Usage: ./node_modules/mocha/bin/mocha */ + +var assert = require('assert'); +describe('Array', function() { + describe('#indexOf()', function() { + it('should report the correct index', function() { + var array = [2, 9, 9]; + array.indexOf(2); // 0 + array.indexOf(7); // -1 + array.indexOf(9, 2); // 2 + array.indexOf(2, -1); // -1 + array.indexOf(2, -3); // 0 + + assert.equal(array.indexOf(2), 0); + assert.equal(array.indexOf(7), -1); + assert.equal(array.indexOf(9, 2), 2); + assert.equal(array.indexOf(2, -1), -1); + assert.equal(array.indexOf(2, -3), 0); + }); + }); +}); diff --git a/code/py/__pycache__/test.cpython-37-pytest-5.0.1.pyc b/code/py/__pycache__/test.cpython-37-pytest-5.0.1.pyc new file mode 100644 index 0000000..71920cf Binary files /dev/null and b/code/py/__pycache__/test.cpython-37-pytest-5.0.1.pyc differ diff --git a/code/py/requirements.txt b/code/py/requirements.txt new file mode 100644 index 0000000..422b2d8 --- /dev/null +++ b/code/py/requirements.txt @@ -0,0 +1,122 @@ +altgraph==0.16.1 +appdirs==1.4.3 +atomicwrites==1.3.0 +attrs==18.2.0 +beautifulsoup4==4.7.0 +black==18.9b0 +bleach==3.1.0 +blinker==1.4 +cachetools==3.1.0 +certifi==2018.8.24 +chardet==3.0.4 +Click==7.0 +cssselect==1.0.3 +cycler==0.10.0 +cymem==2.0.2 +cytoolz==0.9.0.1 +delegator.py==0.1.1 +dill==0.2.9 +docutils==0.15 +en-core-web-sm==2.0.0 +et-xmlfile==1.0.1 +falcon==1.4.1 +feedfinder2==0.0.4 +feedgenerator==1.9 +feedparser==5.2.1 +future==0.18.2 +GDAL==2.4.2 +gitdb2==2.0.6 +GitPython==3.0.4 +hug==2.4.7 +idna==2.8 +importlib-metadata==0.18 +jdcal==1.4.1 +jieba3k==0.35.1 +Jinja2==2.10.3 +joblib==0.13.2 +jsonschema==2.6.0 +kiwisolver==1.1.0 +lxml==4.3.0 +macholib==1.11 +markdata==0.5.1 +Markdown==3.1.1 +MarkupSafe==1.1.1 +matplotlib==3.1.0 +more-itertools==7.1.0 +msgpack==0.5.6 +msgpack-numpy==0.4.3.2 +murmurhash==1.0.2 +newspaper3k==0.2.8 +nltk==3.4 +numpy==1.16.4 +opencv-python==4.1.0.25 +openpyxl==2.6.2 +oyaml==0.9 +packaging==19.0 +pandas==0.24.2 +pathspec==0.5.9 +peewee==2.10.2 +pelican==4.2.0 +pep8==1.7.1 +pexpect==4.7.0 +Pillow==5.4.0 +pipenv==2018.11.26 +pkginfo==1.5.0.1 +plac==0.9.6 +pluggy==0.12.0 +preshed==2.0.1 +prodigy==1.7.1 +proselint==0.10.2 +ptyprocess==0.6.0 +py==1.8.0 +pyasn1==0.4.5 +pycodestyle==2.5.0 +pyenchant==2.0.0 +Pygments==2.4.2 +PyInstaller==3.5 +PyJWT==1.7.1 +pyparsing==2.4.0 +pytest==5.0.1 +python-dateutil==2.7.5 +python-frontmatter==0.4.5 +python-mimeparse==1.6.0 +pytz==2019.1 +PyYAML==3.13 +readme-renderer==24.0 +regex==2018.1.10 +requests==2.21.0 +requests-file==1.4.3 +requests-toolbelt==0.9.1 +rsa==4.0 +scikit-learn==0.21.1 +scipy==1.3.0 +seaborn==0.9.0 +singledispatch==3.4.0.3 +six==1.12.0 +sklearn==0.0 +smmap2==2.0.5 +soupsieve==1.6.2 +spacy==2.0.18 +tabulate==0.8.3 +TBB==0.1 +thinc==6.12.1 +tinysegmenter==0.3 +tldextract==2.2.0 +toml==0.10.0 +toolz==0.9.0 +torch==1.0.1 +torchvision==0.2.2.post3 +tqdm==4.31.1 +twine==1.13.0 +ujson==1.35 +Unidecode==1.0.22 +UpSetPlot==0.2.1 +urllib3==1.24.1 +virtualenv==16.0.0 +virtualenv-clone==0.3.0 +waitress==1.2.1 +wcwidth==0.1.7 +webencodings==0.5.1 +wrapt==1.10.11 +yamllint==1.14.0 +zipp==0.5.2 diff --git a/code/py/test.py b/code/py/test.py new file mode 100644 index 0000000..bcd9652 --- /dev/null +++ b/code/py/test.py @@ -0,0 +1,26 @@ +"""Testing Python with Markdata + +Usage: $ pytest test.py +""" + + +def test_yaml(): + """An example of testing a Python code example. + """ + # Code snippet start: + from ruamel.yaml import YAML + + inp = """\ + - &CENTER {x: 1, y: 2} + - &LEFT {x: 0, y: 2} + - &BIG {r: 10} + - &SMALL {r: 1} + # Override + - <<: [*BIG, *LEFT, *SMALL] + x: 1 + label: center/big + """ + + yaml = YAML() + data = yaml.load(inp) + assert data[4]['y'] == 2 diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..2a60a19 --- /dev/null +++ b/config.toml @@ -0,0 +1,5 @@ +baseURL = "http://example.org/" +languageCode = "en-us" +title = "My New Hugo Site" + +theme = "pixyll" diff --git a/resources/_gen/assets/scss/scss/hyde-hyde.scss_6a9b89851c76ccc96568016ff9eba049.content b/resources/_gen/assets/scss/scss/hyde-hyde.scss_6a9b89851c76ccc96568016ff9eba049.content new file mode 100644 index 0000000..21f96f5 --- /dev/null +++ b/resources/_gen/assets/scss/scss/hyde-hyde.scss_6a9b89851c76ccc96568016ff9eba049.content @@ -0,0 +1,3 @@ +*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html,body{margin:0;padding:0}html{font-family:"IBM Plex Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Droid Sans","Ubuntu","Helvetica Neue",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:17px;line-height:1.667em}@media (min-width: 38em){html{font-size:19px}}body{color:#515151;background-color:#fff;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a{color:#268bd2;text-decoration:none}a:hover,a:focus{text-decoration:underline}a strong{color:inherit}img{display:block;max-width:100%;margin:0 0 1rem;border-radius:5px}table{margin-bottom:1rem;width:100%;font-size:85%;border:1px solid #e5e5e5;border-collapse:collapse}td,th{padding:.25rem .5rem;border:1px solid #e5e5e5}th{text-align:left}tbody tr:nth-child(odd) td,tbody tr:nth-child(odd) th{background-color:#f9f9f9}.container{max-width:38rem;padding-left:1.5rem;padding-right:1.5rem;margin-left:auto;margin-right:auto}footer{margin-bottom:2rem}.page,.post{margin-bottom:4em}.page li+li,.post li+li{margin-top:.25rem}.page-title,.post-title,.post-title a{color:#303030}.page-title,.post-title{margin-top:0}.post-date{display:block;margin-top:-.5rem;margin-bottom:1rem;color:#9a9a9a}.related{padding-top:2rem;padding-bottom:2rem;margin-bottom:2rem;border-top:1px solid #eee;border-bottom:1px solid #eee}.related-posts{padding-left:0;list-style:none}.related-posts h3{margin-top:0}.related-posts li small{font-size:75%;color:#999}.related-posts li a:hover{color:#268bd2;text-decoration:none}.related-posts li a:hover small{color:inherit}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;box-direction:normal;font-family:"IBM Plex Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Droid Sans","Ubuntu","Helvetica Neue",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:17px;line-height:1.667em;font-weight:400}html,body{margin:0;padding:0}h1,h2,h3,h4{font-weight:400}h1{font-size:2.15rem;line-height:1.25;margin-bottom:1rem}h2{font-size:1.85rem;margin-bottom:.5rem}h3{font-size:1.5rem}h4{font-size:1.3rem}h5{font-size:1rem}figure{max-width:100%;margin:0;padding:0}blockquote,.important,.warning{padding:.8889rem;margin-top:1rem;margin-left:0px;margin-right:0px;border-left:6px solid;border-right:6px solid transparent;border-right-width:6px;border-right-style:solid;border-right-color:rgba(0,0,0,0) transparent;color:#7a7a7a}blockquote{background-color:#fafafa;border-left-color:#e6e6e6}.important{background-color:#fbf8e8;border-left-color:#fee450}.warning{background-color:#f2dbdc;border-left-color:#ae272f}kbd{font-family:"IBM Plex Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Droid Sans","Ubuntu","Helvetica Neue",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";padding:2px 7px;border:1px solid #ccc;font-size:0.8em;line-height:1.4;background-color:#f3f3f3;color:#313131;box-shadow:0 0 0 rgba(0,0,0,0.2),0 0 0 2px #fff inset;border-radius:3px;display:inline-block;text-shadow:0 1px 0 #fff;white-space:nowrap}a{color:#268bd2;text-decoration:none;word-wrap:break-word}a.sidebar-nav-item:hover{border-style:none;text-decoration:none}a.sidebar-nav-item:focus{border-style:none;text-decoration:none}a:focus{color:#515151;border-bottom:1px dotted #ccc;text-decoration:none;background:transparent;background-color:transparent;word-wrap:break-word}a:focus.tag{border-style:none;text-decoration:none}a:hover{color:#515151;border-bottom:1px dotted #ccc;text-decoration:none;background:transparent;background-color:transparent;word-wrap:break-word}a:hover.tag{border-style:none;text-decoration:none}a.tag{border-style:none;text-decoration:none}a.read-more-symbol{text-decoration:none;border-style:none;text-decoration:none}.content{padding-bottom:2rem;padding-top:2rem}.sidebar{background-color:#300030;color:#fff;color:rgba(255,255,255,0.5);padding:2rem 1rem;text-align:center}.sidebar a{color:#f9f9f9;border:none}.sidebar a:hover{color:#268bd2}.sidebar a:focus{color:#268bd2}.sidebar .sidebar-about{text-align:center}.sidebar .author-image{display:block;margin-top:4px}.sidebar-nav{text-align:center;list-style:none;margin-bottom:2rem;margin-top:2rem;padding-left:0}.sidebar-nav-item{display:block;line-height:1.75}.sidebar-nav-item .active{font-weight:bold}.site__title{font-size:2.5rem;margin-bottom:0.5rem}.site__title a:hover{border:none}.site__description{font-size:1.285rem;font-weight:300}.social{text-align:center}.social a{padding:0 4px;border-style:none;text-decoration:none}.img--circle{border-radius:50%}.img--headshot{height:115px;width:115px}.img--caption{font-style:italic}.copyright,.builtwith{font-size:.7rem;line-height:1.1rem;text-align:center}.copyright{padding-top:1rem}.builtwith{padding-top:.2rem}.section__title{font-size:2.15rem}.post-list__item{margin-bottom:3em}.item__title--big{display:block;font-size:1.785rem;line-height:1.25}.item__title--small{font-size:1rem}.item__date{color:#9a9a9a;display:block;font-size:1rem;margin-bottom:.2rem;margin-top:.2rem}.post__meta{font-size:.8rem;color:#878787;font-weight:300}.post__category{font-weight:bold}.post__tag{background:#eee;border-radius:2px;color:#606570;font-size:.667rem;font-weight:bold;padding:2px 6px}.post__title{background-image:-webkit-linear-gradient(left, #ff2c2c, #7a5e91);background-image:-moz-linear-gradient(left, #ff2c2c, #7a5e91);background-image:-ms-linear-gradient(left, #ff2c2c, #7a5e91);background-image:-o-linear-gradient(left, #ff2c2c, #7a5e91);background-image:linear-gradient(to right, #ff2c2c, #7a5e91);color:transparent;-webkit-background-clip:text;background-clip:text}.post__subtitle{display:block;font-size:1.5rem;font-style:italic;padding:0 0 1rem 0}#references li{font-size:0.9rem}pre{tab-size:2}pre code{white-space:pre-wrap}code{font-family:"SFMono-Regular","SF-Mono",Menlo,Monaco,Consolas,"Liberation Mono","Roboto Mono","Ubuntu Mono","Courier New",Courier,monospace;font-size:.9rem}code{padding:.1em .1em;color:#ab5979;border-radius:3px}a code{color:#268bd2}.hljs{font-family:"SFMono-Regular","SF-Mono",Menlo,Monaco,Consolas,"Liberation Mono","Roboto Mono","Ubuntu Mono","Courier New",Courier,monospace;font-size:.8rem;line-height:1.667em;white-space:pre;border:1px solid #ddd;border-radius:4px}body .gist .gist-data{background-color:#fafafa}body .gist .highlight{background-color:transparent}body .gist td{border:none}ul.pagination{list-style:none}ul.pagination li.page-item{display:inline-block}ul.pagination li.page-item a{padding:0.05em 0.4em}ul.pagination li.page-item.active a{color:#c2255c;border-bottom:3px solid #c2255c}.navigation{max-width:calc(100% - 0px);margin:0 auto;margin-top:60px}.navigation a{font-size:0.8rem;display:flex;align-items:center;justify-content:center;padding:15px;color:#c2255c;border:2px solid #c2255c;line-height:1.25;text-transform:uppercase}.navigation a:hover{padding:14px;border-width:3px}.navigation a:nth-child(2){margin-top:10px}.navigation a:first-child:last-child{width:100%}.navigation .fa{font-size:0.8rem}.navigation .navigation-prev{text-align:left}.navigation .navigation-prev .fa{padding-right:10px}.navigation .navigation-prev .navigation-tittle{padding-left:4px}.navigation .navigation-next{text-align:right}.navigation .navigation-next .fa{padding-left:10px}.navigation .navigation-next .navigation-tittle{padding-right:4px}.navigation-single a{text-transform:none}.badge-category,a.badge-category{color:#fff !important;background-color:#0088cc}.badge-category:hover,.badge-category:focus,a.badge-category:hover,a.badge-category:focus{color:#0088cc !important;background:transparent;background-color:transparent;text-decoration:none;border-bottom:none}.badge-tag,a.badge-tag{color:#fff !important;background-color:#7766cc}.badge-tag:hover,.badge-tag:focus,a.badge-tag:hover,a.badge-tag:focus{color:#7766cc !important;background:transparent;background-color:transparent;text-decoration:none;border-bottom:none}.badge{display:inline-block;padding:0.25em 0.4em;font-size:0.75rem;font-weight:bold;line-height:1;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:0.25rem}.portfolio__content section{margin-bottom:1.765rem}.portfolio__featured-project{margin:0 0 1.765rem}.portfolio__featured-project img{margin:0 0 1rem;box-shadow:1px 1px #eee}.project__image{border:1px solid #eee;box-shadow:1px 1px #eee}.project__title{margin-top:1.765rem;letter-spacing:1px;font-size:1.85rem}.project__subtitle-big,.project__subtitle-small{font-style:italic;color:#778492;display:block;margin-top:0.5rem;margin:0 0 1rem}.project__subtitle-big{font-size:1.5rem}.project__subtitle-small{font-size:1.3rem}.project__featured-image{position:relative}.project__summary{margin-bottom:1.765rem;text-align:left}.divider{margin-bottom:3.5rem}.row-space{margin-bottom:1rem}.col-xs-12,.col-sm-4,.col-md-4,.col-sm-8,.col-md-8{min-height:1px;padding-left:15px;padding-right:15px;position:relative}.row{margin-left:-15px;margin-right:-15px}.col-xs-12{width:100%}.img-responsive{display:block;max-width:100%;height:auto}@media (min-width: 320px) and (max-width: 767px){html,body{font-size:17px}.sidebar li{padding:.1rem 0}.sidebar .container{padding-left:0;padding-right:0}.hidden-tablet{display:none}.sidebar-about,.copyright{display:none}.sidebar{margin:0;padding:0}.menu-content{padding:0 0 0 0px;max-height:0;overflow:hidden;margin-top:0}.collapsible-menu{padding:0px 0px}.collapsible-menu ul{list-style-type:none;padding:0}.collapsible-menu li{display:block}.collapsible-menu a{text-decoration:none;cursor:pointer}.collapsible-menu label{background:url(/img/menu-open.svg) no-repeat left center;background-position:1.5rem;display:block;cursor:pointer;color:#fff;padding:10px 0 10px 0px}input#menuToggle{display:none}input#menuToggle+label{font-weight:bold}input#menuToggle:checked+label{background-image:url(/img/menu-close.svg);background-position:1.5rem;color:#fff}input#menuToggle:checked ~ .menu-content{max-height:100% !important}.social{padding:1em 0 1em 0}}@media (min-width: 768px){html,body{font-size:17px}.sidebar{bottom:0;left:0;position:fixed;text-align:left;top:0;width:16rem}.sidebar-sticky{left:1rem;position:absolute;right:1rem;top:1rem}.content{margin-left:18rem;margin-right:2rem;max-width:38rem}.layout-reverse .sidebar{left:auto;right:0}.layout-reverse .content{margin-left:2rem;margin-right:18rem}.col-sm-8{width:66.66666667%}.project__title{margin-top:0.2rem}.navigation{display:flex;justify-content:space-between}.navigation a{width:calc(50% - 10px)}.navigation a:nth-child(2){margin-top:0}input#menuToggle,input#menuToggle+label{display:none}}@media (min-width: 992px){html,body{font-size:19px}.layout-reverse .content{margin-left:4rem;margin-right:22rem}.col-md-4{float:left;width:33.33333333%}.col-md-8{float:left;width:66.66666667%}.portfolio-container{width:68rem}}.element--center{display:block;margin-left:auto;margin-right:auto}.menu{background-color:#f3f3f3;color:#333;border-radius:2px;padding:1px 5px}.text-center{text-align:center}.pull-right{float:right}.draft{color:#999 !important}.theme-base-08 .sidebar{background-color:#ac4142}.theme-base-08 .content a{color:#ac4142}.theme-base-08 .related-posts li a:hover{color:#ac4142}.theme-base-09 .sidebar{background-color:#d28445}.theme-base-09 .content a{color:#d28445}.theme-base-09 .related-posts li a:hover{color:#d28445}.theme-base-0a .sidebar{background-color:#f4bf75}.theme-base-0a .content a{color:#f4bf75}.theme-base-0a .related-posts li a:hover{color:#f4bf75}.theme-base-0b .sidebar{background-color:#90a959}.theme-base-0b .content a{color:#90a959}.theme-base-0b .related-posts li a:hover{color:#90a959}.theme-base-0c .sidebar{background-color:#75b5aa}.theme-base-0c .content a{color:#75b5aa}.theme-base-0c .related-posts li a:hover{color:#75b5aa}.theme-base-0d .sidebar{background-color:#6a9fb5}.theme-base-0d .content a{color:#6a9fb5}.theme-base-0d .related-posts li a:hover{color:#6a9fb5}.theme-base-0e .sidebar{background-color:#aa759f}.theme-base-0e .content a{color:#aa759f}.theme-base-0e .related-posts li a:hover{color:#aa759f}.theme-base-0f .sidebar{background-color:#8f5536}.theme-base-0f .content a{color:#8f5536}.theme-base-0f .related-posts li a:hover{color:#8f5536} + +/*# sourceMappingURL=hyde-hyde.css.map */ \ No newline at end of file diff --git a/resources/_gen/assets/scss/scss/hyde-hyde.scss_6a9b89851c76ccc96568016ff9eba049.json b/resources/_gen/assets/scss/scss/hyde-hyde.scss_6a9b89851c76ccc96568016ff9eba049.json new file mode 100644 index 0000000..343f634 --- /dev/null +++ b/resources/_gen/assets/scss/scss/hyde-hyde.scss_6a9b89851c76ccc96568016ff9eba049.json @@ -0,0 +1 @@ +{"Target":"scss/hyde-hyde.92c66d107d7b219f0792cfd67223179af884b03f386ac46894f9f735932bbca3.css","MediaType":"text/css","Data":{"Integrity":"sha256-ksZtEH17IZ8Hks/WciMXmviEsD84asRolPn3NZMrvKM="}} \ No newline at end of file diff --git a/resources/_gen/assets/scss/scss/print.scss_6a9b89851c76ccc96568016ff9eba049.content b/resources/_gen/assets/scss/scss/print.scss_6a9b89851c76ccc96568016ff9eba049.content new file mode 100644 index 0000000..e8f6614 --- /dev/null +++ b/resources/_gen/assets/scss/scss/print.scss_6a9b89851c76ccc96568016ff9eba049.content @@ -0,0 +1,3 @@ +@page{margin:1cm !important}body{font-size:17px;line-height:1.3;background:#fff;color:#000}.content{margin:0 auto;width:100%;float:none;display:initial}.container{width:100%;float:none;display:initial;padding-left:1rem;padding-right:1rem;margin:0 auto}img{max-width:100%}blockquote,ul{margin:0}.sidebar{display:none !important}.navigation{display:none !important}.post__related{display:none !important}.gist-meta{display:none !important}#disqus_thread{display:none !important} + +/*# sourceMappingURL=print.css.map */ \ No newline at end of file diff --git a/resources/_gen/assets/scss/scss/print.scss_6a9b89851c76ccc96568016ff9eba049.json b/resources/_gen/assets/scss/scss/print.scss_6a9b89851c76ccc96568016ff9eba049.json new file mode 100644 index 0000000..11bd715 --- /dev/null +++ b/resources/_gen/assets/scss/scss/print.scss_6a9b89851c76ccc96568016ff9eba049.json @@ -0,0 +1 @@ +{"Target":"scss/print.2744dcbf8a0b2e74f8a50e4b34e5f441be7cf93cc7de27029121c6a09f9e77bc.css","MediaType":"text/css","Data":{"Integrity":"sha256-J0Tcv4oLLnT4pQ5LNOX0Qb58+TzH3icCkSHGoJ+ed7w="}} \ No newline at end of file diff --git a/src/doc1.md b/src/doc1.md new file mode 100644 index 0000000..e8ddc51 --- /dev/null +++ b/src/doc1.md @@ -0,0 +1,17 @@ +--- +title: "Code Testing Example" +summary: "An example of testing code blocks with Markdata." + +date: 2020-01-22T21:24:52-08:00 +draft: false +--- + +# Markdata Example + +Here's the Python code snippet from `ruamel.yaml `: + +`code{'path': 'code/py/test.py', 'span': [11, 39], 'lang': 'python'}` + +And here's our Mozilla code snippet: + +`code{'path': 'code/js/test.js', 'span': [9, 14], 'lang': 'js'}` diff --git a/themes/pixyll b/themes/pixyll new file mode 160000 index 0000000..35987a3 --- /dev/null +++ b/themes/pixyll @@ -0,0 +1 @@ +Subproject commit 35987a3939418270855f5809fdacf6b2ad3b8ee3