diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..9f13ca9 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +like-mac.zip diff --git a/README.md b/README.md new file mode 100644 index 0000000..2f070dc --- /dev/null +++ b/README.md @@ -0,0 +1,27 @@ +# like-mac + +这是一个 **typora** 主题,根据原有github主题修改而成。主要是让typora在主题上能更好的与mac兼容。 + + + +## 使用方式 + +``` +前往 release 中下载, 解压之后会得到 like-mac 目录和 like-mac.css 文件 +将这两样移动到typora的主题目录即可 +重启typora, 就可以在主题选项中选择 +``` + + + +## typora效果图 + +![001](./image/001.png) + + + +## 导出效果图 + +![002](./image/002.png) + +![002](./image/003.png) \ No newline at end of file diff --git a/image/001.png b/image/001.png new file mode 100644 index 0000000..f46670a Binary files /dev/null and b/image/001.png differ diff --git a/image/002.png b/image/002.png new file mode 100644 index 0000000..f98ff57 Binary files /dev/null and b/image/002.png differ diff --git a/image/003.png b/image/003.png new file mode 100644 index 0000000..ec63bc1 Binary files /dev/null and b/image/003.png differ diff --git a/like-mac b/like-mac new file mode 160000 index 0000000..27580a0 --- /dev/null +++ b/like-mac @@ -0,0 +1 @@ +Subproject commit 27580a0c548c581e84989f0a4d672363e4e1268e diff --git a/like-mac.css b/like-mac.css new file mode 100644 index 0000000..c7847fb --- /dev/null +++ b/like-mac.css @@ -0,0 +1,688 @@ +:root { + /*主题色*/ + --master-color: #a60097; + --side-bar-bg-color: #eaeaea; + --control-text-color: #777; + /*激活的文件*/ + --active-file-bg-color: #efefef; + --active-file-text-color: #000000; + --active-file-border-color: #757575; + --active-search-item-bg-color: #23242b; + + --item-hover-bg-color: #8d93ab; + --item-hover-text-color: #ffffff; + --window-border: 2px solid #dddddd; + --code-cursor: #f0f0f0; + --select-text-bg-color: var(--master-color); + --select-text-font-color: #ffffff; +} + +@include-when-export url(https://fonts.loli.net/css?family=Open+Sans:400italic,700italic,700,400&subset=latin,latin-ext); + +/* open-sans-regular - latin-ext_latin */ +@font-face { + font-family: "Open Sans"; + font-style: normal; + font-weight: normal; + src: local("Open Sans Regular"), local("OpenSans-Regular"), + url("./github/open-sans-v17-latin-ext_latin-regular.woff2") format("woff2"); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, + U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, + U+FEFF, U+FFFD, U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, + U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* open-sans-italic - latin-ext_latin */ +@font-face { + font-family: "Open Sans"; + font-style: italic; + font-weight: normal; + src: local("Open Sans Italic"), local("OpenSans-Italic"), + url("./github/open-sans-v17-latin-ext_latin-italic.woff2") format("woff2"); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, + U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, + U+FEFF, U+FFFD, U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, + U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* open-sans-700 - latin-ext_latin */ +@font-face { + font-family: "Open Sans"; + font-style: normal; + font-weight: bold; + src: local("Open Sans Bold"), local("OpenSans-Bold"), + url("./github/open-sans-v17-latin-ext_latin-700.woff2") format("woff2"); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, + U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, + U+FEFF, U+FFFD, U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, + U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} +/* open-sans-700italic - latin-ext_latin */ +@font-face { + font-family: "Open Sans"; + font-style: italic; + font-weight: bold; + src: local("Open Sans Bold Italic"), local("OpenSans-BoldItalic"), + url("./github/open-sans-v17-latin-ext_latin-700italic.woff2") + format("woff2"); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, + U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, + U+FEFF, U+FFFD, U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, + U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF; +} + +html { + font-size: 16px; +} + +body { + font-family: "Open Sans", "Clear Sans", "Helvetica Neue", Helvetica, Arial, + sans-serif; + color: rgb(51, 51, 51); + line-height: 1.6; +} + +#write { + max-width: 860px; + margin: 0 auto; + padding: 30px; + padding-bottom: 100px; +} + +@media only screen and (min-width: 1400px) { + #write { + max-width: 1024px; + } +} + +@media only screen and (min-width: 1800px) { + #write { + max-width: 1200px; + } +} + +#write > ul:first-child, +#write > ol:first-child { + margin-top: 30px; +} + +a { + color: #4183c4; +} +h1, +h2, +h3, +h4, +h5, +h6 { + position: relative; + margin-top: 1rem; + margin-bottom: 1rem; + font-weight: bold; + line-height: 1.4; + cursor: text; +} +h1:hover a.anchor, +h2:hover a.anchor, +h3:hover a.anchor, +h4:hover a.anchor, +h5:hover a.anchor, +h6:hover a.anchor { + text-decoration: none; +} +h1 tt, +h1 code { + font-size: inherit; +} +h2 tt, +h2 code { + font-size: inherit; +} +h3 tt, +h3 code { + font-size: inherit; +} +h4 tt, +h4 code { + font-size: inherit; +} +h5 tt, +h5 code { + font-size: inherit; +} +h6 tt, +h6 code { + font-size: inherit; +} +h1 { + font-size: 2.25em; + line-height: 1.2; + border-bottom: 1px solid #eee; +} +h2 { + font-size: 1.75em; + line-height: 1.225; + border-bottom: 1px solid #eee; +} + +/*@media print { + .typora-export h1, + .typora-export h2 { + border-bottom: none; + padding-bottom: initial; + } + + .typora-export h1::after, + .typora-export h2::after { + content: ""; + display: block; + height: 100px; + margin-top: -96px; + border-top: 1px solid #eee; + } +}*/ + +h3 { + font-size: 1.5em; + line-height: 1.43; +} +h4 { + font-size: 1.25em; +} +h5 { + font-size: 1em; +} +h6 { + font-size: 1em; + color: #777; +} +p, +blockquote, +ul, +ol, +dl, +table { + margin: 0.8em 0; +} +li > ol, +li > ul { + margin: 0 0; +} +hr { + height: 2px; + padding: 0; + margin: 16px 0; + background-color: #e7e7e7; + border: 0 none; + overflow: hidden; + box-sizing: content-box; +} + +li p.first { + display: inline-block; +} +ul, +ol { + padding-left: 30px; +} +ul:first-child, +ol:first-child { + margin-top: 0; +} +ul:last-child, +ol:last-child { + margin-bottom: 0; +} +blockquote { + border-left: 4px solid #dfe2e5; + padding: 0 15px; + color: #777777; +} +blockquote blockquote { + padding-right: 0; +} +table { + padding: 0; + word-break: initial; +} +table tr { + border-top: 1px solid #dfe2e5; + margin: 0; + padding: 0; +} +table tr:nth-child(2n), +thead { + background-color: #f8f8f8; +} +table tr th { + font-weight: bold; + border: 1px solid #dfe2e5; + border-bottom: 0; + margin: 0; + padding: 6px 13px; +} +table tr td { + border: 1px solid #dfe2e5; + margin: 0; + padding: 6px 13px; +} +table tr th:first-child, +table tr td:first-child { + margin-top: 0; +} +table tr th:last-child, +table tr td:last-child { + margin-bottom: 0; +} + +.CodeMirror-lines { + padding-left: 4px; +} + +.code-tooltip { + box-shadow: 0 1px 1px 0 rgba(0, 28, 36, 0.3); + border-top: 1px solid #eef2f2; +} + +.md-fences, +code, +tt { + border: 1px solid #e7eaed; + background-color: #f8f8f8; + border-radius: 6px; + padding: 0; + padding: 2px 4px 0px 4px; + font-size: 0.9em; +} + +code { + background-color: #f3f4f4; + padding: 0 2px 0 2px; +} + +.md-fences { + margin-bottom: 15px; + margin-top: 15px; + padding-top: 8px; + padding-bottom: 6px; +} + +.md-task-list-item > input { + margin-left: -1.3em; +} + +@media print { + html { + font-size: 13px; + } + table, + pre { + page-break-inside: avoid; + } + pre { + word-wrap: break-word; + } +} + +.md-fences { + background-color: #f8f8f8; +} +#write pre.md-meta-block { + padding: 1rem; + font-size: 85%; + line-height: 1.45; + background-color: #f7f7f7; + border: 0; + border-radius: 3px; + color: #777777; + margin-top: 0 !important; +} + +.mathjax-block > .code-tooltip { + bottom: 0.375rem; +} + +.md-mathjax-midline { + background: #fafafa; +} + +#write > h3.md-focus:before { + left: -1.5625rem; + top: 0.375rem; +} +#write > h4.md-focus:before { + left: -1.5625rem; + top: 0.285714286rem; +} +#write > h5.md-focus:before { + left: -1.5625rem; + top: 0.285714286rem; +} +#write > h6.md-focus:before { + left: -1.5625rem; + top: 0.285714286rem; +} +.md-image > .md-meta { + /*border: 1px solid #ddd;*/ + border-radius: 3px; + padding: 2px 0px 0px 4px; + font-size: 0.9em; + color: inherit; +} + +.md-tag { + color: #a7a7a7; + opacity: 1; +} + +.md-toc { + margin-top: 20px; + padding-bottom: 20px; +} + +.sidebar-tabs { + border-bottom: none; +} + +#typora-quick-open { + border: 1px solid #ddd; + background-color: #f8f8f8; +} + +#typora-quick-open-item { + background-color: #fafafa; + border-color: #fefefe #e5e5e5 #e5e5e5 #eee; + border-style: solid; + border-width: 1px; +} + +/** focus mode */ +.on-focus-mode blockquote { + border-left-color: rgba(85, 85, 85, 0.12); +} + +header, +.context-menu, +.megamenu-content, +footer { + font-family: "Segoe UI", "Arial", sans-serif; +} + +.file-node-content:hover .file-node-icon, +.file-node-content:hover .file-node-open-state { + visibility: visible; +} + +.mac-seamless-mode #typora-sidebar { + background-color: #fafafa; + background-color: var(--side-bar-bg-color); +} + +.md-lang { + color: #b4654d; +} + +.html-for-mac .context-menu { + --item-hover-bg-color: #e6f0fe; +} + +#md-notification .btn { + border: 0; +} + +.dropdown-menu .divider { + border-color: #e5e5e5; +} + +.ty-preferences .window-content { + background-color: #fafafa; +} + +.ty-preferences .nav-group-item.active { + color: white; + background: #999; +} + +/*------------------------自定义主题----------------------------*/ + +/*------------------------仿Mac窗口按钮-BEGIN----------------------------*/ +.md-fences { + position: relative; + background-color: #eaeaea; +} +.md-fences:after { + content: ""; + position: absolute; + left: 11px; + top: 5px; + width: 12px; + height: 12px; + background-color: #ff374b; + border-radius: 6px; + z-index: 999999; + box-shadow: 20px 0 #ffc600, 40px 0 #00e03d; +} +.CodeMirror.cm-s-inner { + margin-top: 15px; + background-color: #f8f8f8; + border-radius: 3px; +} +/*------------------------仿Mac窗口按钮-END----------------------------*/ + +/*sidebar*/ +#typora-sidebar * { +} + +#typora-sidebar + .file-tree-node.file-library-file-node.active + .file-node-background { + border-left: 5px solid #3884ff; + height: 2.2rem; +} + +#sidebar-files-menu { + border: 1px solid rgba(0, 2, 3, 0.7); +} + +.file-list-item { + border-bottom: var(--window-border); +} + +.file-list-item { + overflow: hidden; + padding: 12px; + border-bottom: var(--window-border); + cursor: pointer; + padding-right: 8px; + padding-top: 12px; + padding-left: 24px; + transition: top 0.5s; + -webkit-transition: top 0.5s; +} + +.file-list-item .active { + background: #eaeaea; + color: var(--active-file-text-color); +} + +.file-list-item:not(.active) { + opacity: 0.9; +} + +.file-node-content { + padding-top: 6px; + margin: 0 0 8px 0; + cursor: default; + color: var(--control-text-color); + white-space: nowrap; + height: 2.2rem; + line-height: 1.5; +} + +.ty-on-drag-enter { + background-color: #eaeaea; + color: var(--item-hover-text-color); +} + +.file-node-content:active { + border-radius: 0px !important; + background: #eaeaea; +} + +.active .file-node-content { + font-weight: bold; +} + +.file-node-content:hover { + cursor: pointer; + border-radius: 0px !important; +} + +.file-node-icon, +.file-node-open-state { + display: block; + float: left; + line-height: 1.5; + min-height: 15px; +} + +.file-node-icon { + margin-right: 6px; +} + +.file-list-item-file-name { + font-weight: 700; + margin-bottom: 3px; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + width: 100%; + line-height: 2; +} + +.sidebar-footer { + background: var(--side-bar-bg-color); + border-top: 2px solid #dddddd; +} + +.html-for-mac #file-library-search-input { + border: 0; + border-bottom: 1px solid #dddddd; + line-height: 16px; + margin: 5px 16px 0px 0; + width: 0; + flex: 1; + background: 0 0; + color: #bbc0ca !important; + padding-top: 6px; +} + +/*文档列表底部按钮*/ +#typora-sidebar #ty-sidebar-footer .sidebar-footer-item:hover { + background: var(--master-color); + color: #ffffff; + font-weight: 600; +} + +#typora-sidebar #outline-content .outline-item:hover { + background: var(--master-color); + color: #ffffff; + font-weight: 600; +} + +#typora-sidebar + #ty-sidebar-footer + #sidebar-files-menu + .show + + .menuitem-group-label.show { + border-color: var(--window-border); + font-weight: 600; +} + +#typora-sidebar #ty-sidebar-footer { + border-top: var(--window-border); +} + +/*文档列表底部每项*/ +#typora-sidebar #ty-sidebar-footer #sidebar-files-menu li > a:hover { + background: var(--master-color); + color: #ffffff; + font-weight: 600; +} + +#typora-sidebar #ty-sidebar-footer #sidebar-files-menu .ty-side-sort-btn.active, +#typora-sidebar #ty-sidebar-footer #sidebar-files-menu .ty-side-sort-btn:hover { + color: #3884ff; +} + +#typora-sidebar + #ty-sidebar-footer + #sidebar-files-menu + .ty-side-sort-btn.active { + background: #001129; +} + + +/*文档列表 hover*/ +#typora-sidebar .file-list-item.file-library-node:not(.active):hover { + background: var(--master-color); + color: #ffffff; + font-weight: 500; +} + +#typora-sidebar + .file-tree-node.file-library-file-node:not(.active):hover + .file-node-background { + background: var(--master-color); + height: 2.2rem; + color: #ffffff; + font-weight: 500; +} + +/*`` 组成的code*/ +:not(pre)>code { + border: 1px solid #e7eaed; + background-color: #f8f8f8; + padding: 0; + padding: 2px 4px 0px 4px; + font-size: 0.9em; + transition: all .6s; + border-radius: 4px; + font-weight: 700; +} + +/*[ ] 和 [x] 组成的 checkbox*/ +input[type='checkbox'] { + cursor: pointer; + position: absolute; + width: 1rem; + height: 1rem; + font-size: 0.9rem; + visibility: hidden; + margin-right: 3px; +} +input[type='checkbox']::after { + position: absolute; + top: 0; + background-color: #ffffff; + border: 1px solid #333333; + color: #ffffff; + width: 1rem; + height: 1rem; + display: inline-block; + visibility: visible; + padding-left: 0px; + text-align: center; + content: ' '; + border-radius: 3px; +} +/* ✓ */ +input[type='checkbox']:checked::after { + content: '\2714'; + font-size: 0.9rem; + font-weight: bold; + background-color: var(--master-color); + border: 0; +} + +strong { + color: var(--master-color); +}