From b01ba87404d101cd46c91f8e9fa9b1603eb2a8be Mon Sep 17 00:00:00 2001 From: Zhao Zuohong Date: Fri, 30 Oct 2020 13:59:49 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=B8=89=E6=AC=A1=E4=BD=9C=E4=B8=9A?= =?UTF-8?q?=E9=A2=98=E7=9B=AE=E5=92=8C=E7=AD=94=E6=A1=88(=E6=9C=AA?= =?UTF-8?q?=E5=85=AC=E5=B8=83)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 7 + _config.next.yml | 942 ++++++++ _config.yml | 106 + package-lock.json | 1421 ++++++++++++ package.json | 26 + scaffolds/draft.md | 4 + scaffolds/page.md | 4 + scaffolds/post.md | 5 + source/_drafts/answer3.md | 214 ++ source/_posts/answer1.md | 46 + source/_posts/answer2.md | 141 ++ source/_posts/downloads.md | 47 + source/_posts/homework.md | 23 + source/_posts/homework1.md | 75 + source/_posts/homework2.md | 39 + source/_posts/homework3.md | 54 + source/_posts/homework3/P108-12.png | Bin 0 -> 386785 bytes themes/landscape/.gitignore | 3 + themes/landscape/Gruntfile.js | 46 + themes/landscape/LICENSE | 7 + themes/landscape/README.md | 112 + themes/landscape/_config.yml | 37 + themes/landscape/languages/de.yml | 19 + themes/landscape/languages/default.yml | 19 + themes/landscape/languages/es.yml | 19 + themes/landscape/languages/fr.yml | 19 + themes/landscape/languages/ja.yml | 19 + themes/landscape/languages/ko.yml | 19 + themes/landscape/languages/nl.yml | 20 + themes/landscape/languages/no.yml | 19 + themes/landscape/languages/pt.yml | 19 + themes/landscape/languages/ru.yml | 19 + themes/landscape/languages/zh-CN.yml | 19 + themes/landscape/languages/zh-TW.yml | 19 + .../layout/_partial/after-footer.ejs | 25 + .../layout/_partial/archive-post.ejs | 8 + themes/landscape/layout/_partial/archive.ejs | 34 + themes/landscape/layout/_partial/article.ejs | 44 + themes/landscape/layout/_partial/footer.ejs | 11 + .../layout/_partial/gauges-analytics.ejs | 18 + .../layout/_partial/google-analytics.ejs | 14 + themes/landscape/layout/_partial/head.ejs | 36 + themes/landscape/layout/_partial/header.ejs | 32 + .../landscape/layout/_partial/mobile-nav.ejs | 5 + .../layout/_partial/post/category.ejs | 10 + .../landscape/layout/_partial/post/date.ejs | 3 + .../layout/_partial/post/gallery.ejs | 11 + themes/landscape/layout/_partial/post/nav.ejs | 22 + themes/landscape/layout/_partial/post/tag.ejs | 6 + .../landscape/layout/_partial/post/title.ejs | 15 + themes/landscape/layout/_partial/sidebar.ejs | 5 + themes/landscape/layout/_widget/archive.ejs | 8 + themes/landscape/layout/_widget/category.ejs | 8 + .../landscape/layout/_widget/recent_posts.ejs | 14 + themes/landscape/layout/_widget/tag.ejs | 8 + themes/landscape/layout/_widget/tagcloud.ejs | 8 + themes/landscape/layout/archive.ejs | 1 + themes/landscape/layout/category.ejs | 1 + themes/landscape/layout/index.ejs | 1 + themes/landscape/layout/layout.ejs | 18 + themes/landscape/layout/page.ejs | 1 + themes/landscape/layout/post.ejs | 1 + themes/landscape/layout/tag.ejs | 1 + themes/landscape/package.json | 12 + themes/landscape/scripts/fancybox.js | 24 + themes/landscape/source/css/_extend.styl | 63 + .../source/css/_partial/archive.styl | 80 + .../source/css/_partial/article.styl | 357 +++ .../source/css/_partial/comment.styl | 9 + .../landscape/source/css/_partial/footer.styl | 14 + .../landscape/source/css/_partial/header.styl | 165 ++ .../source/css/_partial/highlight.styl | 158 ++ .../landscape/source/css/_partial/mobile.styl | 19 + .../source/css/_partial/sidebar-aside.styl | 27 + .../source/css/_partial/sidebar-bottom.styl | 27 + .../source/css/_partial/sidebar.styl | 35 + themes/landscape/source/css/_util/grid.styl | 38 + themes/landscape/source/css/_util/mixin.styl | 31 + themes/landscape/source/css/_variables.styl | 63 + .../source/css/fonts/FontAwesome.otf | Bin 0 -> 62856 bytes .../source/css/fonts/fontawesome-webfont.eot | Bin 0 -> 38205 bytes .../source/css/fonts/fontawesome-webfont.svg | 414 ++++ .../source/css/fonts/fontawesome-webfont.ttf | Bin 0 -> 80652 bytes .../source/css/fonts/fontawesome-webfont.woff | Bin 0 -> 44432 bytes themes/landscape/source/css/images/banner.jpg | Bin 0 -> 224710 bytes themes/landscape/source/css/style.styl | 89 + themes/landscape/source/fancybox/blank.gif | Bin 0 -> 43 bytes .../source/fancybox/fancybox_loading.gif | Bin 0 -> 6567 bytes .../source/fancybox/fancybox_loading@2x.gif | Bin 0 -> 13984 bytes .../source/fancybox/fancybox_overlay.png | Bin 0 -> 1003 bytes .../source/fancybox/fancybox_sprite.png | Bin 0 -> 1362 bytes .../source/fancybox/fancybox_sprite@2x.png | Bin 0 -> 6553 bytes .../fancybox/helpers/fancybox_buttons.png | Bin 0 -> 1080 bytes .../helpers/jquery.fancybox-buttons.css | 97 + .../helpers/jquery.fancybox-buttons.js | 122 + .../fancybox/helpers/jquery.fancybox-media.js | 199 ++ .../helpers/jquery.fancybox-thumbs.css | 55 + .../helpers/jquery.fancybox-thumbs.js | 165 ++ .../source/fancybox/jquery.fancybox.css | 273 +++ .../source/fancybox/jquery.fancybox.js | 2017 +++++++++++++++++ .../source/fancybox/jquery.fancybox.pack.js | 46 + themes/landscape/source/js/script.js | 137 ++ 102 files changed, 8693 insertions(+) create mode 100644 .gitignore create mode 100644 _config.next.yml create mode 100644 _config.yml create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 scaffolds/draft.md create mode 100644 scaffolds/page.md create mode 100644 scaffolds/post.md create mode 100644 source/_drafts/answer3.md create mode 100644 source/_posts/answer1.md create mode 100644 source/_posts/answer2.md create mode 100644 source/_posts/downloads.md create mode 100644 source/_posts/homework.md create mode 100644 source/_posts/homework1.md create mode 100644 source/_posts/homework2.md create mode 100644 source/_posts/homework3.md create mode 100644 source/_posts/homework3/P108-12.png create mode 100644 themes/landscape/.gitignore create mode 100644 themes/landscape/Gruntfile.js create mode 100644 themes/landscape/LICENSE create mode 100644 themes/landscape/README.md create mode 100644 themes/landscape/_config.yml create mode 100644 themes/landscape/languages/de.yml create mode 100644 themes/landscape/languages/default.yml create mode 100644 themes/landscape/languages/es.yml create mode 100644 themes/landscape/languages/fr.yml create mode 100644 themes/landscape/languages/ja.yml create mode 100644 themes/landscape/languages/ko.yml create mode 100644 themes/landscape/languages/nl.yml create mode 100644 themes/landscape/languages/no.yml create mode 100644 themes/landscape/languages/pt.yml create mode 100644 themes/landscape/languages/ru.yml create mode 100644 themes/landscape/languages/zh-CN.yml create mode 100644 themes/landscape/languages/zh-TW.yml create mode 100644 themes/landscape/layout/_partial/after-footer.ejs create mode 100644 themes/landscape/layout/_partial/archive-post.ejs create mode 100644 themes/landscape/layout/_partial/archive.ejs create mode 100644 themes/landscape/layout/_partial/article.ejs create mode 100644 themes/landscape/layout/_partial/footer.ejs create mode 100644 themes/landscape/layout/_partial/gauges-analytics.ejs create mode 100644 themes/landscape/layout/_partial/google-analytics.ejs create mode 100644 themes/landscape/layout/_partial/head.ejs create mode 100644 themes/landscape/layout/_partial/header.ejs create mode 100644 themes/landscape/layout/_partial/mobile-nav.ejs create mode 100644 themes/landscape/layout/_partial/post/category.ejs create mode 100644 themes/landscape/layout/_partial/post/date.ejs create mode 100644 themes/landscape/layout/_partial/post/gallery.ejs create mode 100644 themes/landscape/layout/_partial/post/nav.ejs create mode 100644 themes/landscape/layout/_partial/post/tag.ejs create mode 100644 themes/landscape/layout/_partial/post/title.ejs create mode 100644 themes/landscape/layout/_partial/sidebar.ejs create mode 100644 themes/landscape/layout/_widget/archive.ejs create mode 100644 themes/landscape/layout/_widget/category.ejs create mode 100644 themes/landscape/layout/_widget/recent_posts.ejs create mode 100644 themes/landscape/layout/_widget/tag.ejs create mode 100644 themes/landscape/layout/_widget/tagcloud.ejs create mode 100644 themes/landscape/layout/archive.ejs create mode 100644 themes/landscape/layout/category.ejs create mode 100644 themes/landscape/layout/index.ejs create mode 100644 themes/landscape/layout/layout.ejs create mode 100644 themes/landscape/layout/page.ejs create mode 100644 themes/landscape/layout/post.ejs create mode 100644 themes/landscape/layout/tag.ejs create mode 100644 themes/landscape/package.json create mode 100644 themes/landscape/scripts/fancybox.js create mode 100644 themes/landscape/source/css/_extend.styl create mode 100644 themes/landscape/source/css/_partial/archive.styl create mode 100644 themes/landscape/source/css/_partial/article.styl create mode 100644 themes/landscape/source/css/_partial/comment.styl create mode 100644 themes/landscape/source/css/_partial/footer.styl create mode 100644 themes/landscape/source/css/_partial/header.styl create mode 100644 themes/landscape/source/css/_partial/highlight.styl create mode 100644 themes/landscape/source/css/_partial/mobile.styl create mode 100644 themes/landscape/source/css/_partial/sidebar-aside.styl create mode 100644 themes/landscape/source/css/_partial/sidebar-bottom.styl create mode 100644 themes/landscape/source/css/_partial/sidebar.styl create mode 100644 themes/landscape/source/css/_util/grid.styl create mode 100644 themes/landscape/source/css/_util/mixin.styl create mode 100644 themes/landscape/source/css/_variables.styl create mode 100644 themes/landscape/source/css/fonts/FontAwesome.otf create mode 100644 themes/landscape/source/css/fonts/fontawesome-webfont.eot create mode 100644 themes/landscape/source/css/fonts/fontawesome-webfont.svg create mode 100644 themes/landscape/source/css/fonts/fontawesome-webfont.ttf create mode 100644 themes/landscape/source/css/fonts/fontawesome-webfont.woff create mode 100644 themes/landscape/source/css/images/banner.jpg create mode 100644 themes/landscape/source/css/style.styl create mode 100644 themes/landscape/source/fancybox/blank.gif create mode 100644 themes/landscape/source/fancybox/fancybox_loading.gif create mode 100644 themes/landscape/source/fancybox/fancybox_loading@2x.gif create mode 100644 themes/landscape/source/fancybox/fancybox_overlay.png create mode 100644 themes/landscape/source/fancybox/fancybox_sprite.png create mode 100644 themes/landscape/source/fancybox/fancybox_sprite@2x.png create mode 100644 themes/landscape/source/fancybox/helpers/fancybox_buttons.png create mode 100644 themes/landscape/source/fancybox/helpers/jquery.fancybox-buttons.css create mode 100644 themes/landscape/source/fancybox/helpers/jquery.fancybox-buttons.js create mode 100644 themes/landscape/source/fancybox/helpers/jquery.fancybox-media.js create mode 100644 themes/landscape/source/fancybox/helpers/jquery.fancybox-thumbs.css create mode 100644 themes/landscape/source/fancybox/helpers/jquery.fancybox-thumbs.js create mode 100644 themes/landscape/source/fancybox/jquery.fancybox.css create mode 100644 themes/landscape/source/fancybox/jquery.fancybox.js create mode 100644 themes/landscape/source/fancybox/jquery.fancybox.pack.js create mode 100644 themes/landscape/source/js/script.js diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..063b0e4 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +.DS_Store +Thumbs.db +db.json +*.log +node_modules/ +public/ +.deploy*/ \ No newline at end of file diff --git a/_config.next.yml b/_config.next.yml new file mode 100644 index 0000000..ec51faf --- /dev/null +++ b/_config.next.yml @@ -0,0 +1,942 @@ +# =============================================================== +# It's recommended to use Alternate Theme Config to configure NexT +# Modifying this file may result in merge conflict +# See: https://theme-next.js.org/docs/getting-started/configuration +# =============================================================== + +# --------------------------------------------------------------- +# Theme Core Configuration Settings +# See: https://theme-next.js.org/docs/theme-settings/ +# --------------------------------------------------------------- + +# Allow to cache content generation. Introduced in NexT v6.0.0. +cache: + enable: true + +# Remove unnecessary files after hexo generate. +minify: false + +# Define custom file paths. +# Create your custom files in site directory `source/_data` and uncomment needed files below. +custom_file_path: + #head: source/_data/head.njk + #header: source/_data/header.njk + #sidebar: source/_data/sidebar.njk + #postMeta: source/_data/post-meta.njk + #postBodyEnd: source/_data/post-body-end.njk + #footer: source/_data/footer.njk + #bodyEnd: source/_data/body-end.njk + #variable: source/_data/variables.styl + #mixin: source/_data/mixins.styl + #style: source/_data/styles.styl + + +# --------------------------------------------------------------- +# Scheme Settings +# --------------------------------------------------------------- + +# Schemes +scheme: Muse +#scheme: Mist +#scheme: Pisces +#scheme: Gemini + +# Dark Mode +darkmode: false + + +# --------------------------------------------------------------- +# Site Information Settings +# --------------------------------------------------------------- + +favicon: + small: /images/favicon-16x16-next.png + medium: /images/favicon-32x32-next.png + apple_touch_icon: /images/apple-touch-icon-next.png + safari_pinned_tab: /images/logo.svg + #android_manifest: /images/manifest.json + #ms_browserconfig: /images/browserconfig.xml + +# Custom Logo (Warning: Do not support scheme Mist) +custom_logo: #/uploads/custom-logo.jpg + +# Creative Commons 4.0 International License. +# See: https://creativecommons.org/share-your-work/licensing-types-examples +# Available values of license: by | by-nc | by-nc-nd | by-nc-sa | by-nd | by-sa | zero +# You can set a language value if you prefer a translated version of CC license, e.g. deed.zh +# CC licenses are available in 39 languages, you can find the specific and correct abbreviation you need on https://creativecommons.org +creative_commons: + license: by-nc-sa + sidebar: false + post: false + language: + + +# --------------------------------------------------------------- +# Menu Settings +# --------------------------------------------------------------- + +# Usage: `Key: /link/ || icon` +# Key is the name of menu item. If the translation for this item is available, the translated text will be loaded, otherwise the Key name will be used. Key is case-senstive. +# Value before `||` delimiter is the target link, value after `||` delimiter is the name of Font Awesome icon. +# External url should start with http:// or https:// +menu: + #home: / || fa fa-home + #about: /about/ || fa fa-user + #tags: /tags/ || fa fa-tags + #categories: /categories/ || fa fa-th + #archives: /archives/ || fa fa-archive + #schedule: /schedule/ || fa fa-calendar + #sitemap: /sitemap.xml || fa fa-sitemap + #commonweal: /404/ || fa fa-heartbeat + 资源下载: /downloads/ || fa fa-download + 作业与答案: /homework/ || fa fa-code + +# Enable / Disable menu icons / item badges. +menu_settings: + icons: true + badges: false + + +# --------------------------------------------------------------- +# Sidebar Settings +# See: https://theme-next.js.org/docs/theme-settings/sidebar +# --------------------------------------------------------------- + +sidebar: + # Sidebar Position. + position: left + #position: right + + # Manual define the sidebar width. If commented, will be default for: + # Muse | Mist: 320 + # Pisces | Gemini: 240 + #width: 300 + + # Sidebar Display (only for Muse | Mist), available values: + # - post expand on posts automatically. Default. + # - always expand for all pages automatically. + # - hide expand only when click on the sidebar toggle icon. + # - remove totally remove sidebar including sidebar toggle. + display: remove + + # Sidebar padding in pixels. + padding: 18 + # Sidebar offset from top menubar in pixels (only for Pisces | Gemini). + offset: 12 + +# Sidebar Avatar +avatar: + # Replace the default image and set the url here. + url: #/images/avatar.gif + # If true, the avatar will be dispalyed in circle. + rounded: false + # If true, the avatar will be rotated with the cursor. + rotated: false + +# Posts / Categories / Tags in sidebar. +site_state: true + +# Social Links +# Usage: `Key: permalink || icon` +# Key is the link label showing to end users. +# Value before `||` delimiter is the target permalink, value after `||` delimiter is the name of Font Awesome icon. +social: + #GitHub: https://github.com/yourname || fab fa-github + #E-Mail: mailto:yourname@gmail.com || fa fa-envelope + #Weibo: https://weibo.com/yourname || fab fa-weibo + #Google: https://plus.google.com/yourname || fab fa-google + #Twitter: https://twitter.com/yourname || fab fa-twitter + #FB Page: https://www.facebook.com/yourname || fab fa-facebook + #StackOverflow: https://stackoverflow.com/yourname || fab fa-stack-overflow + #YouTube: https://youtube.com/yourname || fab fa-youtube + #Instagram: https://instagram.com/yourname || fab fa-instagram + #Skype: skype:yourname?call|chat || fab fa-skype + +social_icons: + enable: false + icons_only: false + transition: false + +# Blog rolls +links_settings: + icon: fa fa-globe + title: Links + # Available values: block | inline + layout: block + +links: + #Title: https://example.com + +# Table of Contents in the Sidebar +# Front-matter variable (unsupport wrap expand_all). +toc: + enable: true + # Automatically add list number to toc. + number: true + # If true, all words will placed on next lines if header width longer then sidebar width. + wrap: false + # If true, all level of TOC in a post will be displayed, rather than the activated part of it. + expand_all: false + # Maximum heading depth of generated toc. + max_depth: 6 + +# A button to open designated chat widget in sidebar. +# Firstly, you need enable the chat service you want to activate its sidebar button. +chat: + enable: false + #service: chatra + #service: tidio + icon: fa fa-comment # Icon name in Font Awesome, set false to disable icon. + text: Chat # Button text, change it as you wish. + + +# --------------------------------------------------------------- +# Footer Settings +# See: https://theme-next.js.org/docs/theme-settings/footer +# --------------------------------------------------------------- + +# Show multilingual switcher in footer. +language_switcher: false + +footer: + # Specify the date when the site was setup. If not defined, current year will be used. + #since: 2015 + + # Icon between year and copyright info. + icon: + # Icon name in Font Awesome. See: https://fontawesome.com/icons + name: fa fa-heart + # If you want to animate the icon, set it to true. + animated: false + # Change the color of icon, using Hex Code. + color: "#ff0000" + + # If not defined, `author` from Hexo `_config.yml` will be used. + copyright: + + # Powered by Hexo & NexT + powered: true + + # Beian ICP and gongan information for Chinese users. See: https://beian.miit.gov.cn, http://www.beian.gov.cn + beian: + enable: false + icp: + # The digit in the num of gongan beian. + gongan_id: + # The full num of gongan beian. + gongan_num: + # The icon for gongan beian. See: http://www.beian.gov.cn/portal/download + gongan_icon_url: + + +# --------------------------------------------------------------- +# Post Settings +# See: https://theme-next.js.org/docs/theme-settings/posts +# --------------------------------------------------------------- + +# Automatically excerpt description in homepage as preamble text. +excerpt_description: true + +# Read more button +# If true, the read more button will be displayed in excerpt section. +read_more_btn: true + +# Post meta display settings +post_meta: + item_text: true + created_at: true + updated_at: + enable: true + another_day: true + categories: true + +# Post wordcount display settings +# Dependencies: https://github.com/next-theme/hexo-word-counter +symbols_count_time: + separated_meta: true + item_text_total: false + +# Use icon instead of the symbol # to indicate the tag at the bottom of the post +tag_icon: false + +# Donate (Sponsor) settings +# Front-matter variable (unsupport animation). +reward_settings: + # If true, a donate button will be displayed in every article by default. + enable: false + animation: false + #comment: Buy me a coffee + +reward: + #wechatpay: /images/wechatpay.png + #alipay: /images/alipay.png + #paypal: /images/paypal.png + #bitcoin: /images/bitcoin.png + +# Subscribe through Telegram Channel, Twitter, etc. +# Usage: `Key: permalink || icon` (Font Awesome) +follow_me: + #Twitter: https://twitter.com/username || fab fa-twitter + #Telegram: https://t.me/channel_name || fab fa-telegram + #WeChat: /images/wechat_channel.jpg || fab fa-weixin + #RSS: /atom.xml || fa fa-rss + +# Related popular posts +# Dependencies: https://github.com/tea3/hexo-related-popular-posts +related_posts: + enable: false + title: # Custom header, leave empty to use the default one + display_in_home: false + params: + maxCount: 5 + #PPMixingRate: 0.0 + #isDate: false + #isImage: false + #isExcerpt: false + +# Post edit +# Easily browse and edit blog source code online. +post_edit: + enable: false + url: https://github.com/user-name/repo-name/tree/branch-name/subdirectory-name/ # Link for view source + #url: https://github.com/user-name/repo-name/edit/branch-name/subdirectory-name/ # Link for fork & edit + +# Show previous post and next post in post footer if exists +# Available values: left | right | false +post_navigation: left + + +# --------------------------------------------------------------- +# Custom Page Settings +# See: https://theme-next.js.org/docs/theme-settings/custom-pages +# --------------------------------------------------------------- + +# TagCloud settings for tags page. +tagcloud: + min: 12 # Minimun font size in px + max: 30 # Maxium font size in px + amount: 200 # Total amount of tags + orderby: name # Order of tags + order: 1 # Sort order + +# Google Calendar +# Share your recent schedule to others via calendar page. +calendar: + calendar_id: # Your Google account E-Mail + api_key: + orderBy: startTime + showLocation: false + offsetMax: 72 # Time Range + offsetMin: 4 # Time Range + showDeleted: false + singleEvents: true + maxResults: 250 + + +# --------------------------------------------------------------- +# Misc Theme Settings +# See: https://theme-next.js.org/docs/theme-settings/miscellaneous +# --------------------------------------------------------------- + +# Set the text alignment in posts / pages. +text_align: + # Available values: start | end | left | right | center | justify | justify-all | match-parent + desktop: justify + mobile: justify + +# Reduce padding / margin indents on devices with narrow width. +mobile_layout_economy: true + +# Android Chrome header panel color ($brand-bg / $headband-bg => $black-deep). +android_chrome_color: "#222" + +codeblock: + # Code Highlight theme + # All available themes: https://theme-next.js.org/highlight/ + theme: + light: github + dark: github + prism: + light: solarized-light + dark: prism-dark + # Add copy button on codeblock + copy_button: + enable: true + # Available values: default | flat | mac + style: default + +back2top: + enable: true + # Back to top in sidebar. + sidebar: false + # Scroll percent label in b2t button. + scrollpercent: false + +# Reading progress bar +reading_progress: + enable: true + # Available values: top | bottom + position: top + color: "#37c6c0" + height: 3px + +# Bookmark Support +bookmark: + enable: false + # Customize the color of the bookmark. + color: "#222" + # If auto, save the reading progress when closing the page or clicking the bookmark-icon. + # If manual, only save it by clicking the bookmark-icon. + save: auto + +# `Follow me on GitHub` banner in the top-right corner. +github_banner: + enable: false + permalink: https://github.com/yourname + title: Follow me on GitHub + + +# --------------------------------------------------------------- +# Font Settings +# --------------------------------------------------------------- +# Find fonts on Google Fonts (https://fonts.google.com) +# All fonts set here will have the following styles: +# light | light italic | normal | normal italic | bold | bold italic +# Be aware that setting too much fonts will cause site running slowly +# --------------------------------------------------------------- +# To avoid space between header and sidebar in scheme Pisces / Gemini, Web Safe fonts are recommended for `global` (and `title`): +# Arial | Tahoma | Helvetica | Times New Roman | Courier New | Verdana | Georgia | Palatino | Garamond | Comic Sans MS | Trebuchet MS +# --------------------------------------------------------------- + +font: + enable: false + + # Uri of fonts host, e.g. https://fonts.googleapis.com (Default). + host: + + # Font options: + # `external: true` will load this font family from `host` above. + # `family: Times New Roman`. Without any quotes. + # `size: x.x`. Use `em` as unit. Default: 1 (16px) + + # Global font settings used for all elements inside . + global: + external: true + family: Lato + size: + + # Font settings for site title (.site-title). + title: + external: true + family: + size: + + # Font settings for headlines (

