-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.html
More file actions
483 lines (384 loc) · 50.5 KB
/
index.html
File metadata and controls
483 lines (384 loc) · 50.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
<!DOCTYPE html><html lang="zh-CN" data-theme="light"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0"><title>Rain's Blog - 就像一只蝴蝶飞过废墟</title><meta name="author" content="Rain Sun"><meta name="copyright" content="Rain Sun"><meta name="format-detection" content="telephone=no"><meta name="theme-color" content="#ffffff"><meta name="description" content="Mia San Mia">
<meta property="og:type" content="website">
<meta property="og:title" content="Rain's Blog">
<meta property="og:url" content="http://sebugmaker.github.io/index.html">
<meta property="og:site_name" content="Rain's Blog">
<meta property="og:description" content="Mia San Mia">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="https://box.nju.edu.cn/f/beb5b1c82dfb49be9c8e/?dl=1">
<meta property="article:author" content="Rain Sun">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="https://box.nju.edu.cn/f/beb5b1c82dfb49be9c8e/?dl=1"><link rel="shortcut icon" href="https://box.nju.edu.cn/f/02da4b126cc04fd4951f/?dl=1"><link rel="canonical" href="http://sebugmaker.github.io/index.html"><link rel="preconnect" href="//cdn.jsdelivr.net"/><link rel="preconnect" href="//busuanzi.ibruce.info"/><link rel="stylesheet" href="/css/index.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free/css/all.min.css" media="print" onload="this.media='all'"><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.min.css" media="print" onload="this.media='all'"><script>const GLOBAL_CONFIG = {
root: '/',
algolia: undefined,
localSearch: undefined,
translate: undefined,
noticeOutdate: undefined,
highlight: {"plugin":"highlighjs","highlightCopy":true,"highlightLang":true,"highlightHeightLimit":false},
copy: {
success: '复制成功',
error: '复制错误',
noSupport: '浏览器不支持'
},
relativeDate: {
homepage: false,
post: false
},
runtime: '',
date_suffix: {
just: '刚刚',
min: '分钟前',
hour: '小时前',
day: '天前',
month: '个月前'
},
copyright: undefined,
lightbox: 'fancybox',
Snackbar: undefined,
source: {
justifiedGallery: {
js: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.js',
css: 'https://cdn.jsdelivr.net/npm/flickr-justified-gallery/dist/fjGallery.min.css'
}
},
isPhotoFigcaption: false,
islazyload: true,
isAnchor: false,
percent: {
toc: true,
rightside: false,
}
}</script><script id="config-diff">var GLOBAL_CONFIG_SITE = {
title: 'Rain\'s Blog',
isPost: false,
isHome: true,
isHighlightShrink: false,
isToc: false,
postUpdate: '2025-06-19 23:03:50'
}</script><noscript><style type="text/css">
#nav {
opacity: 1
}
.justified-gallery img {
opacity: 1
}
#recent-posts time,
#post-meta time {
display: inline !important
}
</style></noscript><script>(win=>{
win.saveToLocal = {
set: function setWithExpiry(key, value, ttl) {
if (ttl === 0) return
const now = new Date()
const expiryDay = ttl * 86400000
const item = {
value: value,
expiry: now.getTime() + expiryDay,
}
localStorage.setItem(key, JSON.stringify(item))
},
get: function getWithExpiry(key) {
const itemStr = localStorage.getItem(key)
if (!itemStr) {
return undefined
}
const item = JSON.parse(itemStr)
const now = new Date()
if (now.getTime() > item.expiry) {
localStorage.removeItem(key)
return undefined
}
return item.value
}
}
win.getScript = url => new Promise((resolve, reject) => {
const script = document.createElement('script')
script.src = url
script.async = true
script.onerror = reject
script.onload = script.onreadystatechange = function() {
const loadState = this.readyState
if (loadState && loadState !== 'loaded' && loadState !== 'complete') return
script.onload = script.onreadystatechange = null
resolve()
}
document.head.appendChild(script)
})
win.getCSS = (url,id = false) => new Promise((resolve, reject) => {
const link = document.createElement('link')
link.rel = 'stylesheet'
link.href = url
if (id) link.id = id
link.onerror = reject
link.onload = link.onreadystatechange = function() {
const loadState = this.readyState
if (loadState && loadState !== 'loaded' && loadState !== 'complete') return
link.onload = link.onreadystatechange = null
resolve()
}
document.head.appendChild(link)
})
win.activateDarkMode = function () {
document.documentElement.setAttribute('data-theme', 'dark')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#0d0d0d')
}
}
win.activateLightMode = function () {
document.documentElement.setAttribute('data-theme', 'light')
if (document.querySelector('meta[name="theme-color"]') !== null) {
document.querySelector('meta[name="theme-color"]').setAttribute('content', '#ffffff')
}
}
const t = saveToLocal.get('theme')
if (t === 'dark') activateDarkMode()
else if (t === 'light') activateLightMode()
const asideStatus = saveToLocal.get('aside-status')
if (asideStatus !== undefined) {
if (asideStatus === 'hide') {
document.documentElement.classList.add('hide-aside')
} else {
document.documentElement.classList.remove('hide-aside')
}
}
const detectApple = () => {
if(/iPad|iPhone|iPod|Macintosh/.test(navigator.userAgent)){
document.documentElement.classList.add('apple')
}
}
detectApple()
})(window)</script><link rel="stylesheet" href="/css/font.css"><link rel="stylesheet" href="/css/myhead.css"><link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/js-heo@1.0.11/poem/poem.css"><link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/js-heo@1.0.11/mainColor/heoMainColor.css"><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/zyoushuo/Blog@latest/hexo/css/loading_style_1.css" ><link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/zyoushuo/Blog@latest/hexo/css/loading_style_2.css" ><!-- hexo injector head_end start -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.12.0/dist/katex.min.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/hexo-math@4.0.0/dist/style.css">
<!-- hexo injector head_end end --><meta name="generator" content="Hexo 6.3.0"></head><body>
<div id='loader'>
<div class="loading-left-bg"></div>
<div class="loading-right-bg"></div>
<div class="spinner-box">
<div class="configure-border-1">
<div class="configure-core"></div>
</div>
<div class="configure-border-2">
<div class="configure-core"></div>
</div>
<div class="loading-word">加载中...</div>
</div>
</div>
<script>
var endLoading = function () {
document.body.style.overflow = 'auto';
document.getElementById('loader').classList.add("loading");
}
window.addEventListener('load',endLoading);
</script>
<div id="sidebar"><div id="menu-mask"></div><div id="sidebar-menus"><div class="avatar-img is-center"><img src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/beb5b1c82dfb49be9c8e/?dl=1" onerror="onerror=null;src='/img/friend_404.gif'" alt="avatar"/></div><div class="sidebar-site-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">49</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">38</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">18</div></a></div><hr/><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/intro/"><i class="fa-fw fa fa-address-card"></i><span> Intro</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div></div></div></div><div class="page" id="body-wrap"><header class="full_page" id="page-header" style="background-image: url('https://box.nju.edu.cn/f/9354bc2491784b0891c8/?dl=1')"><nav id="nav"><span id="blog-info"><a href="/" title="Rain's Blog"><span class="site-name">Rain's Blog</span></a></span><div id="menus"><div class="menus_items"><div class="menus_item"><a class="site-page" href="/"><i class="fa-fw fas fa-home"></i><span> Home</span></a></div><div class="menus_item"><a class="site-page" href="/intro/"><i class="fa-fw fa fa-address-card"></i><span> Intro</span></a></div><div class="menus_item"><a class="site-page" href="/archives/"><i class="fa-fw fas fa-archive"></i><span> Archives</span></a></div><div class="menus_item"><a class="site-page" href="/tags/"><i class="fa-fw fas fa-tags"></i><span> Tags</span></a></div><div class="menus_item"><a class="site-page" href="/categories/"><i class="fa-fw fas fa-folder-open"></i><span> Categories</span></a></div><div class="menus_item"><a class="site-page" href="/music/"><i class="fa-fw fas fa-music"></i><span> Music</span></a></div><div class="menus_item"><a class="site-page" href="/link/"><i class="fa-fw fas fa-link"></i><span> Link</span></a></div></div><div id="toggle-menu"><a class="site-page" href="javascript:void(0);"><i class="fas fa-bars fa-fw"></i></a></div></div></nav><div id="site-info"><h1 id="site-title">Rain's Blog</h1><div id="site-subtitle"><span id="subtitle"></span></div><div id="site_social_icons"><a class="social-icon" href="https://github.com/SEBugMaker" target="_blank" title="Github"><i class="fab fa-github"></i></a><a class="social-icon" href="mailto:sunbugmaker@gmail.com" target="_blank" title="Email"><i class="fas fa-envelope"></i></a></div></div><div id="scroll-down"><i class="fas fa-angle-down scroll-down-effects"></i></div></header><main class="layout" id="content-inner"><div class="recent-posts" id="recent-posts"><div class="recent-post-item"><div class="post_cover left"><a href="/posts/52ec5468.html" title="陶喆一些有趣的歌曲英文名盘点2"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/3e0a1a5c8458464eaf95/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="陶喆一些有趣的歌曲英文名盘点2"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/52ec5468.html" title="陶喆一些有趣的歌曲英文名盘点2">陶喆一些有趣的歌曲英文名盘点2</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-06-19T14:35:09.000Z" title="发表于 2025-06-19 22:35:09">2025-06-19</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%97%A5%E5%B8%B8/">日常</a></span></div><div class="content">好像还是鸽了不久😧,私密马赛
先晒一下新到的《黑色柳丁》cd
上次写到红专,那么还剩《太美丽》《再见你好吗》《Stupid Pop Songs》
太美丽其实最近一直在听这张,感觉虽然是有点商业了,但是并不敷衍,很多歌都很好听。
自导自演的悲剧 —— How Long豪庭
似曾相识 —— Finally“最终”遇到了似曾相识的你,还是“最终”把你忘记。
不爱 —— Forever唱的不爱,却还是“I love you forever”
再见你好吗这张听的有点少😬
勿忘我 —— Yodeling融合了约德尔唱法的一首歌,那么就很好理解这个翻译了,过于直白了
那个女孩 —— What a Girl其实这首歌感觉英文翻译更好,对一位同时脚踏俩兄弟船的女生的吐槽(?maybe)
Stupid Pop Songs新专倒是翻译老实了不少
Moonchild —— 梦在萨克斯听爽了说是
陪你 —— Forever Penny老大你不要太爱Penny姐
微尘 —— From Dust to Dust其实还挺好理解的,毕竟这首歌就像一个吟游诗人唱的史诗歌曲。
</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/posts/8bdc2ea7.html" title="陶喆一些有趣的歌曲英文名盘点"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/3e0a1a5c8458464eaf95/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="陶喆一些有趣的歌曲英文名盘点"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/8bdc2ea7.html" title="陶喆一些有趣的歌曲英文名盘点">陶喆一些有趣的歌曲英文名盘点</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-06-07T09:59:13.000Z" title="发表于 2025-06-07 17:59:13">2025-06-07</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%97%A5%E5%B8%B8/">日常</a></span></div><div class="content">其实老大很多歌的英文名还是挺有意思的,正好最近不是很忙,可以来一期盘点。当然这里只会挑一些我觉得有趣的歌进行盘点。
陶喆同名专辑 —— 蓝专沙滩 —— Blue Moon虽然歌词里并没有出现月亮,但是在你听歌时肯定能想象出这样的景象:沙滩、海浪、微风、明月。搭配上歌词中“我的心 我的心 蓝蓝地”,也不难理解这样的翻译。
心乱飞 —— DO I DO I和歌词中“酷哥就该爱上辣妹”,好像用 DO I DO I仿佛也不难理解。
十七岁 —— Our Love这首歌正是一首关于十七岁的恋爱的故事,英文翻译倒是更为直接的表达了这一点。
I’m O.K. —— 黄专找自己 —— Rain倒是不难理解,毕竟“哗啦啦啦啦天在下雨”
天天 —— Close to you相比于中文歌名的含蓄,英文名倒是更加直接表达了内心的情感,“我的心已经飞到这个城市另一边”何尝不是想close to you。
黑色柳丁 —— 黑专讨厌红楼梦 —— Let’s fall in love老大的经典小黄歌,和《天天》倒是有异曲同工之妙,英文歌名倒是更加的直接。
今天晚间新闻 —— The world today这首歌在大陆 ...</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/posts/fb8e5e9b.html" title="Soul Power II Suzhou"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/a8cfbb7f1c6344a79efe/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="Soul Power II Suzhou"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/fb8e5e9b.html" title="Soul Power II Suzhou">Soul Power II Suzhou</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-06-03T03:26:38.000Z" title="发表于 2025-06-03 11:26:38">2025-06-03</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%97%A5%E5%B8%B8/">日常</a></span></div><div class="content">Soul Power II 苏州很难说是什么时候喜欢上的陶喆,可能是那段时间的B站鬼畜,亦或者是跨年晚会的《流沙》与《蝴蝶》,但最终每一个淘比特都躲不开的就是2003的Soul Power演唱会,每次点进sp的视频就会被硬控两个多小时。所以自从老大翻红之后就很想去一次Soul Power II,这次也要感谢帮我抢票的代拍。不过就是第一次且一个人看演唱会属于是buff叠满了,下次能不能有喜欢陶吉吉的女生和我一起去。
换到体育场之后,吉吉的舞美没得说,还是一如既往的精致真诚,老大也是基本不停地唱了3小时,每首都很卖力,还唱了新专的《千言万语》(老鸽新编真的是统治区)和sp2第一次唱《马戏团》《high high high》。反正看完后一直回味了很久。
全场回放把我用手表录的全场放这儿了,链接在这儿,可以直接导入apple music。
歌单如下
照片
</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/posts/3040d40b.html" title="登泰山记"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/bb980e923d16458e9556/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="登泰山记"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/3040d40b.html" title="登泰山记">登泰山记</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2025-06-02T16:24:22.000Z" title="发表于 2025-06-03 00:24:22">2025-06-03</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%97%85%E6%B8%B8/">旅游</a></span></div><div class="content">登泰山记——答辩后的特种兵旅行首先可喜可贺,在夏令营、保研、毕业论文、答辩等一系列拖更理由后终于是恢复更新了。
由于受不了答辩结束后还要看项目里某位的丑恶嘴脸,于是和同学约定一起去爬泰山看日出,感谢一起去的同学们,也是本科一次难忘的经历了,还要感谢大家在十八盘的时候把抽筋的我拖上去了😭。总的来说就是十八盘很抖,日出也很震撼,人也很多。
ps:泰山结束还闪击徐州大吃特吃一顿
泰山
徐州
</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/posts/a16362a.html" title="最近听的歌第二期"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/6fd2771ec96046808b14/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="最近听的歌第二期"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/a16362a.html" title="最近听的歌第二期">最近听的歌第二期</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2024-10-13T12:09:09.000Z" title="发表于 2024-10-13 20:09:09">2024-10-13</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%97%A5%E5%B8%B8/">日常</a></span></div><div class="content">说忘记更新都是假的,单纯的摆烂,极致的享受,来看看最近在听什么歌吧
《再见以前先说再见》
第一次听还没有那么喜欢,但是越听越上头
《黑色柳丁》+《今天晚间新闻》+《dear god》
很有连续性的三首歌
《Katrina》
更喜欢老大的这一个版本
《寂寞的季节》
又到听这首歌的时间了吗?
《月亮代表谁的心》
味大,无需多盐。非常好的改编,使我的mooncake旋转
《今天你要嫁给我》
中国人自己的love story?看了下面的视频才觉得写出这首歌的简直是甜菜
</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/posts/4cacdc62.html" title="CS224N_hw_a1"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/7b57c17be59f47b0808c/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="CS224N_hw_a1"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/4cacdc62.html" title="CS224N_hw_a1">CS224N_hw_a1</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2024-07-24T11:23:24.000Z" title="发表于 2024-07-24 19:23:24">2024-07-24</time></span></div><div class="content">Part 1: Count-Based Word Vectors大多数词向量模型都是从以下想法开始的:
你应当通过一个词的同伴来认识这个词(Firth, J. R. 1957:11)
许多词向量实现是基于这样一个理念,即相似的词(即近义词)会在相似的上下文中使用。因此,相似的词通常会与一组共同的词(即上下文)一起被说出或写出。通过检查这些上下文,我们可以尝试为我们的词开发嵌入。基于这一直觉,许多“老派”构建词向量的方法依赖于词频统计。这里我们将详细说明其中的一种策略,即共现矩阵。
Co-Occurrence共现矩阵计算在某种环境中事物共同出现的频率。给定文档中某个词 $w_i$,我们考虑围绕$w_i$的上下文窗口。假设我们的固定窗口大小是n,那么这个窗口包括该文档中 $w_i$的前n个词和后n个词,即词 $w_{i-n}$, … , $w_{i-1}$和$w_{i+1}$, … , $w_{i+n}$。我们构建一个共现矩阵M,这是一个对称的词与词之间的矩阵,其中$M_{ij}$是所有文档中词$w_j$出现在词 $w_i$的窗口中的次数。
示例:固定窗口大小为 n=1的共现:
文档 ...</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/posts/c739b36b.html" title="tree-sitter生成语法树"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/e8109f7d6a184814ad9a/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="tree-sitter生成语法树"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/c739b36b.html" title="tree-sitter生成语法树">tree-sitter生成语法树</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2024-07-08T07:10:29.000Z" title="发表于 2024-07-08 15:10:29">2024-07-08</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E4%BB%A3%E7%A0%81%E8%A1%A5%E5%85%A8/">代码补全</a></span></div><div class="content">Tree-sitter是什么Tree-sitter 是一个解析器生成工具和增量解析库。它可以为源文件构建具体的语法树,并在编辑源文件时有效地更新语法树。有以下特点
通用 足以解析任何编程语言的通用性
快速 能够在每次编辑源码时及时解析
强大 即使存在语法错误,也足够强大以提供有用的结果
无依赖 所以那些用纯 C 编写的运行时库(runtime lib),可以嵌入到任何应用程序中
通过tree-sitter可以将目标语言实时解析为语法树。
安装未完待续……
</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/posts/7e934d0c.html" title="BM25简易实现"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/c9762c29c1924645b1ef/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="BM25简易实现"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/7e934d0c.html" title="BM25简易实现">BM25简易实现</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2024-07-06T08:40:44.000Z" title="发表于 2024-07-06 16:40:44">2024-07-06</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E4%BB%A3%E7%A0%81%E8%A1%A5%E5%85%A8/">代码补全</a></span></div><div class="content">什么是BM25BM25算法是一种常见用来做相关度打分的公式,思路比较简单,主要就是计算一个query里面所有词和文档的相关度,然后在把分数做累加操作,而每个词的相关度分数主要还是受到tf/idf的影响。
BM25算法是常见的用来计算query和文章相关度的相似度的。其实这个算法的原理很简单,就是将需要计算的query分词成w1,w2,…,wn,然后求出每一个词和文章的相关度,最后将这些相关度进行累加,最终就可以的得到文本相似度计算结果。
Score(Q,d) = \sum_{i}^{n}W_{i}\cdot R(q_{i},d)首先Wi表示第i个词的权重,这里一般会使用TF-IDF算法来计算词语的权重这个公式第二项R(qi,d)表示我们查询query中的每一个词和文章d的相关度。一般来说Wi的计算用逆项文本频率IDF的计算公式:
IDF(q_i) = \log \frac{N+0.5}{n(q_i)+0.5}在这个公式中,N表示文档的总数,n(qi)表示包含这个词的文章数,为了避免对数里面分母项等于0,给分子分母同时加上0.5,这个0.5被称作调教系数,所以当n(qi)越小的时候I ...</div></div></div><div class="recent-post-item"><div class="post_cover left"><a href="/posts/c1c091e0.html" title="软件系统设计复习"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/a8416f815322466ca6a0/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="软件系统设计复习"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/c1c091e0.html" title="软件系统设计复习">软件系统设计复习</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2024-06-24T08:28:17.000Z" title="发表于 2024-06-24 16:28:17">2024-06-24</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%9C%9F%E6%9C%AB%E5%A4%8D%E4%B9%A0/">期末复习</a></span></div><div class="content">24软件系统设计
孙顾燚 - v3.0
总体来说考试的简答题还是考察的基础知识,部分题目需要结合知识思考
详细设计部分的设计题不会非常难,但是今年的架构设计题直接gg了
由于博客的markdown不支持渲染[!important],所以博客上看这篇文章怪怪的
24考试回忆
代码违背了什么设计原则,如何修改
设计原则之间的联系
ASR是什么?ASR来源
checklist 7个categories
SOA基本原则,对质量属性的影响
微服务部署模式的上下文,需求,模式,优缺点
Risks,Senstivity Points,Trade-Off Points分别是什么?各举一个例子。
一个在线购物平台,用了策略模式但是有问题,分析问题出在哪里,如何修改
装饰器能否作为组合模式的变种?(忘了位置了,也可能反过来
架构设计大题,需要画不同的views
架构部分 - zh部分
[!IMPORTANT]
【2019】Architecture,structure和Design的区别?
Design 包含 Architecture,Architecture 包含 Structure
结构是静态 ...</div></div></div><div class="recent-post-item"><div class="post_cover right"><a href="/posts/eb3d82ea.html" title="数据库复习"><img class="post-bg" src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/65d5936759cc46bdab99/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="数据库复习"></a></div><div class="recent-post-info"><a class="article-title" href="/posts/eb3d82ea.html" title="数据库复习">数据库复习</a><div class="article-meta-wrap"><span class="post-meta-date"><i class="far fa-calendar-alt"></i><span class="article-meta-label">发表于</span><time datetime="2024-06-11T09:01:46.000Z" title="发表于 2024-06-11 17:01:46">2024-06-11</time></span><span class="article-meta"><span class="article-meta-separator">|</span><i class="fas fa-inbox"></i><a class="article-meta__categories" href="/categories/%E6%9C%9F%E6%9C%AB%E5%A4%8D%E4%B9%A0/">期末复习</a></span></div><div class="content">24数据库开发复习
SEBugMaker version1.0
7-8道题
20%上机+80%期末
编程题
SQL 编程题
3道题(数值、时间、字符串3选2),记住常见函数
数值考虑空值
时间,索引,日期的差
中位数,众数不太容易考
标注使用的数据库
递归查询可能会考一个
可能会用到外连接,数值?
注意函数用对
NULL处理MySQL提供了三大运算符:
IS NULL: 当列的值是 NULL,此运算符返回 true。
IS NOT NULL: 当列的值不为 NULL, 运算符返回 true。
<=>: 比较操作符(不同于 = 运算符),当比较的的两个值相等或者都为 NULL 时返回 true。
example
12select * , columnName1+ifnull(columnName2,0) from tableName;# columnName1,columnName2 为 int 型,当 columnName2 中,有值为 null 时,columnName1+columnName2=null, ifnull(columnName2,0) 把 ...</div></div></div><nav id="pagination"><div class="pagination"><span class="page-number current">1</span><a class="page-number" href="/page/2/#content-inner">2</a><span class="space">…</span><a class="page-number" href="/page/5/#content-inner">5</a><a class="extend next" rel="next" href="/page/2/#content-inner"><i class="fas fa-chevron-right fa-fw"></i></a></div></nav></div><div class="aside-content" id="aside-content"><div class="card-widget card-info"><div class="is-center"><div class="avatar-img"><img src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/beb5b1c82dfb49be9c8e/?dl=1" onerror="this.onerror=null;this.src='/img/friend_404.gif'" alt="avatar"/></div><div class="author-info__name">Rain Sun</div><div class="author-info__description">Mia San Mia</div></div><div class="card-info-data site-data is-center"><a href="/archives/"><div class="headline">文章</div><div class="length-num">49</div></a><a href="/tags/"><div class="headline">标签</div><div class="length-num">38</div></a><a href="/categories/"><div class="headline">分类</div><div class="length-num">18</div></a></div><a id="card-info-btn" target="_blank" rel="noopener" href="https://github.com/SEBugMaker"><i class="fab fa-github"></i><span>Follow Me</span></a><div class="card-info-social-icons is-center"><a class="social-icon" href="https://github.com/SEBugMaker" target="_blank" title="Github"><i class="fab fa-github"></i></a><a class="social-icon" href="mailto:sunbugmaker@gmail.com" target="_blank" title="Email"><i class="fas fa-envelope"></i></a></div></div><div class="card-widget" id="card-poem"><div id="poem_sentence"></div><div id="poem_info"><div id="poem_dynasty"></div><div id="poem_author"></div></div></div><script src="https://cdn.jsdelivr.net/npm/js-heo@1.0.11/poem/jinrishici.js" charset="utf-8"></script><script type="text/javascript">jinrishici.load(function(result) {
var sentence = document.querySelector("#poem_sentence")
var author = document.querySelector("#poem_author")
var dynasty = document.querySelector("#poem_dynasty")
var sentenceText = result.data.content
sentenceText = sentenceText.substr(0, sentenceText.length - 1);
sentence.innerHTML = sentenceText
dynasty.innerHTML = result.data.origin.dynasty
author.innerHTML = result.data.origin.author + '《' + result.data.origin.title + '》'
});</script><div class="card-widget card-announcement"><div class="item-headline"><i class="fas fa-bullhorn fa-shake"></i><span>简介</span></div><div class="announcement_content">Hi there!我是南京大学软件工程专业的一名学生,欢迎来到我的博客。这里记录了我的学习和生活,希望能给你带来一些帮助。<br> 如果你有什么问题或建议,欢迎在评论区留言或通过邮件询问,我会尽快回复的。谢谢!</div></div><div class="sticky_layout"><div class="card-widget card-recent-post"><div class="item-headline"><i class="fas fa-history"></i><span>最新文章</span></div><div class="aside-list"><div class="aside-list-item"><a class="thumbnail" href="/posts/52ec5468.html" title="陶喆一些有趣的歌曲英文名盘点2"><img src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/3e0a1a5c8458464eaf95/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="陶喆一些有趣的歌曲英文名盘点2"/></a><div class="content"><a class="title" href="/posts/52ec5468.html" title="陶喆一些有趣的歌曲英文名盘点2">陶喆一些有趣的歌曲英文名盘点2</a><time datetime="2025-06-19T14:35:09.000Z" title="发表于 2025-06-19 22:35:09">2025-06-19</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/8bdc2ea7.html" title="陶喆一些有趣的歌曲英文名盘点"><img src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/3e0a1a5c8458464eaf95/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="陶喆一些有趣的歌曲英文名盘点"/></a><div class="content"><a class="title" href="/posts/8bdc2ea7.html" title="陶喆一些有趣的歌曲英文名盘点">陶喆一些有趣的歌曲英文名盘点</a><time datetime="2025-06-07T09:59:13.000Z" title="发表于 2025-06-07 17:59:13">2025-06-07</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/fb8e5e9b.html" title="Soul Power II Suzhou"><img src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/a8cfbb7f1c6344a79efe/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="Soul Power II Suzhou"/></a><div class="content"><a class="title" href="/posts/fb8e5e9b.html" title="Soul Power II Suzhou">Soul Power II Suzhou</a><time datetime="2025-06-03T03:26:38.000Z" title="发表于 2025-06-03 11:26:38">2025-06-03</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/3040d40b.html" title="登泰山记"><img src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/bb980e923d16458e9556/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="登泰山记"/></a><div class="content"><a class="title" href="/posts/3040d40b.html" title="登泰山记">登泰山记</a><time datetime="2025-06-02T16:24:22.000Z" title="发表于 2025-06-03 00:24:22">2025-06-03</time></div></div><div class="aside-list-item"><a class="thumbnail" href="/posts/a16362a.html" title="最近听的歌第二期"><img src= "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" data-lazy-src="https://box.nju.edu.cn/f/6fd2771ec96046808b14/?dl=1" onerror="this.onerror=null;this.src='/img/404.jpg'" alt="最近听的歌第二期"/></a><div class="content"><a class="title" href="/posts/a16362a.html" title="最近听的歌第二期">最近听的歌第二期</a><time datetime="2024-10-13T12:09:09.000Z" title="发表于 2024-10-13 20:09:09">2024-10-13</time></div></div></div></div><div class="card-widget card-categories"><div class="item-headline">
<i class="fas fa-folder-open"></i>
<span>分类</span>
<a class="card-more-btn" href="/categories/" title="查看更多">
<i class="fas fa-angle-right"></i></a>
</div>
<ul class="card-category-list" id="aside-cat-list">
<li class="card-category-list-item "><a class="card-category-list-link" href="/categories/FC24/"><span class="card-category-list-name">FC24</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/OS%E5%AE%9E%E9%AA%8C%E6%A3%80%E6%9F%A5/"><span class="card-category-list-name">OS实验检查</span><span class="card-category-list-count">1</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/leetcode/"><span class="card-category-list-name">leetcode</span><span class="card-category-list-count">2</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E4%BB%A3%E7%A0%81%E8%A1%A5%E5%85%A8/"><span class="card-category-list-name">代码补全</span><span class="card-category-list-count">2</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E5%81%9A%E7%82%B9%E5%A5%BD%E7%8E%A9%E7%9A%84/"><span class="card-category-list-name">做点好玩的</span><span class="card-category-list-count">2</span></a></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/"><span class="card-category-list-name">操作系统</span><span class="card-category-list-count">6</span></a><ul class="card-category-list child"><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/%E8%AF%BE%E7%A8%8B%E4%BD%9C%E4%B8%9A/"><span class="card-category-list-name">课程作业</span><span class="card-category-list-count">2</span></a></li></ul></li><li class="card-category-list-item "><a class="card-category-list-link" href="/categories/%E6%95%B0%E6%8D%AE%E7%AE%A1%E7%90%86%E5%9F%BA%E7%A1%80/"><span class="card-category-list-name">数据管理基础</span><span class="card-category-list-count">3</span></a></li>
</ul></div><div class="card-widget card-tags"><div class="item-headline"><i class="fas fa-tags"></i><span>标签</span></div><div class="card-tag-cloud"><a href="/tags/%E6%A0%91/" style="font-size: 1.1em; color: #999">树</a> <a href="/tags/leetcode/" style="font-size: 1.18em; color: #999ca1">leetcode</a> <a href="/tags/%E7%BC%96%E8%AF%91%E5%8E%9F%E7%90%86/" style="font-size: 1.5em; color: #99a9bf">编译原理</a> <a href="/tags/BM25/" style="font-size: 1.1em; color: #999">BM25</a> <a href="/tags/DevOps/" style="font-size: 1.1em; color: #999">DevOps</a> <a href="/tags/NLP/" style="font-size: 1.1em; color: #999">NLP</a> <a href="/tags/FC24/" style="font-size: 1.1em; color: #999">FC24</a> <a href="/tags/DT/" style="font-size: 1.26em; color: #999fa8">DT</a> <a href="/tags/%E6%B3%B0%E5%B1%B1/" style="font-size: 1.1em; color: #999">泰山</a> <a href="/tags/%E4%BD%93%E7%B3%BB%E7%BB%93%E6%9E%84/" style="font-size: 1.1em; color: #999">体系结构</a> <a href="/tags/%E6%95%B0%E6%8D%AE%E5%BA%93/" style="font-size: 1.1em; color: #999">数据库</a> <a href="/tags/Transformer/" style="font-size: 1.1em; color: #999">Transformer</a> <a href="/tags/LLM/" style="font-size: 1.1em; color: #999">LLM</a> <a href="/tags/%E8%AF%BE%E7%A8%8B%E5%AE%9E%E9%AA%8C/" style="font-size: 1.18em; color: #999ca1">课程实验</a> <a href="/tags/%E7%A7%BB%E5%8A%A8%E4%BA%92%E8%81%94%E7%BD%91%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B/" style="font-size: 1.1em; color: #999">移动互联网软件工程</a> <a href="/tags/%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F/" style="font-size: 1.34em; color: #99a3b0">操作系统</a> <a href="/tags/%E6%91%B8%E5%A5%96/" style="font-size: 1.1em; color: #999">摸奖</a> <a href="/tags/GO/" style="font-size: 1.18em; color: #999ca1">GO</a> <a href="/tags/%E5%89%A7%E8%AF%84/" style="font-size: 1.1em; color: #999">剧评</a> <a href="/tags/%E8%BD%AF%E4%BB%B6%E7%B3%BB%E7%BB%9F%E8%AE%BE%E8%AE%A1/" style="font-size: 1.1em; color: #999">软件系统设计</a> <a href="/tags/%E9%99%B6%E5%96%86/" style="font-size: 1.26em; color: #999fa8">陶喆</a> <a href="/tags/%E9%9F%B3%E4%B9%90/" style="font-size: 1.18em; color: #999ca1">音乐</a> <a href="/tags/%E7%99%BB%E5%B1%B1/" style="font-size: 1.1em; color: #999">登山</a> <a href="/tags/Code-completion/" style="font-size: 1.1em; color: #999">Code completion</a> <a href="/tags/langChain/" style="font-size: 1.1em; color: #999">langChain</a> <a href="/tags/%E8%AF%BE%E7%A8%8B%E4%BD%9C%E4%B8%9A/" style="font-size: 1.1em; color: #999">课程作业</a> <a href="/tags/%E5%B5%8C%E5%85%A5%E5%BC%8F/" style="font-size: 1.1em; color: #999">嵌入式</a> <a href="/tags/%E6%95%B0%E6%8D%AE%E7%AE%A1%E7%90%86%E5%9F%BA%E7%A1%80/" style="font-size: 1.26em; color: #999fa8">数据管理基础</a> <a href="/tags/%E8%BD%AF%E4%BB%B6%E5%B7%A5%E7%A8%8B%E4%B8%93%E4%B8%9A%E8%AF%BE/" style="font-size: 1.42em; color: #99a6b7">软件工程专业课</a> <a href="/tags/%E6%9C%9F%E6%9C%AB%E5%A4%8D%E4%B9%A0/" style="font-size: 1.1em; color: #999">期末复习</a> <a href="/tags/Code-Completion/" style="font-size: 1.1em; color: #999">Code Completion</a> <a href="/tags/SoulPower/" style="font-size: 1.1em; color: #999">SoulPower</a> <a href="/tags/%E6%8D%A2%E8%84%B8/" style="font-size: 1.1em; color: #999">换脸</a> <a href="/tags/%E7%AC%94%E8%AF%95/" style="font-size: 1.18em; color: #999ca1">笔试</a> <a href="/tags/OS/" style="font-size: 1.1em; color: #999">OS</a> <a href="/tags/tree-sitter/" style="font-size: 1.1em; color: #999">tree-sitter</a> <a href="/tags/%E5%9B%BE/" style="font-size: 1.1em; color: #999">图</a> <a href="/tags/%E5%A0%86/" style="font-size: 1.1em; color: #999">堆</a></div></div><div class="card-widget card-archives"><div class="item-headline"><i class="fas fa-archive"></i><span>归档</span><a class="card-more-btn" href="/archives/" title="查看更多">
<i class="fas fa-angle-right"></i></a></div><ul class="card-archive-list"><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2025/06/"><span class="card-archive-list-date">六月 2025</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/10/"><span class="card-archive-list-date">十月 2024</span><span class="card-archive-list-count">1</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/07/"><span class="card-archive-list-date">七月 2024</span><span class="card-archive-list-count">3</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/06/"><span class="card-archive-list-date">六月 2024</span><span class="card-archive-list-count">3</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/05/"><span class="card-archive-list-date">五月 2024</span><span class="card-archive-list-count">4</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/04/"><span class="card-archive-list-date">四月 2024</span><span class="card-archive-list-count">5</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/03/"><span class="card-archive-list-date">三月 2024</span><span class="card-archive-list-count">3</span></a></li><li class="card-archive-list-item"><a class="card-archive-list-link" href="/archives/2024/01/"><span class="card-archive-list-date">一月 2024</span><span class="card-archive-list-count">2</span></a></li></ul></div><div class="card-widget card-webinfo"><div class="item-headline"><i class="fas fa-chart-line"></i><span>网站资讯</span></div><div class="webinfo"><div class="webinfo-item"><div class="item-name">文章数目 :</div><div class="item-count">49</div></div><div class="webinfo-item"><div class="item-name">本站总字数 :</div><div class="item-count">134.1k</div></div><div class="webinfo-item"><div class="item-name">本站访客数 :</div><div class="item-count" id="busuanzi_value_site_uv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">本站总访问量 :</div><div class="item-count" id="busuanzi_value_site_pv"><i class="fa-solid fa-spinner fa-spin"></i></div></div><div class="webinfo-item"><div class="item-name">最后更新时间 :</div><div class="item-count" id="last-push-date" data-lastPushDate="2025-06-19T15:03:49.829Z"><i class="fa-solid fa-spinner fa-spin"></i></div></div></div></div></div></div></main><footer id="footer"><div id="footer-wrap"><div class="copyright">©2020 - 2025 By Rain Sun</div><div class="framework-info"><span>框架 </span><a target="_blank" rel="noopener" href="https://hexo.io">Hexo</a><span class="footer-separator">|</span><span>主题 </span><a target="_blank" rel="noopener" href="https://github.com/jerryc127/hexo-theme-butterfly">Butterfly</a></div></div></footer></div><div id="rightside"><div id="rightside-config-hide"><button id="darkmode" type="button" title="浅色和深色模式转换"><i class="fas fa-adjust"></i></button><button id="hide-aside-btn" type="button" title="单栏和双栏切换"><i class="fas fa-arrows-alt-h"></i></button></div><div id="rightside-config-show"><button id="rightside_config" type="button" title="设置"><i class="fas fa-cog fa-spin"></i></button><button id="go-up" type="button" title="回到顶部"><span class="scroll-percent"></span><i class="fas fa-arrow-up"></i></button></div></div><div><script src="/js/utils.js"></script><script src="/js/main.js"></script><script src="https://cdn.jsdelivr.net/npm/@fancyapps/ui/dist/fancybox.umd.min.js"></script><script src="https://cdn.jsdelivr.net/npm/vanilla-lazyload/dist/lazyload.iife.min.js"></script><div class="js-pjax"><script>window.typedJSFn = {
init: (str) => {
window.typed = new Typed('#subtitle', Object.assign({
strings: str,
startDelay: 300,
typeSpeed: 150,
loop: true,
backSpeed: 50,
}, null))
},
run: (subtitleType) => {
if (true) {
if (typeof Typed === 'function') {
subtitleType()
} else {
getScript('https://cdn.jsdelivr.net/npm/typed.js/lib/typed.min.js').then(subtitleType)
}
} else {
subtitleType()
}
}
}
</script><script>function subtitleType () {
getScript('https://sdk.jinrishici.com/v2/browser/jinrishici.js').then(() => {
jinrishici.load(result =>{
if (true) {
const sub = []
const content = result.data.content
sub.unshift(content)
typedJSFn.init(sub)
} else {
document.getElementById('subtitle').innerHTML = result.data.content
}
})
})
}
typedJSFn.run(subtitleType)
</script></div><div class="aplayer no-destroy" data-id="8251277445" data-server="netease" data-type="playlist" data-fixed="true" data-autoplay="false" data-lrcType="-1"> </div><canvas class="fireworks" mobile="false"></canvas><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc/dist/fireworks.min.js"></script><script defer="defer" id="fluttering_ribbon" mobile="true" src="https://cdn.jsdelivr.net/npm/butterfly-extsrc/dist/canvas-fluttering-ribbon.min.js"></script><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc/dist/activate-power-mode.min.js"></script><script>POWERMODE.colorful = true;
POWERMODE.shake = false;
POWERMODE.mobile = false;
document.body.addEventListener('input', POWERMODE);
</script><link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.css" media="print" onload="this.media='all'"><script src="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.js"></script><script src="https://cdn.jsdelivr.net/npm/butterfly-extsrc/metingjs/dist/Meting.min.js"></script><script src="https://cdn.jsdelivr.net/npm/pjax/pjax.min.js"></script><script>let pjaxSelectors = ["head > title","#config-diff","#body-wrap","#rightside-config-hide","#rightside-config-show",".js-pjax"]
var pjax = new Pjax({
elements: 'a:not([target="_blank"])',
selectors: pjaxSelectors,
cacheBust: false,
analytics: false,
scrollRestoration: false
})
document.addEventListener('pjax:send', function () {
// removeEventListener scroll
window.tocScrollFn && window.removeEventListener('scroll', window.tocScrollFn)
window.scrollCollect && window.removeEventListener('scroll', scrollCollect)
document.getElementById('rightside').style.cssText = "opacity: ''; transform: ''"
if (window.aplayers) {
for (let i = 0; i < window.aplayers.length; i++) {
if (!window.aplayers[i].options.fixed) {
window.aplayers[i].destroy()
}
}
}
typeof typed === 'object' && typed.destroy()
//reset readmode
const $bodyClassList = document.body.classList
$bodyClassList.contains('read-mode') && $bodyClassList.remove('read-mode')
typeof disqusjs === 'object' && disqusjs.destroy()
})
document.addEventListener('pjax:complete', function () {
window.refreshFn()
document.querySelectorAll('script[data-pjax]').forEach(item => {
const newScript = document.createElement('script')
const content = item.text || item.textContent || item.innerHTML || ""
Array.from(item.attributes).forEach(attr => newScript.setAttribute(attr.name, attr.value))
newScript.appendChild(document.createTextNode(content))
item.parentNode.replaceChild(newScript, item)
})
GLOBAL_CONFIG.islazyload && window.lazyLoadInstance.update()
typeof chatBtnFn === 'function' && chatBtnFn()
typeof panguInit === 'function' && panguInit()
// google analytics
typeof gtag === 'function' && gtag('config', '', {'page_path': window.location.pathname});
// baidu analytics
typeof _hmt === 'object' && _hmt.push(['_trackPageview',window.location.pathname]);
typeof loadMeting === 'function' && document.getElementsByClassName('aplayer').length && loadMeting()
// prismjs
typeof Prism === 'object' && Prism.highlightAll()
})
document.addEventListener('pjax:error', (e) => {
if (e.request.status === 404) {
pjax.loadUrl('/404.html')
}
})</script><script async data-pjax src="//busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script></div></body></html><div id="sakana-widget" style="position:fixed;bottom:0px;right:0px;"></div><script>function initSakanaWidget() {
new SakanaWidget().mount('#sakana-widget');
}</script><script async="" onload="initSakanaWidget()" src="https://cdn.jsdelivr.net/npm/sakana-widget@2.2.1/lib/sakana.min.js"></script>