Hugo学习笔记五,文章头部,以DoIt为例

title: 文章标题.

subtitle: DoIt 新增 | 0.2.0 文章副标题.

date: 这篇文章创建的日期时间. 它通常是从文章的前置参数中的 date 字段获取的, 但是也可以在 网站配置 中设置.

lastmod: 上次修改内容的日期时间.

draft: 如果设为 true, 除非 hugo 命令使用了 –buildDrafts/-D 参数, 这篇文章不会被渲染.

authors: DoIt 更改 | 0.2.12 文章作者.

description: 文章内容的描述.

license: 这篇文章特殊的许可.

images: 页面图片, 用于 Open Graph 和 Twitter Cards.

tags: 文章的标签.

categories: 文章所属的类别.

series: DoIt 新增 | 0.2.12 文章所属的系列.

series_weight: DoIt 新增 | 0.2.13 自定义文章在系列中的位置.

seriesNavigation: DoIt 新增 | 0.2.13 是否使用系列导航.

featuredImage: 文章的特色图片.

featuredImagePreview: 用在主页预览的文章特色图片.

hiddenFromHomePage: 如果设为 true, 这篇文章将不会显示在主页上.

hiddenFromSearch: DoIt 新增 | 0.2.0 如果设为 true, 这篇文章将不会显示在搜索结果中.

twemoji: DoIt 新增 | 0.2.0 如果设为 true, 这篇文章会使用 twemoji.

lightgallery: 如果设为 true, 文章中的图片将可以按照画廊形式呈现.

ruby: DoIt 新增 | 0.2.0 如果设为 true, 这篇文章会使用 上标注释扩展语法.

fraction: DoIt 新增 | 0.2.0 如果设为 true, 这篇文章会使用 分数扩展语法.

fontawesome: DoIt 新增 | 0.2.0 如果设为 true, 这篇文章会使用 Font Awesome 扩展语法.

linkToMarkdown: 如果设为 true, 内容的页脚将显示指向原始 Markdown 文件的链接.

linkToSource: DoIt 新增 | 0.2.14 如果设为 false, 则关闭页脚 view source 的链接. 你可以将其设置为一个指向文章原始文件的链接. 使用魔法变量 {path} 来获取文章的相对路径, 这篇文章的 {path} 是 posts/theme-documentation-content/index.en.md.

linkToEdit:DoIt 新增 | 0.2.13 如果设为 false, 则关闭页脚 编辑此页 的链接. 你可以将其设置为一个用于编辑这个页面的链接. 使用魔法变量 {path} 来获取这篇文章的相对路径, 这篇文章的 {path} 是 posts/theme-documentation-content/index.zh-cn.md.

linkToReport: DoIt 新增 | 0.2.14 如果设为 false, 则关闭页脚 报告问题 的链接. 你可以将其设置为一个用于报告此页面中错误的链接. 使用魔法变量 {path} 来获取文章的相对路径, 这篇文章的 {path} 是 posts/theme-documentation-content/index.en.md, 使用 {title} 来获取文章的标题, 这篇文章的 {title} 为 Theme Documentation - Content, 使用 {url} 来获取文章的链接, 这篇文章的 {url} 为 https://hugodoit.pages.dev/theme-documentation-content/.

rssFullText: DoIt 新增 | 0.2.4 如果设为 true, 在 RSS 中将会显示全文内容.

pageStyle: DoIt 新增 | 0.2.11 调整页面样式, 可选择”normal”或”wide”.

license: DoIt 新增 | 0.2.14 许可协议信息 (支持 HTML 格式).

toc: DoIt 更改 | 0.2.9 和 网站配置 中的 params.page.toc 部分相同.

code: DoIt 新增 | 0.2.0 和 网站配置 中的 params.page.code 部分相同.

table: DoIt 新增 | 0.2.14 和 网站配置 中的 params.page.table 部分相同.

math: DoIt 更改 | 0.2.0 和 网站配置 中的 params.page.math 部分相同.

mapbox: DoIt 新增 | 0.2.0 和 网站配置 中的 params.page.mapbox 部分相同.

share: 和 网站配置 中的 params.page.share 部分相同.

comment: DoIt 更改 | 0.2.0 和 网站配置 中的 params.page.comment 部分相同.

library: DoIt 新增 | 0.2.7 和 网站配置 中的 params.page.library 部分相同.

seo: DoIt 新增 | 0.2.10 和 网站配置 中的 params.page.seo 部分相同.

