当前位置: 首页 > news >正文

obsidian制作自己的主题一文入门

制作自己的主题

我最近发现一款插件,直接把obsidian的文章格式复制到公众号中。
我非常喜欢这个功能,这将减少公众号排版的时间,同时保持公众号文章格式的一致性。
但是这个插件提供的模板不能满足我的需求,所以,需要学习一些主题制作的知识。
那索性,就学一学如何制作主题,并把教程分享给大家。
在这里插入图片描述

前提

  1. 最好有git(非必要)
  2. 代码编辑器
  3. css知识

过程

第一步:下载示例主题

到github上下载sample-theme,链接:github地址
方法1:直接下载zip文件。放到你仓库的.obsidian/themes文件夹下。
这个.obsidian文件夹就在你的仓库目录下,隐藏的,需要设置一下浏览器。
在这里插入图片描述
方法2:用git的方式
s1:打开一个终端,进入themes文件夹下

cd 你的仓库/.obsidian/themes

s2:用clone命令复制样本主题

git clone https://github.com/obsidianmd/obsidian-sample-theme.git "Sample Theme"

第二步:在obsidian中加载主题

在obsidian中,设置>外观>选择sample theme
在这里插入图片描述
如果没有的话,重启obsidian。

第三步:编辑模板基本设置

当然,你肯定不希望你的模板叫sample theme对吧。所以,下一步,我们来做基本的设置。
对于模板信息的设置在themes文件夹下的manifest.json文件中。
在这里插入图片描述
去把name这个属性改了,顺便下面的version,author这些根据自己的情况改。
改完之后,记得也把你放在themes中整个文件夹的名字从Sample Theme改成你改的名字。
重启obsidian看看这些内容是否有效。

凡是更改过manifest.json文件,都要重启obsidian

第四步:css变量(自定义变量)

在css中,我们通过"--变量名"的方式来表示这个变量可以在其它地方当成变量来使用。使用的时候通过var()这个函数就行了。obsidian就是通过这种方式控制样式的。

我们看个例子:

<!DOCTYPE html>
<html><head><meta charset="utf-8"><title></title></head><style>:root{--color1:red;--color2:green;--color3:blue;}.firstParagraph{color:var(--color1)}.secondParagraph{color:var(--color2)}.thirdParagraph{color:var(--color3)}</style><body><p class="firstParagraph">这里是第一段</p><p class="secondParagraph">这里是第二段</p><p class="thirdParagraph">这里是第三段</p></body>
</html>

结果如下:
在这里插入图片描述

在这段代码中,通过–color1,–color2,–color3的方式声明了三个自定义的属性值。我们把这三个值放在:root这个伪类下面,方便以后继承和提取,当然你也可以放在其它的标签里面。提取的时候,通过var函数来提取它们,这一点好理解的。

第五步:更改属性

在obsidian中随便建立一个文档,里面随便写点内容。

更改字体

在theme.css文件中,加上如下内容:

body {--font-text-theme: Georgia, serif;
}

字体就变了

更改背景

因为obsidian中有深色主题和浅色主题,所以可以有时要分别设置
在这里插入图片描述
代码如下:

.theme-dark {--background-primary: #18004F;--background-secondary: #220070;
}.theme-light {--background-primary: #ECE4FF;--background-secondary: #D9C9FF;
}

其它属性

可以到下面的这个链接中找其他的属性,进行更改:css变量

还有一种方式,在obsidian中
S1:进入开发者工具中。
windows快捷键:ctrl+shift+I
mac快捷键:cmd+option+I

S2:选择sources
S3:page>top 选择app.css
S4:从里面找找你想修改的属性吧~

实战

对于我来说,只需要满足基本的排版,我希望我在obsidian排版的内容,可以直接复制到公众号中,简单清爽一点的。
所以,我需要设置的内容包括:
1.大标题headings(颜色、大小)
2.正常文本(颜色、大小、字符间距、行间距)

由此,我找到了以下变量:

变量介绍
–h1-colorH1文本颜色
–h1-fontH1字体
–h1-line-heightH1行高
–h1-sizeH1大小
–h1-weightH1weight
–text-normal普通文本颜色
–size-4-1用于设置padding和margin,代表4像素)
–font-text-theme编辑器中的字体
–font-text-size字体大小,默认16
–font-normal正常的font weight
–font-bold加粗的font weight
–font-light细的font weight
–line-height-normal默认1.5行高
http://www.lryc.cn/news/377899.html

相关文章:

  • 游戏心理学Day20
  • Serverless如何赋能餐饮行业数字化?乐凯撒思变之道
  • css系列:音频播放效果-波纹律动
  • WPF学习(1)--类与类的继承
  • Spring Boot框架的原理及应用详解(六)
  • 密码学与信息安全面试题及参考答案(2万字长文)
  • C++语法19 循环嵌套结构(for/while循环)
  • AtomicInteger原理和CAS与Synchronized(juc编程)
  • 抖音a_bogus,mstoken全参数爬虫逆向补环境2024-06-15最新版
  • 【机器学习】机器学习重要方法—— 半监督学习:理论、算法与实践
  • leetcode70 爬楼梯
  • ENVI实战—一文搞定非监督分类
  • 【Qt 学习笔记】Qt系统相关 | Qt事件 | 事件的介绍及基本概念
  • 具身智能特点及实现路线
  • 重温react-04
  • lock-锁的概念
  • Docker 可用镜像源
  • MySQL 搭建主从报错 1236
  • 华为OD机试真题2024版-求幸存数之和
  • Python - 各种计算器合集【附源码】
  • 【已解决】better-scroll在PC端如何开启鼠标滚动以及如何始终显示滚动条
  • AJAX 综合案例-day2
  • 【Esp32连接微信小程序蓝牙】附Arduino源码《 返回10007 相同特征id冲突问题》
  • 并发控制技术
  • 什么是网段
  • PHP和Mysql前后端交互效果实现
  • vue小总结
  • RapidLayout:中英文版面分析推理库
  • postman 工具下载安装使用教程_postman安装
  • 【数学建模】——【新手小白到国奖选手】——【学习路线】