1
0
mirror of https://github.com/kuohuanhuan/x-markdown-css.git synced 2024-11-25 06:18:19 +00:00

Compare commits

...

136 Commits

Author SHA1 Message Date
d832da0526 chore: release v0.1.6 2023-04-03 19:53:26 +08:00
f41596ab69 chore(deps-dev): bump postcss-preset-env from 8.2.0 to 8.3.0 (#12)
Bumps [postcss-preset-env](https://github.com/csstools/postcss-plugins/tree/HEAD/plugin-packs/postcss-preset-env) from 8.2.0 to 8.3.0.
- [Release notes](https://github.com/csstools/postcss-plugins/releases)
- [Changelog](https://github.com/csstools/postcss-plugins/blob/main/plugin-packs/postcss-preset-env/CHANGELOG.md)
- [Commits](https://github.com/csstools/postcss-plugins/commits/HEAD/plugin-packs/postcss-preset-env)

---
updated-dependencies:
- dependency-name: postcss-preset-env
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-03 19:50:02 +08:00
84d148254e chore(deps-dev): bump stylelint from 15.3.0 to 15.4.0 (#11)
Bumps [stylelint](https://github.com/stylelint/stylelint) from 15.3.0 to 15.4.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/15.3.0...15.4.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-03 19:44:10 +08:00
925c909fff chore(deps-dev): bump bumpp from 9.0.0 to 9.1.0 (#10)
Bumps [bumpp](https://github.com/antfu/bumpp) from 9.0.0 to 9.1.0.
- [Release notes](https://github.com/antfu/bumpp/releases)
- [Commits](https://github.com/antfu/bumpp/compare/v9.0.0...v9.1.0)

---
updated-dependencies:
- dependency-name: bumpp
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-30 22:41:05 +08:00
cd6192a413 chore(deps-dev): bump postcss-preset-env from 8.1.0 to 8.2.0 (#9)
Bumps [postcss-preset-env](https://github.com/csstools/postcss-plugins/tree/HEAD/plugin-packs/postcss-preset-env) from 8.1.0 to 8.2.0.
- [Release notes](https://github.com/csstools/postcss-plugins/releases)
- [Changelog](https://github.com/csstools/postcss-plugins/blob/main/plugin-packs/postcss-preset-env/CHANGELOG.md)
- [Commits](https://github.com/csstools/postcss-plugins/commits/HEAD/plugin-packs/postcss-preset-env)

---
updated-dependencies:
- dependency-name: postcss-preset-env
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-30 22:38:11 +08:00
5dcf1d6d8d chore(deps-dev): bump cssnano from 5.1.15 to 6.0.0 (#8)
Bumps [cssnano](https://github.com/cssnano/cssnano) from 5.1.15 to 6.0.0.
- [Release notes](https://github.com/cssnano/cssnano/releases)
- [Commits](https://github.com/cssnano/cssnano/compare/cssnano@5.1.15...cssnano@6.0.0)

---
updated-dependencies:
- dependency-name: cssnano
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-30 22:37:21 +08:00
6deb3d86ef chore(deps-dev): bump postcss-preset-env from 8.0.1 to 8.1.0 (#7)
Bumps [postcss-preset-env](https://github.com/csstools/postcss-plugins/tree/HEAD/plugin-packs/postcss-preset-env) from 8.0.1 to 8.1.0.
- [Release notes](https://github.com/csstools/postcss-plugins/releases)
- [Changelog](https://github.com/csstools/postcss-plugins/blob/main/plugin-packs/postcss-preset-env/CHANGELOG.md)
- [Commits](https://github.com/csstools/postcss-plugins/commits/HEAD/plugin-packs/postcss-preset-env)

---
updated-dependencies:
- dependency-name: postcss-preset-env
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-27 21:24:08 +08:00
48d9671f65 chore(deps): bump sass from 1.58.3 to 1.60.0 (#6)
Bumps [sass](https://github.com/sass/dart-sass) from 1.58.3 to 1.60.0.
- [Release notes](https://github.com/sass/dart-sass/releases)
- [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sass/dart-sass/compare/1.58.3...1.60.0)

---
updated-dependencies:
- dependency-name: sass
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-24 21:07:38 +08:00
3a7f38d21c chore(deps-dev): bump stylelint from 15.2.0 to 15.3.0 (#5)
Bumps [stylelint](https://github.com/stylelint/stylelint) from 15.2.0 to 15.3.0.
- [Release notes](https://github.com/stylelint/stylelint/releases)
- [Changelog](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/stylelint/stylelint/compare/15.2.0...15.3.0)

---
updated-dependencies:
- dependency-name: stylelint
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-24 21:07:28 +08:00
cbea6295e8 chore(deps-dev): bump @kuohuanhuan/stylelint-config from 0.0.4 to 0.0.5 (#2)
Bumps [@kuohuanhuan/stylelint-config](https://github.com/kuohuanhuan/stylelint-config) from 0.0.4 to 0.0.5.
- [Release notes](https://github.com/kuohuanhuan/stylelint-config/releases)
- [Commits](https://github.com/kuohuanhuan/stylelint-config/compare/v0.0.4...v0.0.5)

---
updated-dependencies:
- dependency-name: "@kuohuanhuan/stylelint-config"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-24 21:07:20 +08:00
132eb4ff72 chore: release v0.1.5 2023-03-18 22:59:26 +08:00
4a9dbe84aa chore(ci): remove quote with tags 2023-03-11 20:14:58 +08:00
ba95b90714 chore(deps-dev): bump autoprefixer from 10.4.13 to 10.4.14 (#1)
Bumps [autoprefixer](https://github.com/postcss/autoprefixer) from 10.4.13 to 10.4.14.
- [Release notes](https://github.com/postcss/autoprefixer/releases)
- [Changelog](https://github.com/postcss/autoprefixer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/autoprefixer/compare/10.4.13...10.4.14)

---
updated-dependencies:
- dependency-name: autoprefixer
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-10 22:29:52 +08:00
6b4fd5f2c5 chore: release v0.1.4 2023-03-08 18:49:35 +08:00
c8bc7d3438 feat(colors): rename $border-rev to $border-table 2023-03-08 18:45:18 +08:00
b44d47b14f chore: release v0.1.3 2023-03-07 22:29:52 +08:00
5fcbb64413 fix(figure): use correct color for figcaption 2023-03-07 22:28:53 +08:00
0af430670a style(comments): add comments to describe light/dark modes 2023-03-07 22:26:09 +08:00
47e16ecde7 fix(colors): solve deprecated grammars 2023-03-07 22:25:07 +08:00
bf04be0379 feat(quote): apply opacity: .75; instead of .8 on quotes 2023-03-07 22:22:48 +08:00
b43013e33e feat(table): use more flexible selector for thead and tbody 2023-03-07 22:18:31 +08:00
0f50a7c98d fix(media): remove hardcoded pixel height and width 2023-03-07 22:09:11 +08:00
f4d95387c3 style: run Stylelint to fix lint problems 2023-03-07 22:07:28 +08:00
42967ea775 feat(link): improve user experience with links 2023-03-07 22:04:15 +08:00
b4d1423d37 feat(colors): update default color palette 2023-03-07 21:59:39 +08:00
008564db1b chore: release v0.1.2 2023-03-07 21:18:34 +08:00
21de988cb9 feat(colors)!: rewrite color variables logic 2023-03-07 21:18:13 +08:00
5568aa278f chore: release v0.1.1-patch 2023-03-07 20:17:04 +08:00
919ebfaf39 chore(package)!: fix incorrect dependency 2023-03-07 20:16:20 +08:00
458b495b44 chore: release v0.1.1 2023-03-07 19:53:37 +08:00
ff23b42eec feat(title): improve .header-anchor display effect 2023-03-07 19:47:52 +08:00
32be4bf51a refactor: use @forward instead of @use in _all.scss 2023-03-07 18:57:50 +08:00
ce94858f01 feat(code): add specify styles for code blocks 2023-03-07 18:56:37 +08:00
6c0c7e7624 fix(code): remove Shiki integration 2023-03-07 18:38:01 +08:00
10ae6dc593 chore: release v0.1.0 2023-03-06 22:16:47 +08:00
28fcbf66a8 chore(ci): use Node.js version lts/* at lint and release 2023-03-06 22:12:09 +08:00
e9264bfa01 chore(lint): use @kuohuanhuan/stylelint-config as Stylelint config 2023-03-06 22:07:19 +08:00
0e6c171424 chore(package): standardize author field in package.json 2023-03-06 19:43:44 +08:00
d45e09d7bf chore(ci): add lts/* to node-version in CI 2023-03-05 19:53:39 +08:00
eb2e5f532a chore(ci): rename Build and Release to Release 2023-03-05 19:39:45 +08:00
2e99e64a3e refactor(colors)!: rename $link-border to $a-border 2023-03-05 18:15:14 +08:00
877ea710d6 chore(ci): only run lint and build when specified files modified 2023-03-05 18:09:07 +08:00
df63212d6d chore(ci): use windows-2022 to create releases [skip actions] 2023-03-05 17:52:14 +08:00
ee89b96068 fix(code)!: respect shiki themes 2023-03-05 17:43:16 +08:00
63a6fc2072 refactor!: deprecate .prose class and lint 2023-03-05 17:39:51 +08:00
e54282e5f8 docs(readme): move documentation to Wiki 2023-03-05 17:14:04 +08:00
2b9619f2e2 refactor: migrate to modern module system 2023-03-05 15:00:12 +08:00
2cb60cc6c4 fix(markdown): remove invalid .highlight class 2023-03-05 13:55:52 +08:00
beedb0e803 docs(readme): remove unnecessary remark 2023-03-05 12:46:14 +08:00
77e57fe3ae chore: release v0.0.5 2023-03-05 12:33:18 +08:00
5f45d99381 Due to a restrict of npm, we cannot override the 0.0.3 version. 2023-03-05 12:33:00 +08:00
936615f48c chore: release v0.0.3 2023-03-04 22:54:05 +08:00
06f383891e docs(readme): use shorthand link with CDN 2023-03-04 22:48:59 +08:00
e7b3d3eb8d chore(package.json): add main value to support CDN services 2023-03-04 22:36:48 +08:00
7ffabe53bd revert: de8b9d621c [skip actions] 2023-03-04 19:51:29 +08:00
95a1576179 feat(fonts): add Sarasa Gothic to monospace font fallback 2023-03-04 19:13:56 +08:00
cfa79e400a chore: release v0.0.2 2023-03-04 18:55:23 +08:00
39c543c7f6 docs(readme): add usage in CSS files 2023-03-04 18:44:50 +08:00
b383912f30 docs(readme): replace node badge with ci one 2023-03-04 18:19:01 +08:00
74a4cda9d3 docs(readme): change the colors of the badges 2023-03-04 17:31:13 +08:00
13a8c92ebe chore(build): remove useless blank line in Gruntfile.coffee 2023-03-04 17:25:33 +08:00
7e5821b10d chore(config): add top comment to .editorconfig 2023-03-04 17:22:46 +08:00
a365317c85 refactor(fonts)!: add font-code to let managing code fonts more flexible 2023-03-04 17:19:15 +08:00
213ea5f44f refactor(vars): create modes directory 2023-03-04 16:53:06 +08:00
5ee77990a6 refactor(vars): organize variables 2023-03-04 16:49:47 +08:00
59745590c2 fix(vars): fix deprecated color expression in Sass 2023-03-04 16:46:29 +08:00
17631306a8 feat(vars)!: rename variable $general to $regular 2023-03-04 16:36:56 +08:00
d8f3f549dc docs(readme): rename "Uses" section and add description 2023-03-04 16:30:38 +08:00
f988a9dddb chore: release v0.0.1-patch.3 2023-03-03 22:54:56 +08:00
3f5fc5f93b docs(readme): move development infos into a independent section 2023-03-03 22:54:37 +08:00
1b2245bab9 chore: release v0.0.1-patch.2 2023-03-03 22:47:54 +08:00
7b50254f83 docs(readme): fix typo in "Usage" block 2023-03-03 22:47:39 +08:00
5f9424617e chore: release v0.0.1-patch.1 2023-03-03 22:46:22 +08:00
f169a6c49a docs(readme): add usage in Sass / SCSS 2023-03-03 22:46:03 +08:00
ba62d6e364 chore: release v0.0.1-patch.0 2023-03-03 21:09:54 +08:00
d7c5188b7d docs(readme): add "Browsers Support" block 2023-03-03 21:09:33 +08:00
de8b9d621c chore(ci): include all files in dist instead of the dir to build.tar.gz 2023-03-03 20:58:09 +08:00
8bb74891ce chore(ci): add LTS to Ubuntu 22.04 comment 2023-03-03 20:54:14 +08:00
d33f046030 chore: release v0.0.1 2023-03-03 20:15:39 +08:00
bd8d8822e5 revert: 706720b8fe 2023-03-03 20:15:12 +08:00
d9678940f2 chore: release v0.0.0-20230303.9 2023-03-03 20:09:40 +08:00
706720b8fe chore(ci): use windows-2022 instead of ubuntu-22.04 to release 2023-03-03 20:07:17 +08:00
ff06dee900 chore: release v0.0.0-20230303.7 2023-03-03 20:02:21 +08:00
80ccac3dd1 chore(ci): add pre-release and release comment to task name 2023-03-03 20:02:07 +08:00
229680ca85 chore: release v0.0.0-20230303.6 2023-03-03 20:00:25 +08:00
e3fcf96559 chore(ci): upload tar.gz file instead of .zip that no longer exists 2023-03-03 20:00:07 +08:00
c77fbd21ae chore: release v0.0.0-20230303.5 2023-03-03 19:53:55 +08:00
a4f5996f04 chore(ci): solve incorrect version of cardinalby/git-tag-action 2023-03-03 19:53:41 +08:00
cb009147b9 chore: release v0.0.0-20230303.4 2023-03-03 19:52:51 +08:00
188ac468fd chore(ci): add pre-release specific & add latest tag 2023-03-03 19:52:31 +08:00
24056e42d5 chore: release v0.0.0-20230303.3 2023-03-03 19:32:35 +08:00
274fc0fb31 chore(ci): generate Changelog **after** release 2023-03-03 19:32:19 +08:00
e83212e00f chore: release v0.0.0-20230303.2 2023-03-03 19:29:41 +08:00
40a50968ed chore(ci): solve version conflicts & errors 2023-03-03 19:29:27 +08:00
1a62e1258e chore: release v0.0.0-20230303.1 2023-03-03 19:26:55 +08:00
648738b890 refactor(markdown): split margin to margin-top and margin-bottom 2023-03-03 19:13:28 +08:00
7dc2238fdf feat(markdown): apply different opacities for .header-anchor 2023-03-03 19:10:15 +08:00
65b4b24002 chore(ci): create a tar.gz file instead of a .zip one 2023-03-03 19:04:32 +08:00
94e8477077 chore: create and modify footer author comment 2023-03-03 18:45:16 +08:00
4bbc199636 chore(build): disable postcss-custom-properties option in PostCSS 2023-03-03 18:42:00 +08:00
fd57e4bc4f chore(npm): replace main key in package.json with sass and style 2023-03-03 18:34:08 +08:00
ab38a24a75 chore: release v0.0.0-20230302.12 2023-03-02 23:15:01 +08:00
93e2f86137 chore(npm): add build.zip to .npmignore 2023-03-02 23:14:27 +08:00
e622185bbf chore: release v0.0.0-20230302.11 2023-03-02 23:07:32 +08:00
78cf02d7b8 chore(ci): add a name for vimtor/action-zip task 2023-03-02 23:07:02 +08:00
eba9d56ae6 chore: release v0.0.0-20230302.10 2023-03-02 22:52:18 +08:00
2da4f4deb2 chore(ci): add .zip file to GitHub Release and upload artifact 2023-03-02 22:52:00 +08:00
cd9ecdfed3 chore: release v0.0.0-20230302.9 2023-03-02 22:33:59 +08:00
9bf22aa5bd chore(ci): update Node.js version in CI to 18 from 16 2023-03-02 22:33:39 +08:00
e6718acc37 chore: release v0.0.0-20230302.8 2023-03-02 22:28:25 +08:00
15ef37c0d2 chore(ci): use softprops/action-gh-release to create GitHub Releases 2023-03-02 22:27:49 +08:00
6fd50e0707 chore: release v0.0.0-20230302.7 2023-03-02 21:18:38 +08:00
8da53d8cde style(markdown): improve selectors 2023-03-02 21:18:14 +08:00
decfa2c47c chore: release v0.0.0-20230302.6 2023-03-02 20:39:44 +08:00
58317f99cb chore(ci): change registry URL to npmjs.com from npmjs.org 2023-03-02 20:39:24 +08:00
a3f9084a2e chore(ci): rename task Lint to Test Lint 2023-03-02 20:35:07 +08:00
26d5c7966f chore: release v0.0.0-20230302.5 2023-03-02 20:31:57 +08:00
296bf3016e docs(readme): remove descriptions of packages in "Uses" 2023-03-02 20:31:42 +08:00
a40c973e46 chore: release v0.0.0-20230302.4 2023-03-02 20:25:51 +08:00
29b45f6a7f style(vars): rename $blockquote-border to $quote-border 2023-03-02 20:25:23 +08:00
c2bd2cb722 docs: introduce new project description 2023-03-02 20:23:38 +08:00
bd2f74a3b2 chore(lint): fix incorrect comma placing in .stylelintrc 2023-03-02 20:21:26 +08:00
d69a4ea949 refactor: rename directory partial to partials 2023-03-02 20:18:45 +08:00
95de198e34 chore: release v0.0.0-20230302.3 2023-03-02 20:12:31 +08:00
782b6f24e2 feat: separate $font-display for more user customization 2023-03-02 20:11:32 +08:00
f967cc6bad style: unite and reorder CSS rules 2023-03-02 20:05:26 +08:00
32058aa5d3 feat(markdown): apply styles to q element 2023-03-02 19:43:02 +08:00
02d03e7633 refactor: rename dirs and files in a more meaningful way 2023-03-02 19:42:04 +08:00
2042d6be41 docs(readme): provide more commands 2023-03-02 19:36:28 +08:00
e90679a4ac chore(browserslist): only browsers support css-variables 2023-03-02 19:29:37 +08:00
9a81468182 chore(ci): use .npmignore instead of editing .gitignore 2023-03-02 19:25:05 +08:00
ec673759d2 chore(lint): normalize .stylelintignore 2023-03-02 19:19:12 +08:00
f68921d9d0 docs(readme): add cssnano to "Uses" 2023-03-02 19:17:47 +08:00
ae19499146 chore: release v0.0.0-20230302.2 2023-03-02 00:28:08 +08:00
7ab2bd67ea refactor(markdown): fix duplicate selector rules 2023-03-02 00:27:50 +08:00
a307ac8851 fix(font): rename font constants 2023-03-02 00:25:02 +08:00
40 changed files with 1172 additions and 945 deletions

View File

@ -1,4 +1,4 @@
# Browserslist <https://browsersl.ist>
defaults
since 2015
supports css-variables

View File

@ -1,3 +1,5 @@
# EditorConfig <http://editorconfig.org>
root = true
[*]

View File

@ -4,6 +4,12 @@ on:
push:
branches:
- master
paths:
- src/**.scss
- package.json
- Gruntfile.coffee
- .stylelintrc
- .stylelintignore
pull_request:
branches:
- master
@ -11,7 +17,7 @@ on:
jobs:
# Test Lint
lint:
# Use Ubuntu 22.04
# Use Ubuntu 22.04 LTS
runs-on: ubuntu-22.04
steps:
# Step I
@ -21,13 +27,13 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 16
registry-url: https://registry.npmjs.org/
node-version: lts/*
registry-url: https://registry.npmjs.com
# Step III
- name: Install Dependencies
run: npm ci
# Step IV
- name: Lint
- name: Test Lint
run: npm run lint
# Test Build
build:
@ -47,10 +53,19 @@ jobs:
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
registry-url: https://registry.npmjs.org/
registry-url: https://registry.npmjs.com
# Step III
- name: Install Dependencies
run: npm ci
# Step IV
- name: Test Build
run: npm run build
# Step V
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: built-on__os_${{ matrix.os }}__nodejs_${{ matrix.node-version }}
path: dist/
retention-days: 3
# Authored by @kuohuanhuan.

View File

@ -1,15 +1,15 @@
name: Build and Release
name: Release
on:
push:
tags:
- 'v*'
- v*
jobs:
# NPM Registry Release
# NPM Registry & GitHub Release
release:
# Use Ubuntu 22.04
runs-on: ubuntu-22.04
# Use Windows Server 2022
runs-on: windows-2022
steps:
# Step I
- name: Get Source Code
@ -20,8 +20,8 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 16
registry-url: https://registry.npmjs.org/
node-version: lts/*
registry-url: https://registry.npmjs.com
# Step III
- name: Install Dependencies
run: npm ci
@ -29,10 +29,12 @@ jobs:
- name: Build Project
run: npm run build
# Step V
- name: Regenerate `.gitignore`
run: |
rm -f .gitignore
echo 'node_modules/' >> .gitignore
- name: Create tar.gz File
uses: TheDoctor0/zip-release@0.7.1
with:
type: tar
path: dist/
filename: build.tar.gz
# Step VI
- name: Publish to NPM Registry
uses: rxfork/npm-publish@v1
@ -43,3 +45,24 @@ jobs:
run: npx changelogithub@0.12
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# Step VIII
# / pre-release
- name: GitHub Release (pre-release)
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && contains(github.ref, '-')
uses: softprops/action-gh-release@v1
with:
prerelease: true
files: |
dist/*
build.tar.gz
# / release
- name: GitHub Release (release)
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && contains(github.ref, '-') == false
uses: softprops/action-gh-release@v1
with:
prerelease: false
files: |
dist/*
build.tar.gz
# Authored by @kuohuanhuan.

4
.npmignore Normal file
View File

@ -0,0 +1,4 @@
build.tar.gz
node_modules/
.github/
.vscode/

View File

@ -1,3 +1,2 @@
**/*.js
dist/*.css
node_modules
node_modules/

View File

@ -1,95 +1,4 @@
{
"ignoreDisables": true,
"extends": "stylelint-config-standard-scss",
"plugins": [
"stylelint-scss",
"stylelint-order"
],
"rules": {
"alpha-value-notation": "number",
"at-rule-empty-line-before": null,
"block-no-empty": true,
"color-named": "never",
"color-hex-case": "lower",
"import-notation": null,
"max-nesting-depth": 5,
"number-leading-zero": "never",
"property-no-vendor-prefix": true,
"rule-empty-line-before": null,
"order/properties-alphabetical-order": null,
"order/properties-order": [
"position",
"top",
"bottom",
"right",
"left",
"display",
"align-items",
"justify-content",
"float",
"clear",
"overflow",
"overflow-x",
"overflow-y",
"margin",
"margin-top",
"margin-right",
"margin-bogttom",
"margin-left",
"padding",
"padding-top",
"padding-right",
"padding-bottom",
"padding-left",
"width",
"min-width",
"max-width",
"height",
"min-height",
"max-height",
"font-size",
"font-family",
"font-weight",
"text-align",
"text-justify",
"text-indent",
"text-overflow",
"text-decoration",
"white-space",
"color",
"background",
"background-position",
"background-repeat",
"background-size",
"background-color",
"background-clip",
"border",
"border-style",
"border-width",
"border-color",
"border-top-style",
"border-top-width",
"border-top-color",
"border-right-style",
"border-right-width",
"border-right-color",
"border-bottom-style",
"border-bottom-width",
"border-bottom-color",
"border-left-style",
"border-left-width",
"border-left-color",
"border-radius",
"opacity",
"filter",
"list-style",
"outline",
"visibility",
"z-index",
"box-shadow",
"text-shadow",
"resize",
"transition"
]
}
"extends": "@kuohuanhuan/stylelint-config"
}

View File

@ -1,7 +1,6 @@
module.exports = (grunt) ->
# Load Grunt Tasks
require('load-grunt-tasks') grunt
# Project Configuration
grunt.initConfig
# NPM Package Declare
@ -29,7 +28,10 @@ module.exports = (grunt) ->
exp:
options:
processors: [
require('postcss-preset-env')()
require('postcss-preset-env')(
features:
'custom-properties': false
)
require('autoprefixer')()
]
src: 'dist/bundle.css'
@ -37,7 +39,10 @@ module.exports = (grunt) ->
min:
options:
processors: [
require('postcss-preset-env')()
require('postcss-preset-env')(
features:
'custom-properties': false
)
require('autoprefixer')()
require('cssnano')(preset: 'default')
]
@ -48,3 +53,5 @@ module.exports = (grunt) ->
'sass'
'postcss'
]
# Authored by @kuohuanhuan.

View File

@ -1,49 +1,64 @@
<h1 align="center">x-markdown-css</h1>
<p align="center">
<center>
[![Version](https://img.shields.io/npm/v/x-markdown-css.svg)](https://www.npmjs.com/package/x-markdown-css)
[![Node.js Requirement](https://img.shields.io/badge/node-%3E%3D16-blue.svg)](https://github.com/kuohuanhuan/x-markdown-css/blob/master/package.json)
[![MIT License](https://img.shields.io/github/license/kuohuanhuan/x-markdown-css)](https://github.com/kuohuanhuan/x-markdown-css/blob/master/LICENSE)
[![NPM Version](https://img.shields.io/npm/v/x-markdown-css)](https://www.npmjs.com/package/x-markdown-css)
[![GitHub Actions](https://img.shields.io/github/actions/workflow/status/kuohuanhuan/x-markdown-css/ci.yml)](https://github.com/kuohuanhuan/x-markdown-css/actions/workflows/ci.yml)
[![MIT License](https://img.shields.io/github/license/kuohuanhuan/x-markdown-css?color=blue)](https://github.com/kuohuanhuan/x-markdown-css/blob/master/LICENSE)
</p>
</center>
> A simple and customizable Markdown CSS for everyone.
> A simple and customizable markdown CSS stylesheet for everyone.
## Requirement
## Browsers Support
- Node.js >=16
According to [.browserslistrc](https://github.com/kuohuanhuan/x-markdown-css/blob/master/.browserslistrc), `x-markdown-css` supports **all browsers support CSS variables.**
## Install
## Get Started
Visit the [Wiki](https://github.com/kuohuanhuan/x-markdown-css/wiki) page for more information.
## Built with
The following tools and suite libraries made the development of `x-markdown-css` possible:
- [SCSS](https://sass-lang.com)
- [Stylelint](https://stylelint.io)
- [Grunt](https://gruntjs.com)
- [PostCSS](https://postcss.org)
- [cssnano](https://cssnano.co)
*...and much more.*
## Development
### Requirement
- Node.js >= 16
### Install
```sh
npm install
npm i
```
## Build
### Build
```sh
npm run build
```
## Usage
or
You can use the minified CSS file with a CDN service:
```sh
grunt build
```
- UNPKG: `https://unpkg.com/x-markdown-css@latest/dist/bundle.min.css`
- jsDelivr: `https://fastly.jsdelivr.net/npm/x-markdown-css@latest/dist/bundle.min.css`
- CDNJS: *Coming soon. **Waiting for you to make `x-markdown-css` [popular enough](https://github.com/cdnjs/packages/blob/master/CONTRIBUTING.md#policy-rules-and-guidelines)**!*
or
> *ps. `bundle.css` without `.min` stands for unminified version.*
## Uses
- [SCSS](https://sass-lang.com): CSS pre-processor.
- [Grunt](https://gruntjs.com): Automating build tasks.
- [PostCSS](https://postcss.org): Transforming CSS dist.
- [Stylelint](https://stylelint.io): Linting SCSS codes.
*...and much more.*
```sh
npx grunt build
```
## Contributing

1340
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
{
"name": "x-markdown-css",
"version": "0.0.0-20230302.1",
"description": "A simple and customizable Markdown CSS for everyone.",
"version": "0.1.6",
"description": "A simple and customizable markdown CSS stylesheet for everyone.",
"keywords": [
"markdown",
"css",
@ -16,12 +16,18 @@
"article",
"documentation"
],
"main": "index.js",
"main": "dist/bundle.min.css",
"style": "dist/bundle.min.css",
"sass": "src/index.scss",
"repository": {
"type": "git",
"url": "git+https://github.com/kuohuanhuan/x-markdown-css.git"
},
"author": "kuohuanhuan",
"author": {
"name": "kuohuanhuan",
"email": "hi@nekohuan.cyou",
"url": "https://nekohuan.cyou"
},
"license": "MIT",
"bugs": {
"url": "https://github.com/kuohuanhuan/x-markdown-css/issues"
@ -41,18 +47,16 @@
"sass": "^1.58.3"
},
"devDependencies": {
"@kuohuanhuan/stylelint-config": "^0.0.5",
"@lodder/grunt-postcss": "^3.1.1",
"autoprefixer": "^10.4.13",
"bumpp": "^9.0.0",
"cssnano": "^5.1.15",
"cssnano": "^6.0.0",
"grunt": "^1.6.1",
"grunt-sass": "^3.1.0",
"load-grunt-tasks": "^5.1.0",
"postcss": "^8.4.21",
"postcss-preset-env": "^8.0.1",
"stylelint": "^15.2.0",
"stylelint-config-standard-scss": "^7.0.1",
"stylelint-order": "^6.0.2",
"stylelint-scss": "^4.4.0"
"stylelint": "^15.2.0"
}
}

7
src/_content.scss Normal file
View File

@ -0,0 +1,7 @@
@use 'sass:meta';
@use 'partials/container';
.markdown-body {
@include container.container;
@include meta.load-css('partials/all');
}

22
src/_vars.scss Normal file
View File

@ -0,0 +1,22 @@
@use 'sass:meta';
@use 'variables/constants';
@use 'variables/modes/light';
@use 'variables/modes/dark';
:root {
@each $name, $val in meta.module-variables('constants') {
--xm-#{$name}: #{$val};
}
}
.markdown-body {
@each $name, $val in meta.module-variables('light') {
--xm-c-#{$name}: #{$val};
}
}
.dark .markdown-body {
@each $name, $val in meta.module-variables('dark') {
--xm-c-#{$name}: #{$val};
}
}

View File

@ -1,4 +1,2 @@
@use 'scss/vars' as *;
@import 'scss/markdown';
@import 'scss/prose';
@use 'vars';
@use 'content';

9
src/partials/_all.scss Normal file
View File

@ -0,0 +1,9 @@
@forward 'title';
@forward 'text';
@forward 'link';
@forward 'code';
@forward 'quote';
@forward 'figure';
@forward 'list';
@forward 'table';
@forward 'media';

View File

@ -0,0 +1,10 @@
@mixin container {
max-width: fit-content;
color: var(--xm-c-regular);
font-size: 1rem;
font-family: var(--xm-font-display) !important;
line-height: 1.75;
&:first-child {
margin-top: 1rem;
}
}

View File

@ -1,35 +1,42 @@
code {
font-size: .85rem;
color: var(--xm-c-deep);
font-weight: 600;
font-family: var(--xm-font-mono);
color: var(--xm-c-dark);
font-size: .875rem;
font-family: var(--xm-font-code);
&::before,
&::after {
content: '`';
}
}
pre {
overflow-x: auto;
margin-top: 1.75rem;
padding-top: .85rem, 1.15rem;
font-size: .85rem;
color: var(--xm-c-pre);
line-height: 1.75;
margin-bottom: 1.75rem;
padding-top: .875rem, 1.15rem;
border-radius: .375rem;
color: var(--xm-c-deep);
font-size: .875rem;
line-height: 1.75;
code {
padding: 0;
font-size: inherit;
font-family: inherit;
font-weight: 400;
color: inherit;
background: transparent;
border-width: 0;
border-radius: 0;
background: transparent;
color: inherit;
font-weight: 400;
font-size: inherit;
font-family: inherit;
line-height: inherit;
&::before,
&::after {
content: none;
}
}
&:has(code) {
margin: .5rem 0;
font-size: 1.05rem;
font-family: var(--xm-font-code);
line-height: 1.4;
}
}

View File

@ -2,9 +2,9 @@ figure {
margin-top: 2rem;
margin-bottom: 2rem;
figcaption {
margin-top: .85rem;
font-size: .85rem;
color: var(--xm-c-figcaption);
margin-top: .875rem;
color: var(--xm-c-shallow);
font-size: .875rem;
line-height: 1.45;
}
> * {

19
src/partials/link.scss Normal file
View File

@ -0,0 +1,19 @@
a {
border-bottom: 1px solid var(--xm-c-border);
color: var(--xm-c-deeper);
font-weight: 500;
text-decoration: none;
transition: border .3s ease-in-out;
code {
color: var(--xm-c-deep);
}
&:hover {
border-bottom: 1px solid var(--xm-c-regular);
}
&:not([href]) {
border-bottom: none;
color: inherit;
font-weight: normal;
transition: none;
}
}

View File

@ -2,6 +2,7 @@ li {
margin-top: .5rem;
margin-bottom: .5rem;
}
ol {
margin-top: 1.25rem;
margin-bottom: 1.25rem;
@ -13,11 +14,12 @@ ol {
content: counter(list-item, decimal) '.';
position: absolute;
left: 0;
color: var(--xm-c-shallow);
font-weight: 400;
color: var(--xm-c-ol-counter);
}
}
}
ul {
margin-top: 1.25rem;
margin-bottom: 1.25rem;
@ -28,15 +30,16 @@ ul {
&::before {
content: '';
position: absolute;
top: .685rem;
top: .675rem;
left: .25rem;
width: .375rem;
height: .375rem;
background-color: var(--xm-c-ul-counter);
border-radius: 50%;
background-color: var(--xm-c-shallower);
}
}
}
ul ul,
ul ol,
ol ul,

17
src/partials/media.scss Normal file
View File

@ -0,0 +1,17 @@
img {
display: block;
max-width: 92%;
margin: 1rem auto;
border-radius: .2rem;
}
video {
margin: auto;
}
iframe {
display: flex;
width: 92%;
margin: auto;
border-radius: .2rem;
}

View File

@ -2,12 +2,14 @@ blockquote,
q {
margin-top: 1.65rem;
margin-bottom: 1.65rem;
padding-left: 1rem;
padding: .6rem 1.2rem;
border-left: .25rem solid var(--xm-c-border);
color: inherit;
font-weight: 500;
font-style: italic;
color: inherit;
border-left: .25rem solid var(--xm-c-blockquote-border);
line-height: 1.5rem;
quotes: '\201C''\201D''\2018''\2019';
opacity: .75;
p {
&:first-of-type::before {
content: open-quote;
@ -16,4 +18,12 @@ q {
content: close-quote;
}
}
> * {
&:first-child {
margin-top: 0;
}
&:last-child {
margin-bottom: 0;
}
}
}

19
src/partials/table.scss Normal file
View File

@ -0,0 +1,19 @@
table {
overflow: auto;
width: 100%;
border-spacing: 0;
border-collapse: collapse;
th,
td {
padding: 6px 13px;
border: 1.5px solid var(--xm-c-border-table);
}
thead th {
font-weight: 700;
}
tbody tr {
&:hover {
background-color: var(--xm-c-shallowest);
}
}
}

View File

@ -2,13 +2,16 @@ p {
margin-top: 1.25rem;
margin-bottom: 1.25rem;
}
strong {
color: var(--xm-c-deep);
font-weight: 600;
color: var(--xm-c-dark);
}
b {
color: var(--xm-c-dark);
color: var(--xm-c-deep);
}
em {
color: inherit;
}

View File

@ -1,31 +1,33 @@
h1 {
margin-top: 0;
margin-bottom: .8889rem;
font-size: 2.25rem;
margin-bottom: .875rem;
color: var(--xm-c-deeper);
font-weight: 800;
color: var(--xm-c-darker);
font-size: 2.25rem;
line-height: 1.15;
}
h2 {
margin-top: 2rem;
font-size: 1.5rem;
font-weight: 700;
color: var(--xm-c-dark);
margin-bottom: 1rem;
color: var(--xm-c-deep);
font-weight: 700;
font-size: 1.5rem;
line-height: 1.35;
code {
font-size: .85rem;
font-size: .875rem;
}
+ * {
margin-top: 0;
}
}
h3 {
margin-top: 1.6rem;
font-size: 1.25rem;
font-weight: 600;
color: inherit;
margin-bottom: .6rem;
color: inherit;
font-weight: 600;
font-size: 1.25rem;
line-height: 1.6;
opacity: .7;
code {
@ -35,30 +37,61 @@ h3 {
margin-top: 0;
}
}
h4 {
margin-top: 1.5rem;
font-weight: 600;
color: inherit;
margin-bottom: .5rem;
color: inherit;
font-weight: 600;
line-height: 1.5;
+ * {
margin-top: 0;
}
}
h5,
h6 {
text-transform: uppercase;
margin-top: 20px;
margin-bottom: 10px;
font-weight: 500;
opacity: .5;
letter-spacing: 2px;
text-transform: uppercase;
opacity: .5;
}
hr {
margin-top: 3rem;
width: 50px;
margin-top: 2rem;
margin-bottom: 2rem;
border-color: var(--xm-c-hr-border);
margin-bottom: 3rem;
+ * {
margin-top: 0;
}
}
.header-anchor {
float: left;
margin-top: 0;
margin-left: -1.25rem;
padding-right: .5rem;
border: 0 !important;
font-weight: 600;
font-size: inherit;
text-decoration: none;
opacity: 0;
&:hover,
&:focus {
text-decoration: none;
}
}
@for $i from 1 through 6 {
h#{$i} {
&:hover,
&:focus {
.header-anchor {
opacity: .35 + $i * .025;
}
}
}
}

View File

@ -1 +0,0 @@
@import 'title', 'text', 'link', 'code', 'quote', 'figure', 'list', 'table', 'media';

View File

@ -1,6 +0,0 @@
@mixin container {
max-width: fit-content;
font-size: 1rem;
color: var(--xm-c-general);
line-height: 1.75;
}

View File

@ -1,8 +0,0 @@
a {
font-weight: 500;
text-decoration: none;
color: var(--xm-c-darker);
code {
color: var(--xm-c-code);
}
}

View File

@ -1,5 +0,0 @@
img,
video {
margin-top: 2rem;
margin-bottom: 2rem;
}

View File

@ -1,46 +0,0 @@
table {
margin-top: 2rem;
margin-bottom: 2rem;
width: 100%;
table-layout: auto;
font-size: .85rem;
text-align: left;
line-height: 1.75;
}
thead {
font-weight: 600;
color: var(--xm-c-thead);
border-bottom-width: 1px;
border-bottom-color: var(--xm-c-thead-border);
th {
vertical-align: bottom;
padding-right: .575rem;
padding-bottom: .575rem;
padding-left: .575rem;
&:first-child {
padding-left: 0;
}
&:last-child {
padding-right: 0;
}
}
}
tbody {
tr {
border-bottom-width: 1px;
border-bottom-color: var(--xm-c-tr-border);
&:last-child {
border-bottom-width: 0;
}
}
td {
vertical-align: top;
padding: .575rem;
&:first-child {
padding-left: 0;
}
&:last-child {
padding-right: 0;
}
}
}

View File

@ -1,13 +0,0 @@
$shiki-light: #f8f8f8;
$shiki-dark: #0e0e0e;
$link-border: hsla(0deg 0 50% / .3);
$code: #111827;
$ol-counter: #6b7280;
$ul-counter: #d1d5db;
$hr-border: hsla(0deg 0 50% / .3);
$blockquote-border: hsla(0deg 0 50% / .3);
$figcaption: #6b7280;
$pre: #e5e7eb;
$thead: #111827;
$thead-border: #d1d5db;
$tr-border: #e5e7eb;

View File

@ -1,2 +0,0 @@
$font-sans: 'Open Sans', 'Inter', 'Roboto', 'Helvetica', 'Arial', 'Sarasa Gothic TC', 'Sarasa Gothic SC', 'Noto Sans TC', 'Noto Sans SC', 'Microsoft JhengHei', 'Microsoft YaHei', -apple-system, sans-serif;
$font-mono: 'DM Mono', 'Fira Code', 'Jetbrains Mono', 'Input Mono', 'Menlo', 'MesloLGS NF', 'Ubuntu', monospace;

View File

@ -1,3 +0,0 @@
$general: #bbb;
$dark: #ddd;
$darker: #fff;

View File

@ -1,3 +0,0 @@
$general: #555;
$dark: #222;
$darker: #000;

View File

@ -1,112 +0,0 @@
.markdown-body {
font-family: var(--xm-font-sans) !important;
color: var(--xm-c-general);
pre {
&:not(.shiki, .highlight) {
margin: 0;
padding: 0;
background: transparent;
}
}
.shiki,
.highlight {
margin: .5rem 0;
font-size: 1.05rem;
font-family: var(--xm-font-mono) !important;
line-height: 1.4;
&.shiki-light {
background: var(--xm-c-shiki-light) !important;
}
&.shiki-dark {
background: var(--xm-c-shiki-dark) !important;
}
}
img {
width: 100%;
}
a {
font-weight: inherit;
text-decoration: none;
border-bottom: 1px solid var(--xm-c-link-border);
transition: border .3s ease-in-out;
&:hover {
border-bottom: 1px solid var(--xm-c-general);
}
code {
color: inherit;
}
}
hr {
margin: 2rem auto;
width: 50px;
}
blockquote {
padding: .6rem 1.2rem;
font-weight: normal;
font-style: normal;
line-height: 1.5rem;
opacity: .8;
> * {
&:first-child {
margin-top: 0;
}
&:last-child {
margin-bottom: 0;
}
}
p {
&:first-of-type::before {
content: none;
}
&:first-of-type::after {
content: none;
}
}
}
&:first-child {
margin-top: 1rem;
}
}
.dark .shiki-light {
display: none;
}
html:not(.dark) .shiki-dark {
display: none;
}
.item {
text-decoration: none;
opacity: .6;
transition: .2s all ease-out;
&:hover {
opacity: 1;
}
}
.header-anchor {
float: left;
margin-top: .125rem;
margin-left: -1.2rem;
padding-right: .5rem;
font-size: .85rem;
text-decoration: none;
border: 0 !important;
opacity: 0;
&:hover {
text-decoration: none;
}
&:focus {
text-decoration: none;
}
}
h1,
h2,
h3,
h4,
h5,
h6 {
&:hover,
&:focus {
.header-anchor {
opacity: .5;
}
}
}

View File

@ -1,6 +0,0 @@
@use '_partial/container' as *;
.prose {
@include container;
@import '_partial/all';
}

View File

@ -1,25 +0,0 @@
@use 'sass:meta' as *;
@use '_vars/constants';
@use '_vars/colors';
@use '_vars/light';
@use '_vars/dark';
:root {
@each $name, $val in module-variables('constants') {
--xm-#{$name}: #{$val};
}
@each $name, $val in module-variables('colors') {
--xm-c-#{$name}: #{$val};
}
}
.markdown-body {
@each $name, $val in module-variables('light') {
--xm-c-#{$name}: #{$val};
}
}
.dark .markdown-body {
@each $name, $val in module-variables('dark') {
--xm-c-#{$name}: #{$val};
}
}

View File

@ -0,0 +1,8 @@
// Font stack
$font-sans: 'Open Sans', 'Inter', 'Roboto', 'Helvetica', 'Arial', 'Sarasa Gothic TC', 'Sarasa Gothic SC', 'Noto Sans TC', 'Noto Sans SC', 'Microsoft JhengHei', 'Microsoft YaHei', -apple-system, sans-serif;
$font-serif: 'Merriweather', 'Georgia', 'Times New Roman', 'Times', 'Source Han Serif Traditional Chinese', 'Source Han Serif Simplified Chinese', 'Noto Serif TC', 'Noto Serif SC', serif;
$font-mono: 'DM Mono', 'Fira Code', 'Jetbrains Mono', 'Input Mono', 'Menlo', 'MesloLGS NF', 'Ubuntu', 'Sarasa Gothic TC', 'Sarasa Gothic SC', monospace;
// Font defaults
$font-display: var(--xm-font-sans);
$font-code: var(--xm-font-mono);

View File

@ -0,0 +1,10 @@
// Dark mode
$shallowest: #212121;
$shallower: #555;
$shallow: #777;
$regular: #bbb;
$deep: #ddd;
$deeper: #fff;
$border: hsla(0deg 0% 75% / .35);
$border-table: hsla(0deg 0% 40% / .75);

View File

@ -0,0 +1,10 @@
// Light mode
$shallowest: #f8f8f8;
$shallower: #ddd;
$shallow: #bbb;
$regular: #555;
$deep: #222;
$deeper: #000;
$border: hsla(0deg 0% 50% / .35);
$border-table: hsla(0deg 0% 50% / .5);