to

). + headings: + external: true + family: + size: + + # Font settings for posts (.post-body). + posts: + external: true + family: + + # Font settings for and code blocks. + codes: + external: true + family: + + +# --------------------------------------------------------------- +# SEO Settings +# See: https://theme-next.js.org/docs/theme-settings/seo +# --------------------------------------------------------------- + +# Disable Baidu transformation on mobile devices. +disable_baidu_transformation: false + +# If true, site-subtitle will be added to index page. +# Remember to set up your site-subtitle in Hexo `_config.yml` (e.g. subtitle: Subtitle) +index_with_subtitle: false + +# Automatically add external URL with Base64 encrypt & decrypt. +exturl: false + +# Google Webmaster tools verification. +# See: https://www.google.com/webmasters +google_site_verification: + +# Bing Webmaster tools verification. +# See: https://www.bing.com/webmaster +bing_site_verification: + +# Yandex Webmaster tools verification. +# See: https://webmaster.yandex.ru +yandex_site_verification: + +# Baidu Webmaster tools verification. +# See: https://ziyuan.baidu.com/site +baidu_site_verification: + +# Enable baidu push so that the blog will push the url to baidu automatically which is very helpful for SEO. +baidu_push: false + + +# --------------------------------------------------------------- +# Third Party Plugins & Services Settings +# See: https://theme-next.js.org/docs/third-party-services/ +# More plugins: https://github.com/next-theme/awesome-next +# You may need to install the corresponding dependency packages +# --------------------------------------------------------------- + +# Math Formulas Render Support +# Warning: Please install / uninstall the relevant renderer according to the documentation. +# See: https://theme-next.js.org/docs/third-party-services/math-equations +# Server-side plugin: https://github.com/next-theme/hexo-filter-mathjax +math: + # Default (false) will load mathjax / katex script on demand. + # That is it only render those page which has `mathjax: true` in front-matter. + # If you set it to true, it will load mathjax / katex srcipt EVERY PAGE. + every_page: false + + mathjax: + enable: true + + katex: + enable: false + # See: https://github.com/KaTeX/KaTeX/tree/master/contrib/copy-tex + copy_tex: false + +# Easily enable fast Ajax navigation on your website. +# For more information: https://github.com/next-theme/pjax +pjax: false + +# FancyBox is a tool that offers a nice and elegant way to add zooming functionality for images. +# For more information: https://fancyapps.com/fancybox +fancybox: false + +# A JavaScript library for zooming images like Medium. +# Warning: Do not enable both `fancybox` and `mediumzoom`. +# For more information: https://github.com/francoischalifour/medium-zoom +mediumzoom: false + +# Vanilla JavaScript plugin for lazyloading images. +# For more information: https://github.com/ApoorvSaxena/lozad.js +lazyload: false + +# Pangu Support +# For more information: https://github.com/vinta/pangu.js +# Server-side plugin: https://github.com/next-theme/hexo-pangu +pangu: false + +# Quicklink Support +# For more information: https://github.com/GoogleChromeLabs/quicklink +# Front-matter variable (unsupport home archive). +quicklink: + enable: false + + # Home page and archive page can be controlled through home and archive options below. + # This configuration item is independent of `enable`. + home: false + archive: false + + # Default (true) will initialize quicklink after the load event fires. + delay: true + # Custom a time in milliseconds by which the browser must execute prefetching. + timeout: 3000 + # Default (true) will attempt to use the fetch() API if supported (rather than link[rel=prefetch]). + priority: true + + # For more flexibility you can add some patterns (RegExp, Function, or Array) to ignores. + # See: https://github.com/GoogleChromeLabs/quicklink#custom-ignore-patterns + ignores: + + +# --------------------------------------------------------------- +# Comments Settings +# See: https://theme-next.js.org/docs/third-party-services/comments +# --------------------------------------------------------------- + +# Multiple Comment System Support +comments: + # Available values: tabs | buttons + style: tabs + # Choose a comment system to be displayed by default. + # Available values: changyan | disqus | disqusjs | gitalk | livere | valine + active: + # Setting `true` means remembering the comment system selected by the visitor. + storage: true + # Lazyload all comment systems. + lazyload: false + # Modify texts or order for any navs, here are some examples. + nav: + #disqus: + # text: Load Disqus + # order: -1 + #gitalk: + # order: -2 + +# Disqus +disqus: + enable: false + shortname: + count: true + +# DisqusJS +# Alternative Disqus - Render comment component using Disqus API. +# Demo: https://suka.js.org/DisqusJS/ +# For more information: https://github.com/SukkaW/DisqusJS +disqusjs: + enable: false + # API Endpoint of Disqus API (https://disqus.com/api/). + # Leave api empty if you are able to connect to Disqus API. Otherwise you need a reverse proxy for it. + # For example: + # api: https://disqus.skk.moe/disqus/ + api: + apikey: # Register new application from https://disqus.com/api/applications/ + shortname: # See: https://disqus.com/admin/settings/general/ + +# Changyan +changyan: + enable: false + appid: + appkey: + +# Valine +# For more information: https://valine.js.org, https://github.com/xCss/Valine +valine: + enable: false + appId: # Your leancloud application appid + appKey: # Your leancloud application appkey + serverURLs: # When the custom domain name is enabled, fill it in here + placeholder: Just go go # Comment box placeholder + avatar: mm # Gravatar style + meta: [nick, mail, link] # Custom comment header + pageSize: 10 # Pagination size + lang: # Language, available values: en, zh-cn + visitor: false # Article reading statistic + comment_count: true # If false, comment count will only be displayed in post page, not in home page + recordIP: false # Whether to record the commenter IP + enableQQ: false # Whether to enable the Nickname box to automatically get QQ Nickname and QQ Avatar + requiredFields: [] # Set required fields: [nick] | [nick, mail] + +# LiveRe comments system +# You can get your uid from https://livere.com/insight/myCode (General web site) +livere_uid: # + +# Gitalk +# For more information: https://gitalk.github.io, https://github.com/gitalk/gitalk +gitalk: + enable: false + github_id: # GitHub repo owner + repo: # Repository name to store issues + client_id: # GitHub Application Client ID + client_secret: # GitHub Application Client Secret + admin_user: # GitHub repo owner and collaborators, only these guys can initialize gitHub issues + distraction_free_mode: true # Facebook-like distraction free mode + # Gitalk's display language depends on user's browser or system environment + # If you want everyone visiting your site to see a uniform language, you can set a force language value + # Available values: en | es-ES | fr | ru | zh-CN | zh-TW + language: + + +# --------------------------------------------------------------- +# Post Widgets & Content Sharing Services +# See: https://theme-next.js.org/docs/third-party-services/post-widgets +# --------------------------------------------------------------- + +# Star rating support to each article. +# To get your ID visit https://widgetpack.com +rating: + enable: false + id: # + color: "#fc6423" + +# AddThis Share. See: https://www.addthis.com +# Go to https://www.addthis.com/dashboard to customize your tools. +add_this_id: + + +# --------------------------------------------------------------- +# Statistics and Analytics +# See: https://theme-next.js.org/docs/third-party-services/statistics-and-analytics +# --------------------------------------------------------------- + +# Google Analytics +google_analytics: + tracking_id: # + # By default, NexT will load an external gtag.js script on your site. + # If you only need the pageview feature, set the following option to true to get a better performance. + only_pageview: false + +# Baidu Analytics +baidu_analytics: # + +# Growingio Analytics +growingio_analytics: # + +# CNZZ count +cnzz_siteid: + +# Show number of visitors of each article. +# You can visit https://leancloud.cn to get AppID and AppKey. +# AppID and AppKey are recommended to be the same as valine's for counter compatibility. +# Warning: Do not enable both `valine.visitor` and `leancloud_visitors`. +leancloud_visitors: + enable: false + app_id: # + app_key: # + # Required for apps from CN region + server_url: # + # Dependencies: https://github.com/theme-next/hexo-leancloud-counter-security + # If you don't care about security in leancloud counter and just want to use it directly + # (without hexo-leancloud-counter-security plugin), set `security` to `false`. + security: true + +# Another tool to show number of visitors to each article. +# Visit https://console.firebase.google.com/u/0/ to get apiKey and projectId. +# Visit https://firebase.google.com/docs/firestore/ to get more information about firestore. +firestore: + enable: false + collection: articles # Required, a string collection name to access firestore database + apiKey: # Required + projectId: # Required + +# Show Views / Visitors of the website / page with busuanzi. +# Get more information on http://ibruce.info/2015/04/04/busuanzi +busuanzi_count: + enable: false + total_visitors: true + total_visitors_icon: fa fa-user + total_views: true + total_views_icon: fa fa-eye + post_views: true + post_views_icon: far fa-eye + + +# --------------------------------------------------------------- +# Search Services +# See: https://theme-next.js.org/docs/third-party-services/search-services +# --------------------------------------------------------------- + +# Algolia Search +# For more information: https://www.algolia.com +algolia_search: + enable: false + hits: + per_page: 10 + +# Local Search +# Dependencies: https://github.com/next-theme/hexo-generator-searchdb +local_search: + enable: false + # If auto, trigger search by changing input. + # If manual, trigger search by pressing enter key or search button. + trigger: auto + # Show top n results per article, show all results by setting to -1 + top_n_per_article: 1 + # Unescape html strings to the readable one. + unescape: false + # Preload the search data when the page loads. + preload: false + +# Swiftype Search API Key +swiftype_key: + + +# --------------------------------------------------------------- +# Chat Services +# See: https://theme-next.js.org/docs/third-party-services/chat-services +# --------------------------------------------------------------- + +# Chatra Support +# See: https://chatra.io +# Dashboard: https://app.chatra.io/settings/general +chatra: + enable: false + async: true + id: # Visit Dashboard to get your ChatraID + #embed: # Unfinished experimental feature for developers. See: https://chatra.io/help/api/#injectto + +# Tidio Support +# See: https://www.tidiochat.com +# Dashboard: https://www.tidiochat.com/panel/dashboard +tidio: + enable: false + key: # Public Key, get it from dashboard. See: https://www.tidiochat.com/panel/settings/developer + + +# --------------------------------------------------------------- +# Tags Settings +# See: https://theme-next.js.org/docs/tag-plugins/ +# --------------------------------------------------------------- + +# Note tag (bs-callout) +note: + # Note tag style values: + # - simple bs-callout old alert style. Default. + # - modern bs-callout new (v2-v3) alert style. + # - flat flat callout style with background, like on Mozilla or StackOverflow. + # - disabled disable all CSS styles import of note tag. + style: simple + icons: false + # Offset lighter of background in % for modern and flat styles (modern: -12 | 12; flat: -18 | 6). + # Offset also applied to label tag variables. This option can work with disabled note tag. + light_bg_offset: 0 + +# Tabs tag +tabs: + transition: + tabs: false + labels: true + +# PDF tag +# NexT will try to load pdf files natively, if failed, pdf.js will be used. +# So, you have to install the dependency of pdf.js if you want to use pdf tag and make it available to all browsers. +# Dependencies: https://github.com/next-theme/theme-next-pdf +pdf: + enable: false + # Default height + height: 500px + +# Mermaid tag +mermaid: + enable: false + # Available themes: default | dark | forest | neutral + theme: forest + + +# --------------------------------------------------------------- +# Animation Settings +# --------------------------------------------------------------- + +# Use Animate.css to animate everything. +# For more information: https://animate.style +motion: + enable: true + async: true + transition: + # All available transition variants: https://theme-next.js.org/animate/ + post_block: fadeIn + post_header: fadeInDown + post_body: fadeInDown + coll_header: fadeInLeft + # Only for Pisces | Gemini. + sidebar: fadeInUp + +# Progress bar in the top during page loading. +# For more information: https://github.com/rstacruz/nprogress +nprogress: + enable: false + spinner: true + +# Canvas ribbon +# For more information: https://github.com/hustcc/ribbon.js +canvas_ribbon: + enable: false + size: 300 # The width of the ribbon + alpha: 0.6 # The transparency of the ribbon + zIndex: -1 # The display level of the ribbon + + +#! ============================================================== +#! DO NOT EDIT THE FOLLOWING SETTINGS +#! UNLESS YOU KNOW WHAT YOU ARE DOING +#! See: https://theme-next.js.org/docs/advanced-settings/vendors +#! ============================================================== + +# It's recommended to use the same version as in `_vendors.yml` to avoid potential problems. +# Remember to use the https protocol of CDN links when you enable https on your site. +vendors: + # The CDN provider of NexT internal scripts. + # Available values: local | jsdelivr | unpkg | cdnjs + # Warning: If you are using the latest master branch of NexT, please set `internal: local` + internal: local + # The default CDN provider of third-party plugins. + # Available values: local | jsdelivr | unpkg | cdnjs + # Dependencies for `plugins: local`: https://github.com/next-theme/plugins + plugins: jsdelivr + + # In the following settings, you can specify the CDN link for each plugin. + # If left blank, the default CDN provider set by `plugins` option will be used. + + # Anime.js + # For more information: https://animejs.com + anime: + + # Font Awesome + # For more information: https://fontawesome.com + fontawesome: + + # Prism + prism: + prism_autoloader: + prism_line_numbers: + + # MathJax + mathjax: + + # KaTeX + katex: + copy_tex_js: + copy_tex_css: + + # Pjax + pjax: + + # FancyBox + jquery: + fancybox_js: + fancybox_css: + + # Medium-zoom + mediumzoom: + + # Lazyload + lazyload: + + # Pangu + pangu: + + # Quicklink + quicklink: + + # DisqusJS + disqusjs_js: + disqusjs_css: + + # Valine + valine: + + # Gitalk + gitalk_js: + gitalk_css: + + # Firebase + firebase_app: + firebase_firestore: + + # Algolia Search + algolia_search: + instant_search: + + # Mermaid + mermaid: + + # Animate.css + # Warning: motion won't work with animate.css version 3.2.0 or later + animate_css: + + # NProgress.js + nprogress_js: + nprogress_css: + + # Canvas ribbon + canvas_ribbon: + +# Assets +css: css +js: js +images: images diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..745d2d4 --- /dev/null +++ b/_config.yml @@ -0,0 +1,106 @@ +# Hexo Configuration +## Docs: https://hexo.io/docs/configuration.html +## Source: https://github.com/hexojs/hexo/ + +# Site +title: 计算机程序设计A +subtitle: 课程主页 +description: '' +keywords: +author: zhao +language: zh-CN +timezone: Asia/Shanghai + +# URL +## If your site is put in a subdirectory, set url as 'http://example.com/child' and root as '/child/' +url: http://home.ustc.edu.cn/~zhaozuohong/ +root: /~zhaozuohong/ +permalink: :title/ +permalink_defaults: +pretty_urls: + trailing_index: false # Set to false to remove trailing 'index.html' from permalinks + trailing_html: false # Set to false to remove trailing '.html' from permalinks + +# Directory +source_dir: source +public_dir: public +tag_dir: tags +archive_dir: archives +category_dir: categories +code_dir: downloads/code +i18n_dir: :lang +skip_render: + +# Writing +new_post_name: :title.md # File name of new posts +default_layout: post +titlecase: false # Transform title into titlecase +external_link: + enable: true # Open external links in new tab + field: site # Apply to the whole site + exclude: '' +filename_case: 0 +render_drafts: false +post_asset_folder: true +relative_link: false +future: true +highlight: + enable: true + line_number: true + auto_detect: false + tab_replace: '' + wrap: true + hljs: false +prismjs: + enable: false + preprocess: true + line_number: true + tab_replace: '' + +# Home page setting +# path: Root path for your blogs index page. (default = '') +# per_page: Posts displayed per page. (0 = disable pagination) +# order_by: Posts order. (Order by date descending by default) +index_generator: + path: '' + per_page: 10 + order_by: -date + +# Category & Tag +default_category: uncategorized +category_map: +tag_map: + +# Metadata elements +## https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta +meta_generator: true + +# Date / Time format +## Hexo uses Moment.js to parse and display date +## You can customize the date format as defined in +## http://momentjs.com/docs/#/displaying/format/ +date_format: YYYY-MM-DD +time_format: HH:mm:ss +## updated_option supports 'mtime', 'date', 'empty' +updated_option: 'mtime' + +# Pagination +## Set per_page to 0 to disable pagination +per_page: 10 +pagination_dir: page + +# Include / Exclude file(s) +## include:/exclude: options only apply to the 'source/' folder +include: +exclude: +ignore: + +# Extensions +## Plugins: https://hexo.io/plugins/ +## Themes: https://hexo.io/themes/ +theme: next + +# Deployment +## Docs: https://hexo.io/docs/one-command-deployment +deploy: + type: '' diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..a77a485 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,1421 @@ +{ + "name": "hexo-site", + "version": "0.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npm.taobao.org/JSONStream/download/JSONStream-1.3.5.tgz", + "integrity": "sha1-MgjB8I06TZkmGrZPkjArwV4RHKA=", + "requires": { + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" + } + }, + "a-sync-waterfall": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/a-sync-waterfall/download/a-sync-waterfall-1.0.1.tgz", + "integrity": "sha1-dba2qnJZi0l6El56J3DxT0yKH6c=" + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/abbrev/download/abbrev-1.1.1.tgz", + "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg=" + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npm.taobao.org/accepts/download/accepts-1.3.7.tgz", + "integrity": "sha1-UxvHJlF6OytB+FACHGzBXqq1B80=", + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/amdefine/download/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-5.0.0.tgz", + "integrity": "sha1-OIU59VF5vzkznIGvMKZU1p+Hy3U=" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.3.0.tgz", + "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=", + "requires": { + "color-convert": "^2.0.1" + } + }, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/anymatch/download/anymatch-3.1.1.tgz", + "integrity": "sha1-xV7PAhheJGklk5kxDBc84xIzsUI=", + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/archy/download/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=" + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npm.taobao.org/argparse/download/argparse-1.0.10.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fargparse%2Fdownload%2Fargparse-1.0.10.tgz", + "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE=", + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/atob/download/atob-2.1.2.tgz", + "integrity": "sha1-bZUX654DDSQ2ZmZR6GvZ9vE1M8k=" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/balanced-match/download/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "basic-auth": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/basic-auth/download/basic-auth-2.0.1.tgz", + "integrity": "sha1-uZgnm/R844NEtPPPkW1Gebv1Hjo=", + "requires": { + "safe-buffer": "5.1.2" + } + }, + "binary-extensions": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/binary-extensions/download/binary-extensions-2.1.0.tgz", + "integrity": "sha1-MPpAyef+B9vIlWeM0ocCTeokHdk=" + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npm.taobao.org/bluebird/download/bluebird-3.7.2.tgz", + "integrity": "sha1-nyKcFb4nJFT/qXOs4NvueaGww28=" + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz?cache=0&sync_timestamp=1601898189928&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbrace-expansion%2Fdownload%2Fbrace-expansion-1.1.11.tgz", + "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0=", + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npm.taobao.org/braces/download/braces-3.0.2.tgz", + "integrity": "sha1-NFThpGLujVmeI23zNs2epPiv4Qc=", + "requires": { + "fill-range": "^7.0.1" + } + }, + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/bytes/download/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" + }, + "camel-case": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/camel-case/download/camel-case-4.1.1.tgz", + "integrity": "sha1-H8QchU8A4vfQE53+uhVC1olv5Uc=", + "requires": { + "pascal-case": "^3.1.1", + "tslib": "^1.10.0" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-4.1.0.tgz", + "integrity": "sha1-ThSHCmGNni7dl92DRf2dncMVZGo=", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "chokidar": { + "version": "3.4.3", + "resolved": "https://registry.npm.taobao.org/chokidar/download/chokidar-3.4.3.tgz", + "integrity": "sha1-wd84IxRI5FykrFiObHlXO6alfVs=", + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + } + }, + "clipboard": { + "version": "2.0.6", + "resolved": "https://registry.npm.taobao.org/clipboard/download/clipboard-2.0.6.tgz", + "integrity": "sha1-UpISlu7A/fd+rRdJQhshyWhkc3Y=", + "optional": true, + "requires": { + "good-listener": "^1.2.2", + "select": "^1.1.2", + "tiny-emitter": "^2.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz", + "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz", + "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=" + }, + "command-exists": { + "version": "1.2.9", + "resolved": "https://registry.npm.taobao.org/command-exists/download/command-exists-1.2.9.tgz", + "integrity": "sha1-xQclrzgIyKsCYP1gsB+/oluVT2k=" + }, + "commander": { + "version": "5.1.0", + "resolved": "https://registry.npm.taobao.org/commander/download/commander-5.1.0.tgz?cache=0&sync_timestamp=1603599875090&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcommander%2Fdownload%2Fcommander-5.1.0.tgz", + "integrity": "sha1-Rqu9FlL44Fm92u+Zu9yyrZzxea4=" + }, + "compressible": { + "version": "2.0.18", + "resolved": "https://registry.npm.taobao.org/compressible/download/compressible-2.0.18.tgz", + "integrity": "sha1-r1PMprBw1MPAdQ+9dyhqbXzEb7o=", + "requires": { + "mime-db": ">= 1.43.0 < 2" + } + }, + "compression": { + "version": "1.7.4", + "resolved": "https://registry.npm.taobao.org/compression/download/compression-1.7.4.tgz", + "integrity": "sha1-lVI+/xcMpXwpoMpB5v4TH0Hlu48=", + "requires": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502871403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npm.taobao.org/concat-map/download/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "connect": { + "version": "3.7.0", + "resolved": "https://registry.npm.taobao.org/connect/download/connect-3.7.0.tgz", + "integrity": "sha1-XUk0iRDKpeB6AYALAw0MNfIEhPg=", + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.2", + "parseurl": "~1.3.3", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502871403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-7.0.3.tgz", + "integrity": "sha1-9zqFudXUHQRVUcF34ogtSshXKKY=", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "css": { + "version": "2.2.4", + "resolved": "https://registry.npm.taobao.org/css/download/css-2.2.4.tgz?cache=0&sync_timestamp=1593663579643&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcss%2Fdownload%2Fcss-2.2.4.tgz", + "integrity": "sha1-xkZ1XHOXHyu6amAeLPL9cbEpiSk=", + "requires": { + "inherits": "^2.0.3", + "source-map": "^0.6.1", + "source-map-resolve": "^0.5.2", + "urix": "^0.1.0" + }, + "dependencies": { + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz", + "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=" + } + } + }, + "css-parse": { + "version": "1.7.0", + "resolved": "https://registry.npm.taobao.org/css-parse/download/css-parse-1.7.0.tgz", + "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=" + }, + "cuid": { + "version": "2.1.8", + "resolved": "https://registry.npm.taobao.org/cuid/download/cuid-2.1.8.tgz", + "integrity": "sha1-y7iPlUFx4NV0dgbAE5+2XFEB6sA=" + }, + "debug": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-4.2.0.tgz?cache=0&sync_timestamp=1600502871403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-4.2.0.tgz", + "integrity": "sha1-fxUPk5IOlMWPVXTC/QGjEQ7/5/E=", + "requires": { + "ms": "2.1.2" + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npm.taobao.org/decode-uri-component/download/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" + }, + "deepmerge": { + "version": "4.2.2", + "resolved": "https://registry.npm.taobao.org/deepmerge/download/deepmerge-4.2.2.tgz?cache=0&sync_timestamp=1572279720382&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdeepmerge%2Fdownload%2Fdeepmerge-4.2.2.tgz", + "integrity": "sha1-RNLqNnm49NT/ujPwPYZfwee/SVU=" + }, + "delegate": { + "version": "3.2.0", + "resolved": "https://registry.npm.taobao.org/delegate/download/delegate-3.2.0.tgz", + "integrity": "sha1-tmtxwxWFIuirV0T3INjKDCr1kWY=", + "optional": true + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/depd/download/depd-2.0.0.tgz", + "integrity": "sha1-tpYWPMdXVg0JzyLMj60Vcbeedt8=" + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/destroy/download/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "dom-serializer": { + "version": "1.1.0", + "resolved": "https://registry.npm.taobao.org/dom-serializer/download/dom-serializer-1.1.0.tgz?cache=0&sync_timestamp=1600026395677&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdom-serializer%2Fdownload%2Fdom-serializer-1.1.0.tgz", + "integrity": "sha1-X3yCjxv8RIh9wqMVq1xFaR1US1g=", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "entities": "^2.0.0" + } + }, + "domelementtype": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/domelementtype/download/domelementtype-2.0.2.tgz?cache=0&sync_timestamp=1600028439338&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdomelementtype%2Fdownload%2Fdomelementtype-2.0.2.tgz", + "integrity": "sha1-87blSSAeRvWItZRj3XcYcTH+aXE=" + }, + "domhandler": { + "version": "3.3.0", + "resolved": "https://registry.npm.taobao.org/domhandler/download/domhandler-3.3.0.tgz", + "integrity": "sha1-bbfqRuRhfrFc+HXfaLK4UkzgA3o=", + "requires": { + "domelementtype": "^2.0.1" + } + }, + "domutils": { + "version": "2.4.2", + "resolved": "https://registry.npm.taobao.org/domutils/download/domutils-2.4.2.tgz", + "integrity": "sha1-fuW+JhlE4a1IfZqgYWcgAQEjkis=", + "requires": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.0.1", + "domhandler": "^3.3.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/ee-first/download/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "ejs": { + "version": "2.7.4", + "resolved": "https://registry.npm.taobao.org/ejs/download/ejs-2.7.4.tgz", + "integrity": "sha1-SGYSh1c9zFPjZsehrlLDoSDuybo=" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" + }, + "entities": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/entities/download/entities-2.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fentities%2Fdownload%2Fentities-2.1.0.tgz", + "integrity": "sha1-mS0xKc999ocLlsV4WMJJoSD4uLU=" + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/escape-html/download/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", + "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npm.taobao.org/etag/download/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npm.taobao.org/fill-range/download/fill-range-7.0.1.tgz", + "integrity": "sha1-GRmmp8df44ssfHflGYU12prN2kA=", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/finalhandler/download/finalhandler-1.1.2.tgz", + "integrity": "sha1-t+fQAP/RGTjQ/bBTUG9uur6fWH0=", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502871403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npm.taobao.org/fresh/download/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/fs.realpath/download/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fsevents": { + "version": "2.1.3", + "resolved": "https://registry.npm.taobao.org/fsevents/download/fsevents-2.1.3.tgz?cache=0&sync_timestamp=1588787369955&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffsevents%2Fdownload%2Ffsevents-2.1.3.tgz", + "integrity": "sha1-+3OHA66NL5/pAMM4Nt3r7ouX8j4=", + "optional": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz", + "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" + }, + "glob": { + "version": "7.0.6", + "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.0.6.tgz", + "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npm.taobao.org/glob-parent/download/glob-parent-5.1.1.tgz", + "integrity": "sha1-tsHvQXxOVmPqSY8cRa+saRa7wik=", + "requires": { + "is-glob": "^4.0.1" + } + }, + "good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npm.taobao.org/good-listener/download/good-listener-1.2.2.tgz", + "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", + "optional": true, + "requires": { + "delegate": "^3.1.2" + } + }, + "graceful-fs": { + "version": "4.2.4", + "resolved": "https://registry.npm.taobao.org/graceful-fs/download/graceful-fs-4.2.4.tgz?cache=0&sync_timestamp=1588086924019&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fgraceful-fs%2Fdownload%2Fgraceful-fs-4.2.4.tgz", + "integrity": "sha1-Ila94U02MpWMRl68ltxGfKB6Kfs=" + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/has/download/has-1.0.3.tgz", + "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y=", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz", + "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=" + }, + "hexo": { + "version": "5.2.0", + "resolved": "https://registry.npm.taobao.org/hexo/download/hexo-5.2.0.tgz", + "integrity": "sha1-z4suPfO6KYBaF9lhRa1Bs4QyqOU=", + "requires": { + "abbrev": "^1.1.1", + "archy": "^1.0.0", + "bluebird": "^3.5.2", + "chalk": "^4.0.0", + "hexo-cli": "^4.0.0", + "hexo-front-matter": "^2.0.0", + "hexo-fs": "^3.1.0", + "hexo-i18n": "^1.0.0", + "hexo-log": "^2.0.0", + "hexo-util": "^2.4.0", + "js-yaml": "^3.12.0", + "micromatch": "^4.0.2", + "moment": "^2.22.2", + "moment-timezone": "^0.5.21", + "nunjucks": "^3.2.1", + "pretty-hrtime": "^1.0.3", + "resolve": "^1.8.1", + "strip-ansi": "^6.0.0", + "text-table": "^0.2.0", + "tildify": "^2.0.0", + "titlecase": "^1.1.2", + "warehouse": "^4.0.0" + }, + "dependencies": { + "hexo-cli": { + "version": "4.2.0", + "resolved": "https://registry.npm.taobao.org/hexo-cli/download/hexo-cli-4.2.0.tgz", + "integrity": "sha1-dGR7xyqQuc6/BK9bxwg5qygaMF0=", + "requires": { + "abbrev": "^1.1.1", + "bluebird": "^3.5.5", + "chalk": "^4.0.0", + "command-exists": "^1.2.8", + "hexo-fs": "^3.0.1", + "hexo-log": "^2.0.0", + "hexo-util": "^2.0.0", + "minimist": "^1.2.5", + "resolve": "^1.11.0", + "tildify": "^2.0.0" + } + } + } + }, + "hexo-front-matter": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-front-matter/download/hexo-front-matter-2.0.0.tgz", + "integrity": "sha1-A/Oanu2xbFRI27O+x9/yxOIkAGw=", + "requires": { + "js-yaml": "^3.13.1" + } + }, + "hexo-fs": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/hexo-fs/download/hexo-fs-3.1.0.tgz?cache=0&sync_timestamp=1590154522050&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhexo-fs%2Fdownload%2Fhexo-fs-3.1.0.tgz", + "integrity": "sha1-IFL/csaM2ixXeoeqDqeYCuUD+pk=", + "requires": { + "bluebird": "^3.5.1", + "chokidar": "^3.0.0", + "graceful-fs": "^4.1.11", + "hexo-util": "^2.0.0" + } + }, + "hexo-generator-archive": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-generator-archive/download/hexo-generator-archive-1.0.0.tgz", + "integrity": "sha1-rSr7EiMqZeL4YI/Byj8ZFi+2N4Y=", + "requires": { + "hexo-pagination": "1.0.0" + } + }, + "hexo-generator-category": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-generator-category/download/hexo-generator-category-1.0.0.tgz", + "integrity": "sha1-zSorA+sybaPvgh1uKUCEiMwTLrU=", + "requires": { + "hexo-pagination": "1.0.0" + } + }, + "hexo-generator-index-pin-top": { + "version": "0.2.2", + "resolved": "https://registry.npm.taobao.org/hexo-generator-index-pin-top/download/hexo-generator-index-pin-top-0.2.2.tgz", + "integrity": "sha1-NLW575DhvKj76VfTs8GDyjOt6Tc=", + "requires": { + "hexo-pagination": "0.0.2", + "object-assign": "^4.0.1" + }, + "dependencies": { + "hexo-pagination": { + "version": "0.0.2", + "resolved": "https://registry.npm.taobao.org/hexo-pagination/download/hexo-pagination-0.0.2.tgz", + "integrity": "sha1-jPRwx9sN5bGKOSanbesZQBXffys=", + "requires": { + "utils-merge": "^1.0.0" + } + } + } + }, + "hexo-generator-tag": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-generator-tag/download/hexo-generator-tag-1.0.0.tgz", + "integrity": "sha1-VOwj3pQJx1WE6oHjYFelkDGwIvE=", + "requires": { + "hexo-pagination": "1.0.0" + } + }, + "hexo-i18n": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-i18n/download/hexo-i18n-1.0.0.tgz", + "integrity": "sha1-eYP7OjE+kGFbhN2PqUanHEie9b0=", + "requires": { + "sprintf-js": "^1.0.3" + } + }, + "hexo-log": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-log/download/hexo-log-2.0.0.tgz", + "integrity": "sha1-HcyOlgApsIshmU/ixWxOPWNG6JM=", + "requires": { + "chalk": "^4.0.0" + } + }, + "hexo-pagination": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-pagination/download/hexo-pagination-1.0.0.tgz", + "integrity": "sha1-ycDKNmUme56dCon8PtyvMnaQfcE=" + }, + "hexo-renderer-ejs": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-renderer-ejs/download/hexo-renderer-ejs-1.0.0.tgz", + "integrity": "sha1-Q8TeSe6uIkA2pFffhg6xwUxotLQ=", + "requires": { + "ejs": "^2.6.1" + } + }, + "hexo-renderer-pandoc": { + "version": "0.3.0", + "resolved": "https://registry.npm.taobao.org/hexo-renderer-pandoc/download/hexo-renderer-pandoc-0.3.0.tgz", + "integrity": "sha1-yPQAbP25+Zme7rAwLlJ1+y8L8C0=" + }, + "hexo-renderer-stylus": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/hexo-renderer-stylus/download/hexo-renderer-stylus-2.0.1.tgz", + "integrity": "sha1-xlVm6X6QWKUuRsgrDEXPVh9LlMs=", + "requires": { + "nib": "^1.1.2", + "stylus": "^0.54.8" + } + }, + "hexo-server": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/hexo-server/download/hexo-server-2.0.0.tgz?cache=0&sync_timestamp=1596964390028&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhexo-server%2Fdownload%2Fhexo-server-2.0.0.tgz", + "integrity": "sha1-GtksyKfTUo/sb/pl/4RT8kL3mD8=", + "requires": { + "bluebird": "^3.5.5", + "chalk": "^4.0.0", + "compression": "^1.7.4", + "connect": "^3.7.0", + "mime": "^2.4.3", + "morgan": "^1.9.1", + "open": "^7.0.0", + "serve-static": "^1.14.1" + } + }, + "hexo-theme-next": { + "version": "8.0.1", + "resolved": "https://registry.npm.taobao.org/hexo-theme-next/download/hexo-theme-next-8.0.1.tgz", + "integrity": "sha1-YI4IXk9tjL0PCtrQ1ebnxcz7FXc=" + }, + "hexo-util": { + "version": "2.4.0", + "resolved": "https://registry.npm.taobao.org/hexo-util/download/hexo-util-2.4.0.tgz", + "integrity": "sha1-9cAJmgoXGLOtJwYeXk0fuet/K0E=", + "requires": { + "bluebird": "^3.5.2", + "camel-case": "^4.0.0", + "cross-spawn": "^7.0.0", + "deepmerge": "^4.2.2", + "highlight.js": "^10.0.0", + "htmlparser2": "^4.0.0", + "prismjs": "^1.17.1", + "strip-indent": "^3.0.0", + "striptags": "^3.1.1" + } + }, + "highlight.js": { + "version": "10.3.1", + "resolved": "https://registry.npm.taobao.org/highlight.js/download/highlight.js-10.3.1.tgz", + "integrity": "sha1-PKa/AHN3+q40foE1/yWQCqxzS5o=" + }, + "htmlparser2": { + "version": "4.1.0", + "resolved": "https://registry.npm.taobao.org/htmlparser2/download/htmlparser2-4.1.0.tgz?cache=0&sync_timestamp=1603668594405&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhtmlparser2%2Fdownload%2Fhtmlparser2-4.1.0.tgz", + "integrity": "sha1-mk7xYfLkYl6/ffvmwKL1LRilnng=", + "requires": { + "domelementtype": "^2.0.1", + "domhandler": "^3.0.0", + "domutils": "^2.0.0", + "entities": "^2.0.0" + } + }, + "http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npm.taobao.org/http-errors/download/http-errors-1.7.3.tgz?cache=0&sync_timestamp=1593407710477&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fhttp-errors%2Fdownload%2Fhttp-errors-1.7.3.tgz", + "integrity": "sha1-bGGeT5xgMIw4UZSYwU+7EKrOuwY=", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "dependencies": { + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + } + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npm.taobao.org/inflight/download/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npm.taobao.org/inherits/download/inherits-2.0.4.tgz", + "integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w=" + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/is-binary-path/download/is-binary-path-2.1.0.tgz", + "integrity": "sha1-6h9/O4DwZCNug0cPhsCcJU+0Wwk=", + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-core-module": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/is-core-module/download/is-core-module-2.0.0.tgz?cache=0&sync_timestamp=1603134138732&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-core-module%2Fdownload%2Fis-core-module-2.0.0.tgz", + "integrity": "sha1-WFMbcK7R23wOjU6xoKLR3dZL0S0=", + "requires": { + "has": "^1.0.3" + } + }, + "is-docker": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/is-docker/download/is-docker-2.1.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-docker%2Fdownload%2Fis-docker-2.1.1.tgz", + "integrity": "sha1-QSWojkTkUNOE4JBH7eca3C0UQVY=" + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/is-extglob/download/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npm.taobao.org/is-glob/download/is-glob-4.0.1.tgz", + "integrity": "sha1-dWfb6fL14kZ7x3q4PEopSCQHpdw=", + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npm.taobao.org/is-number/download/is-number-7.0.0.tgz", + "integrity": "sha1-dTU0W4lnNNX4DE0GxQlVUnoU8Ss=" + }, + "is-plain-object": { + "version": "3.0.1", + "resolved": "https://registry.npm.taobao.org/is-plain-object/download/is-plain-object-3.0.1.tgz?cache=0&sync_timestamp=1599667338683&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-plain-object%2Fdownload%2Fis-plain-object-3.0.1.tgz", + "integrity": "sha1-Zi2S0kwKpDAkB7DUXSHyJRyF+Fs=" + }, + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npm.taobao.org/is-wsl/download/is-wsl-2.2.0.tgz", + "integrity": "sha1-dKTHbnfKn9P5MvKQwX6jJs0VcnE=", + "requires": { + "is-docker": "^2.0.0" + } + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/isexe/download/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "js-yaml": { + "version": "3.14.0", + "resolved": "https://registry.npm.taobao.org/js-yaml/download/js-yaml-3.14.0.tgz?cache=0&sync_timestamp=1590172122543&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fjs-yaml%2Fdownload%2Fjs-yaml-3.14.0.tgz", + "integrity": "sha1-p6NBcPJqIbsWJCTYray0ETpp5II=", + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npm.taobao.org/jsonparse/download/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=" + }, + "lower-case": { + "version": "2.0.1", + "resolved": "https://registry.npm.taobao.org/lower-case/download/lower-case-2.0.1.tgz", + "integrity": "sha1-Oe6zbjlhFcwF4pQi6uqeaSyUCMc=", + "requires": { + "tslib": "^1.10.0" + } + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npm.taobao.org/micromatch/download/micromatch-4.0.2.tgz", + "integrity": "sha1-T8sJmb+fvC/L3SEvbWKbmlbDklk=", + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "mime": { + "version": "2.4.6", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-2.4.6.tgz?cache=0&sync_timestamp=1590596728112&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-2.4.6.tgz", + "integrity": "sha1-5bQHyQ20QvK+tbFiNz0Htpr/pNE=" + }, + "mime-db": { + "version": "1.44.0", + "resolved": "https://registry.npm.taobao.org/mime-db/download/mime-db-1.44.0.tgz?cache=0&sync_timestamp=1600831159918&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime-db%2Fdownload%2Fmime-db-1.44.0.tgz", + "integrity": "sha1-+hHF6wrKEzS0Izy01S8QxaYnL5I=" + }, + "mime-types": { + "version": "2.1.27", + "resolved": "https://registry.npm.taobao.org/mime-types/download/mime-types-2.1.27.tgz", + "integrity": "sha1-R5SfmOJ56lMRn1ci4PNOUpvsAJ8=", + "requires": { + "mime-db": "1.44.0" + } + }, + "min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/min-indent/download/min-indent-1.0.1.tgz", + "integrity": "sha1-pj9oFnOzBXH76LwlaGrnRu76mGk=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npm.taobao.org/minimatch/download/minimatch-3.0.4.tgz", + "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npm.taobao.org/minimist/download/minimist-1.2.5.tgz", + "integrity": "sha1-Z9ZgFLZqaoqqDAg8X9WN9OTpdgI=" + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-0.5.5.tgz?cache=0&sync_timestamp=1591257007439&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-0.5.5.tgz", + "integrity": "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8=", + "requires": { + "minimist": "^1.2.5" + } + }, + "moment": { + "version": "2.29.1", + "resolved": "https://registry.npm.taobao.org/moment/download/moment-2.29.1.tgz?cache=0&sync_timestamp=1601983730548&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmoment%2Fdownload%2Fmoment-2.29.1.tgz", + "integrity": "sha1-sr52n6MZQL6e7qZGnAdeNQBvo9M=" + }, + "moment-timezone": { + "version": "0.5.31", + "resolved": "https://registry.npm.taobao.org/moment-timezone/download/moment-timezone-0.5.31.tgz", + "integrity": "sha1-nEDYxQJvDHq0bto9Y+ScFVFI3gU=", + "requires": { + "moment": ">= 2.9.0" + } + }, + "morgan": { + "version": "1.10.0", + "resolved": "https://registry.npm.taobao.org/morgan/download/morgan-1.10.0.tgz", + "integrity": "sha1-CRd4q8H8R801CYJGU9rh+qtrF9c=", + "requires": { + "basic-auth": "~2.0.1", + "debug": "2.6.9", + "depd": "~2.0.0", + "on-finished": "~2.3.0", + "on-headers": "~1.0.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502871403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.2.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.2.tgz", + "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk=" + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz", + "integrity": "sha1-/qz3zPUlp3rpY0Q2pkiD/+yjRvs=" + }, + "nib": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/nib/download/nib-1.1.2.tgz", + "integrity": "sha1-amnt5AgblcDe+L4CSkyK4MLLtsc=", + "requires": { + "stylus": "0.54.5" + }, + "dependencies": { + "stylus": { + "version": "0.54.5", + "resolved": "https://registry.npm.taobao.org/stylus/download/stylus-0.54.5.tgz?cache=0&sync_timestamp=1594899882272&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstylus%2Fdownload%2Fstylus-0.54.5.tgz", + "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "requires": { + "css-parse": "1.7.x", + "debug": "*", + "glob": "7.0.x", + "mkdirp": "0.5.x", + "sax": "0.5.x", + "source-map": "0.1.x" + } + } + } + }, + "no-case": { + "version": "3.0.3", + "resolved": "https://registry.npm.taobao.org/no-case/download/no-case-3.0.3.tgz", + "integrity": "sha1-whtDTB/+SLOQh+hs+00lgunfGPg=", + "requires": { + "lower-case": "^2.0.1", + "tslib": "^1.10.0" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/normalize-path/download/normalize-path-3.0.0.tgz", + "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU=" + }, + "nunjucks": { + "version": "3.2.2", + "resolved": "https://registry.npm.taobao.org/nunjucks/download/nunjucks-3.2.2.tgz", + "integrity": "sha1-RfkV/vD4n7qzjEidyFAl9khZ9GY=", + "requires": { + "a-sync-waterfall": "^1.0.0", + "asap": "^2.0.3", + "chokidar": "^3.3.0", + "commander": "^5.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npm.taobao.org/on-finished/download/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "requires": { + "ee-first": "1.1.1" + } + }, + "on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/on-headers/download/on-headers-1.0.2.tgz", + "integrity": "sha1-dysK5qqlJcOZ5Imt+tkMQD6zwo8=" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npm.taobao.org/once/download/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1" + } + }, + "open": { + "version": "7.3.0", + "resolved": "https://registry.npm.taobao.org/open/download/open-7.3.0.tgz?cache=0&sync_timestamp=1601376312546&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fopen%2Fdownload%2Fopen-7.3.0.tgz", + "integrity": "sha1-RUYf3uRkRPNkW24U6zypS4Lhvmk=", + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npm.taobao.org/parseurl/download/parseurl-1.3.3.tgz", + "integrity": "sha1-naGee+6NEt/wUT7Vt2lXeTvC6NQ=" + }, + "pascal-case": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/pascal-case/download/pascal-case-3.1.1.tgz", + "integrity": "sha1-WsGXUTPtYZKB6Ikglz0s0fJ53l8=", + "requires": { + "no-case": "^3.0.3", + "tslib": "^1.10.0" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/path-is-absolute/download/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-3.1.1.tgz", + "integrity": "sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U=" + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npm.taobao.org/path-parse/download/path-parse-1.0.6.tgz", + "integrity": "sha1-1i27VnlAXXLEc37FhgDp3c8G0kw=" + }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npm.taobao.org/picomatch/download/picomatch-2.2.2.tgz", + "integrity": "sha1-IfMz6ba46v8CRo9RRupAbTRfTa0=" + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/pretty-hrtime/download/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=" + }, + "prismjs": { + "version": "1.22.0", + "resolved": "https://registry.npm.taobao.org/prismjs/download/prismjs-1.22.0.tgz?cache=0&sync_timestamp=1602373660406&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fprismjs%2Fdownload%2Fprismjs-1.22.0.tgz", + "integrity": "sha1-c8NACvxYqCPdfu0CP44c6f2Jd/o=", + "requires": { + "clipboard": "^2.0.0" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npm.taobao.org/range-parser/download/range-parser-1.2.1.tgz", + "integrity": "sha1-PPNwI9GZ4cJNGlW4SADC8+ZGgDE=" + }, + "readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npm.taobao.org/readdirp/download/readdirp-3.5.0.tgz?cache=0&sync_timestamp=1602584560379&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freaddirp%2Fdownload%2Freaddirp-3.5.0.tgz", + "integrity": "sha1-m6dMAZsV02UnjS6Ru4xI17TULJ4=", + "requires": { + "picomatch": "^2.2.1" + } + }, + "resolve": { + "version": "1.18.1", + "resolved": "https://registry.npm.taobao.org/resolve/download/resolve-1.18.1.tgz", + "integrity": "sha1-AY/LLFsgfSpkJK7jYcWiZtqPQTA=", + "requires": { + "is-core-module": "^2.0.0", + "path-parse": "^1.0.6" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npm.taobao.org/resolve-url/download/resolve-url-0.2.1.tgz?cache=0&sync_timestamp=1585438700247&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fresolve-url%2Fdownload%2Fresolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" + }, + "rfdc": { + "version": "1.1.4", + "resolved": "https://registry.npm.taobao.org/rfdc/download/rfdc-1.1.4.tgz", + "integrity": "sha1-unLME2egzNnPgahws7WL060H+MI=" + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npm.taobao.org/safe-buffer/download/safe-buffer-5.1.2.tgz?cache=0&sync_timestamp=1589129010497&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsafe-buffer%2Fdownload%2Fsafe-buffer-5.1.2.tgz", + "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0=" + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npm.taobao.org/safer-buffer/download/safer-buffer-2.1.2.tgz", + "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo=" + }, + "sax": { + "version": "0.5.8", + "resolved": "https://registry.npm.taobao.org/sax/download/sax-0.5.8.tgz", + "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=" + }, + "select": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/select/download/select-1.1.2.tgz", + "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=", + "optional": true + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz?cache=0&sync_timestamp=1586886301819&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz", + "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=" + }, + "send": { + "version": "0.17.1", + "resolved": "https://registry.npm.taobao.org/send/download/send-0.17.1.tgz", + "integrity": "sha1-wdiwWfeQD3Rm3Uk4vcROEd2zdsg=", + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&sync_timestamp=1600502871403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/depd/download/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npm.taobao.org/mime/download/mime-1.6.0.tgz?cache=0&sync_timestamp=1590596728112&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmime%2Fdownload%2Fmime-1.6.0.tgz", + "integrity": "sha1-Ms2eXGRVO9WNGaVor0Uqz/BJgbE=" + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.1.1.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.1.1.tgz", + "integrity": "sha1-MKWGTrPrsKZvLr5tcnrwagnYbgo=" + } + } + }, + "serve-static": { + "version": "1.14.1", + "resolved": "https://registry.npm.taobao.org/serve-static/download/serve-static-1.14.1.tgz", + "integrity": "sha1-Zm5jbcTwEPfvKZcKiKZ0MgiYsvk=", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.1" + } + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npm.taobao.org/setprototypeof/download/setprototypeof-1.1.1.tgz", + "integrity": "sha1-fpWsskqpL1iF4KvvW6ExMw1K5oM=" + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/shebang-command/download/shebang-command-2.0.0.tgz", + "integrity": "sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo=", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/shebang-regex/download/shebang-regex-3.0.0.tgz", + "integrity": "sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI=" + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "requires": { + "amdefine": ">=0.0.4" + } + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npm.taobao.org/source-map-resolve/download/source-map-resolve-0.5.3.tgz?cache=0&sync_timestamp=1584831908370&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map-resolve%2Fdownload%2Fsource-map-resolve-0.5.3.tgz", + "integrity": "sha1-GQhmvs51U+H48mei7oLGBrVQmho=", + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-url": { + "version": "0.4.0", + "resolved": "https://registry.npm.taobao.org/source-map-url/download/source-map-url-0.4.0.tgz", + "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npm.taobao.org/sprintf-js/download/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npm.taobao.org/statuses/download/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-6.0.0.tgz", + "integrity": "sha1-CxVx3XZpzNTz4G4U7x7tJiJa5TI=", + "requires": { + "ansi-regex": "^5.0.0" + } + }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npm.taobao.org/strip-indent/download/strip-indent-3.0.0.tgz", + "integrity": "sha1-wy4c7pQLazQyx3G8LFS8znPNMAE=", + "requires": { + "min-indent": "^1.0.0" + } + }, + "striptags": { + "version": "3.1.1", + "resolved": "https://registry.npm.taobao.org/striptags/download/striptags-3.1.1.tgz", + "integrity": "sha1-yMPn/db7S7OjKjt1LltePjgJPr0=" + }, + "stylus": { + "version": "0.54.8", + "resolved": "https://registry.npm.taobao.org/stylus/download/stylus-0.54.8.tgz?cache=0&sync_timestamp=1594899882272&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstylus%2Fdownload%2Fstylus-0.54.8.tgz", + "integrity": "sha1-PaPmWWa8Vnp7BEv+DuzmU+CZ0Uc=", + "requires": { + "css-parse": "~2.0.0", + "debug": "~3.1.0", + "glob": "^7.1.6", + "mkdirp": "~1.0.4", + "safer-buffer": "^2.1.2", + "sax": "~1.2.4", + "semver": "^6.3.0", + "source-map": "^0.7.3" + }, + "dependencies": { + "css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/css-parse/download/css-parse-2.0.0.tgz", + "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "requires": { + "css": "^2.0.0" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npm.taobao.org/debug/download/debug-3.1.0.tgz?cache=0&sync_timestamp=1600502871403&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-3.1.0.tgz", + "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "requires": { + "ms": "2.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npm.taobao.org/glob/download/glob-7.1.6.tgz", + "integrity": "sha1-FB8zuBp8JJLhJVlDB0gMRmeSeKY=", + "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" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npm.taobao.org/mkdirp/download/mkdirp-1.0.4.tgz?cache=0&sync_timestamp=1591257007439&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fmkdirp%2Fdownload%2Fmkdirp-1.0.4.tgz", + "integrity": "sha1-PrXtYmInVteaXw4qIh3+utdcL34=" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1588851173181&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npm.taobao.org/sax/download/sax-1.2.4.tgz", + "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=" + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.7.3.tgz", + "integrity": "sha1-UwL4FpAxc1ImVECS5kmB91F1A4M=" + } + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1598611732186&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz", + "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=", + "requires": { + "has-flag": "^4.0.0" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npm.taobao.org/text-table/download/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "tildify": { + "version": "2.0.0", + "resolved": "https://registry.npm.taobao.org/tildify/download/tildify-2.0.0.tgz", + "integrity": "sha1-8gXzZ01nfOaYtwZ6melJzgO0dUo=" + }, + "tiny-emitter": { + "version": "2.1.0", + "resolved": "https://registry.npm.taobao.org/tiny-emitter/download/tiny-emitter-2.1.0.tgz", + "integrity": "sha1-HRpW7fxRxD6GPLtTgqcjMONVVCM=", + "optional": true + }, + "titlecase": { + "version": "1.1.3", + "resolved": "https://registry.npm.taobao.org/titlecase/download/titlecase-1.1.3.tgz", + "integrity": "sha1-/G1l/1grBgJBB2jvGgm3BQYxPcM=" + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npm.taobao.org/to-regex-range/download/to-regex-range-5.0.1.tgz", + "integrity": "sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ=", + "requires": { + "is-number": "^7.0.0" + } + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/toidentifier/download/toidentifier-1.0.0.tgz", + "integrity": "sha1-fhvjRw8ed5SLxD2Uo8j013UrpVM=" + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npm.taobao.org/tslib/download/tslib-1.14.1.tgz", + "integrity": "sha1-zy04vcNKE0vK8QkcQfZhni9nLQA=" + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npm.taobao.org/unpipe/download/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npm.taobao.org/urix/download/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npm.taobao.org/utils-merge/download/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npm.taobao.org/vary/download/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "warehouse": { + "version": "4.0.0", + "resolved": "https://registry.npm.taobao.org/warehouse/download/warehouse-4.0.0.tgz", + "integrity": "sha1-RYMrxD4f0yO9nTyGsnYUMLoNHns=", + "requires": { + "JSONStream": "^1.0.7", + "bluebird": "^3.2.2", + "cuid": "^2.1.4", + "graceful-fs": "^4.1.3", + "is-plain-object": "^3.0.0", + "rfdc": "^1.1.4" + } + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npm.taobao.org/which/download/which-2.0.2.tgz", + "integrity": "sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE=", + "requires": { + "isexe": "^2.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..167f564 --- /dev/null +++ b/package.json @@ -0,0 +1,26 @@ +{ + "name": "hexo-site", + "version": "0.0.0", + "private": true, + "scripts": { + "build": "hexo generate", + "clean": "hexo clean", + "deploy": "hexo deploy", + "server": "hexo server" + }, + "hexo": { + "version": "5.2.0" + }, + "dependencies": { + "hexo": "^5.2.0", + "hexo-generator-archive": "^1.0.0", + "hexo-generator-category": "^1.0.0", + "hexo-generator-index-pin-top": "^0.2.2", + "hexo-generator-tag": "^1.0.0", + "hexo-renderer-ejs": "^1.0.0", + "hexo-renderer-pandoc": "^0.3.0", + "hexo-renderer-stylus": "^2.0.0", + "hexo-server": "^2.0.0", + "hexo-theme-next": "^8.0.1" + } +} diff --git a/scaffolds/draft.md b/scaffolds/draft.md new file mode 100644 index 0000000..498e95b --- /dev/null +++ b/scaffolds/draft.md @@ -0,0 +1,4 @@ +--- +title: {{ title }} +tags: +--- diff --git a/scaffolds/page.md b/scaffolds/page.md new file mode 100644 index 0000000..f01ba3c --- /dev/null +++ b/scaffolds/page.md @@ -0,0 +1,4 @@ +--- +title: {{ title }} +date: {{ date }} +--- diff --git a/scaffolds/post.md b/scaffolds/post.md new file mode 100644 index 0000000..1f9b9a4 --- /dev/null +++ b/scaffolds/post.md @@ -0,0 +1,5 @@ +--- +title: {{ title }} +date: {{ date }} +tags: +--- diff --git a/source/_drafts/answer3.md b/source/_drafts/answer3.md new file mode 100644 index 0000000..aa38b28 --- /dev/null +++ b/source/_drafts/answer3.md @@ -0,0 +1,214 @@ +--- +title: 第三次作业(答案) +tags: +--- + +# P108-3 + +写出下面各逻辑表达式的值。设`a = 3`,`b = 4`,`c = 5`。 + +| # | 表达式 | 答案 | +| :---: | :------------------------------ | :-- | +| 1 | `a + b > c && b == c` | `0` | +| 2 | `a || b + c && b - c` | `1` | +| 3 | `!(a > b) && !c || 1` | `1` | +| 4 | `!(x = a) && (y = b) && 0` | `0` | +| 5 | `!(a + b) + c - 1 && b + c / 2` | `1` | + +# P108-6 + +```C +#include +#include + +int main() +{ + double x, y; + + printf("This program calculates y: \n"); + printf("\n"); + printf(" y = x (x < 1)\n"); + printf(" 2x - 1 (1 <= x < 10)\n"); + printf(" 3x - 11 (x >= 10)\n"); + printf("\n"); + printf("Please input x:\n"); + printf("x = "); + + if (scanf("%lf", &x) != 1) { + fprintf(stderr, "Invalid input!\n"); + exit(EXIT_FAILURE); + } + + if (x < 1) { + y = x; + } else if (x < 10) { + y = 2 * x - 1; + } else { + y = 3 * x - 11; + } + + printf("y = %f\n", y); + + return 0; +} +``` + +# P108-9 + +```C +#include +#include + +int main() +{ + int n; + printf("请输入n: \nn = "); + if (scanf("%d", &n) != 1 || n > 99999 || n < 1) { + fprintf(stderr, "非法输入!\n"); + exit(EXIT_FAILURE); + } + + // 求位数 + int tmp = n; + int digits = 5; + for (int i = 0; i < 5; ++i) { + if (tmp == 0) { + digits = i; + break; + } + tmp /= 10; + } + printf("%d有%d位\n", n, digits); + + // 输出每一位: + tmp = n; + int digit_1 = tmp % 10; + tmp /= 10; + int digit_2 = tmp % 10; + tmp /= 10; + int digit_3 = tmp % 10; + tmp /= 10; + int digit_4 = tmp % 10; + tmp /= 10; + int digit_5 = tmp; + if (digits >= 1) { + printf("它的个位是%d\n", digit_1); + } + if (digits >= 2) { + printf("它的十位是%d\n", digit_2); + } + if (digits >= 3) { + printf("它的百位是%d\n", digit_3); + } + if (digits >= 4) { + printf("它的千位是%d\n", digit_4); + } + if (digits >= 5) { + printf("它的万位是%d\n", digit_5); + } + + // 逆向输出 + printf("逆向输出是"); + printf("%d", digit_1); + if (digits >= 2) { + printf("%d", digit_2); + } + if (digits >= 3) { + printf("%d", digit_3); + } + if (digits >= 4) { + printf("%d", digit_4); + } + if (digits >= 5) { + printf("%d", digit_5); + } + printf("\n"); + + return 0; +} +``` + +# P108-12 + +```C +#include +#include + +int main() +{ + double r2 = 1; + double ax = 2, ay = 2, + bx = -2, by = 2, + cx = -2, cy = -2, + dx = 2, dy = -2; + double x, y; + printf("请分别输入所在位置的的x、y坐标:\nx = "); + if (scanf("%lf", &x) != 1) { + fprintf(stderr, "非法输入!\n"); + exit(EXIT_FAILURE); + } + printf("y = "); + if (scanf("%lf", &y) != 1) { + fprintf(stderr, "非法输入!\n"); + exit(EXIT_FAILURE); + } + double da2 = (x - ax) * (x - ax) + (y - ay) * (y - ay), + db2 = (x - bx) * (x - bx) + (y - by) * (y - by), + dc2 = (x - cx) * (x - cx) + (y - cy) * (y - cy), + dd2 = (x - dx) * (x - dx) + (y - dy) * (y - dy); + + if (da2 <= r2 || db2 <= r2 || dc2 <= r2 || dd2 <= r2) { + printf("该点高度是10m\n"); + } else { + printf("该点高度是0m\n"); + } + return 0; +} +``` + +# 解一元二次方程 + +```C +#include +#include +#include +#include + +int main() +{ + double a, b, c; + printf("一元二次方程求根\n"); + printf("a x^2 + b x + c = 0\n"); + printf("请输入a、b、c:\na = "); + if (scanf("%lf", &a) != 1 || a == 0) { + fprintf(stderr, "非法输入!\n"); + exit(EXIT_FAILURE); + } + printf("b = "); + if (scanf("%lf", &b) != 1) { + fprintf(stderr, "非法输入!\n"); + exit(EXIT_FAILURE); + } + printf("c = "); + if (scanf("%lf", &c) != 1) { + fprintf(stderr, "非法输入!\n"); + exit(EXIT_FAILURE); + } + + double delta = b * b - 4 * a * c; + + if (delta == 0) { + printf("x1 = x2 = %f\n", -b / 2 / a); + } else if (delta > 0) { + double x1 = (-b + sqrt(delta)) / 2 / a; + double x2 = (-b - sqrt(delta)) / 2 / a; + printf("x1 = %f\nx2 = %f\n", x1, x2); + } else { + double complex x1 = (-b + csqrt(delta)) / 2 / a; + double complex x2 = (-b - csqrt(delta)) / 2 / a; + printf("x1 = %f %+fi\nx2 = %f %+fi\n", creal(x1), cimag(x1), creal(x2), cimag(x2)); + } + + return 0; +} +``` \ No newline at end of file diff --git a/source/_posts/answer1.md b/source/_posts/answer1.md new file mode 100644 index 0000000..53050f2 --- /dev/null +++ b/source/_posts/answer1.md @@ -0,0 +1,46 @@ +--- +title: 第一次作业(答案) +date: 2020-10-30 09:53:13 +tags: +--- + + +# 第一题 + +写出下列程序运行的结果: + +``` +sizeof: 4, a = 61, b = 62 +sizeof: 1, c1 = a, c2 = b +sizeof: 4, d = 3.56 , e = -6.78 +sizeof: 8, f = 3157.890121 , g = 0.123456789000 +sizeof: 4, m = 50000, n = -60000 +sizeof: 4, p = 32768, q = 4000 +``` + +有些同学可能遇到警告:`"printf": 格式字符串"%d"需要类型"int"的参数,但可变参数 1 拥有了类型"size_t"`,这是因为`sizeof()`的类型是`size_t`而非`int`,在`printf()`中与`%d`的类型不匹配。可以尝试`%zu`(C99标准及以后)或`%lu`(ANSI C标准)。 + +# 第二题 + +``` +9, 11, 9, 10 +``` + +# 第三题 + +| # | 表达式 | 变量的值 | 结果 | +| :---: | :------------------------------------- | :--------------------------------- | :---- | +| 1 | `3.5 + 1 / 2 + 56 % 10` | | `9.5` | +| 2 | `(a++ * 1 / 3)` | 设`a = 2` | `0` | +| 3 | `x + a % 3 * (int)(x + y) % 2 / 4` | 设`x = 2.5, a = 7, y = 4.7` | `2.5` | +| 4 | `(float)(a + b) / 2 + (int)x % (int)y` | 设a` = 2, b = 3, x = 3.5, y = 2.5` | `3.5` | +| 5 | `x = (x = ++y, x + 5, x / 5)` | 设`x = 3, y = 4` | `1` | + +# 第五题 + +写出下面表达式运算后a的值,设原来a = 12。 + +1. `24` +2. `60` +3. `0` +4. `0` diff --git a/source/_posts/answer2.md b/source/_posts/answer2.md new file mode 100644 index 0000000..46dc774 --- /dev/null +++ b/source/_posts/answer2.md @@ -0,0 +1,141 @@ +--- +title: 第二次作业(答案) +mathjax: true +date: 2020-10-30 10:35:37 +tags: +--- + + +# P82-6 + +```C +#include + +#define OFFSET 4 + +int main() +{ + char c1 = 'C', + c2 = 'h', + c3 = 'i', + c4 = 'n', + c5 = 'a'; + + c1 += OFFSET; + c2 += OFFSET; + c3 += OFFSET; + c4 += OFFSET; + c5 += OFFSET; + + /* 使用putchar()输出 */ + putchar(c1); + putchar(c2); + putchar(c3); + putchar(c4); + putchar(c5); + + /* 使用printf()输出 */ + + printf("%c%c%c%c%c", c1, c2, c3, c4, c5); + + return 0; +} +``` + +# P82-7 + +圆半径 $r = 1.5$ ,圆柱高 $h = 3$ ,分别用变量`radius`和`height`存储。圆的周长 $P_{\mathrm{circle}} = 2 \pi r$ ,用变量`circle_perimeter`存储;圆的面积 $A_{\mathrm{circle}} = \pi r^{2}$ ,用变量`circle_area`存储;圆球表面积 $A_{\mathrm{sphere}} = 4 \pi r^{2}$ ,用变量`sphere_area`存储;圆球体积 $V_{\mathrm{ball}} = \frac{4}{3} \pi r^{3}$ ,用变量`ball_volume`存储;圆柱体积 $V_{\mathrm{cylinder}} = \pi r^{2} h$ ,用变量`cylinder_volume`存储。 + +在这个程序中用到了`M_PI`,相关内容请见:[Math Constants](https://docs.microsoft.com/en-us/cpp/c-runtime-library/math-constants?view=vs-2019),[19.1 Predefined Mathematical Constants](https://www.gnu.org/software/libc/manual/html_node/Mathematical-Constants.html)。 + +```C +#include +#include +#define _USE_MATH_DEFINES +#include + +int main() +{ + printf("This program calculates the perimeter and area of the circle, "); + printf("the area and the volume of the ball, and the volume of the cylinder.\n"); + + double radius, height; + /* 检查用户输入是否合法 */ + printf("Please input the radius: "); + if (scanf("%lf", &radius) != 1 || radius <= 0) { + printf("Invalid input!\n"); + exit(EXIT_FAILURE); + } + printf("Please input the height: "); + if (scanf("%lf", &height) != 1 || height <= 0) { + printf("Invalid input!\n"); + exit(EXIT_FAILURE); + } + + double circle_perimeter = 2 * M_PI * radius; + printf("The perimeter of the circle is %.2f\n", circle_perimeter); + + double circle_area = M_PI * radius * radius; + printf("The area of the circle is %.2f\n", circle_area); + + double sphere_area = 4 * M_PI * radius * radius; + printf("The area of the sphere is %.2f\n", sphere_area); + + double ball_volume = 4.0 / 3.0 * M_PI * radius * radius * radius; + printf("The volume of the ball is %.2f\n", ball_volume); + + double cylinder_volume = M_PI * radius * radius * height; + printf("The volume of the cylinder is %.2f\n", cylinder_volume); + + return 0; +} +``` + +# P82-8 + +```C +#include + +int main() +{ + char c1 = getchar(); + char c2 = getchar(); + + putchar(c1); + putchar(c2); + printf("%c%c", c1, c2); + + /* 打印ASCII码 */ + printf("%d%d", c1, c2); + + return 0; +} +``` + +1. 二者皆可。 +2. 可以用`printf("%d", c1);`这种方式来输出它们的ASCII码。 +3. 不可以。两者占用的内存空间不同,表示的数的范围不同。`char`类型是不是有符号类型,视实现而定。 + +# 温度转换 + +```C +#include +#include + +int main() +{ + printf("Please input the temperature (in fahrenheit): "); + + double degree_f; + if (scanf("%lf", °ree_f) != 1) { + printf("Invalid input!\n"); + exit(EXIT_FAILURE); + } + + double degree_c = (degree_f - 32.0) * 5.0 / 9.0; + + printf("%.1f degree fahrenheit equals to %.1f degree celsius.\n", degree_f, degree_c); + + return 0; +} +``` \ No newline at end of file diff --git a/source/_posts/downloads.md b/source/_posts/downloads.md new file mode 100644 index 0000000..279d5ed --- /dev/null +++ b/source/_posts/downloads.md @@ -0,0 +1,47 @@ +--- +title: 资源下载 +date: 2020-10-29 20:58:43 +tags: +--- + + +# Code::Blocks + +网站:[http://www.codeblocks.org/](http://www.codeblocks.org/) + +下载:[codeblocks-20.03mingw-setup.exe](/~zhaozuohong/resources/codeblocks-20.03mingw-setup.exe) + +## 汉化相关 + +1. 下载中文语言文件[zh_CN_LC_MESSAGES_codeblocks.mo](/~zhaozuohong/resources/zh_CN_LC_MESSAGES_codeblocks.mo); +2. 在`C:\Program Files\Codeblocks\share\Codeblocks\`下新建`locale`文件夹,再在`locale`文件夹中新建`zh_CN`文件夹; +3. 将`zh_CN_LC_MESSAGES_codeblocks.mo`文件放到刚才创建的`zh_CN`文件夹中; +4. 打开Code::Blocks,点击菜单`Settings` - `Enviroments...`,在弹出的设置窗口中,点击左侧的`View`,选中`Internalization (will take place after restart)`,并在右侧的下拉列表中选择`Chinese (Simplified)`。 +5. 重启Code::Blocks,汉化完成。 + +# 课件 + +[第1章 计算机及程序设计基础知识.ppt](/~zhaozuohong/resources/Chapter1.ppt) + +[第2章 C语言概述.ppt](/~zhaozuohong/resources/Chapter2.ppt) + +[第3章 数据类型、运算符与表达式.ppt](/~zhaozuohong/resources/Chapter3.ppt) + +[第4章 顺序结构程序设计.ppt](/~zhaozuohong/resources/Chapter4.ppt) + +[第5章 选择结构程序设计.ppt](/~zhaozuohong/resources/Chapter5.ppt) + +[第6章 循环结构程序设计.ppt](/~zhaozuohong/resources/Chapter6.ppt) + +[第7章 数组.ppt](/~zhaozuohong/resources/Chapter7.ppt) + +# 上机讲解 + +[第一次上机讲解.pptx](/~zhaozuohong/resources/Experiment1.pptx) + +[第二次上机讲解.pptx](/~zhaozuohong/resources/Experiment2.pptx) + +# 其它参考资料 + +[C语言程序设计习题选编.pdf](/~zhaozuohong/resources/C-experiments.ppt) + diff --git a/source/_posts/homework.md b/source/_posts/homework.md new file mode 100644 index 0000000..353e538 --- /dev/null +++ b/source/_posts/homework.md @@ -0,0 +1,23 @@ +--- +title: 作业与答案 +top: true +date: 2020-10-30 09:39:53 +tags: +--- + + +# 第一次作业 + +* [题目](/~zhaozuohong/homework1/) +* [答案](/~zhaozuohong/answer1) + +# 第二次作业 + +* [题目](/~zhaozuohong/homework2/) +* [答案](/~zhaozuohong/answer2) + +# 第三次作业 + +* [题目](/~zhaozuohong/homework3/) +* *答案暂未开放* + diff --git a/source/_posts/homework1.md b/source/_posts/homework1.md new file mode 100644 index 0000000..0e83643 --- /dev/null +++ b/source/_posts/homework1.md @@ -0,0 +1,75 @@ +--- +title: 第一次作业(题目) +date: 2020-10-30 09:47:21 +tags: +--- + + +# 第一题 + +写出下列程序运行的结果: + +```C +#include + +int main() +{ + int a, b; + char c1, c2; + float d, e; + double f, g; + long m, n; + unsigned int p, q; + a = 61; b = 62; + c1 = 'a'; c2 = 'b'; + d = 3.56; e = -6.78; + f = 3157.890121; g = 0.123456789; + m = 50000; n = -60000; + p = 32768; q = 4000; + printf("sizeof: %d, a = %d, b = %d\n", sizeof(int), a, b); + printf("sizeof: %d, c1 = %c, c2 = %c\n", sizeof(char), c1, c2); + printf("sizeof: %d, d = %-6.2f, e = %-6.2f\n", sizeof(float), d, e); + printf("sizeof: %d, f = %-15.6f, g = %-15.12f\n", sizeof(double), f, g); + printf("sizeof: %d, m = %ld, n = %ld\n", sizeof(long), m, n); + printf("sizeof: %d, p = %u, q = %u\n", sizeof(unsigned), p, q); + return 0; +} +``` + +# 第二题 + +写出下列程序的运行结果: + +```C +#include + +int main() +{ + int i, j, m, n; + i = 8; j = 10; + m = ++i; n = j++; + printf("%d, %d, %d, %d\n", i, j, m, n); + return 0; +} +``` + +# 第三题 + +求下面算术表达式的值: + +| # | 表达式 | 变量的值 | +| :---: | :------------------------------------- | :--------------------------------- | +| 1 | `3.5 + 1 / 2 + 56 % 10` | | +| 2 | `(a++ * 1 / 3)` | 设`a = 2` | +| 3 | `x + a % 3 * (int)(x + y) % 2 / 4` | 设`x = 2.5, a = 7, y = 4.7` | +| 4 | `(float)(a + b) / 2 + (int)x % (int)y` | 设a` = 2, b = 3, x = 3.5, y = 2.5` | +| 5 | `x = (x = ++y, x + 5, x / 5)` | 设`x = 3, y = 4` | + +# 第五题 + +写出下面表达式运算后`a`的值,设原来`a = 12`。 + +1. `a += a` +2. `a *= 2 + 3` +3. `a /= a + a` +4. `a += a -= a *= a` diff --git a/source/_posts/homework2.md b/source/_posts/homework2.md new file mode 100644 index 0000000..a6723e9 --- /dev/null +++ b/source/_posts/homework2.md @@ -0,0 +1,39 @@ +--- +title: 第二次作业(题目) +mathjax: true +date: 2020-10-30 10:20:37 +tags: +--- + + +# 作业要求 + +* 纸质作业:把代码写在作业本上,周五(10月23日)上课时提交。 +* 上机内容:输入、调试代码。 + +# P82-6 + +请编程序将`"China"`译成密码,密码规律是,用原来的字母后面第4个字母代替原来的字母。例如,字母`A`后面第4个字母是`E`,用`E`代替`A`。因此,`"China"`应译为`"Glmre"`。请编一程序,用赋初值的方法使`c1`,`c2`,`c3`,`c4`,`c5`这5个变量的值分别为`'C'`,`'h'`,`'i'`,`'n'`,`'a'`,经过运算,使`c1`,`c2`,`c3`,`c4`,`c5`分别变为`'G'`,`'l'`,`'m'`,`'r'`,`'e'`,分别用`putchar()`函数和`printf()`函数输出这5个字符。 + +# P82-7 + +设圆半径 $r = 1.5$ ,圆柱高 $h = 3$ ,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积,用`scanf()`输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字,请编程序。 + +# P82-8 + +编程序,用`getchar()`函数读入两个字符给`c1`和`c2`,然后分别用`putchar()`函数和`printf()`函数输出这两个字符。思考以下问题: + +1. 变量`c1`和`c2`应定义为字符型、整型还是二者皆可? +2. 要求输出`c1`和`c2`值的ASCII码,应如何处理?用`putchar()`函数还是`printf()`函数? +3. 整型变量与字符变量是否在任何情况下都可以互相代替?如:`char c1, c2;`与`int c1, c2;`是否无条件地等价? + +# 温度转换 + +编程实现华氏温度到摄氏温度的转换。 + +提示: +$$ +\begin{equation*} +T_{\mathrm{\left ({}^{o}C \right )}} = \left ( T_{\mathrm{\left ({}^{o}F \right )}} - 32 \right ) \times \frac{5}{9} +\end{equation*} +$$ \ No newline at end of file diff --git a/source/_posts/homework3.md b/source/_posts/homework3.md new file mode 100644 index 0000000..9fadd12 --- /dev/null +++ b/source/_posts/homework3.md @@ -0,0 +1,54 @@ +--- +title: 第三次作业(题目) +mathjax: true +date: 2020-10-30 12:33:44 +tags: +--- + + + +# P108-3 + +写出下面各逻辑表达式的值。设`a = 3`,`b = 4`,`c = 5`。 + +| # | 表达式 | +| :---: | :------------------------------ | +| 1 | `a + b > c && b == c` | +| 2 | `a || b + c && b = c` | +| 3 | `!(a > b) && !c || 1` | +| 4 | `!(x = a) && (y = b) && 0` | +| 5 | `!(a + b) + c - 1 && b + c / 2` | + +# P108-6 + +有一个函数: +$$ +\begin{equation*} +y = \left \{ +\begin{array}{ll} +x & (x < 1) \\ +2 x - 1 & (1 \leq x < 10 ) \\ +3 x - 11 & (x \geq 10) +\end{array} +\right. +\end{equation*} +$$ +写程序,输入 $x$ 的值,输出 $y$ 相应的值。 + +# P108-9 + +给出一个不多于5位的正整数,要求: + +1. 求出它是几位数; +2. 分别输出每一位数字; +3. 按逆序输出各数字,例如原数为 $321$ ,应输出 $123$ 。 + +# P108-12 + +有4个圆塔,圆心分别为 $(2,2)$ 、 $(-2,2)$ 、 $(-2,-2)$ 、 $(2,-2)$ ,圆半径为 $1$ ,如下图所示。这4个塔的高度为 $10\mathrm{m}$ ,塔以外无建筑物。今输入任一点的坐标,求该点的建筑高度(塔外的高度为 $0$ )。 + +{% asset_img P108-12.png This is an image %} + +# 解一元二次方程 + +要求:包括虚根。 \ No newline at end of file diff --git a/source/_posts/homework3/P108-12.png b/source/_posts/homework3/P108-12.png new file mode 100644 index 0000000000000000000000000000000000000000..f4e0b171b1c468b75fc87637be86ab95c7eaeef5 GIT binary patch literal 386785 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%0DbAyPV$sf2@6XK#l$T|6?Q^qz4_V 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 z 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 literal 0 HcmV?d00001 diff --git a/themes/landscape/.gitignore b/themes/landscape/.gitignore new file mode 100644 index 0000000..6e3a08a --- /dev/null +++ b/themes/landscape/.gitignore @@ -0,0 +1,3 @@ +.DS_Store +node_modules +tmp \ No newline at end of file diff --git a/themes/landscape/Gruntfile.js b/themes/landscape/Gruntfile.js new file mode 100644 index 0000000..59fd5df --- /dev/null +++ b/themes/landscape/Gruntfile.js @@ -0,0 +1,46 @@ +module.exports = function(grunt){ + grunt.initConfig({ + gitclone: { + fontawesome: { + options: { + repository: 'https://github.com/FortAwesome/Font-Awesome.git', + directory: 'tmp/fontawesome' + }, + }, + fancybox: { + options: { + repository: 'https://github.com/fancyapps/fancyBox.git', + directory: 'tmp/fancybox' + } + } + }, + copy: { + fontawesome: { + expand: true, + cwd: 'tmp/fontawesome/fonts/', + src: ['**'], + dest: 'source/css/fonts/' + }, + fancybox: { + expand: true, + cwd: 'tmp/fancybox/source/', + src: ['**'], + dest: 'source/fancybox/' + } + }, + _clean: { + tmp: ['tmp'], + fontawesome: ['source/css/fonts'], + fancybox: ['source/fancybox'] + } + }); + + require('load-grunt-tasks')(grunt); + + grunt.renameTask('clean', '_clean'); + + grunt.registerTask('fontawesome', ['gitclone:fontawesome', 'copy:fontawesome', '_clean:tmp']); + grunt.registerTask('fancybox', ['gitclone:fancybox', 'copy:fancybox', '_clean:tmp']); + grunt.registerTask('default', ['gitclone', 'copy', '_clean:tmp']); + grunt.registerTask('clean', ['_clean']); +}; \ No newline at end of file diff --git a/themes/landscape/LICENSE b/themes/landscape/LICENSE new file mode 100644 index 0000000..9ce4d32 --- /dev/null +++ b/themes/landscape/LICENSE @@ -0,0 +1,7 @@ +Copyright (c) 2013 Tommy Chen + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +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 OR COPYRIGHT HOLDERS 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. \ No newline at end of file diff --git a/themes/landscape/README.md b/themes/landscape/README.md new file mode 100644 index 0000000..90ecccd --- /dev/null +++ b/themes/landscape/README.md @@ -0,0 +1,112 @@ +# Landscape + +A brand new default theme for [Hexo]. + +- [Preview](http://hexo.io/hexo-theme-landscape/) + +## Installation + +### Install + +``` bash +$ git clone https://github.com/hexojs/hexo-theme-landscape.git themes/landscape +``` + +**Landscape requires Hexo 2.4 and above.** If you would like to enable the RSS, the [hexo-generate-feed] plugin is also required. + +### Enable + +Modify `theme` setting in `_config.yml` to `landscape`. + +### Update + +``` bash +cd themes/landscape +git pull +``` + +## Configuration + +``` yml +# Header +menu: + Home: / + Archives: /archives +rss: /atom.xml + +# Content +excerpt_link: Read More +fancybox: true + +# Sidebar +sidebar: right +widgets: +- category +- tag +- tagcloud +- archives +- recent_posts + +# Miscellaneous +google_analytics: +favicon: /favicon.png +twitter: +google_plus: +``` + +- **menu** - Navigation menu +- **rss** - RSS link +- **excerpt_link** - "Read More" link at the bottom of excerpted articles. `false` to hide the link. +- **fancybox** - Enable [Fancybox] +- **sidebar** - Sidebar style. You can choose `left`, `right`, `bottom` or `false`. +- **widgets** - Widgets displaying in sidebar +- **google_analytics** - Google Analytics ID +- **favicon** - Favicon path +- **twitter** - Twiiter ID +- **google_plus** - Google+ ID + +## Features + +### Fancybox + +Landscape uses [Fancybox] to showcase your photos. You can use Markdown syntax or fancybox tag plugin to add your photos. + +``` +![img caption](img url) + +{% fancybox img_url [img_thumbnail] [img_caption] %} +``` + +### Sidebar + +You can put your sidebar in left side, right side or bottom of your site by editing `sidebar` setting. + +Landscape provides 5 built-in widgets: + +- category +- tag +- tagcloud +- archives +- recent_posts + +All of them are enabled by default. You can edit them in `widget` setting. + +## Development + +### Requirements + +- [Grunt] 0.4+ +- Hexo 2.4+ + +### Grunt tasks + +- **default** - Download [Fancybox] and [Font Awesome]. +- **fontawesome** - Only download [Font Awesome]. +- **fancybox** - Only download [Fancybox]. +- **clean** - Clean temporarily files and downloaded files. + +[Hexo]: https://hexo.io/ +[Fancybox]: http://fancyapps.com/fancybox/ +[Font Awesome]: http://fontawesome.io/ +[Grunt]: http://gruntjs.com/ +[hexo-generate-feed]: https://github.com/hexojs/hexo-generator-feed diff --git a/themes/landscape/_config.yml b/themes/landscape/_config.yml new file mode 100644 index 0000000..ca22374 --- /dev/null +++ b/themes/landscape/_config.yml @@ -0,0 +1,37 @@ +# Header +menu: + Home: / + Archives: /archives +rss: /atom.xml + +# Content +excerpt_link: Read More +fancybox: true + +# Sidebar +sidebar: right +widgets: +- category +- tag +- tagcloud +- archive +- recent_posts + +# display widgets at the bottom of index pages (pagination == 2) +index_widgets: +# - category +# - tagcloud +# - archive + +# widget behavior +archive_type: 'monthly' +show_count: false + +# Miscellaneous +google_analytics: +gauges_analytics: +favicon: /favicon.png +twitter: +google_plus: +fb_admins: +fb_app_id: diff --git a/themes/landscape/languages/de.yml b/themes/landscape/languages/de.yml new file mode 100644 index 0000000..630055f --- /dev/null +++ b/themes/landscape/languages/de.yml @@ -0,0 +1,19 @@ +categories: Kategorien +search: Suche +tags: Tags +tagcloud: Tag Cloud +tweets: Tweets +prev: zurück +next: weiter +comment: Kommentare +archive_a: Archiv +archive_b: "Archive: %s" +page: Seite %d +recent_posts: letzter Beitrag +newer: Neuer +older: Älter +share: Teilen +powered_by: Powered by +rss_feed: RSS Feed +category: Kategorie +tag: Tag diff --git a/themes/landscape/languages/default.yml b/themes/landscape/languages/default.yml new file mode 100644 index 0000000..3ef7e92 --- /dev/null +++ b/themes/landscape/languages/default.yml @@ -0,0 +1,19 @@ +categories: Categories +search: Search +tags: Tags +tagcloud: Tag Cloud +tweets: Tweets +prev: Prev +next: Next +comment: Comments +archive_a: Archives +archive_b: "Archives: %s" +page: Page %d +recent_posts: Recent Posts +newer: Newer +older: Older +share: Share +powered_by: Powered by +rss_feed: RSS Feed +category: Category +tag: Tag \ No newline at end of file diff --git a/themes/landscape/languages/es.yml b/themes/landscape/languages/es.yml new file mode 100644 index 0000000..d862e87 --- /dev/null +++ b/themes/landscape/languages/es.yml @@ -0,0 +1,19 @@ +categories: Categorías +search: Buscar +tags: Tags +tagcloud: Nube de Tags +tweets: Tweets +prev: Previo +next: Siguiente +comment: Comentarios +archive_a: Archivos +archive_b: "Archivos: %s" +page: Página %d +recent_posts: Posts recientes +newer: Nuevo +older: Viejo +share: Compartir +powered_by: Construido por +rss_feed: RSS +category: Categoría +tag: Tag \ No newline at end of file diff --git a/themes/landscape/languages/fr.yml b/themes/landscape/languages/fr.yml new file mode 100644 index 0000000..c84f51b --- /dev/null +++ b/themes/landscape/languages/fr.yml @@ -0,0 +1,19 @@ +categories: Catégories +search: Rechercher +tags: Mot-clés +tagcloud: Nuage de mot-clés +tweets: Tweets +prev: Précédent +next: Suivant +comment: Commentaires +archive_a: Archives +archive_b: "Archives: %s" +page: Page %d +recent_posts: Articles récents +newer: Récent +older: Ancien +share: Partager +powered_by: Propulsé par +rss_feed: Flux RSS +category: Catégorie +tag: Mot-clé diff --git a/themes/landscape/languages/ja.yml b/themes/landscape/languages/ja.yml new file mode 100644 index 0000000..af0f7fe --- /dev/null +++ b/themes/landscape/languages/ja.yml @@ -0,0 +1,19 @@ +categories: カテゴリ +search: 検索 +tags: タグ +tagcloud: タグクラウド +tweets: ツイート +prev: 戻る +next: 次へ +comment: コメント +archive_a: アーカイブ +archive_b: "アーカイブ: %s" +page: ページ %d +recent_posts: 最近の投稿 +newer: 次の記事 +older: 前の記事 +share: 共有 +powered_by: Powered by +rss_feed: RSSフィード +category: カテゴリ +tag: タグ diff --git a/themes/landscape/languages/ko.yml b/themes/landscape/languages/ko.yml new file mode 100644 index 0000000..1d27b43 --- /dev/null +++ b/themes/landscape/languages/ko.yml @@ -0,0 +1,19 @@ +categories: 카테고리 +search: 검색 +tags: 태그 +tagcloud: 태그 클라우드 +tweets: 트윗 +prev: 이전 +next: 다음 +comment: 댓글 +archive_a: 아카이브 +archive_b: "아카이브: %s" +page: 페이지 %d +recent_posts: 최근 포스트 +newer: 최신 +older: 이전 +share: 공유 +powered_by: Powered by +rss_feed: RSS Feed +category: 카테고리 +tag: 태그 diff --git a/themes/landscape/languages/nl.yml b/themes/landscape/languages/nl.yml new file mode 100644 index 0000000..568d33e --- /dev/null +++ b/themes/landscape/languages/nl.yml @@ -0,0 +1,20 @@ + +categories: Categorieën +search: Zoeken +tags: Labels +tagcloud: Tag Cloud +tweets: Tweets +prev: Vorige +next: Volgende +comment: Commentaren +archive_a: Archieven +archive_b: "Archieven: %s" +page: Pagina %d +recent_posts: Recente berichten +newer: Nieuwer +older: Ouder +share: Delen +powered_by: Powered by +rss_feed: RSS Feed +category: Categorie +tag: Label diff --git a/themes/landscape/languages/no.yml b/themes/landscape/languages/no.yml new file mode 100644 index 0000000..b997691 --- /dev/null +++ b/themes/landscape/languages/no.yml @@ -0,0 +1,19 @@ +categories: Kategorier +search: Søk +tags: Tags +tagcloud: Tag Cloud +tweets: Tweets +prev: Forrige +next: Neste +comment: Kommentarer +archive_a: Arkiv +archive_b: "Arkiv: %s" +page: Side %d +recent_posts: Siste innlegg +newer: Newer +older: Older +share: Share +powered_by: Powered by +rss_feed: RSS Feed +category: Category +tag: Tag \ No newline at end of file diff --git a/themes/landscape/languages/pt.yml b/themes/landscape/languages/pt.yml new file mode 100644 index 0000000..3d74af3 --- /dev/null +++ b/themes/landscape/languages/pt.yml @@ -0,0 +1,19 @@ +categories: Categorias +search: Buscar +tags: Tags +tagcloud: Nuvem de Tags +tweets: Tweets +prev: Anterior +next: Próximo +comment: Comentários +archive_a: Arquivos +archive_b: "Arquivos: %s" +page: Página %d +recent_posts: Postagens Recentes +newer: Mais Recente +older: Mais Antigo +share: Compartilhar +powered_by: Desenvolvido por +rss_feed: Feed RSS +category: Categoria +tag: Tag diff --git a/themes/landscape/languages/ru.yml b/themes/landscape/languages/ru.yml new file mode 100644 index 0000000..625a83c --- /dev/null +++ b/themes/landscape/languages/ru.yml @@ -0,0 +1,19 @@ +categories: Категории +search: Поиск +tags: Метки +tagcloud: Облако меток +tweets: Твиты +prev: Назад +next: Вперед +comment: Комментарии +archive_a: Архив +archive_b: "Архив: %s" +page: Страница %d +recent_posts: Недавние записи +newer: Следующий +older: Предыдущий +share: Поделиться +powered_by: Создано с помощью +rss_feed: RSS-каналы +category: Категория +tag: Метка \ No newline at end of file diff --git a/themes/landscape/languages/zh-CN.yml b/themes/landscape/languages/zh-CN.yml new file mode 100644 index 0000000..51e1321 --- /dev/null +++ b/themes/landscape/languages/zh-CN.yml @@ -0,0 +1,19 @@ +categories: 分类 +search: 搜索 +tags: 标签 +tagcloud: 标签云 +tweets: 推文 +prev: 上一页 +next: 下一页 +comment: 留言 +archive_a: 归档 +archive_b: 归档:%s +page: 第 %d 页 +recent_posts: 最新文章 +newer: Newer +older: Older +share: Share +powered_by: Powered by +rss_feed: RSS Feed +category: Category +tag: Tag \ No newline at end of file diff --git a/themes/landscape/languages/zh-TW.yml b/themes/landscape/languages/zh-TW.yml new file mode 100644 index 0000000..76d2916 --- /dev/null +++ b/themes/landscape/languages/zh-TW.yml @@ -0,0 +1,19 @@ +categories: 分類 +search: 搜尋 +tags: 標籤 +tagcloud: 標籤雲 +tweets: 推文 +prev: 上一頁 +next: 下一頁 +comment: 留言 +archive_a: 彙整 +archive_b: 彙整:%s +page: 第 %d 頁 +recent_posts: 最新文章 +newer: Newer +older: Older +share: Share +powered_by: Powered by +rss_feed: RSS Feed +category: Category +tag: Tag \ No newline at end of file diff --git a/themes/landscape/layout/_partial/after-footer.ejs b/themes/landscape/layout/_partial/after-footer.ejs new file mode 100644 index 0000000..ff2d509 --- /dev/null +++ b/themes/landscape/layout/_partial/after-footer.ejs @@ -0,0 +1,25 @@ +<% if (config.disqus_shortname){ %> + +<% } %> + + + +<% if (theme.fancybox){ %> + <%- css('fancybox/jquery.fancybox') %> + <%- js('fancybox/jquery.fancybox.pack') %> +<% } %> + +<%- js('js/script') %> +<%- partial('gauges-analytics') %> diff --git a/themes/landscape/layout/_partial/archive-post.ejs b/themes/landscape/layout/_partial/archive-post.ejs new file mode 100644 index 0000000..36f2cc3 --- /dev/null +++ b/themes/landscape/layout/_partial/archive-post.ejs @@ -0,0 +1,8 @@ +