outdatedArticleReminder: DoIt 新增 | 0.2.13 和 网站配置 中的 params.page.outdatedArticleReminder 部分相同.

sponsor: DoIt 新增 | 0.2.13 和 网站配置 中的 params.sponsor 部分相同.

related: DoIt 新增 | 0.2.14 和 网站配置 中的 params.page.related 部分相同.

LDO 与 降压DCDC的区别(转发自微信朋友圈的文章)

LDO和降压DCDC都是常见的电源管理器件,用于提供稳定的直流电压输出。LDO是线性稳压器,而降压DCDC是开关稳压器,它们的工作原理、应用场景、优缺点等方面有很大的不同,下面是LDO和降压DCDC的对比:

一. 工作原理
  1. LDO:基于电阻调节,通过调节管的输出电阻,将输入电压降压到所需的输出电压。
  2. 降压DCDC:基于电感和开关管,通过周期性地切断电感上的电流,将输入电压降压到所需的输出电压。
二. 效率
  1. LDO:由于是线性调节,会有一定的电流损耗,效率一般不高,通常在20%-60%之间。
  2. 降压DCDC:由于是开关调节,可以实现高效率,效率可以达到80%以上。
三. 输出噪声
  1. LDO:由于线性调节的特性,输出噪声较低,适合对输出电压稳定性要求较高的应用场景。
  2. 降压DCDC:由于开关调节的特性,输出噪声较高,适合对输出电压稳定性要求不高的应用场景。
四. 成本
  1. LDO:由于线性调节的简单性,LDO芯片较为简单,成本相对较低。
  2. 降压DCDC:由于开关调节需要较多的元件和控制电路,降压DCDC芯片较为复杂,成本相对较高。
五. 应用场景
  1. LDO:适用于对输出电压稳定性要求较高,输出电流较小(几百毫安以下)的应用场景,如精密仪器、传感器、低功耗设备等。
  2. 降压DCDC:适用于对输出电压稳定性要求不高,但输出电流较大(几安及以上)的应用场景,如计算机、通讯设备、消费电子等。

电源的调制方式PWM/PFM/PSM

调制通常是指如何调节MOS管的开通关断。控制方式往往指环路控制。电源芯片主要的调制方式有两种,PWM-定频调宽,PFM-定宽调频。

  1. PWM,Pulse Width Modulation

    电压控制模式、电流控制模式都属于PWM调制。
    设定好固定频率不变,通过电压反馈调整其占空比,从而达到稳定输出电压的目的。

  2. PFM,Pulse Frequency Modulation

    调制信号的频率随输入信号幅值或负载大小而变化,其占空比不变,通过环路调整时改变内部场效应管的开关频率来实现系统控制。

  3. PWM vs PFM :

    与PWM 模式相比,优点在于轻载模式下效率高,但在重在模式下效率低于PWM模式。很多电源芯片为了提高整体的效率,设计采用PWM,PFM两种工作模式相结合。

  4. PSM,Pulse Skip Mode

    有些数据手册上也叫 Power Save Mode 或者 Sleep Mode,重载时驱动信号以满频工作,轻载下驱动信号会几个开关周期才skip一下,从这两个名字来看,PSM模式通过轻载skip可达到更高的效率。同时,由于开关频率的降低会使得输出电压纹波变大。

    实际上,PSM和PFM都是在轻载下减小开关频率来减小开关损耗,而PSM 额外还在检测到负载小于设定的阈值时,关闭一些block,进一步减少损耗,因此在进入PSM模式的时候,从打开block 到打开内部MOS管整体的响应比单纯的PFM更慢,因此输出电压纹波相对较大。

    如果是长期工作在轻载模式下,对功耗要求高,对输出电压纹波要求不大的场景可以选择PSM。

Hexo结合mermaid增加甘特图功能,在lanscape-plus主题现实现

给hexo增加绘甘特图的功能,采用mermaid插件

一 安装加mermaid插件
1
2
## https://github.com/webappdevelp/hexo-filter-mermaid-diagrams
$ npm install hexo-filter-mermaid-diagrams --save
二 修改博客根目录下的 _config.yml文件,增加
1
2
3
4
5
6
7
8
9
10
11
12
13
14
### 这个己验证
# mermaid chart
mermaid: ## mermaid url https://github.com/knsv/mermaid
enable: true # default true
version: "9.4.3" # default v9.0.0
options: # find more api options from https://github.com/knsv/mermaid/blob/master/src/mermaidAPI.js
#startOnload: true // default true
### 有的教程说增加如下,
# Mermaid tag
mermaid:
enable: true
# Available themes: default | dark | forest | neutral
theme: default

