mirror of
https://github.com/jaywcjlove/reference.git
synced 2025-06-17 04:31:22 +08:00
Compare commits
56 Commits
Author | SHA1 | Date | |
---|---|---|---|
b98e7d8395 | |||
3d1317603e | |||
8a651c813b | |||
10884e73f0 | |||
de4286cd7f | |||
f31aab4b35 | |||
485e83c5df | |||
5f1e3f6a2b | |||
9688866fdb | |||
9c59d4a225 | |||
3f2559c1e1 | |||
606776662d | |||
3cec40c4f9 | |||
a5c1f3c02e | |||
8171974454 | |||
d50673ad3f | |||
7ca89af17c | |||
e0ce750d73 | |||
409e44a354 | |||
8382555a20 | |||
e3e6783703 | |||
ea86c3a76c | |||
49b1394090 | |||
03f1c20d2c | |||
ae060ebac2 | |||
358d8f4e17 | |||
6614543e04 | |||
5693510df6 | |||
dfaaee7ce5 | |||
c356147d5f | |||
1e1836f949 | |||
65aab8d920 | |||
816aabf365 | |||
9efea19f6b | |||
e1661b5dc4 | |||
45f42568fc | |||
04d063f1fe | |||
7b5d556dcc | |||
6900980460 | |||
28066ae3c4 | |||
39bd0173e8 | |||
6b570f2035 | |||
dac7e778cb | |||
9e16ec7005 | |||
489d7f509e | |||
c0855988c0 | |||
e5e0160628 | |||
cb7b542fb1 | |||
101d5c1b09 | |||
004553f1de | |||
da7da9aae0 | |||
6d4ce812d0 | |||
bab4e10038 | |||
e30defe3bf | |||
0691e82eb2 | |||
38b685315b |
@ -147,7 +147,6 @@ REF_LABEL=网站首页
|
||||
- [linzhe.top](https://linzhe.top/)
|
||||
- [xushanxiang.com](https://xushanxiang.com/ref/)
|
||||
- [winnerzr01.github.io](https://winnerzr01.github.io/Quick-Reference/index.html)
|
||||
- [isteed.cc](https://ref.isteed.cc/)
|
||||
- [hestudio.org](https://quickref.hestudio.org)
|
||||
- [surcode.cn](https://ref.surcode.cn)
|
||||
- [cms.im](https://quickref.cms.im/)
|
||||
@ -232,18 +231,24 @@ jobs:
|
||||
<a href="https://github.com/LiuYuan-SHU" title="Liuyuan">
|
||||
<img src="https://avatars.githubusercontent.com/u/96400967?v=4" width="42;" alt="Liuyuan"/>
|
||||
</a>
|
||||
<a href="https://github.com/LufsX" title="LufsX">
|
||||
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
|
||||
</a>
|
||||
<a href="https://github.com/heStudio-Network" title="醉、倾城">
|
||||
<img src="https://avatars.githubusercontent.com/u/119711513?v=4" width="42;" alt="醉、倾城"/>
|
||||
</a>
|
||||
<a href="https://github.com/sjh42" title="42:p">
|
||||
<img src="https://avatars.githubusercontent.com/u/34529275?v=4" width="42;" alt="42:p"/>
|
||||
</a>
|
||||
<a href="https://github.com/LufsX" title="LufsX">
|
||||
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
|
||||
<a href="https://github.com/XYZscratcher" title="XYZ">
|
||||
<img src="https://avatars.githubusercontent.com/u/108533817?v=4" width="42;" alt="XYZ"/>
|
||||
</a>
|
||||
<a href="https://github.com/1834423612" title="kjch">
|
||||
<img src="https://avatars.githubusercontent.com/u/49981661?v=4" width="42;" alt="kjch"/>
|
||||
</a>
|
||||
<a href="https://github.com/mancuoj" title="mancuoj">
|
||||
<img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
|
||||
</a>
|
||||
<a href="https://github.com/pangxiaoli" title="pangxiaoli">
|
||||
<img src="https://avatars.githubusercontent.com/u/54620953?v=4" width="42;" alt="pangxiaoli"/>
|
||||
</a>
|
||||
@ -259,6 +264,9 @@ jobs:
|
||||
<a href="https://github.com/catcto" title="喵仙人">
|
||||
<img src="https://avatars.githubusercontent.com/u/5467932?v=4" width="42;" alt="喵仙人"/>
|
||||
</a>
|
||||
<a href="https://github.com/Country-If" title="Maylon">
|
||||
<img src="https://avatars.githubusercontent.com/u/62837275?v=4" width="42;" alt="Maylon"/>
|
||||
</a>
|
||||
<a href="https://github.com/13812700839" title="花殇">
|
||||
<img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/>
|
||||
</a>
|
||||
@ -277,12 +285,18 @@ jobs:
|
||||
<a href="https://github.com/DaiNing810" title="DaiN">
|
||||
<img src="https://avatars.githubusercontent.com/u/94962339?v=4" width="42;" alt="DaiN"/>
|
||||
</a>
|
||||
<a href="https://github.com/Damao2250" title="Damao">
|
||||
<img src="https://avatars.githubusercontent.com/u/19251992?v=4" width="42;" alt="Damao"/>
|
||||
</a>
|
||||
<a href="https://github.com/demigodliu" title="DemigodLiu">
|
||||
<img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
|
||||
</a>
|
||||
<a href="https://github.com/eeeeeio" title="EEEEE">
|
||||
<img src="https://avatars.githubusercontent.com/u/20723545?v=4" width="42;" alt="EEEEE"/>
|
||||
</a>
|
||||
<a href="https://github.com/gongyeheyu" title="GONGYE Heyu">
|
||||
<img src="https://avatars.githubusercontent.com/u/85177605?v=4" width="42;" alt="GONGYE Heyu"/>
|
||||
</a>
|
||||
<a href="https://github.com/Ding-Kyoma" title="HooinKyoma">
|
||||
<img src="https://avatars.githubusercontent.com/u/44542198?v=4" width="42;" alt="HooinKyoma"/>
|
||||
</a>
|
||||
@ -304,14 +318,23 @@ jobs:
|
||||
<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
|
||||
<img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
|
||||
</a>
|
||||
<a href="https://github.com/malcolmyu" title="Minghao Yu">
|
||||
<img src="https://avatars.githubusercontent.com/u/3203962?v=4" width="42;" alt="Minghao Yu"/>
|
||||
</a>
|
||||
<a href="https://github.com/Mo3et" title="Monet Lee">
|
||||
<img src="https://avatars.githubusercontent.com/u/34803812?v=4" width="42;" alt="Monet Lee"/>
|
||||
</a>
|
||||
<a href="https://github.com/HanaNoryu" title="Noryu">
|
||||
<img src="https://avatars.githubusercontent.com/u/109856546?v=4" width="42;" alt="Noryu"/>
|
||||
</a>
|
||||
<a href="https://github.com/Perzch" title="Perzch">
|
||||
<img src="https://avatars.githubusercontent.com/u/67987641?v=4" width="42;" alt="Perzch"/>
|
||||
</a>
|
||||
<a href="https://github.com/PipecraftNet" title="Pipecraft">
|
||||
<img src="https://avatars.githubusercontent.com/u/88728670?v=4" width="42;" alt="Pipecraft"/>
|
||||
</a>
|
||||
<a href="https://github.com/QDelta" title="QDelta">
|
||||
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="QDelta"/>
|
||||
<a href="https://github.com/QDelta" title="Jianxing Qin">
|
||||
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="Jianxing Qin"/>
|
||||
</a>
|
||||
<a href="https://github.com/qinxiongzhou" title="Ryan Zhou">
|
||||
<img src="https://avatars.githubusercontent.com/u/33239096?v=4" width="42;" alt="Ryan Zhou"/>
|
||||
@ -322,9 +345,15 @@ jobs:
|
||||
<a href="https://github.com/hi-liyan" title="Yan Li">
|
||||
<img src="https://avatars.githubusercontent.com/u/40056492?v=4" width="42;" alt="Yan Li"/>
|
||||
</a>
|
||||
<a href="https://github.com/yikuaibro" title="YuGan">
|
||||
<img src="https://avatars.githubusercontent.com/u/44493045?v=4" width="42;" alt="YuGan"/>
|
||||
</a>
|
||||
<a href="https://github.com/y52y" title="Zyj">
|
||||
<img src="https://avatars.githubusercontent.com/u/51304324?v=4" width="42;" alt="Zyj"/>
|
||||
</a>
|
||||
<a href="https://github.com/Lmmmmmm-bb" title="_lmmmmmm">
|
||||
<img src="https://avatars.githubusercontent.com/u/54026110?v=4" width="42;" alt="_lmmmmmm"/>
|
||||
</a>
|
||||
<a href="https://github.com/chyok" title="chyok">
|
||||
<img src="https://avatars.githubusercontent.com/u/32629225?v=4" width="42;" alt="chyok"/>
|
||||
</a>
|
||||
@ -346,9 +375,15 @@ jobs:
|
||||
<a href="https://github.com/greyhao" title="greyhao">
|
||||
<img src="https://avatars.githubusercontent.com/u/107107440?v=4" width="42;" alt="greyhao"/>
|
||||
</a>
|
||||
<a href="https://github.com/sunny0826" title="guoxudong">
|
||||
<img src="https://avatars.githubusercontent.com/u/24563928?v=4" width="42;" alt="guoxudong"/>
|
||||
</a>
|
||||
<a href="https://github.com/hua03" title="hua03">
|
||||
<img src="https://avatars.githubusercontent.com/u/19561959?v=4" width="42;" alt="hua03"/>
|
||||
</a>
|
||||
<a href="https://github.com/yanxuplay" title="hupilan">
|
||||
<img src="https://avatars.githubusercontent.com/u/69749541?v=4" width="42;" alt="hupilan"/>
|
||||
</a>
|
||||
<a href="https://github.com/hweining" title="hweining">
|
||||
<img src="https://avatars.githubusercontent.com/u/8973985?v=4" width="42;" alt="hweining"/>
|
||||
</a>
|
||||
@ -373,9 +408,6 @@ jobs:
|
||||
<a href="https://github.com/lykjjj" title="lykjjj">
|
||||
<img src="https://avatars.githubusercontent.com/u/58510058?v=4" width="42;" alt="lykjjj"/>
|
||||
</a>
|
||||
<a href="https://github.com/mancuoj" title="mancuoj">
|
||||
<img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
|
||||
</a>
|
||||
<a href="https://github.com/miclon-dev" title="miclon-dev">
|
||||
<img src="https://avatars.githubusercontent.com/u/111753685?v=4" width="42;" alt="miclon-dev"/>
|
||||
</a>
|
||||
@ -400,6 +432,9 @@ jobs:
|
||||
<a href="https://github.com/lvzhenbo" title="吕振波">
|
||||
<img src="https://avatars.githubusercontent.com/u/32427677?v=4" width="42;" alt="吕振波"/>
|
||||
</a>
|
||||
<a href="https://github.com/LuckyJie12" title="夜未央">
|
||||
<img src="https://avatars.githubusercontent.com/u/102901105?v=4" width="42;" alt="夜未央"/>
|
||||
</a>
|
||||
<a href="https://github.com/qyl27" title="秋雨落">
|
||||
<img src="https://avatars.githubusercontent.com/u/53731501?v=4" width="42;" alt="秋雨落"/>
|
||||
</a>
|
||||
|
57
README.md
57
README.md
@ -239,18 +239,24 @@ Quick Reference
|
||||
<a href="https://github.com/LiuYuan-SHU" title="Liuyuan">
|
||||
<img src="https://avatars.githubusercontent.com/u/96400967?v=4" width="42;" alt="Liuyuan"/>
|
||||
</a>
|
||||
<a href="https://github.com/LufsX" title="LufsX">
|
||||
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
|
||||
</a>
|
||||
<a href="https://github.com/heStudio-Network" title="醉、倾城">
|
||||
<img src="https://avatars.githubusercontent.com/u/119711513?v=4" width="42;" alt="醉、倾城"/>
|
||||
</a>
|
||||
<a href="https://github.com/sjh42" title="42:p">
|
||||
<img src="https://avatars.githubusercontent.com/u/34529275?v=4" width="42;" alt="42:p"/>
|
||||
</a>
|
||||
<a href="https://github.com/LufsX" title="LufsX">
|
||||
<img src="https://avatars.githubusercontent.com/u/33221883?v=4" width="42;" alt="LufsX"/>
|
||||
<a href="https://github.com/XYZscratcher" title="XYZ">
|
||||
<img src="https://avatars.githubusercontent.com/u/108533817?v=4" width="42;" alt="XYZ"/>
|
||||
</a>
|
||||
<a href="https://github.com/1834423612" title="kjch">
|
||||
<img src="https://avatars.githubusercontent.com/u/49981661?v=4" width="42;" alt="kjch"/>
|
||||
</a>
|
||||
<a href="https://github.com/mancuoj" title="mancuoj">
|
||||
<img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
|
||||
</a>
|
||||
<a href="https://github.com/pangxiaoli" title="pangxiaoli">
|
||||
<img src="https://avatars.githubusercontent.com/u/54620953?v=4" width="42;" alt="pangxiaoli"/>
|
||||
</a>
|
||||
@ -266,6 +272,9 @@ Quick Reference
|
||||
<a href="https://github.com/catcto" title="喵仙人">
|
||||
<img src="https://avatars.githubusercontent.com/u/5467932?v=4" width="42;" alt="喵仙人"/>
|
||||
</a>
|
||||
<a href="https://github.com/Country-If" title="Maylon">
|
||||
<img src="https://avatars.githubusercontent.com/u/62837275?v=4" width="42;" alt="Maylon"/>
|
||||
</a>
|
||||
<a href="https://github.com/13812700839" title="花殇">
|
||||
<img src="https://avatars.githubusercontent.com/u/58072506?v=4" width="42;" alt="花殇"/>
|
||||
</a>
|
||||
@ -284,12 +293,18 @@ Quick Reference
|
||||
<a href="https://github.com/DaiNing810" title="DaiN">
|
||||
<img src="https://avatars.githubusercontent.com/u/94962339?v=4" width="42;" alt="DaiN"/>
|
||||
</a>
|
||||
<a href="https://github.com/Damao2250" title="Damao">
|
||||
<img src="https://avatars.githubusercontent.com/u/19251992?v=4" width="42;" alt="Damao"/>
|
||||
</a>
|
||||
<a href="https://github.com/demigodliu" title="DemigodLiu">
|
||||
<img src="https://avatars.githubusercontent.com/u/30372735?v=4" width="42;" alt="DemigodLiu"/>
|
||||
</a>
|
||||
<a href="https://github.com/eeeeeio" title="EEEEE">
|
||||
<img src="https://avatars.githubusercontent.com/u/20723545?v=4" width="42;" alt="EEEEE"/>
|
||||
</a>
|
||||
<a href="https://github.com/gongyeheyu" title="GONGYE Heyu">
|
||||
<img src="https://avatars.githubusercontent.com/u/85177605?v=4" width="42;" alt="GONGYE Heyu"/>
|
||||
</a>
|
||||
<a href="https://github.com/Ding-Kyoma" title="HooinKyoma">
|
||||
<img src="https://avatars.githubusercontent.com/u/44542198?v=4" width="42;" alt="HooinKyoma"/>
|
||||
</a>
|
||||
@ -311,14 +326,23 @@ Quick Reference
|
||||
<a href="https://github.com/mariuszmichalowski" title="Mariusz Michalowski">
|
||||
<img src="https://avatars.githubusercontent.com/u/92091891?v=4" width="42;" alt="Mariusz Michalowski"/>
|
||||
</a>
|
||||
<a href="https://github.com/malcolmyu" title="Minghao Yu">
|
||||
<img src="https://avatars.githubusercontent.com/u/3203962?v=4" width="42;" alt="Minghao Yu"/>
|
||||
</a>
|
||||
<a href="https://github.com/Mo3et" title="Monet Lee">
|
||||
<img src="https://avatars.githubusercontent.com/u/34803812?v=4" width="42;" alt="Monet Lee"/>
|
||||
</a>
|
||||
<a href="https://github.com/HanaNoryu" title="Noryu">
|
||||
<img src="https://avatars.githubusercontent.com/u/109856546?v=4" width="42;" alt="Noryu"/>
|
||||
</a>
|
||||
<a href="https://github.com/Perzch" title="Perzch">
|
||||
<img src="https://avatars.githubusercontent.com/u/67987641?v=4" width="42;" alt="Perzch"/>
|
||||
</a>
|
||||
<a href="https://github.com/PipecraftNet" title="Pipecraft">
|
||||
<img src="https://avatars.githubusercontent.com/u/88728670?v=4" width="42;" alt="Pipecraft"/>
|
||||
</a>
|
||||
<a href="https://github.com/QDelta" title="QDelta">
|
||||
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="QDelta"/>
|
||||
<a href="https://github.com/QDelta" title="Jianxing Qin">
|
||||
<img src="https://avatars.githubusercontent.com/u/60222316?v=4" width="42;" alt="Jianxing Qin"/>
|
||||
</a>
|
||||
<a href="https://github.com/qinxiongzhou" title="Ryan Zhou">
|
||||
<img src="https://avatars.githubusercontent.com/u/33239096?v=4" width="42;" alt="Ryan Zhou"/>
|
||||
@ -329,9 +353,15 @@ Quick Reference
|
||||
<a href="https://github.com/hi-liyan" title="Yan Li">
|
||||
<img src="https://avatars.githubusercontent.com/u/40056492?v=4" width="42;" alt="Yan Li"/>
|
||||
</a>
|
||||
<a href="https://github.com/yikuaibro" title="YuGan">
|
||||
<img src="https://avatars.githubusercontent.com/u/44493045?v=4" width="42;" alt="YuGan"/>
|
||||
</a>
|
||||
<a href="https://github.com/y52y" title="Zyj">
|
||||
<img src="https://avatars.githubusercontent.com/u/51304324?v=4" width="42;" alt="Zyj"/>
|
||||
</a>
|
||||
<a href="https://github.com/Lmmmmmm-bb" title="_lmmmmmm">
|
||||
<img src="https://avatars.githubusercontent.com/u/54026110?v=4" width="42;" alt="_lmmmmmm"/>
|
||||
</a>
|
||||
<a href="https://github.com/chyok" title="chyok">
|
||||
<img src="https://avatars.githubusercontent.com/u/32629225?v=4" width="42;" alt="chyok"/>
|
||||
</a>
|
||||
@ -353,9 +383,15 @@ Quick Reference
|
||||
<a href="https://github.com/greyhao" title="greyhao">
|
||||
<img src="https://avatars.githubusercontent.com/u/107107440?v=4" width="42;" alt="greyhao"/>
|
||||
</a>
|
||||
<a href="https://github.com/sunny0826" title="guoxudong">
|
||||
<img src="https://avatars.githubusercontent.com/u/24563928?v=4" width="42;" alt="guoxudong"/>
|
||||
</a>
|
||||
<a href="https://github.com/hua03" title="hua03">
|
||||
<img src="https://avatars.githubusercontent.com/u/19561959?v=4" width="42;" alt="hua03"/>
|
||||
</a>
|
||||
<a href="https://github.com/yanxuplay" title="hupilan">
|
||||
<img src="https://avatars.githubusercontent.com/u/69749541?v=4" width="42;" alt="hupilan"/>
|
||||
</a>
|
||||
<a href="https://github.com/hweining" title="hweining">
|
||||
<img src="https://avatars.githubusercontent.com/u/8973985?v=4" width="42;" alt="hweining"/>
|
||||
</a>
|
||||
@ -380,9 +416,6 @@ Quick Reference
|
||||
<a href="https://github.com/lykjjj" title="lykjjj">
|
||||
<img src="https://avatars.githubusercontent.com/u/58510058?v=4" width="42;" alt="lykjjj"/>
|
||||
</a>
|
||||
<a href="https://github.com/mancuoj" title="mancuoj">
|
||||
<img src="https://avatars.githubusercontent.com/u/45707684?v=4" width="42;" alt="mancuoj"/>
|
||||
</a>
|
||||
<a href="https://github.com/miclon-dev" title="miclon-dev">
|
||||
<img src="https://avatars.githubusercontent.com/u/111753685?v=4" width="42;" alt="miclon-dev"/>
|
||||
</a>
|
||||
@ -407,6 +440,9 @@ Quick Reference
|
||||
<a href="https://github.com/lvzhenbo" title="吕振波">
|
||||
<img src="https://avatars.githubusercontent.com/u/32427677?v=4" width="42;" alt="吕振波"/>
|
||||
</a>
|
||||
<a href="https://github.com/LuckyJie12" title="夜未央">
|
||||
<img src="https://avatars.githubusercontent.com/u/102901105?v=4" width="42;" alt="夜未央"/>
|
||||
</a>
|
||||
<a href="https://github.com/qyl27" title="秋雨落">
|
||||
<img src="https://avatars.githubusercontent.com/u/53731501?v=4" width="42;" alt="秋雨落"/>
|
||||
</a>
|
||||
@ -429,7 +465,7 @@ Quick Reference
|
||||
[laoleng.vip](http://bbs.laoleng.vip/reference/)<!--rehype:target=_blank-->
|
||||
[liujiapeng.com](https://www.liujiapeng.com/)<!--rehype:target=_blank-->
|
||||
[dbyun.net](https://www.dbyun.net/reference/index.html)<!--rehype:target=_blank-->
|
||||
[dc6.fun](https://dc6.fun/reference/)<!--rehype:target=_blank-->
|
||||
[dc6.fun](http://reference.dc6.fun)<!--rehype:target=_blank-->
|
||||
[if010.com](https://quickref.if010.com/)<!--rehype:target=_blank-->
|
||||
[pipecraft.net](https://quickref.pipecraft.net/)<!--rehype:target=_blank&class=contributing&data-info=👆需要梯子-->
|
||||
[isteed.cc](https://ref.isteed.cc/)<!--rehype:target=_blank-->
|
||||
@ -437,7 +473,6 @@ Quick Reference
|
||||
[linzhe.top](https://linzhe.top/)<!--rehype:target=_blank-->
|
||||
[xushanxiang.com](https://xushanxiang.com/ref/)<!--rehype:target=_blank-->
|
||||
[winnerzr01.github.io](https://winnerzr01.github.io/Quick-Reference/index.html)<!--rehype:target=_blank&class=contributing&data-info=👆需要梯子-->
|
||||
[isteed.cc](https://ref.isteed.cc/)<!--rehype:target=_blank-->
|
||||
[hestudio.org](https://quickref.hestudio.org)<!--rehype:target=_blank&class=contributing&data-info=👆整点自动同步-->
|
||||
[surcode.cn](https://ref.surcode.cn)<!--rehype:target=_blank-->
|
||||
[cms.im](https://quickref.cms.im/)<!--rehype:target=_blank-->
|
||||
@ -452,9 +487,11 @@ Quick Reference
|
||||
[quickreference.pages.dev](https://quickreference.pages.dev/)<!--rehype:target=_blank-->
|
||||
[code05.com](https://reference.code05.com/)<!--rehype:target=_blank&class=contributing&data-info=👆每天自动同步-->
|
||||
[xhfun.cn](https://ref.xhfun.cn/)<!--rehype:target=_blank&class=contributing&data-info=👆每天自动同步-->
|
||||
[caitou.org](https://quickref.caitou.org/)<!--rehype:target=_blank&class=contributing&data-info=👆每天自动同步-->
|
||||
[guoxudong.io](https://reference.guoxudong.io/)<!--rehype:target=_blank&class=contributing&data-info=👆每天自动同步-->
|
||||
<!--rehype:class=home-card home-links-->
|
||||
|
||||
如果你有资源,可以很方便部署 web 版,这非常简单,只需要克隆 [gh-pages](https://github.com/jaywcjlove/reference/tree/gh-pages) 分支代码到你的静态服务就可以了,还可以使用 [docker](https://hub.docker.com/r/wcjiang/reference) 快捷部署 web 版。
|
||||
如果你有资源,可以很方便[部署 web 版](https://github.com/jaywcjlove/reference/issues/102#issue-1451649637),这非常简单,只需要克隆 [gh-pages](https://github.com/jaywcjlove/reference/tree/gh-pages) 分支代码到你的静态服务就可以了,还可以使用 [docker](https://hub.docker.com/r/wcjiang/reference) 快捷部署 web 版。
|
||||
|
||||
<!--rehype:ignore:start-->
|
||||
## License
|
||||
|
131
docs/adb.md
131
docs/adb.md
@ -1,7 +1,7 @@
|
||||
Android ADB 备忘清单
|
||||
Android Debug Bridge 备忘清单
|
||||
===
|
||||
|
||||
[ADB](https://developer.android.com/studio/command-line/adb.html),Android Debug Bridge,包含在 Google 的 Android SDK 中,可用于从计算机控制您的 Android 设备。以下是您可以与 [ADB](https://developer.android.com/studio/command-line/adb.html) 一起使用的一些最常见的命令及其用法
|
||||
[ADB](https://developer.android.com/studio/command-line/adb.html) 既 Android Debug Bridge,是 Google 的 Android SDK 中的一个命令行工具,可让您的计算机控制 Android 设备执行各种设备操作。以下是您可以与 [ADB](https://developer.android.com/studio/command-line/adb.html) 一起使用的一些最常见的命令及其用法
|
||||
|
||||
入门
|
||||
----
|
||||
@ -11,15 +11,18 @@ Android ADB 备忘清单
|
||||
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb devices` | 列出连接的设备
|
||||
`adb devices -l` | 列出连接的设备和种类
|
||||
`adb devices` | 列出已连接的设备
|
||||
`adb devices -l` | 列出已连接的设备和种类
|
||||
`adb connect [IP:PORT]` | 连接到指定 IP 和端口的设备
|
||||
`adb disconnect [IP:PORT]` | 断开指定 IP 和端口的设备连接,若未指定,则断开所有连接
|
||||
`adb root` | 以 `root` 权限重新启动 `adbd`
|
||||
`adb start-server` | 启动 `adb` 服务器
|
||||
`adb kill-server` | 杀死 `adb` 服务器
|
||||
`adb start-server` | 启动 `adb` 服务
|
||||
`adb kill-server` | 停止 `adb` 服务器
|
||||
`adb remount` | 重新挂载具有读/写访问权限的文件系统
|
||||
`adb reboot` | 重启设备
|
||||
`adb reboot bootloader` | 将设备重新启动到快速启动
|
||||
`adb disable-verity` | 将设备重新启动到快速启动
|
||||
`adb reboot bootloader` | 将设备重启到 fastboot 模式
|
||||
`adb reboot recovery` | 将设备重启到恢复模式
|
||||
`adb disable-verity` | 禁用设备的 dm-verity 安全特性
|
||||
<!--rehype:className=left-align code-nowrap-->
|
||||
|
||||
---
|
||||
@ -45,12 +48,12 @@ $ adb -s somedevice-1234 root
|
||||
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb logcat` | 开始将日志消息打印到标准输出
|
||||
`adb logcat` | 将日志消息打印到标准输出
|
||||
`adb logcat -g` | 显示当前日志缓冲区大小
|
||||
`adb logcat -G <size>` | 设置缓冲区大小(K 或 M)
|
||||
`adb logcat -c` | 清除日志缓冲区
|
||||
`adb logcat *:V` | 启用所有日志消息(详细)
|
||||
`adb logcat -f <filename>` | 转储到指定文件
|
||||
`adb logcat -f <filename>` | 将日志转储到指定文件
|
||||
<!--rehype:className=left-align code-nowrap-->
|
||||
|
||||
#### 示例
|
||||
@ -62,16 +65,16 @@ $ adb logcat *:V > output.log
|
||||
|
||||
#### 过滤日志输出
|
||||
|
||||
- `V` 详细(最低优先级)
|
||||
- `D` 调试
|
||||
- `I` 信息
|
||||
- `W` 警告
|
||||
- `E` 错误
|
||||
- `F` 严重错误
|
||||
- `V` 最详细的信息(最低优先级)
|
||||
- `D` 调试信息
|
||||
- `I` 普通信息
|
||||
- `W` 警告信息
|
||||
- `E` 错误信息
|
||||
- `F` 致命错误信息
|
||||
- `S` 静默(最高优先级)
|
||||
<!--rehype:className=cols-2 shortcuts style-none-->
|
||||
|
||||
过滤器表达式显示了优先级不低于 `警告` 的所有标记的所有日志消息:
|
||||
例如,要显示优先级不低于 `警告` 的所有标记的所有日志消息,可以使用以下命令:
|
||||
|
||||
```bash
|
||||
$ adb logcat *:W
|
||||
@ -81,8 +84,8 @@ $ adb logcat *:W
|
||||
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb push <local> <remote>` | 将本地复制到远程设备
|
||||
`adb pull <remote> <local>` | 将远程设备从设备复制到本地
|
||||
`adb push <local> <remote>` | 将本地文件复制到远程设备
|
||||
`adb pull <remote> <local>` | 将远程设备文件复制到本地
|
||||
<!--rehype:className=left-align code-nowrap-->
|
||||
|
||||
#### 示例
|
||||
@ -97,22 +100,22 @@ $ adb pull /sdcard/test.txt pulledTest.txt
|
||||
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb shell <command>` | 在设备上运行指定的命令(大多数 unix 命令在这里工作)
|
||||
`adb shell <command>` | 在设备上运行指定的命令(大多数 Unix 命令在这里工作)
|
||||
`adb shell wm size` | 显示当前屏幕分辨率
|
||||
`adb shell wm size WxH` | 将分辨率设置为 WxH
|
||||
`adb shell pm list packages` | 列出所有已安装的包
|
||||
`adb shell pm list packages -3` | 列出所有已安装的 3rd 方包
|
||||
`adb shell monkey -p app.package.name` | 启动指定包
|
||||
`adb shell pm list packages` | 列出所有已安装的应用包
|
||||
`adb shell pm list packages -3` | 列出所有已安装的第三方的应用包
|
||||
`adb shell monkey -p app.package.name` | 启动指定包名的应用程序
|
||||
<!--rehype:className=style-list-arrow-->
|
||||
|
||||
### 包安装
|
||||
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb shell install <apk>` | 安装应用程序
|
||||
`adb shell install <path>` | 手机路径安装应用
|
||||
`adb shell install -r <path>` | 手机路径安装应用
|
||||
`adb shell uninstall <name>` | 删除应用程序
|
||||
`adb shell install <apk>` | 安装应用程序
|
||||
`adb shell install <path>` | 从手机路径安装应用
|
||||
`adb shell install -r <path>` | 从手机路径安装应用(允许覆盖安装)
|
||||
`adb shell uninstall <name>` | 卸载应用程序
|
||||
<!--rehype:className=left-align code-nowrap-->
|
||||
|
||||
### Paths
|
||||
@ -121,10 +124,10 @@ $ adb pull /sdcard/test.txt pulledTest.txt
|
||||
:-- | --
|
||||
:-- | --
|
||||
`/data/data/<package>/databases` | 应用程序数据库
|
||||
`/data/data/<package>/shared_prefs/` | 共享偏好
|
||||
`/data/app` | 用户安装的apk
|
||||
`/system/app` | 预装的 APK 文件
|
||||
`/mmt/asec` | 加密的应用程序\|App2SD
|
||||
`/data/data/<package>/shared_prefs/` | 共享偏好设置
|
||||
`/data/app` | 用户安装的 APK
|
||||
`/system/app` | 系统预装的 APK 文件
|
||||
`/mmt/asec` | 加密的应用程序(App2SD)
|
||||
`/mmt/emmc` | 内部 SD 卡
|
||||
`/mmt/adcard` | 外部/内部 SD 卡
|
||||
`/mmt/adcard/external_sd` | 外置 SD 卡
|
||||
@ -145,17 +148,17 @@ $ adb pull /sdcard/test.txt pulledTest.txt
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb get-statе` | 打印设备状态
|
||||
`adb get-serialno` | 获取序列号
|
||||
`adb shell dumpsys iphonesybinfo` | 获取 IMEI
|
||||
`adb shell netstat` | 列出 TCP 连接
|
||||
`adb get-serialno` | 获取设备的序列号
|
||||
`adb shell dumpsys iphonesybinfo` | 获取设备的 IMEI 信息
|
||||
`adb shell netstat` | 列出设备上的所有 TCP 连接
|
||||
`adb shell pwd` | 打印当前工作目录
|
||||
`adb shell dumpsys battery` | 电池状态
|
||||
`adb shell pm list features` | 列出电话功能
|
||||
`adb shell service list` | 列出所有服务
|
||||
`adb shell dumpsys activity <package>/<activity>` | 活动信息
|
||||
`adb shell ps` | 打印进程状态
|
||||
`adb shell wm size` | 显示当前屏幕分辨率
|
||||
`dumpsys window windows` \| `grep -E 'mCurrentFocus\|mFocusedApp'` | 打印当前应用程序的打开活动
|
||||
`adb shell dumpsys battery` | 获取设备电池状态
|
||||
`adb shell pm list features` |列出设备支持的所有功能
|
||||
`adb shell service list` | 列出设备上运行的所有服务
|
||||
`adb shell dumpsys activity <package>/<activity>` | 获取指定包和活动的信息
|
||||
`adb shell ps` | 打印设备上所有运行的进程状态
|
||||
`adb shell wm size` | 显示当前设备的屏幕分辨率
|
||||
`dumpsys window windows` \| `grep -E 'mCurrentFocus\|mFocusedApp'` | 打印当前应用程序的打开活动的信息
|
||||
<!--rehype:className=style-list-arrow-->
|
||||
|
||||
### 包信息
|
||||
@ -168,8 +171,8 @@ $ adb pull /sdcard/test.txt pulledTest.txt
|
||||
`adb shell list packages -s` | 仅列出系统包
|
||||
`adb shell list packages -u` | 列出包名称 + 已卸载
|
||||
`adb shell dumpsys package packages` | 列出所有应用程序的信息
|
||||
`adb shell dump <name>` | 列出一个包裹的信息
|
||||
`adb shell path <package>` | apk文件的路径
|
||||
`adb shell dump <name>` | 列出一个包的信息
|
||||
`adb shell path <package>` | 列出 APK 文件的路径
|
||||
<!--rehype:className=style-list-arrow-->
|
||||
|
||||
### 设备相关命令
|
||||
@ -177,7 +180,7 @@ $ adb pull /sdcard/test.txt pulledTest.txt
|
||||
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb reboot-recovery` | 重启设备进入恢复模式
|
||||
`adb reboot recovery` | 重启设备进入恢复模式
|
||||
`adb reboot fastboot` | 重启设备进入恢复模式
|
||||
`adb shell screencap -p "/path/to/screenshot.png"` | 截图
|
||||
`adb shell screenrecord "/path/to/record.mp4"` | 录制设备屏幕
|
||||
@ -193,8 +196,8 @@ $ adb pull /sdcard/test.txt pulledTest.txt
|
||||
|
||||
:-- | --
|
||||
:-- | --
|
||||
`adb shell permissions groups` | 列出权限组定义
|
||||
`adb shell list permissions -g -r` | 列出权限详细信息
|
||||
`adb shell permissions groups` | 列出所有已定义的权限组
|
||||
`adb shell list permissions -g -r` | 列出了所有权限的详细信息
|
||||
<!--rehype:className=style-list-arrow-->
|
||||
|
||||
### Logs
|
||||
@ -211,7 +214,7 @@ $ adb pull /sdcard/test.txt pulledTest.txt
|
||||
### 将文件推送到 Android 设备的下载文件夹
|
||||
|
||||
```bash
|
||||
$ adb push example.apk /mnt/Download/
|
||||
$ adb push example.apk /sdcard/Download/
|
||||
```
|
||||
|
||||
### 列出所有已安装的包并获取完整路径
|
||||
@ -223,19 +226,19 @@ $ adb shell pm list packages -f
|
||||
### 从安卓设备中提取文件
|
||||
|
||||
```bash
|
||||
$ adb pull /mnt/Download/example.apk
|
||||
$ adb pull /sdcard/Download/example.apk
|
||||
```
|
||||
|
||||
### 从主机安装 apk 到 Android 设备
|
||||
### 从主机安装 APK 到 Android 设备
|
||||
|
||||
```bash
|
||||
$ adb shell install example.apk
|
||||
```
|
||||
|
||||
### 从 Android 设备存储安装 apk
|
||||
### 从 Android 设备存储安装 APK
|
||||
|
||||
```bash
|
||||
$ adb shell install /mnt/Download/example.apk
|
||||
$ adb shell install /sdcard/Download/example.apk
|
||||
```
|
||||
|
||||
### 设置网络代理
|
||||
@ -250,7 +253,7 @@ $ adb shell settings put global http_proxy <address>:<port>
|
||||
$ adb shell settings put global http_proxy :0
|
||||
```
|
||||
|
||||
### 显示连接的设备并选择一个设备和外壳
|
||||
### 显示连接的设备并指定一个设备进行 Shell
|
||||
|
||||
```bash
|
||||
$ adb devices
|
||||
@ -259,16 +262,16 @@ $ adb -s 7f1c864e shell
|
||||
|
||||
`7f1c864e` 是设备 `ID`
|
||||
|
||||
### 通过 ip 地址无线连接到设备
|
||||
### 通过 IP 地址连接到设备
|
||||
|
||||
```bash
|
||||
$ adb connect 192.168.56.101:5555
|
||||
```
|
||||
|
||||
### adb 通过 wifi
|
||||
### 通过 Wi-Fi 连接 ADB
|
||||
<!--rehype:wrap-class=row-span-5-->
|
||||
|
||||
我们可以通过 `wifi` 或专门使用 `tcp` 连接使用 `adb`。 要通过 `wifi` 使用 `adb`,首先通过 `usb` 连接手机并启用 `usb` 调试。然后列出所有设备:
|
||||
我们可以通过 `Wi-Fi` 或专门使用 `tcp` 连接使用 `adb`。 要通过 `Wi-Fi` 使用 `adb`,首先通过 `USB` 连接手机并启用 `USB` 调试。然后列出所有设备:
|
||||
|
||||
```bash
|
||||
$ adb devices
|
||||
@ -276,7 +279,7 @@ $ adb devices
|
||||
# device_id device
|
||||
```
|
||||
|
||||
现在检查 `android` 设备的 `ip`:
|
||||
现在检查 `Android` 设备的 `IP`:
|
||||
|
||||
```bash
|
||||
$ adb shell ifconfig
|
||||
@ -286,7 +289,7 @@ wlan0 Link encap:UNSPEC Driver icnss
|
||||
inet addr:XXX.XXX.X.XX Bcast:XXX.XXX.X.XXX
|
||||
```
|
||||
|
||||
记下 `inet addr` 后面的 `ip` 地址。我们稍后会需要它。现在在某个端口重新启动 `tcpip`:
|
||||
记下 `inet addr` 后的 `IP` 地址。稍后要用。现在在某个端口重新启动 `tcpip`:
|
||||
|
||||
```bash
|
||||
$ adb tcpip $port
|
||||
@ -298,25 +301,25 @@ $ adb tcpip $port
|
||||
$ adb tcpip 5555
|
||||
```
|
||||
|
||||
您现在可以断开使用。 现在连接到设备只需给出以下命令:
|
||||
您现在可以断开 USB 线缆使用。 若要连接到设备请键入以下命令:
|
||||
|
||||
```bash
|
||||
$ adb connect $ip:$port
|
||||
```
|
||||
|
||||
like:
|
||||
例如:
|
||||
|
||||
```bash
|
||||
$ adb connect 192.168.1.4:5555
|
||||
```
|
||||
|
||||
### 从计算机上的 apk 文件安装应用程序
|
||||
### 将计算机上的 APK 文件安装到设备
|
||||
|
||||
```bash
|
||||
$ adb install /Users/dev/projects/myapp.apk
|
||||
```
|
||||
|
||||
### 查找应用的 apk 路径
|
||||
### 查找应用的 APK 路径
|
||||
|
||||
```bash
|
||||
$ adb shell pm path com.example.myapp
|
||||
@ -324,13 +327,13 @@ $ adb shell pm path com.example.myapp
|
||||
|
||||
将 `com.example.myapp` 替换为您自己的应用程序包名称
|
||||
|
||||
### 按名称查找应用的包名
|
||||
### 通过名称查找应用的包名
|
||||
|
||||
```bash
|
||||
$ adb shell pm list package | grep app_name
|
||||
```
|
||||
|
||||
### 将 apk 从设备提取到您的计算机
|
||||
### 从设备提取 APK 到您的计算机
|
||||
|
||||
```bash
|
||||
$ adb pull /data/app/com.example.myapp.apk ./
|
||||
@ -366,7 +369,7 @@ $ adb shell input keyevent 66
|
||||
|
||||
### 发送点击
|
||||
|
||||
点击又名点击屏幕:
|
||||
点击屏幕:
|
||||
|
||||
```bash
|
||||
$ adb shell input tap x y
|
||||
|
25
docs/cs.md
25
docs/cs.md
@ -213,6 +213,31 @@ string multiLine = """
|
||||
Console.WriteLine(multiLine); // => Content begin "Hello World!" /\n<>"" end.
|
||||
```
|
||||
|
||||
### 字符串操作
|
||||
|
||||
```cs
|
||||
//字符串分割
|
||||
string Name = "字A符A串A分A割";
|
||||
string[] Names=Name.Split(new char[] { 'A' });
|
||||
//会以A为媒介把字符串分成若干份
|
||||
for (int i = 0; i < Names.Length; i++)
|
||||
{
|
||||
Console.Write(Names[i]);
|
||||
}
|
||||
//-----------------------------------
|
||||
//字符串截取
|
||||
string Str = "字符串截取";
|
||||
Str = Str.Substring(2, 1);
|
||||
Console.WriteLine(Str);
|
||||
//输出结果“串”,意为从第二个下标开始截取一位字符
|
||||
//-----------------------------------
|
||||
//字符串替换
|
||||
string Rep = "字符1替换";
|
||||
Rep = Rep.Replace("1", "串");
|
||||
Console.WriteLine(Rep);
|
||||
//会把字符中的 “1”替换成“串”
|
||||
```
|
||||
|
||||
杂项
|
||||
-----------
|
||||
|
||||
|
@ -142,7 +142,7 @@ Docker 镜像
|
||||
`docker load --input ubuntu.tar` | 加载一个 tarred 存储库
|
||||
`docker save busybox > ubuntu.tar` | 将镜像保存到 tar 存档
|
||||
`docker history` | 显示镜像的历史
|
||||
`docker commit nginx` | 将容器另存为镜像。
|
||||
`docker commit nginx my_nginx` | 将容器另存为镜像
|
||||
`docker tag nginx eon01/nginx` | 标记镜像
|
||||
`docker push eon01/nginx` | 推送镜像
|
||||
|
||||
@ -232,10 +232,10 @@ docker network create -d overlay \
|
||||
|
||||
| Docker 语法 | 说明 |
|
||||
|------------|------|
|
||||
`docker search search_word` | 在 docker hub 中搜索镜像。
|
||||
`docker pull user/image` | 从 docker hub 下载镜像。
|
||||
`docker search search_word` | 在 docker hub 中搜索镜像
|
||||
`docker pull user/image` | 从 docker hub 下载镜像
|
||||
`docker login` | 向 docker hub 进行身份验证
|
||||
`docker push user/image` | 将镜像上传到 docker hub。
|
||||
`docker push user/image` | 将镜像上传到 docker hub
|
||||
|
||||
### 镜像仓库命令
|
||||
<!--rehype:wrap-class=row-span-3-->
|
||||
@ -312,7 +312,7 @@ $ docker volume prune
|
||||
`docker-compose config` | 验证并查看 Compose 文件
|
||||
`docker-compose scale <service_name>=<replica>` | 为服务指定容器个数
|
||||
`docker-compose top` | 显示正在运行的进程
|
||||
`docker-compose run -rm -p 2022:22 web bash` | 启动 Web 服务并运行 bash 作为其命令,删除旧容器。
|
||||
`docker-compose run -rm -p 2022:22 web bash` | 启动 Web 服务并运行 bash 作为其命令,删除旧容器
|
||||
|
||||
### Docker Services
|
||||
|
||||
|
198
docs/golang.md
198
docs/golang.md
@ -33,6 +33,8 @@ s1 = "Learn Go!"
|
||||
// 一次声明多个变量
|
||||
var b, c int = 1, 2
|
||||
var d = true
|
||||
// 匿名赋值
|
||||
_ , e = 10, 20
|
||||
```
|
||||
|
||||
简短声明
|
||||
@ -139,7 +141,6 @@ fmt.Println(!true) // false
|
||||
参见:[更多操作符](#运算符和标点符号)
|
||||
|
||||
### 数组 Arrays
|
||||
<!--rehype:wrap-class=row-span-2-->
|
||||
|
||||
```go
|
||||
┌────┬────┬────┬────┬─────┬─────┐
|
||||
@ -183,6 +184,7 @@ fmt.Println("2d: ", twoDimension)
|
||||
```
|
||||
|
||||
### 指针(Pointers)
|
||||
<!--rehype:wrap-class=col-span-2-->
|
||||
|
||||
```go
|
||||
func main () {
|
||||
@ -194,9 +196,30 @@ func getPointer () (myPointer *int) {
|
||||
a := 234
|
||||
return &a
|
||||
}
|
||||
//申明指针的时候,如果没有指向某个变量,默认值为nil
|
||||
//不能直接进行操作,包括读写
|
||||
var p *int
|
||||
*p = 123 // panic nil pointer
|
||||
```
|
||||
|
||||
a := new(int)
|
||||
*a = 234
|
||||
---
|
||||
|
||||
```go
|
||||
//而用new返回的是有默认值的指针, 为数据类型的默认值
|
||||
func main(){
|
||||
//有一块内存存放了10,它的地址由系统自动分配,别名是a
|
||||
a := 10
|
||||
//内存存放的10变成了20
|
||||
a = 20
|
||||
var p *int
|
||||
p = &a //或者直接写 p := &a
|
||||
//上面的p是一个指针,通过 *p 的方式同样可以访问 变量a指向 的内存
|
||||
|
||||
/*当你动态申请内存的时候,指针的存在意义之一就被体现出来了*/
|
||||
ptr := new(int)
|
||||
//申请了一块内存空间,没有办法指定别名,new()返回内存地址,用指针接收
|
||||
//此时并没有变量能直接指向这块内存,所以只能通过内存地址来访问
|
||||
}
|
||||
```
|
||||
|
||||
参见:[指针(Pointers)](https://tour.golang.org/moretypes/1)
|
||||
@ -225,11 +248,29 @@ const s string = "constant"
|
||||
const Phi = 1.618
|
||||
const n = 500000000
|
||||
const d = 3e20 / n
|
||||
fmt.Println(d)
|
||||
```
|
||||
|
||||
常量声明可以使用 iota常量生成器 初始化,它用于
|
||||
生成一组以相似规则初始化的常量,但是不用每行都
|
||||
写一遍初始化表达式。
|
||||
注意:
|
||||
|
||||
1. 在一个const声明语句中,在第一个声明的常量所在的行,iota被置为0,然后在每一个有常量声明的行加一。
|
||||
2. 写在同一行的值是相同的
|
||||
|
||||
```go
|
||||
const (
|
||||
a = iota
|
||||
b
|
||||
c
|
||||
)
|
||||
// a = 0, b = 1, c = 2
|
||||
```
|
||||
|
||||
### 类型转换
|
||||
|
||||
Go语言中不允许隐式转换,所有类型转换必须显式声明(强制转换),而且转换只能发生在两种相互兼容的类型之间。
|
||||
|
||||
```go
|
||||
i := 90
|
||||
f := float64(i)
|
||||
@ -561,6 +602,8 @@ sum(1, 2) // => [1 2] 3
|
||||
sum(1, 2, 3) // => [1 2 3] 6
|
||||
nums := []int{1, 2, 3, 4}
|
||||
sum(nums...) // => [1 2 3 4] 10
|
||||
// 不定参在内存中是连续存储的
|
||||
// 不定参内部再传递的时候,参数也要是不定的
|
||||
```
|
||||
|
||||
### 初始化函数
|
||||
@ -597,20 +640,8 @@ func main() {
|
||||
}
|
||||
```
|
||||
|
||||
### 关闭 1
|
||||
|
||||
```go
|
||||
func scope() func() int{
|
||||
outer_var := 2
|
||||
foo := func() int {return outer_var}
|
||||
return foo
|
||||
}
|
||||
// Outpus: 2
|
||||
fmt.Println(scope()())
|
||||
```
|
||||
|
||||
### 关闭 2
|
||||
|
||||
### 闭包
|
||||
<!--rehype:wrap-class=col-span-2 row-span-2-->
|
||||
```go
|
||||
func outer() (func() int, int) {
|
||||
outer_var := 2
|
||||
@ -622,8 +653,25 @@ func outer() (func() int, int) {
|
||||
return inner, outer_var
|
||||
}
|
||||
inner, val := outer()
|
||||
fmt.Println(inner()) // => 200
|
||||
fmt.Println(val) // => 101
|
||||
fmt.Println(val)
|
||||
// => 101
|
||||
fmt.Println(inner())
|
||||
// => 200,这里涉及到golang中闭包和内存逃逸的概念,inner()实际上执行了两次,outer()中一次,fmt又一次,
|
||||
//但为什么是200呢,编译器不能确定outer_var在后续会不会使用,
|
||||
//所以outer_var不会随着outer()结束而释放它的栈(Stack)空间,
|
||||
//而会‘逃逸到’堆(Heap)上,那么第二次的inner()中outer_var就会是101。
|
||||
```
|
||||
|
||||
### 关闭 1
|
||||
|
||||
```go
|
||||
func scope() func() int{
|
||||
outer_var := 2
|
||||
foo := func() int {return outer_var}
|
||||
return foo
|
||||
}
|
||||
// Outpus: 2
|
||||
fmt.Println(scope()())
|
||||
```
|
||||
|
||||
Golang 包(Packages)
|
||||
@ -835,8 +883,21 @@ Golang 方法(Methods)
|
||||
<!--rehype:body-class=cols-2-->
|
||||
|
||||
### 接收器
|
||||
|
||||
<!--rehype:wrap-class=row-span-2-->
|
||||
```go
|
||||
//Go语言中的方法(Method)是一种作用于特定类型变量的函数。
|
||||
//这种特定类型变量叫做接收者(Receiver)。
|
||||
//接收者的概念就类似于其他语言中的 this 或者 self。
|
||||
//方法的定义格式如下:
|
||||
func (接收者变量 接收者类型) 方法名(参数列表) (返回参数) {
|
||||
函数体
|
||||
}
|
||||
// 其中,
|
||||
// 1.接收者变量:接收者中的参数变量名在命名时,官方建议使用接收者类型名
|
||||
//的第一个小写字母,而不是self、this之类的命名。例如,Person类型的接收者变量
|
||||
// 应该命名为 p,Connector类型的接收者变量应该命名为c等。
|
||||
// 2.接收者类型:接收者类型和参数类似,可以是指针类型和非指针类型。
|
||||
// 3.方法名、参数列表、返回参数:具体格式与函数定义相同。
|
||||
type Vertex struct {
|
||||
X, Y float64
|
||||
}
|
||||
@ -844,27 +905,82 @@ type Vertex struct {
|
||||
func (v Vertex) Abs() float64 {
|
||||
return math.Sqrt(v.X * v.X + v.Y * v.Y)
|
||||
}
|
||||
func (v Vertex) valuechange() float64 {
|
||||
v.X += 1
|
||||
return v.X
|
||||
}
|
||||
func (v *Vertex) pointerchange() float64 {
|
||||
v.X += 1
|
||||
return v.X
|
||||
}
|
||||
func main() {
|
||||
v := Vertex{1, 2}
|
||||
v.Abs()
|
||||
|
||||
v = Vertex{1, 2}
|
||||
fmt.Println(v.valuechange()) // 2
|
||||
fmt.Println(v) // {1 2}
|
||||
|
||||
v = Vertex{1, 2}
|
||||
fmt.Println(v.pointerchange())// 2
|
||||
fmt.Println(v) // {2 2}
|
||||
}
|
||||
//如果在方法里修改receiver的值要对caller生效,使用 pointer receiver。
|
||||
|
||||
v := Vertex{1, 2}
|
||||
v.Abs()
|
||||
```
|
||||
|
||||
参见:[Methods](https://tour.golang.org/methods/1)
|
||||
参见:[Methods](https://tour.golang.org/methods/1),[指针接收器](https://tour.golang.org/methods/4)
|
||||
|
||||
### Mutation
|
||||
### 方法表达式
|
||||
|
||||
方法表达式相当于提供一种语法将类型方法调用显式地转换为函数调用,接收者(receiver)必须显式地传递进去。
|
||||
|
||||
```go
|
||||
func (v *Vertex) Scale(f float64) {
|
||||
v.X = v.X * f
|
||||
v.Y = v.Y * f
|
||||
func (t T) Get(){
|
||||
return t.a
|
||||
}
|
||||
|
||||
v := Vertex{6, 12}
|
||||
v.Scale(0.5)
|
||||
// `v` 已更新
|
||||
func (t *T) Set(i int){
|
||||
t.a = i
|
||||
}
|
||||
//表达式`T.Get`和`(*T).Set`被称为方法表达式,
|
||||
//需要注意的是在方法表达式中编译器不会做自动转换。
|
||||
//值调用会自动转换,表达式调用则不会,例如:
|
||||
type Data struct{}
|
||||
func (Data) TestValue () {}
|
||||
func (*Data) TestPointer () {}
|
||||
//声明一个类型变量a
|
||||
var a Data= struct{}{}
|
||||
//表达式调用编译器不会进行自动转换
|
||||
Data.TestValue(a)
|
||||
//Data.TestValue(&a)
|
||||
(*Data).TestPointer (&a)
|
||||
//Data.TestPointer(&a) //type Data has no method TestPointer
|
||||
//值调用编译器会进行自动转换
|
||||
y : = (&a).TestValue //编译器帮助转换a.TestValue
|
||||
g : = a.TestPointer //会转换为(&a).TestPointer
|
||||
```
|
||||
|
||||
参见:[指针接收器](https://tour.golang.org/methods/4)
|
||||
#### 组合结构的方法集
|
||||
|
||||
内嵌字段的访问不需要使用全路径,只要保证命名是唯一的就可以,尽量避免同名。如果外层字段和内层字段有相同的方法,则使用简化模式访问外层方法会覆盖内层的方法。
|
||||
|
||||
```go
|
||||
x : = X{a: 1}
|
||||
y : = Y{
|
||||
X : x ,
|
||||
b : 2 ,
|
||||
}
|
||||
z : = z {
|
||||
Y : y ,
|
||||
c : 3 ,
|
||||
}//组合结构,内嵌字段
|
||||
```
|
||||
|
||||
组合结构的方法集有如下规则:
|
||||
|
||||
- 若类型 T 包含匿名字段 S ,则 T 的方法集包含S的方法集
|
||||
- 若类型 T 包含匿名字段 *S ,则 T 的方法集包含 S 和*S方法集
|
||||
- 不管类型 T 中嵌入的匿名字段是 S 还是 *S ,*T 方法集总是包含 S 和 *S 方法集
|
||||
|
||||
Golang 接口(Interfaces)
|
||||
--------
|
||||
@ -1006,11 +1122,11 @@ Go 命令
|
||||
另见
|
||||
--------
|
||||
|
||||
- [Devhints](https://devhints.io/go) _(devhints.io)_
|
||||
- [A tour of Go](https://tour.golang.org/welcome/1) _(tour.golang.org)_
|
||||
- [Golang wiki](https://github.com/golang/go/wiki/) _(github.com)_
|
||||
- [Effective Go](https://golang.org/doc/effective_go.html) _(golang.org)_
|
||||
- [Go by Example](https://gobyexample.com/) _(gobyexample.com)_
|
||||
- [Awesome Go](https://awesome-go.com/) _(awesome-go.com)_
|
||||
- [JustForFunc Youtube](https://www.youtube.com/channel/UC_BzFbxG2za3bp5NRRRXJSw) _(youtube.com)_
|
||||
- [Style Guide](https://github.com/golang/go/wiki/CodeReviewComments) _(github.com)_
|
||||
- [Devhints](https://devhints.io/go) *(devhints.io)*
|
||||
- [A tour of Go](https://tour.golang.org/welcome/1) *(tour.golang.org)*
|
||||
- [Golang wiki](https://github.com/golang/go/wiki/) *(github.com)*
|
||||
- [Effective Go](https://golang.org/doc/effective_go.html) *(golang.org)*
|
||||
- [Go by Example](https://gobyexample.com/) *(gobyexample.com)*
|
||||
- [Awesome Go](https://awesome-go.com/) *(awesome-go.com)*
|
||||
- [JustForFunc Youtube](https://www.youtube.com/channel/UC_BzFbxG2za3bp5NRRRXJSw) *(youtube.com)*
|
||||
- [Style Guide](https://github.com/golang/go/wiki/CodeReviewComments) *(github.com)*
|
||||
|
@ -206,7 +206,41 @@ Chrome 开发者工具键盘快捷键
|
||||
`Enter` | 执行
|
||||
<!--rehype:className=shortcuts-->
|
||||
|
||||
Chrome 搜索引擎查询语法
|
||||
---
|
||||
|
||||
### 语法
|
||||
|
||||
语法 | 阐述
|
||||
:- | -
|
||||
`site:` | 指定网站
|
||||
`inurl:` | URL 中存在的关键字页面
|
||||
`intext:` | 网页内容里的关键字
|
||||
`Filetype:` | 指定文件的类型
|
||||
`intitle:` | 网页辩题中的关键字
|
||||
`link:` | 返回所有你指定的域名链接
|
||||
`info:` | 查找指定站点信息
|
||||
`cache:` | 搜索 Google 中的内容缓存
|
||||
`related:` | 搜索相关的网站
|
||||
|
||||
<span style="color:red">注意:</span>搜索语法的 `:` 后不应该存在空格,像这样 `site:google.com`,而不是这样 `site: google.com`。
|
||||
|
||||
### 指令
|
||||
|
||||
指令 | 阐述
|
||||
:- | -
|
||||
`@` | 用于搜索社交媒体,如:`@twitter`
|
||||
`*` | 通配符省略,如:`wlop *`
|
||||
`$` | 用于搜索指定的价格,如:`phone $400`
|
||||
`#` | 搜索 `#` 标签,如:`#疯狂星期四`
|
||||
`-` | 排除特定关键字,如:`中国美食 -麻辣`
|
||||
`""` | 完全匹配的结果,如:`"最高的建筑"`
|
||||
`..` | 某个数字范围之内的,如:`phone $50..$100`
|
||||
`OR` | 组合搜索,如:`疯狂星期四 OR 肯德基`
|
||||
`AND` | 空格默认是 AND 指令
|
||||
|
||||
另见
|
||||
----
|
||||
|
||||
- [Keyboard shortcuts for Google Chrome](https://support.google.com/chrome/answer/157179?hl=en) _(support.google.com)_
|
||||
- [Search Help for Google Chrome](https://support.google.com/websearch/answer/2466433?hl=en)
|
||||
|
@ -37,27 +37,28 @@ export HOMEBREW_INSTALL_FROM_API=1
|
||||
|
||||
命令 | 说明
|
||||
:--- :---
|
||||
`brew install git` | `安装`一个包
|
||||
`brew reinstall git` | 重新`安装`一个包
|
||||
`brew install git` | `安装`一个软件包
|
||||
`brew reinstall git` | 重新`安装`一个软件包
|
||||
`brew uninstall git` | `删除`/`卸载`软件包
|
||||
`brew upgrade git` | 升级包
|
||||
`brew upgrade git` | 升级一个软件包
|
||||
`brew upgrade` | 升级所有可升级的包
|
||||
:--- :---
|
||||
`brew unlink git` | `取消`链接
|
||||
`brew link git` | 关联
|
||||
`brew switch git 2.5.0` | 更改版本
|
||||
`brew unlink git` | 取消软件包的链接
|
||||
`brew link git` | 链接已有的软件包
|
||||
`brew switch git 2.5.0` | 切换软件包的版本
|
||||
:--- :---
|
||||
`brew list --versions git` | 看看你有什么版本
|
||||
`brew list --versions git` | 查看安装的软件包及其版本信息
|
||||
|
||||
### 更多包命令
|
||||
|
||||
命令 | 说明
|
||||
:--- :---
|
||||
`brew info git` | 列出版本、注意事项等
|
||||
`brew cleanup git` | 删除旧版本
|
||||
`brew edit git` | 编辑此软件包
|
||||
`brew cat git` | 打印这个软件包
|
||||
`brew home git` | 打开主页
|
||||
`brew search git` | 搜索公式
|
||||
`brew info git` | 显示软件包的版本、依赖、注意事项等信息
|
||||
`brew cleanup git` | 删除旧版本的软件包及其依赖
|
||||
`brew edit git` | 编辑此软件包的安装脚本
|
||||
`brew cat git` | 打印此软件包的安装脚本
|
||||
`brew home git` | 打开此软件包的主页
|
||||
`brew search git` | 搜索软件包公式并显示相关信息
|
||||
|
||||
### Brew Cask 命令
|
||||
|
||||
@ -66,20 +67,20 @@ export HOMEBREW_INSTALL_FROM_API=1
|
||||
`brew install --cask firefox` | 安装火狐浏览器
|
||||
`brew list --cask` | 列出已安装应用
|
||||
|
||||
Cask 命令用于与图形应用程序交互
|
||||
Cask 命令用于与图形界面应用程序交互,可以安装和管理 macOS 上的图形界面应用程序
|
||||
|
||||
### 全局命令
|
||||
<!--rehype:wrap-class=row-span-2-->
|
||||
|
||||
命令 | 说明
|
||||
:--- :---
|
||||
`brew update` | 更新 `brew` 和 `cask`
|
||||
`brew upgrade` | 升级所有软件包
|
||||
`brew list` | 已安装列表
|
||||
`brew outdated` | 升级需要什么?
|
||||
`brew doctor` | 诊断 brew 问题
|
||||
`brew pin <formula>` | 防止指定软件包升级
|
||||
`brew unpin <formula>` | 允许升级指定的软件包
|
||||
`brew update` | 更新 `Homebrew` 和 `Cask`
|
||||
`brew upgrade` | 升级所有可升级的软件包
|
||||
`brew list` | 列出已安装的软件包
|
||||
`brew outdated` | 列出需要升级的软件包
|
||||
`brew doctor` | 诊断 Homebrew 是否存在问题
|
||||
`brew pin <formula>` | 防止指定软件包被升级
|
||||
`brew unpin <formula>` | 允许指定软件包被升级
|
||||
|
||||
### Brew 清理
|
||||
|
||||
@ -127,6 +128,27 @@ $ brew info <formula>
|
||||
`brew help` | 打印帮助信息
|
||||
`brew help <sub-command>` | 打印子命令的帮助信息
|
||||
|
||||
### 依赖
|
||||
|
||||
显示`包`的依赖关系。 特定于`包`的其他选项可能是附加到命令
|
||||
|
||||
```bash
|
||||
# 您还可以看到包和依赖关系图
|
||||
$ brew deps --tree --installed
|
||||
$ brew deps git # 显示 git 依赖
|
||||
```
|
||||
|
||||
### 卸载 Homebrew
|
||||
|
||||
- 使用官方卸载脚本卸载 Homebrew
|
||||
- 验证文件是否已删除
|
||||
|
||||
```bash
|
||||
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
|
||||
$ sudo rm -rf /opt/homebrew
|
||||
```
|
||||
<!--rehype:className=wrap-text -->
|
||||
|
||||
另见
|
||||
---
|
||||
|
||||
|
@ -842,4 +842,4 @@ method.invoke(classLoader, url);
|
||||
另见
|
||||
---
|
||||
|
||||
- [Java 官网](https://www.java.com/zh-CN/) _(java.com)_
|
||||
- [Java 官网](https://www.oracle.com/cn/java/) _(oracle.com/cn/java)_
|
||||
|
@ -88,7 +88,7 @@ console.log(single.length);
|
||||
|
||||
```javascript
|
||||
5 + 5 = 10 // 加法 Addition
|
||||
10 - 5 = 5 // 加法 Subtraction
|
||||
10 - 5 = 5 // 减法 Subtraction
|
||||
5 * 10 = 50 // 乘法 Multiplication
|
||||
10 / 5 = 2 // 除法 Division
|
||||
10 % 5 = 0 // 取模 Modulo
|
||||
@ -469,6 +469,15 @@ function sum(num1, num2) {
|
||||
sum(2, 4); // 6
|
||||
```
|
||||
|
||||
### 立即执行函数
|
||||
|
||||
```javascript
|
||||
//命名函数并立即执行一次
|
||||
(function sum(num1, num2) {
|
||||
return num1 + num2;
|
||||
})(2,4)//6
|
||||
```
|
||||
|
||||
### 函数表达式
|
||||
|
||||
```javascript
|
||||
|
@ -113,7 +113,7 @@ $("selector1, selector2 ...selectorn")
|
||||
- [[name!="value"]](https://api.jquery.com/attribute-not-equal-selector/) _选择不具有指定属性或具有指定属性但不具有特定值的元素_<!--rehype:tooltips-->
|
||||
- [[name^="value"]](https://api.jquery.com/attribute-starts-with-selector/) _选择具有指定属性且值恰好以给定字符串开头的元素_<!--rehype:tooltips-->
|
||||
- [[name]](https://api.jquery.com/has-attribute-selector/) _选择具有指定属性和任意值的元素_<!--rehype:tooltips-->
|
||||
- [[name="value"][name2="value2"]](https://api.jquery.com/multiple-attribute-selector/) _匹配匹配所有指定属性过滤器的元素_<!--rehype:tooltips-->
|
||||
- [[name="value"]](https://api.jquery.com/multiple-attribute-selector/) _匹配匹配所有指定属性过滤器的元素_<!--rehype:tooltips-->
|
||||
<!--rehype:className=cols-2 style-none-->
|
||||
|
||||
### 子过滤器
|
||||
|
@ -201,7 +201,7 @@ export default Blog
|
||||
- Next.js 在后台触发页面的重新生成
|
||||
- 一旦页面生成成功,Next.js 将使缓存失效并显示更新后的页面。如果后台重新生成失败,旧页面仍将保持不变
|
||||
|
||||
### 使用 useeffect 客户端数据获取
|
||||
### 使用 useEffect 客户端数据获取
|
||||
|
||||
```jsx
|
||||
import { useState, useEffect } from 'react'
|
||||
@ -399,7 +399,7 @@ const path = require('path')
|
||||
|
||||
module.exports = {
|
||||
sassOptions: {
|
||||
includePaths:
|
||||
includePaths:
|
||||
[path.join(__dirname, 'styles')],
|
||||
},
|
||||
}
|
||||
@ -1336,7 +1336,7 @@ NEXT_PUBLIC_ANALYTICS_ID=abcdefghijk
|
||||
// pages/index.js
|
||||
import setupAnalyticsService from '../lib/my-analytics-service'
|
||||
|
||||
//
|
||||
//
|
||||
// 它将在构建时转换为 `setupAnalyticsService('abcdefghijk')`
|
||||
setupAnalyticsService(process.env.NEXT_PUBLIC_ANALYTICS_ID)
|
||||
|
||||
@ -1528,11 +1528,11 @@ export default function Home() {
|
||||
|
||||
```js
|
||||
// GET `/post` (empty object)
|
||||
{ }
|
||||
{ }
|
||||
// `GET /post/a` (single-element array)
|
||||
{ "slug": ["a"] }
|
||||
{ "slug": ["a"] }
|
||||
// `GET /post/a/b` (multi-element array)
|
||||
{ "slug": ["a", "b"] }
|
||||
{ "slug": ["a", "b"] }
|
||||
```
|
||||
|
||||
### 事件执行调整页面
|
||||
|
@ -152,7 +152,7 @@ message += "Part 2."
|
||||
'10 + 10 = 20'
|
||||
```
|
||||
|
||||
查看: [Python F-Strings](#f-字符串(Python 3.6+))
|
||||
查看: [Python F-Strings](#python-f-字符串自-python-36-起)
|
||||
|
||||
Python 数据类型
|
||||
---------------
|
||||
@ -489,7 +489,7 @@ Python F 字符串(自 Python 3.6+ 起)
|
||||
'text '
|
||||
>>> f'{"test":*>10}' # 向左填充
|
||||
'******test'
|
||||
>>> f'{"test":*<10}' # 填写正确
|
||||
>>> f'{"test":*<10}' # 向右填充
|
||||
'test******'
|
||||
>>> f'{"test":*^10}' # 填充中心
|
||||
'***test***'
|
||||
@ -649,7 +649,7 @@ a_list[start:end:step]
|
||||
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
|
||||
```
|
||||
|
||||
#### 迈着大步
|
||||
#### 跳跃索引
|
||||
|
||||
```python
|
||||
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
|
||||
@ -678,7 +678,7 @@ a_list[start:end:step]
|
||||
['butter']
|
||||
```
|
||||
|
||||
### 使用权
|
||||
### 列表边界
|
||||
|
||||
```python
|
||||
>>> li = ['a', 'b', 'c', 'd']
|
||||
|
@ -297,7 +297,7 @@ RegEX 备忘清单
|
||||
|
||||
范例 | 说明
|
||||
:-|-
|
||||
`colou?r` | 匹配 <yel>color</yel> 或 <yel>color</yel>
|
||||
`colou?r` | 匹配 <yel>color</yel> 或 <yel>colour</yel>
|
||||
`[BW]ill[ieamy's]*` | 匹配 <yel>Bill</yel>、<yel>Willy</yel>、<yel>William's</yel> 等。
|
||||
`[a-zA-Z]+` | 匹配 1 个或多个字母
|
||||
`\d{3}-\d{2}-\d{4}` | 匹配 SSN
|
||||
@ -615,7 +615,7 @@ M(?(?=.*?\bher\b)s|r)\.
|
||||
|
||||
表达式 | 匹配示例
|
||||
:- | -
|
||||
`The` | The `fat` cat sat on the mat.
|
||||
`The` | `The` fat cat sat on the mat.
|
||||
`/The/gi` | `The` fat cat sat on `the` mat.
|
||||
<!--rehype:className=show-header-->
|
||||
|
||||
|
@ -180,7 +180,7 @@ let p = Point { x: 10, y: 11 };
|
||||
let px: i32 = p.x;
|
||||
```
|
||||
|
||||
#### 元祖结构体
|
||||
#### 元组结构体
|
||||
|
||||
```rust
|
||||
struct Color (i32, i32, i32);
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@wcj/reference",
|
||||
"version": "1.35.0",
|
||||
"version": "1.36.0",
|
||||
"description": "为开发人员分享快速参考备忘单(主要是方便自己)。",
|
||||
"author": "jaywcjlove",
|
||||
"license": "MIT",
|
||||
@ -30,9 +30,9 @@
|
||||
"husky": "^8.0.1",
|
||||
"lint-staged": "^13.0.3",
|
||||
"prettier": "^2.7.1",
|
||||
"refs-cli": "^1.2.12",
|
||||
"refs-cli": "^1.3.2",
|
||||
"markdownlint": "^0.27.0",
|
||||
"markdownlint-cli": "^0.32.2"
|
||||
"markdownlint-cli": "^0.33.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=16.0.0"
|
||||
|
Reference in New Issue
Block a user