\ No newline at end of file diff --git a/themes/landscape/layout/_partial/archive.ejs b/themes/landscape/layout/_partial/archive.ejs new file mode 100644 index 0000000..9da934a --- /dev/null +++ b/themes/landscape/layout/_partial/archive.ejs @@ -0,0 +1,34 @@ +<% if (pagination == 2){ %> + <% page.posts.each(function(post){ %> + <%- partial('article', {post: post, index: true}) %> + <% }) %> +<% } else { %> + <% var last; %> + <% page.posts.each(function(post, i){ %> + <% var year = post.date.year(); %> + <% if (last != year){ %> + <% if (last != null){ %> + + <% } %> + <% last = year; %> +
+ +
+ <% } %> + <%- partial('archive-post', {post: post, even: i % 2 == 0}) %> + <% }) %> + <% if (page.posts.length){ %> +
+ <% } %> +<% } %> +<% if (page.total > 1){ %> + +<% } %> diff --git a/themes/landscape/layout/_partial/article.ejs b/themes/landscape/layout/_partial/article.ejs new file mode 100644 index 0000000..0f951a9 --- /dev/null +++ b/themes/landscape/layout/_partial/article.ejs @@ -0,0 +1,44 @@ +
+ +
+ <%- partial('post/gallery') %> + <% if (post.link || post.title){ %> +
+ <%- partial('post/title', {class_name: 'article-title'}) %> +
+ <% } %> +
+ <% if (post.excerpt && index){ %> + <%- post.excerpt %> + <% if (theme.excerpt_link){ %> +

+ <%= theme.excerpt_link %> +

+ <% } %> + <% } else { %> + <%- post.content %> + <% } %> +
+ +
+ <% if (!index){ %> + <%- partial('post/nav') %> + <% } %> +
+ +<% if (!index && post.comments && config.disqus_shortname){ %> +
+
+ +
+
+<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/_partial/footer.ejs b/themes/landscape/layout/_partial/footer.ejs new file mode 100644 index 0000000..3aca618 --- /dev/null +++ b/themes/landscape/layout/_partial/footer.ejs @@ -0,0 +1,11 @@ +
+ <% if (theme.sidebar === 'bottom'){ %> + <%- partial('_partial/sidebar') %> + <% } %> +
+ +
+
\ No newline at end of file diff --git a/themes/landscape/layout/_partial/gauges-analytics.ejs b/themes/landscape/layout/_partial/gauges-analytics.ejs new file mode 100644 index 0000000..d64be38 --- /dev/null +++ b/themes/landscape/layout/_partial/gauges-analytics.ejs @@ -0,0 +1,18 @@ +<% if (theme.gauges_analytics){ %> + + + +<% } %> diff --git a/themes/landscape/layout/_partial/google-analytics.ejs b/themes/landscape/layout/_partial/google-analytics.ejs new file mode 100644 index 0000000..84e75f0 --- /dev/null +++ b/themes/landscape/layout/_partial/google-analytics.ejs @@ -0,0 +1,14 @@ +<% if (theme.google_analytics){ %> + + + +<% } %> diff --git a/themes/landscape/layout/_partial/head.ejs b/themes/landscape/layout/_partial/head.ejs new file mode 100644 index 0000000..43d5f93 --- /dev/null +++ b/themes/landscape/layout/_partial/head.ejs @@ -0,0 +1,36 @@ + + + + + <%- partial('google-analytics') %> + <% + var title = page.title; + + if (is_archive()){ + title = __('archive_a'); + + if (is_month()){ + title += ': ' + page.year + '/' + page.month; + } else if (is_year()){ + title += ': ' + page.year; + } + } else if (is_category()){ + title = __('category') + ': ' + page.category; + } else if (is_tag()){ + title = __('tag') + ': ' + page.tag; + } + %> + <% if (title){ %><%= title %> | <% } %><%= config.title %> + + <%- open_graph({twitter_id: theme.twitter, google_plus: theme.google_plus, fb_admins: theme.fb_admins, fb_app_id: theme.fb_app_id}) %> + <% if (theme.rss){ %> + + <% } %> + <% if (theme.favicon){ %> + + <% } %> + <% if (config.highlight.enable){ %> + + <% } %> + <%- css('css/style') %> + diff --git a/themes/landscape/layout/_partial/header.ejs b/themes/landscape/layout/_partial/header.ejs new file mode 100644 index 0000000..e8a305e --- /dev/null +++ b/themes/landscape/layout/_partial/header.ejs @@ -0,0 +1,32 @@ + \ No newline at end of file diff --git a/themes/landscape/layout/_partial/mobile-nav.ejs b/themes/landscape/layout/_partial/mobile-nav.ejs new file mode 100644 index 0000000..7c1d2af --- /dev/null +++ b/themes/landscape/layout/_partial/mobile-nav.ejs @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/themes/landscape/layout/_partial/post/category.ejs b/themes/landscape/layout/_partial/post/category.ejs new file mode 100644 index 0000000..db2ed48 --- /dev/null +++ b/themes/landscape/layout/_partial/post/category.ejs @@ -0,0 +1,10 @@ +<% if (post.categories && post.categories.length){ %> + +<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/_partial/post/date.ejs b/themes/landscape/layout/_partial/post/date.ejs new file mode 100644 index 0000000..3f49613 --- /dev/null +++ b/themes/landscape/layout/_partial/post/date.ejs @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/themes/landscape/layout/_partial/post/gallery.ejs b/themes/landscape/layout/_partial/post/gallery.ejs new file mode 100644 index 0000000..886c8ec --- /dev/null +++ b/themes/landscape/layout/_partial/post/gallery.ejs @@ -0,0 +1,11 @@ +<% if (post.photos && post.photos.length){ %> +
+
+ <% post.photos.forEach(function(photo, i){ %> + + + + <% }) %> +
+
+<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/_partial/post/nav.ejs b/themes/landscape/layout/_partial/post/nav.ejs new file mode 100644 index 0000000..720798a --- /dev/null +++ b/themes/landscape/layout/_partial/post/nav.ejs @@ -0,0 +1,22 @@ +<% if (post.prev || post.next){ %> + +<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/_partial/post/tag.ejs b/themes/landscape/layout/_partial/post/tag.ejs new file mode 100644 index 0000000..e0f327f --- /dev/null +++ b/themes/landscape/layout/_partial/post/tag.ejs @@ -0,0 +1,6 @@ +<% if (post.tags && post.tags.length){ %> + <%- list_tags(post.tags, { + show_count: false, + class: 'article-tag' + }) %> +<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/_partial/post/title.ejs b/themes/landscape/layout/_partial/post/title.ejs new file mode 100644 index 0000000..69d646f --- /dev/null +++ b/themes/landscape/layout/_partial/post/title.ejs @@ -0,0 +1,15 @@ +<% if (post.link){ %> +

+ +

+<% } else if (post.title){ %> + <% if (index){ %> +

+ <%= post.title %> +

+ <% } else { %> +

+ <%= post.title %> +

+ <% } %> +<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/_partial/sidebar.ejs b/themes/landscape/layout/_partial/sidebar.ejs new file mode 100644 index 0000000..c1e48e5 --- /dev/null +++ b/themes/landscape/layout/_partial/sidebar.ejs @@ -0,0 +1,5 @@ + \ No newline at end of file diff --git a/themes/landscape/layout/_widget/archive.ejs b/themes/landscape/layout/_widget/archive.ejs new file mode 100644 index 0000000..a20c58c --- /dev/null +++ b/themes/landscape/layout/_widget/archive.ejs @@ -0,0 +1,8 @@ +<% if (site.posts.length){ %> +
+

<%= __('archive_a') %>

+
+ <%- list_archives({show_count: theme.show_count, type: theme.archive_type}) %> +
+
+<% } %> diff --git a/themes/landscape/layout/_widget/category.ejs b/themes/landscape/layout/_widget/category.ejs new file mode 100644 index 0000000..8d9e5e9 --- /dev/null +++ b/themes/landscape/layout/_widget/category.ejs @@ -0,0 +1,8 @@ +<% if (site.categories.length){ %> +
+

<%= __('categories') %>

+
+ <%- list_categories({show_count: theme.show_count}) %> +
+
+<% } %> diff --git a/themes/landscape/layout/_widget/recent_posts.ejs b/themes/landscape/layout/_widget/recent_posts.ejs new file mode 100644 index 0000000..7a38547 --- /dev/null +++ b/themes/landscape/layout/_widget/recent_posts.ejs @@ -0,0 +1,14 @@ +<% if (site.posts.length){ %> +
+

<%= __('recent_posts') %>

+
+ +
+
+<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/_widget/tag.ejs b/themes/landscape/layout/_widget/tag.ejs new file mode 100644 index 0000000..ea5fb2c --- /dev/null +++ b/themes/landscape/layout/_widget/tag.ejs @@ -0,0 +1,8 @@ +<% if (site.tags.length){ %> +
+

<%= __('tags') %>

+
+ <%- list_tags({show_count: theme.show_count}) %> +
+
+<% } %> diff --git a/themes/landscape/layout/_widget/tagcloud.ejs b/themes/landscape/layout/_widget/tagcloud.ejs new file mode 100644 index 0000000..5feb435 --- /dev/null +++ b/themes/landscape/layout/_widget/tagcloud.ejs @@ -0,0 +1,8 @@ +<% if (site.tags.length){ %> +
+

<%= __('tagcloud') %>

+
+ <%- tagcloud() %> +
+
+<% } %> \ No newline at end of file diff --git a/themes/landscape/layout/archive.ejs b/themes/landscape/layout/archive.ejs new file mode 100644 index 0000000..52f9b21 --- /dev/null +++ b/themes/landscape/layout/archive.ejs @@ -0,0 +1 @@ +<%- partial('_partial/archive', {pagination: config.archive, index: true}) %> \ No newline at end of file diff --git a/themes/landscape/layout/category.ejs b/themes/landscape/layout/category.ejs new file mode 100644 index 0000000..3ffe252 --- /dev/null +++ b/themes/landscape/layout/category.ejs @@ -0,0 +1 @@ +<%- partial('_partial/archive', {pagination: config.category, index: true}) %> \ No newline at end of file diff --git a/themes/landscape/layout/index.ejs b/themes/landscape/layout/index.ejs new file mode 100644 index 0000000..60a2c68 --- /dev/null +++ b/themes/landscape/layout/index.ejs @@ -0,0 +1 @@ +<%- partial('_partial/archive', {pagination: 2, index: true}) %> \ No newline at end of file diff --git a/themes/landscape/layout/layout.ejs b/themes/landscape/layout/layout.ejs new file mode 100644 index 0000000..cf88daf --- /dev/null +++ b/themes/landscape/layout/layout.ejs @@ -0,0 +1,18 @@ +<%- partial('_partial/head') %> + +
+
+ <%- partial('_partial/header', null, {cache: !config.relative_link}) %> +
+
<%- body %>
+ <% if (theme.sidebar && theme.sidebar !== 'bottom'){ %> + <%- partial('_partial/sidebar', null, {cache: !config.relative_link}) %> + <% } %> +
+ <%- partial('_partial/footer', null, {cache: !config.relative_link}) %> +
+ <%- partial('_partial/mobile-nav', null, {cache: !config.relative_link}) %> + <%- partial('_partial/after-footer') %> +
+ + \ No newline at end of file diff --git a/themes/landscape/layout/page.ejs b/themes/landscape/layout/page.ejs new file mode 100644 index 0000000..bea6318 --- /dev/null +++ b/themes/landscape/layout/page.ejs @@ -0,0 +1 @@ +<%- partial('_partial/article', {post: page, index: false}) %> \ No newline at end of file diff --git a/themes/landscape/layout/post.ejs b/themes/landscape/layout/post.ejs new file mode 100644 index 0000000..bea6318 --- /dev/null +++ b/themes/landscape/layout/post.ejs @@ -0,0 +1 @@ +<%- partial('_partial/article', {post: page, index: false}) %> \ No newline at end of file diff --git a/themes/landscape/layout/tag.ejs b/themes/landscape/layout/tag.ejs new file mode 100644 index 0000000..048cdb0 --- /dev/null +++ b/themes/landscape/layout/tag.ejs @@ -0,0 +1 @@ +<%- partial('_partial/archive', {pagination: config.tag, index: true}) %> \ No newline at end of file diff --git a/themes/landscape/package.json b/themes/landscape/package.json new file mode 100644 index 0000000..ac0df3d --- /dev/null +++ b/themes/landscape/package.json @@ -0,0 +1,12 @@ +{ + "name": "hexo-theme-landscape", + "version": "0.0.2", + "private": true, + "devDependencies": { + "grunt": "~0.4.2", + "load-grunt-tasks": "~0.2.0", + "grunt-git": "~0.2.2", + "grunt-contrib-clean": "~0.5.0", + "grunt-contrib-copy": "~0.4.1" + } +} diff --git a/themes/landscape/scripts/fancybox.js b/themes/landscape/scripts/fancybox.js new file mode 100644 index 0000000..83f1fdc --- /dev/null +++ b/themes/landscape/scripts/fancybox.js @@ -0,0 +1,24 @@ +var rUrl = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[.\!\/\\w]*))?)/; + +/** +* Fancybox tag +* +* Syntax: +* {% fancybox /path/to/image [/path/to/thumbnail] [title] %} +*/ + +hexo.extend.tag.register('fancybox', function(args){ + var original = args.shift(), + thumbnail = ''; + + if (args.length && rUrl.test(args[0])){ + thumbnail = args.shift(); + } + + var title = args.join(' '); + + return '' + + '' + title + '' + '' + + (title ? '' + title + '' : ''); +}); \ No newline at end of file diff --git a/themes/landscape/source/css/_extend.styl b/themes/landscape/source/css/_extend.styl new file mode 100644 index 0000000..96a1817 --- /dev/null +++ b/themes/landscape/source/css/_extend.styl @@ -0,0 +1,63 @@ +$block-caption + text-decoration: none + text-transform: uppercase + letter-spacing: 2px + color: color-grey + margin-bottom: 1em + margin-left: 5px + line-height: 1em + text-shadow: 0 1px #fff + font-weight: bold + +$block + background: #fff + box-shadow: 1px 2px 3px #ddd + border: 1px solid color-border + border-radius: 3px + +$base-style + h1 + font-size: 2em + h2 + font-size: 1.5em + h3 + font-size: 1.3em + h4 + font-size: 1.2em + h5 + font-size: 1em + h6 + font-size: 1em + color: color-grey + hr + border: 1px dashed color-border + strong + font-weight: bold + em, cite + font-style: italic + sup, sub + font-size: 0.75em + line-height: 0 + position: relative + vertical-align: baseline + sup + top: -0.5em + sub + bottom: -0.2em + small + font-size: 0.85em + acronym, abbr + border-bottom: 1px dotted + ul, ol, dl + margin: 0 20px + line-height: line-height + ul, ol + ul, ol + margin-top: 0 + margin-bottom: 0 + ul + list-style: disc + ol + list-style: decimal + dt + font-weight: bold \ No newline at end of file diff --git a/themes/landscape/source/css/_partial/archive.styl b/themes/landscape/source/css/_partial/archive.styl new file mode 100644 index 0000000..90ef053 --- /dev/null +++ b/themes/landscape/source/css/_partial/archive.styl @@ -0,0 +1,80 @@ +.archives-wrap + margin: block-margin 0 + +.archives + clearfix() + +.archive-year-wrap + margin-bottom: 1em + +.archive-year + @extend $block-caption + +.archives + column-gap: 10px + @media mq-tablet + column-count: 2 + @media mq-normal + column-count: 3 + +.archive-article + avoid-column-break() + +.archive-article-inner + @extend $block + padding: 10px + margin-bottom: 15px + +.archive-article-title + text-decoration: none + font-weight: bold + color: color-default + transition: color 0.2s + line-height: line-height + &:hover + color: color-link + +.archive-article-footer + margin-top: 1em + +.archive-article-date + color: color-grey + text-decoration: none + font-size: 0.85em + line-height: 1em + margin-bottom: 0.5em + display: block + +#page-nav + clearfix() + margin: block-margin auto + background: #fff + box-shadow: 1px 2px 3px #ddd + border: 1px solid color-border + border-radius: 3px + text-align: center + color: color-grey + overflow: hidden + a, span + padding: 10px 20px + line-height: 1 + height: 2ex + a + color: color-grey + text-decoration: none + &:hover + background: color-grey + color: #fff + .prev + float: left + .next + float: right + .page-number + display: inline-block + @media mq-mobile + display: none + .current + color: color-default + font-weight: bold + .space + color: color-border \ No newline at end of file diff --git a/themes/landscape/source/css/_partial/article.styl b/themes/landscape/source/css/_partial/article.styl new file mode 100644 index 0000000..46094f9 --- /dev/null +++ b/themes/landscape/source/css/_partial/article.styl @@ -0,0 +1,357 @@ +.article + margin: block-margin 0 + +.article-inner + @extend $block + overflow: hidden + +.article-meta + clearfix() + +.article-date + @extend $block-caption + float: left + +.article-category + float: left + line-height: 1em + color: #ccc + text-shadow: 0 1px #fff + margin-left: 8px + &:before + content: "\2022" + +.article-category-link + @extend $block-caption + margin: 0 12px 1em + +.article-header + padding: article-padding article-padding 0 + +.article-title + text-decoration: none + font-size: 2em + font-weight: bold + color: color-default + line-height: line-height-title + transition: color 0.2s + a&:hover + color: color-link + +.article-entry + @extend $base-style + clearfix() + color: color-default + padding: 0 article-padding + p, table + line-height: line-height + margin: line-height 0 + h1, h2, h3, h4, h5, h6 + font-weight: bold + h1, h2, h3, h4, h5, h6 + line-height: line-height-title + margin: line-height-title 0 + a + color: color-link + text-decoration: none + &:hover + text-decoration: underline + ul, ol, dl + margin-top: line-height + margin-bottom: line-height + img, video + max-width: 100% + height: auto + display: block + margin: auto + iframe + border: none + table + width: 100% + border-collapse: collapse + border-spacing: 0 + th + font-weight: bold + border-bottom: 3px solid color-border + padding-bottom: 0.5em + td + border-bottom: 1px solid color-border + padding: 10px 0 + blockquote + font-family: font-serif + font-size: 1.4em + margin: line-height 20px + text-align: center + footer + font-size: font-size + margin: line-height 0 + font-family: font-sans + cite + &:before + content: "—" + padding: 0 0.5em + .pullquote + text-align: left + width: 45% + margin: 0 + &.left + margin-left: 0.5em + margin-right: 1em + &.right + margin-right: 0.5em + margin-left: 1em + .caption + color: color-grey + display: block + font-size: 0.9em + margin-top: 0.5em + position: relative + text-align: center + // http://webdesignerwall.com/tutorials/css-elastic-videos + .video-container + position: relative + padding-top: (9 / 16 * 100)% // 16:9 ratio + height: 0 + overflow: hidden + iframe, object, embed + position: absolute + top: 0 + left: 0 + width: 100% + height: 100% + margin-top: 0 + +.article-more-link a + display: inline-block + line-height: 1em + padding: 6px 15px + border-radius: 15px + background: color-background + color: color-grey + text-shadow: 0 1px #fff + text-decoration: none + &:hover + background: color-link + color: #fff + text-decoration: none + text-shadow: 0 1px darken(color-link, 20%) + +.article-footer + clearfix() + font-size: 0.85em + line-height: line-height + border-top: 1px solid color-border + padding-top: line-height + margin: 0 article-padding article-padding + a + color: color-grey + text-decoration: none + &:hover + color: color-default + +.article-tag-list-item + float: left + margin-right: 10px + +.article-tag-list-link + &:before + content: "#" + +.article-comment-link + float: right + &:before + content: "\f075" + font-family: font-icon + padding-right: 8px + +.article-share-link + cursor: pointer + float: right + margin-left: 20px + &:before + content: "\f064" + font-family: font-icon + padding-right: 6px + +#article-nav + clearfix() + position: relative + @media mq-normal + margin: block-margin 0 + &:before + absolute-center(8px) + content: "" + border-radius: 50% + background: color-border + box-shadow: 0 1px 2px #fff + +.article-nav-link-wrap + text-decoration: none + text-shadow: 0 1px #fff + color: color-grey + box-sizing: border-box + margin-top: block-margin + text-align: center + display: block + &:hover + color: color-default + @media mq-normal + width: 50% + margin-top: 0 + +#article-nav-newer + @media mq-normal + float: left + text-align: right + padding-right: 20px + +#article-nav-older + @media mq-normal + float: right + text-align: left + padding-left: 20px + +.article-nav-caption + text-transform: uppercase + letter-spacing: 2px + color: color-border + line-height: 1em + font-weight: bold + #article-nav-newer & + margin-right: -2px + +.article-nav-title + font-size: 0.85em + line-height: line-height + margin-top: 0.5em + +.article-share-box + position: absolute + display: none + background: #fff + box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.2) + border-radius: 3px + margin-left: -145px + overflow: hidden + z-index: 1 + &.on + display: block + +.article-share-input + width: 100% + background: none + box-sizing: border-box + font: 14px font-sans + padding: 0 15px + color: color-default + outline: none + border: 1px solid color-border + border-radius: 3px 3px 0 0 + height: 36px + line-height: 36px + +.article-share-links + clearfix() + background: color-background + +$article-share-link + width: 50px + height: 36px + display: block + float: left + position: relative + color: #999 + text-shadow: 0 1px #fff + &:before + font-size: 20px + font-family: font-icon + absolute-center(@font-size) + text-align: center + &:hover + color: #fff + +.article-share-twitter + @extend $article-share-link + &:before + content: "\f099" + &:hover + background: color-twitter + text-shadow: 0 1px darken(color-twitter, 20%) + +.article-share-facebook + @extend $article-share-link + &:before + content: "\f09a" + &:hover + background: color-facebook + text-shadow: 0 1px darken(color-facebook, 20%) + +.article-share-pinterest + @extend $article-share-link + &:before + content: "\f0d2" + &:hover + background: color-pinterest + text-shadow: 0 1px darken(color-pinterest, 20%) + +.article-share-google + @extend $article-share-link + &:before + content: "\f0d5" + &:hover + background: color-google + text-shadow: 0 1px darken(color-google, 20%) + +.article-gallery + background: #000 + position: relative + +.article-gallery-photos + position: relative + overflow: hidden + +.article-gallery-img + display: none + max-width: 100% + &:first-child + display: block + &.loaded + position: absolute + display: block + img + display: block + max-width: 100% + margin: 0 auto +/* +$article-gallery-ctrl + position: absolute + top: 0 + height: 100% + width: 60px + color: #fff + text-shadow: 0 0 3px rgba(0, 0, 0, 0.3) + opacity: 0.3 + transition: opacity 0.2s + cursor: pointer + &:hover + opacity: 0.8 + &:before + font-size: 30px + font-family: font-icon + position: absolute + top: 50% + margin-top: @font-size * -0.5 + +.article-gallery-prev + @extend $article-gallery-ctrl + left: 0 + &:before + content: "\f053" + left: 15px + +.article-gallery-next + @extend $article-gallery-ctrl + right: 0 + &:before + content: "\f054" + right: 15px*/ \ No newline at end of file diff --git a/themes/landscape/source/css/_partial/comment.styl b/themes/landscape/source/css/_partial/comment.styl new file mode 100644 index 0000000..296b7dd --- /dev/null +++ b/themes/landscape/source/css/_partial/comment.styl @@ -0,0 +1,9 @@ +#comments + background: #fff + box-shadow: 1px 2px 3px #ddd + padding: article-padding + border: 1px solid color-border + border-radius: 3px + margin: block-margin 0 + a + color: color-link \ No newline at end of file diff --git a/themes/landscape/source/css/_partial/footer.styl b/themes/landscape/source/css/_partial/footer.styl new file mode 100644 index 0000000..fe2fd24 --- /dev/null +++ b/themes/landscape/source/css/_partial/footer.styl @@ -0,0 +1,14 @@ +#footer + background: color-footer-background + padding: 50px 0 + border-top: 1px solid color-border + color: color-grey + a + color: color-link + text-decoration: none + &:hover + text-decoration: underline + +#footer-info + line-height: line-height + font-size: 0.85em \ No newline at end of file diff --git a/themes/landscape/source/css/_partial/header.styl b/themes/landscape/source/css/_partial/header.styl new file mode 100644 index 0000000..d18ebc8 --- /dev/null +++ b/themes/landscape/source/css/_partial/header.styl @@ -0,0 +1,165 @@ +#header + height: banner-height + position: relative + border-bottom: 1px solid color-border + &:before, &:after + content: "" + position: absolute + left: 0 + right: 0 + height: 40px + &:before + top: 0 + background: linear-gradient(rgba(0, 0, 0, 0.2), transparent) + &:after + bottom: 0 + background: linear-gradient(transparent, rgba(0, 0, 0, 0.2)) + +#header-outer + height: 100% + position: relative + +#header-inner + position: relative + overflow: hidden + +#banner + position: absolute + top: 0 + left: 0 + width: 100% + height: 100% + background: url(banner-url) center #000 + background-size: cover + z-index: -1 + +#header-title + text-align: center + height: logo-size + position: absolute + top: 50% + left: 0 + margin-top: logo-size * -0.5 + +$logo-text + text-decoration: none + color: #fff + font-weight: 300 + text-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) + +#logo + @extend $logo-text + font-size: logo-size + line-height: logo-size + letter-spacing: 2px + +#subtitle + @extend $logo-text + font-size: subtitle-size + line-height: subtitle-size + letter-spacing: 1px + +#subtitle-wrap + margin-top: subtitle-size + +#main-nav + float: left + margin-left: -15px + +$nav-link + float: left + color: #fff + opacity: 0.6 + text-decoration: none + text-shadow: 0 1px rgba(0, 0, 0, 0.2) + transition: opacity 0.2s + display: block + padding: 20px 15px + &:hover + opacity: 1 + +.nav-icon + @extend $nav-link + font-family: font-icon + text-align: center + font-size: font-size + width: font-size + height: font-size + padding: 20px 15px + position: relative + cursor: pointer + +.main-nav-link + @extend $nav-link + font-weight: 300 + letter-spacing: 1px + @media mq-mobile + display: none + +#main-nav-toggle + display: none + &:before + content: "\f0c9" + @media mq-mobile + display: block + +#sub-nav + float: right + margin-right: -15px + +#nav-rss-link + &:before + content: "\f09e" + +#nav-search-btn + &:before + content: "\f002" + +#search-form-wrap + position: absolute + top: 15px + width: 150px + height: 30px + right: -150px + opacity: 0 + transition: 0.2s ease-out + &.on + opacity: 1 + right: 0 + @media mq-mobile + width: 100% + right: -100% + +.search-form + position: absolute + top: 0 + left: 0 + right: 0 + background: #fff + padding: 5px 15px + border-radius: 15px + box-shadow: 0 0 10px rgba(0, 0, 0, 0.3) + +.search-form-input + border: none + background: none + color: color-default + width: 100% + font: 13px font-sans + outline: none + &::-webkit-search-results-decoration + &::-webkit-search-cancel-button + -webkit-appearance: none + +.search-form-submit + position: absolute + top: 50% + right: 10px + margin-top: -7px + font: 13px font-icon + border: none + background: none + color: #bbb + cursor: pointer + &:hover, &:focus + color: #777 \ No newline at end of file diff --git a/themes/landscape/source/css/_partial/highlight.styl b/themes/landscape/source/css/_partial/highlight.styl new file mode 100644 index 0000000..c932ec3 --- /dev/null +++ b/themes/landscape/source/css/_partial/highlight.styl @@ -0,0 +1,158 @@ +// https://github.com/chriskempson/tomorrow-theme +highlight-background = #2d2d2d +highlight-current-line = #393939 +highlight-selection = #515151 +highlight-foreground = #cccccc +highlight-comment = #999999 +highlight-red = #f2777a +highlight-orange = #f99157 +highlight-yellow = #ffcc66 +highlight-green = #99cc99 +highlight-aqua = #66cccc +highlight-blue = #6699cc +highlight-purple = #cc99cc + +$code-block + background: highlight-background + margin: 0 article-padding * -1 + padding: 15px article-padding + border-style: solid + border-color: color-border + border-width: 1px 0 + overflow: auto + color: highlight-foreground + line-height: font-size * line-height + +$line-numbers + color: #666 + font-size: 0.85em + +.article-entry + pre, code + font-family: font-mono + code + background: color-background + text-shadow: 0 1px #fff + padding: 0 0.3em + pre + @extend $code-block + code + background: none + text-shadow: none + padding: 0 + .highlight + @extend $code-block + pre + border: none + margin: 0 + padding: 0 + table + margin: 0 + width: auto + td + border: none + padding: 0 + figcaption + clearfix() + font-size: 0.85em + color: highlight-comment + line-height: 1em + margin-bottom: 1em + a + float: right + .gutter pre + @extend $line-numbers + text-align: right + padding-right: 20px + .line + height: font-size * line-height + .line.marked + background: highlight-selection + .gist + margin: 0 article-padding * -1 + border-style: solid + border-color: color-border + border-width: 1px 0 + background: highlight-background + padding: 15px article-padding 15px 0 + .gist-file + border: none + font-family: font-mono + margin: 0 + .gist-data + background: none + border: none + .line-numbers + @extend $line-numbers + background: none + border: none + padding: 0 20px 0 0 + .line-data + padding: 0 !important + .highlight + margin: 0 + padding: 0 + border: none + .gist-meta + background: highlight-background + color: highlight-comment + font: 0.85em font-sans + text-shadow: 0 0 + padding: 0 + margin-top: 1em + margin-left: article-padding + a + color: color-link + font-weight: normal + &:hover + text-decoration: underline + +pre + .comment + .title + color: highlight-comment + .variable + .attribute + .tag + .regexp + .ruby .constant + .xml .tag .title + .xml .pi + .xml .doctype + .html .doctype + .css .id + .css .class + .css .pseudo + color: highlight-red + .number + .preprocessor + .built_in + .literal + .params + .constant + color: highlight-orange + .class + .ruby .class .title + .css .rules .attribute + color: highlight-green + .string + .value + .inheritance + .header + .ruby .symbol + .xml .cdata + color: highlight-green + .css .hexcolor + color: highlight-aqua + .function + .python .decorator + .python .title + .ruby .function .title + .ruby .title .keyword + .perl .sub + .javascript .title + .coffeescript .title + color: highlight-blue + .keyword + .javascript .function + color: highlight-purple diff --git a/themes/landscape/source/css/_partial/mobile.styl b/themes/landscape/source/css/_partial/mobile.styl new file mode 100644 index 0000000..eb68b3a --- /dev/null +++ b/themes/landscape/source/css/_partial/mobile.styl @@ -0,0 +1,19 @@ +@media mq-mobile + #mobile-nav + position: absolute + top: 0 + left: 0 + width: mobile-nav-width + height: 100% + background: color-mobile-nav-background + border-right: 1px solid #fff + +@media mq-mobile + .mobile-nav-link + display: block + color: color-grey + text-decoration: none + padding: 15px 20px + font-weight: bold + &:hover + color: #fff diff --git a/themes/landscape/source/css/_partial/sidebar-aside.styl b/themes/landscape/source/css/_partial/sidebar-aside.styl new file mode 100644 index 0000000..838b167 --- /dev/null +++ b/themes/landscape/source/css/_partial/sidebar-aside.styl @@ -0,0 +1,27 @@ +#sidebar + @media mq-normal + column(sidebar-column) + +.widget-wrap + margin: block-margin 0 + +.widget-title + @extend $block-caption + +.widget + color: color-sidebar-text + text-shadow: 0 1px #fff + background: color-widget-background + box-shadow: 0 -1px 4px color-widget-border inset + border: 1px solid color-widget-border + padding: 15px + border-radius: 3px + a + color: color-link + text-decoration: none + &:hover + text-decoration: underline + ul, ol, dl + ul, ol, dl + margin-left: 15px + list-style: disc \ No newline at end of file diff --git a/themes/landscape/source/css/_partial/sidebar-bottom.styl b/themes/landscape/source/css/_partial/sidebar-bottom.styl new file mode 100644 index 0000000..e2403fd --- /dev/null +++ b/themes/landscape/source/css/_partial/sidebar-bottom.styl @@ -0,0 +1,27 @@ +.widget-wrap + margin-bottom: block-margin !important + @media mq-normal + column(main-column) + +.widget-title + color: #ccc + text-transform: uppercase + letter-spacing: 2px + margin-bottom: .5em + line-height: 1em + font-weight: bold + +.widget + color: color-grey + ul, ol + li + display: inline-block + zoom:1 + *display:inline + padding-right: .75em +/* Having problems getting balanced white space between items + li:before + content: " | " + li:first-child:before + content: none + */ diff --git a/themes/landscape/source/css/_partial/sidebar.styl b/themes/landscape/source/css/_partial/sidebar.styl new file mode 100644 index 0000000..e43d66a --- /dev/null +++ b/themes/landscape/source/css/_partial/sidebar.styl @@ -0,0 +1,35 @@ +if sidebar is bottom + @import "sidebar-bottom" +else + @import "sidebar-aside" + +.widget + @extend $base-style + line-height: line-height + word-wrap: break-word + font-size: 0.9em + ul, ol + list-style: none + margin: 0 + ul, ol + margin: 0 20px + ul + list-style: disc + ol + list-style: decimal + +.category-list-count +.tag-list-count +.archive-list-count + padding-left: 5px + color: color-grey + font-size: 0.85em + &:before + content: "(" + &:after + content: ")" + +.tagcloud + a + margin-right: 5px + display: inline-block diff --git a/themes/landscape/source/css/_util/grid.styl b/themes/landscape/source/css/_util/grid.styl new file mode 100644 index 0000000..2a14dd2 --- /dev/null +++ b/themes/landscape/source/css/_util/grid.styl @@ -0,0 +1,38 @@ +///////////////// +// Semantic.gs // for Stylus: http://learnboost.github.com/stylus/ +///////////////// + +// Utility function — you should never need to modify this +// _gridsystem-width = (column-width + gutter-width) * columns +gridsystem-width(_columns = columns) + (column-width + gutter-width) * _columns + +// Set @total-width to 100% for a fluid layout +// total-width = gridsystem-width(columns) +total-width = 100% + +////////// +// GRID // +////////// + +body + clearfix() + width: 100% + +row(_columns = columns) + clearfix() + display: block + width: total-width * ((gutter-width + gridsystem-width(_columns)) / gridsystem-width(_columns)) + margin: 0 total-width * (((gutter-width * .5) / gridsystem-width(_columns)) * -1) + +column(x, _columns = columns) + display: inline + float: left + width: total-width * ((((gutter-width + column-width) * x) - gutter-width) / gridsystem-width(_columns)) + margin: 0 total-width * ((gutter-width * .5) / gridsystem-width(_columns)) + +push(offset = 1) + margin-left: total-width * (((gutter-width + column-width) * offset) / gridsystem-width(columns)) + +pull(offset = 1) + margin-right: total-width * (((gutter-width + column-width) * offset) / gridsystem-width(columns)) \ No newline at end of file diff --git a/themes/landscape/source/css/_util/mixin.styl b/themes/landscape/source/css/_util/mixin.styl new file mode 100644 index 0000000..b56f037 --- /dev/null +++ b/themes/landscape/source/css/_util/mixin.styl @@ -0,0 +1,31 @@ +// http://www.zeldman.com/2012/03/01/replacing-the-9999px-hack-new-image-replacement/ +hide-text() + text-indent: 100% + white-space: nowrap + overflow: hidden + +// http://codepen.io/shshaw/full/gEiDt +absolute-center(width, height = width) + // margin: auto + // position: absolute + // top: 50% + // top: 0 + // left: 0 + // bottom: 0 + // right: 0 + // width: width + // height: height + // overflow: auto + width: width + height: height + position: absolute + top: 50% + left: 50% + margin-top: width * -0.5 + margin-left: height * -0.5 + +avoid-column-break() + vendor("column-break-inside", avoid, only: webkit) + page-break-inside: avoid // for firefox + overflow: hidden // fix for firefox + break-inside: avoid-column diff --git a/themes/landscape/source/css/_variables.styl b/themes/landscape/source/css/_variables.styl new file mode 100644 index 0000000..4562911 --- /dev/null +++ b/themes/landscape/source/css/_variables.styl @@ -0,0 +1,63 @@ +// Config +support-for-ie = false +vendor-prefixes = webkit moz ms official + +// Colors +color-default = #555 +color-grey = #999 +color-border = #ddd +color-link = #258fb8 +color-background = #eee +color-sidebar-text = #777 +color-widget-background = #ddd +color-widget-border = #ccc +color-footer-background = #262a30 +color-mobile-nav-background = #191919 +color-twitter = #00aced +color-facebook = #3b5998 +color-pinterest = #cb2027 +color-google = #dd4b39 + +// Fonts +font-sans = -apple-system, BlinkMacSystemFont, + "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", + "Fira Sans", "Droid Sans", "Helvetica Neue", + sans-serif +font-serif = Georgia, "Times New Roman", serif +font-mono = "Source Code Pro", Consolas, Monaco, Menlo, Consolas, monospace +font-icon = FontAwesome +font-icon-path = "fonts/fontawesome-webfont" +font-icon-version = "4.0.3" +font-size = 14px +line-height = 1.6em +line-height-title = 1.1em + +// Header +logo-size = 40px +subtitle-size = 16px +banner-height = 300px +banner-url = "images/banner.jpg" + +sidebar = hexo-config("sidebar") + +// Layout +block-margin = 50px +article-padding = 20px +mobile-nav-width = 280px +main-column = 9 +sidebar-column = 3 + +if sidebar and sidebar isnt bottom + _sidebar-column = sidebar-column +else + _sidebar-column = 0 + +// Grids +column-width = 80px +gutter-width = 20px +columns = main-column + _sidebar-column + +// Media queries +mq-mobile = "screen and (max-width: 479px)" +mq-tablet = "screen and (min-width: 480px) and (max-width: 767px)" +mq-normal = "screen and (min-width: 768px)" \ No newline at end of file diff --git a/themes/landscape/source/css/fonts/FontAwesome.otf b/themes/landscape/source/css/fonts/FontAwesome.otf new file mode 100644 index 0000000000000000000000000000000000000000..8b0f54e47e1d356dcf1496942a50e228e0f1ee14 GIT binary patch literal 62856 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