三 修改脚本
  1. 修改 blog/themes/landcape-plus/layout/_partial/footer.ejs文件,最后一行增加
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    <!-- 增加mermaid 配置 -->
    {% if theme.mermaid.enable %}
    <script type="text/javascript" src='https://unpkg.com/mermaid@9.4.3/dist/mermaid.min.js'></script>
    <script>
    if (window.mermaid) {
    var mermaid_config = {
    startOnLoad: true,
    theme: '{{theme.mermaid.theme}}',
    flowchart:{
    useMaxWidth: false,
    htmlLabels: true
    }
    }
    mermaid.initialize(mermaid_config);
    }
    </script>
    {% endif %}
  2. 修改 blog/themes/next/_partial/footer.swig文件 增加
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    {% if theme.mermaid.enable %}
    <script type="text/javascript" src='https://unpkg.com/mermaid@9.4.3/dist/mermaid.min.js'></script>
    <script>
    if (window.mermaid) {
    var mermaid_config = {
    startOnLoad: true,
    theme: '{{theme.mermaid.theme}}',
    flowchart:{
    useMaxWidth: false,
    htmlLabels: true
    }
    }
    mermaid.initialize(mermaid_config);
    }
    </script>
    {% endif %}

四 验证,增加.md文件,语句写
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<pre class="mermaid"> gantt
dateFormat YYYY-MM-DD
title 利用mermaid功能,增加一个甘特图
section 第一节
己完成任务 :done, des1, 2014-01-06,2014-01-08
正在进行的任务 :active, des2, 2014-01-09, 3d
未来任务1 : des3, after des2, 5d
未来任务2 : des4, after des3, 5d
section Critical tasks
Completed task in the critical line :crit, done, 2014-01-06,24h
Implement parser and jison :crit, done, after des1, 2d
Create tests for parser :crit, active, 3d
Future task in critical line :crit, 5d
Create tests for renderer :2d
Add to mermaid :1d</pre>

mermaid写甘特图的语法汇总

一 例子
1
2
3
4
5
6
7
8
9
10
11
12
13
gantt
title 项目进度
dateFormat YYYY-MM-DD
axisFormat %m-%d
excludes sunday,monday,tuesday,friday,2014-03-01
section 第一阶段
需求分析 :crit, a1, 2014-01-01, 30d
设计评审 :after a1, 20d

section 第二阶段
第一批测试 :done, 2014-01-12 , 12d
第二批测试 :24d
客户验收 :milestone,2h
二 语法解释
  1. gantt 表示这是一个甘特图
  2. title 定义甘特图的标题
  3. dateFormat 定义甘特图中日期显示的格式,更多格式可以参考 https://mermaid-js.github.io/mermaid/#/gantt?id=input-date-format
  4. section 定义一个一个的区域,可以包含一个或多个任务,以section关键字开始一行,并给予命名
  5. 任务定义语法: 任务名称:别名,开始日期,天数
  6. 状态的修饰语法 active(表示还没有完成,会显示为蓝色), done(表示已完成, 会显示为灰色),crit(表示关键任务,会显示为红色)
  7. 任务时长:d(天),w(周),h(小时),m(分钟)
  8. 任务可以有一个别名,例如上面的 a1 ,然后在其他任务中可以引用依赖,例如 after a1
  9. 如果某个任务没有写开始日期,默认就是在上一个任务之后
  10. excludes 是指要排除哪些日期,可以写具体的日期,也可以写 weekends(周末),或具体的工作日,如 sunday,monday 这样的语法,可以写多种的组合
  11. milestone 表示里程碑,程碑的确切位置是由里程碑的初始日期和任务的“持续时间”确定的:初始日期+持续时间/2
  12. 输入注释,解析器将忽略注释。注释必须在单独的行上,并且必须以%%(双百分号)开头。注释开始后到下一个换行符的任何文本都将被视为注释,包括任何图表语法。

Hugo学习笔记四,干特图初体验

在markdown下可以写出流程图,甘特图之类的,可采用mermaid这个插件,今天在hugo下试用

采用LoviIt皮肤,按网上配置肿是不行。后来发现themes/LoveIt/layouts/shortcodes/下有mermaid.html文件,说明这个主题己经配置好了mermaid,只是格式不同。正好在Doit主题说明书里看到了,是写的语法不对改为以下

