跳转至

2021-02-0x01

1.1. Articles

1.1.1. 一个人的年终总结

http://lutaonan.com/blog/2020-summary/

1.1.2. Chaos 工程 dns 数据

data:dns: https://chaos.projectdiscovery.io/#/

We actively collect and maintain internet-wide assets' data, this project is meant to enhance research and analyse changes around DNS for better insights.

1.1.3. 四行 Python 代码实现管道

python: https://aber.sh/articles/Python-Pipe/#disqus_thread

1.1.4. 混沌工程原则

https://principlesofchaos.org/zh/

1.1.5. Github Aciton 的十个技巧

https://www.chenshaowen.com/blog/10-tips-of-github-action.html

1.2. Note

1.2.1. MDN

MDN(可选链操作符): https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/可选链

MDN(管道操作符): https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/管道操作符

MDN(Nullish_coalescing_operator?空值合并操作符): https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Nullish_coalescing_operator

1.2.2. npm ci

https://docs.npmjs.com/cli/v6/commands/npm-ci

尝试用 npm clean install 代替 npm install

1.2.3. Github Action

GA: https://docs.github.com/cn/actions/learn-github-actions/introduction-to-github-actions

Github Action 官方介绍

GA: https://github.com/marketplace/actions/cache

使用 Github Action cache

GA: https://docs.github.com/cn/actions/guides/storing-workflow-data-as-artifacts

Github Action 之间传递数据

1.2.4. 过滤器模式备忘清单

您可以在路径、分支和标记过滤器中使用特殊字符。

: 匹配零个或多个字符,但不匹配 / 字符。 例如,Octo 匹配 Octocat。 **: 匹配零个或多个任何字符。 ?:匹配零个或一个字符。 例如 Octoc?t 匹配 Octocat。 +: 匹配一个或多个前置字符。 [] 匹配列在括号中或包含在范围内的一个字符。 范围只能包含 a-z、A-Z 和 0-9。 For example, the range[0-9a-z] matches any digit or lowercase letter. 例如,[CB]at 匹配 Cat 或 Bat,[1-2]00 匹配 100 和 200。 !:在模式开始时,它将否定以前的正模式。 如果不是第一个字符,它就没有特殊的意义。 字符 *、[ 和 ! 是 YAML 中的特殊字符。 如果模式以 *、[ 或 ! 开头,必须用引号括住模式

1.2.5. GraphQL

https://graphql.bootcss.com/learn/schema/

GraphQL schema

  • 可以在 Chrome://flag 中开启 Real search box

Real search box in New Tab Page Enables a search box in the middle of the NTP that will accept input directly (i.e. not be a "fake" box). Search results will show below the non-fake input ("realbox"). – Mac, Windows, Linux, Chrome OS

1.2.7. gRPC

gRPC: https://ruby-china.org/topics/40820

RESTfull HTTP JSON RESTfull 是一种资源状态转换的架构风格,也可以用来实现 RPC, 互联网对 HTTP 超广泛的支持,使得这相当简单,也是大多数情况下的首选。

通过 HTTP 协议来进行内容传输,Header 用来约定编码、body 大小等,彼此以\r\n来分割,Header 和 body 之间通过两个连续的\r\n来间隔,能很容易地区分不同的请求。

通过 Url 和对应参数来标示要调用的方法和参数。在 body 中用 JSON 对内容进行编码,极易跨语言,不需要约定特定的复杂编码格式和 Stub 文件。在版本兼容性上非常友好,扩展也很容易。

众多的优点使得这种方案广受欢迎。不过也有其无法避开的弱点:

HTTP 的 header 和 Json 的数据冗余和低压缩率使得传输性能差 JSON 难以表达复杂的参数类型,如结构体等

1.2.8. /missing-semester-cn

https://missing-semester-cn.github.io/

移动 多数时候你会在正常模式下,使用移动命令在缓存中导航。在 Vim 里面移动也被成为 「名词」, 因为它们指向文字块。

基本移动: hjkl (左, 下, 上, 右) 词: w (下一个词), b (词初), e (词尾) 行: 0 (行初), ^ (第一个非空格字符), $ (行尾) 屏幕: H (屏幕首行), M (屏幕中间), L (屏幕底部) 翻页: Ctrl-u (上翻), Ctrl-d (下翻) 文件: gg (文件头), G (文件尾) 行数: :{行数} 或者 {行数}G ({行数}为行数) 杂项: % (找到配对,比如括号或者 /* */ 之类的注释对) 查找: f{字符}, t{字符}, F{字符}, T{字符} 查找/到 向前/向后 在本行的{字符} , / ; 用于导航匹配 搜索: /{正则表达式}, n / N 用于导航匹配


编辑 所有你需要用鼠标做的事, 你现在都可以用键盘:采用编辑命令和移动命令的组合来完成。 这就是 Vim 的界面开始看起来像一个程序语言的时候。Vim 的编辑命令也被称为 「动词」, 因为动词可以施动于名词。

i 进入插入模式 但是对于操纵/编辑文本,不单想用退格键完成 O / o 在之上/之下插入行 d{移动命令} 删除 {移动命令} 例如, dw 删除词, d$ 删除到行尾, d0 删除到行头。 c{移动命令} 改变 {移动命令} 例如, cw 改变词 比如 d{移动命令} 再 i x 删除字符 (等同于 dl) s 替换字符 (等同于 xi) 可视化模式 + 操作 选中文字, d 删除 或者 c 改变 u 撤销, 重做 y 复制 / 「yank」 (其他一些命令比如 d 也会复制) p 粘贴 更多值得学习的: 比如 ~ 改变字符的大小写

计数 你可以用一个计数来结合「名词」 和 「动词」, 这会执行指定操作若干次。

3w 向前移动三个词 5j 向下移动5行 7dw 删除7个词 修饰语 你可以用修饰语改变 「名词」 的意义。修饰语有 i, 表示 「内部」 或者 「在内「, 和 a, 表示 」周围「。

VIM

多窗口 用 :sp / :vsp 来分割窗口 同一个缓存可以在多个窗口中显示。

1.3. Share

1.3.1. Javascript 2020 年度调查问卷

https://2020.stateofjs.com/zh-Hans/technologies/

Javascript 2020 年度调查问卷,介绍 Javascript 社区中各种框架及技术的使用情况,我们还可以了解到 Javascript 的发展趋势

1.3.2. React 官方介绍的 testing 实践

https://zh-hans.reactjs.org/docs/testing.html

1.3.3. Gentoo linux 的安装介绍

https://wiki.gentoo.org/wiki/Handbook:AMD64/Full/Installation/zh-cn

1.3.4. WTF Javascript

Github: https://github.com/denysdovhan/wtfjs/blob/master/README-zh-cn.md

箭头函数不能作为构造器 考虑下面的例子:

let f = function() { this.a = 1; }; new f(); // -> { 'a': 1 } 现在,试着用箭头函数做同样的事情:

let f = () => { this.a = 1; }; new f(); //

1.3.5. Javascript 关于时间处理的库:momentjs

library: https://momentjs.com/

1.3.6. M1 homebrew cn 安装实践

ineo6/homebrew-install

1.3.7. 现代 CSS 库:stitches

https://stitches.dev/


最后更新: 2021-07-11
创建日期: 2021-02-01