Skip to content

Commit 4808e5f

Browse files
author
elonz
committed
Add: typora-indigo.scss
Change-Id: Ifc73d4e32dcae3a72a4f2058bcb9017bc322ae97
1 parent ddd3eef commit 4808e5f

File tree

3 files changed

+548
-1
lines changed

3 files changed

+548
-1
lines changed

develop.md

Lines changed: 161 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ npm run typora-watch <theme_file_path>
5757

5858
1.`src/themes` 目录下创建新的主题文件 `mweb-xxx.scss``typora-xxx.scss`
5959
2. 编写样式内容
60-
3. 如果是 MWeb 主题,还需要在 `src/themes/config.js` 中增加主题配置项
60+
3. `src/themes/mweb-config.js` `src/themes/typora-config.js` 中增加主题配置项
6161

6262
### 生成 CSS 文件
6363

@@ -79,6 +79,166 @@ npm run compile-typora # 等同于上一条命令
7979

8080
注意:传递参数时,必须添加 `--` 分隔符。
8181

82+
## MWeb 主题开发
83+
1. 代码块:`pre code[class*="language-"]`
84+
2. 代码块语法颜色:见 `prism.scss`
85+
86+
## Typora 主题开发
87+
注意事项:
88+
1. 所有样式内容放在 `#write` 块内
89+
2. 代码块:
90+
91+
```scss
92+
pre.md-fences,
93+
pre.md-meta-block,
94+
.md-rawblock-control:not(.md-rawblock-tooltip) .md-rawblock-input {
95+
color: #f8f8f2;
96+
background: #272822;
97+
font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
98+
font-size: 1em;
99+
}
100+
```
101+
102+
3. 代码块指针颜色:`.CodeMirror div.CodeMirror-cursor { border-color: $font-color; }`
103+
4. 代码块语法颜色:见 `typora-bear.scss` → `.cm-s-inner {}`
104+
105+
```scss
106+
// 代码高亮 CodeMirror
107+
.cm-s-inner {
108+
// .cm-meta ?
109+
// .cm-hr ?
110+
// .cm-link ?
111+
112+
.cm-comment {
113+
color: $prism-color-comment;
114+
}
115+
116+
.cm-property,
117+
.cm-tag { // html tag,需要在 bracket 之前
118+
color: $prism-color-property;
119+
}
120+
121+
.cm-bracket, // <、>
122+
.cm-punctuation {
123+
color: $prism-color-punctuation;
124+
}
125+
126+
.cm-number {
127+
color: $prism-color-number;
128+
}
129+
130+
.cm-qualifier, // css selector
131+
.cm-string, .cm-string-2, // 2 什么意思?
132+
.cm-builtin {
133+
color: $prism-color-selector;
134+
}
135+
136+
.cm-attribute {
137+
color: $prism-color-attr-name;
138+
}
139+
140+
.cm-operator {
141+
color: $prism-color-operator;
142+
}
143+
144+
.cm-atom, // null, true, false
145+
.cm-keyword {
146+
color: $prism-color-keyword;
147+
}
148+
149+
.cm-def, // 变量声明语句中的变量名
150+
.cm-variable,
151+
.cm-variable-2, .cm-variable-3 { // 2, 3 什么含义?
152+
color: $prism-color-variable;
153+
}
154+
155+
.cm-type { // type 什么含义?
156+
color: darken($prism-color-variable, 25%);
157+
}
158+
}
159+
```
160+
161+
5. 任务列表:
162+
163+
```scss
164+
$primary-color: #353535; // 复选框选中时的背景颜色,建议和加粗字体的颜色一致
165+
$del-font-color: #525252; // 复选框选中时的字体颜色
166+
$body-bg-color: white; // 复选框未选中时的背景颜色
167+
$border-color: #bfbfbf; // 复选框未选中时的边框颜色,建议和表格边框的颜色一致
168+
169+
// task list
170+
.task-list-item {
171+
padding-left: 0.3rem
172+
list-style-type: none;;
173+
174+
> p {
175+
transition: color 0.3s, opacity 0.3s;
176+
}
177+
178+
&.task-list-done > p {
179+
color: $del-font-color;
180+
text-decoration: line-through;
181+
182+
> .md-emoji {
183+
opacity: .5;
184+
}
185+
186+
> .md-link > a {
187+
opacity: .6;
188+
}
189+
}
190+
191+
> input {
192+
-webkit-appearance: initial;
193+
display: block;
194+
position: absolute;
195+
border: 1px solid $border-color;
196+
border-radius: .25rem;
197+
// margin-top: .1rem;
198+
margin-left: -1.5rem;
199+
height: 1.2rem;
200+
width: 1.2rem;
201+
transition: border-color 0.3s;
202+
background-color: $body-bg-color;
203+
}
204+
205+
> input:focus {
206+
outline: none;
207+
box-shadow: none;
208+
}
209+
210+
> input:hover {
211+
border-color: $primary-color;
212+
}
213+
214+
> input[checked] {
215+
&::before {
216+
content: '';
217+
position: absolute;
218+
top: 20%;
219+
left: 50%;
220+
height: 60%;
221+
width: 2px;
222+
transform: rotate(40deg);
223+
background: $primary-color;
224+
}
225+
226+
&::after {
227+
content: '';
228+
position: absolute;
229+
top: 46%;
230+
left: 25%;
231+
height: 30%;
232+
width: 2px;
233+
transform: rotate(-40deg);
234+
background: $primary-color;
235+
}
236+
}
237+
}
238+
```
239+
240+
6.
241+
82242
## Q & A
83243

84244
### 如何自定义代码块的主题?

src/themes/typora-config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,9 @@ const themes = {
4545
file: "typora-gotham.scss",
4646
mode: "dark",
4747
},
48+
indigo: {
49+
file: "type-indigo.scss",
50+
},
4851
lighthouse: {
4952
file: "mweb-lighthouse.scss",
5053
mode: "dark",

0 commit comments

Comments
 (0)