甘特图
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 甘特图
{{< mermaid >}}gantt
dateFormat YYYY-MM-DD
title 利用mermaid功能,增加一个甘特图
section 第一节
己完成任务 :done, des1, 2014-01-06,2014-01-08
正在进行的任务 :active, des2, 2014-01-09, 3d
未来任务1 : des3, after des2, 5d
未来任务2 : des4, after des3, 5d
section Critical tasks
Completed task in the critical line :crit, done, 2014-01-06,24h
Implement parser and jison :crit, done, after des1, 2d
Create tests for parser :crit, active, 3d
Future task in critical line :crit, 5d
Create tests for renderer :2d
Add to mermaid :1d
{{< /mermaid >}}

类图
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

{{< mermaid >}}classDiagram
Class01 <|-- AveryLongClass : Cool
Class03 *-- Class04
Class05 o-- Class06
Class07 .. Class08
Class09 --> C2 : Where am i?
Class09 --* C3
Class09 --|> Class07
Class07 : equals()
Class07 : Object[] elementData
Class01 : size()
Class01 : int chimp
Class01 : int gorilla
Class08 <--> C2: Cool label
{{< /mermaid >}}

旅行图,但看起来比甘特图更好
1
2
3
4
5
6
7
8
9
10
{{< mermaid >}} journey
title My working day
section Go to work
Make tea: 5: Me
Go upstairs: 3: Me
Do work: 1: Me, Cat
section Go home
Go downstairs: 5: Me
Sit down: 5: Me
{{< /mermaid >}}
流程图
1
2
3
4
5
6
{{< mermaid >}}graph LR;
A[Hard edge] -->|Link text| B(Round edge)
B --> C{Decision}
C -->|One| D[Result one]
C -->|Two| E[Result two]
{{< /mermaid >}}
时序图
1
2
3
4
5
6
7
8
9
10
11
12
{{< mermaid >}}sequenceDiagram
participant Alice
participant Bob
Alice->>John: Hello John, how are you?
loop Healthcheck
John->John: Fight against hypochondria
end
Note right of John: Rational thoughts <br/>prevail...
John-->Alice: Great!
John->Bob: How about you?
Bob-->John: Jolly good!
{{< /mermaid >}}

linux ssh 协议下复制文件

采用 scp 命令

一 本地文件复制到远端的root目录,远程主机IP为192.168.3.25
1
2
3
$ scp  要复制的文件名  root@192.168.3.25:/root 
# 如果要复制目录,要加 -r 选项
$ scp -r 要复制的目录名 root@192.168.3.25:/root
二 远程复制到本地
1
2
$ scp root@192.168.3.25:/root/文件名  ~/temp/
$ scp -r root@192.168.3.25:/root/目录名 ~/temp

由公司员工想到家里的鸡娃

难以挖走的员工

&#8195;&#8195;我以前上班的公司“深圳博士微电子”的产品经理与销售经理团队们都很厉害,但是公司的薪水比同行来说,没有优势。曾经有许多同行来挖人,许诺的工资待遇,或职位都要高于博士微电子,但是几乎没有成功的。于时有人说很佩服博士微的马老板,以较少的钱招到了优秀的人才。

&#8195;&#8195;后来我与朋友聊起这件事情。我说到,在博士微电子,公司有很多决策,比如候入进的产品线,新的产品线如何进行策划,推广等。都会与产品经理,销售经理反复讨论模拟,甚至普通业务员也参与进来。这样的话,每个项目,员工就好象参与了公司的经营一样。归属感很强。

想到家里的娃

&emsp;&emsp;这里,我又想到许多家长,觉得自家的娃不听话,不爱家,家里搞的乱七八糟的。其实成天只让家里的娃只管学习,家务事全部不用干,不参与家里的建设,他如何爱这个家呢?归属感不强烈啊。

由大年初一的“陋习”想到的

&emsp;&emsp;小时候过年前大扫除,大年三十吃完饭,垃圾都要收拾的干干净净的。然后大年初一这天大人就告诉不要垃圾了。“大年初一是新年第一天,中国人凡事都喜欢好彩头。如果一定要扫地,可以从外头扫到里边,象征财宝进门,而且大年初一这天一般不倒垃圾。这是认为把家中的东西拿出去,就是把家中的福带出去。”
&emsp;&emsp;长大后到了外地工作,年青人聚在一起,觉得这个是陋习,迷信,过年回不了家,在集本宿舍过年的,才不会这样做。
&emsp;&emsp;现在想来,一个人能三十这天把家里要预备清理的都处理好,大年初一又能能安排好卫生工作,把垃圾集成起来第二天扔,这种能提前规划,自律的人能会不成功吗?