let timeJsonArray = []; let result = []; //放置结果的数组 let allDom = $('#table1 .timetable_con'); //变量allDom作为选择器选择id为table1 class类为timetable_con for (let u = 0; u < allDom.length; u++) { //for循环遍历allDom let re = { sections: [], weeks: [] } let aaa = $(allDom[u]).find('span') let week = $(allDom[u]).parent('td')[0].attribs.id //获取当前第几周 if (week) { re.day = week.split('-')[0] //获取当前是周几,分词然后获取第一个内容 } for (let i = 0; i < aaa.length; i++) { // 获取上课地点 if (aaa[i].attribs.title == '上课地点') {
for (let j = 0; j < $(aaa[i]).next()[0].children.length; j++) {
let lesson = $(aaa[i]).next()[0].children[j].data // console.log("lesson为"+lesson) for (let a = Number(lesson.split(')')[0].split('(')[1].split('-')[0]); a < Number(lesson.split(')')[0].split('(')[1].split('-')[1].split('节')[0]) + 1; a++) { // console.log("a1为"+a) re.sections.push({ section: a }) }
//一个学期上上课的周数 if (lesson.length == 20) {
for (let a = Number(lesson.split(')')[1].split('-')[0]); a < Number(lesson.split(')')[2].split('-')[1].split('周')[0]) + 1; a++) {
re.weeks.push(a) }
} elseif (lesson.length == 15) {
for (let a = Number(lesson.split(')')[1].split('-')[0]); a < Number(lesson.split(')')[1].split('-')[1].split('周')[0]) + 1; a++) {
let evenNum = a; if (evenNum % 2 == 0) { re.weeks.push(evenNum) }
}
} else {
for (let a = Number(lesson.split(')')[1].split('-')[0]); a < Number(lesson.split(')')[1].split('-')[1].split('周')[0]) + 1; a++) {
re.weeks.push(a) } }
} } //获取授课教师姓名 if (aaa[i].attribs.title == '教师') {
sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main@' $PREFIX/etc/apt/sources.list
sed -i 's@^\(deb.*games stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/game-packages-24 games stable@' $PREFIX/etc/apt/sources.list.d/game.list
sed -i 's@^\(deb.*science stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/science-packages-24 science stable@' $PREFIX/etc/apt/sources.list.d/science.list
+`}tablecell(t,n){const r=n.header?"th":"td";return(n.align?`<${r} align="${n.align}">`:`<${r}>`)+t+`${r}>
+`}strong(t){return`${t}`}em(t){return`${t}`}codespan(t){return`${t}`}br(){return" "}del(t){return`${t}`}link(t,n,r){const i=yl(t);if(i===null)return r;t=i;let l='"+r+"",l}image(t,n,r){const i=yl(t);if(i===null)return r;t=i;let l=`",l}text(t){return t}}class Ei{strong(t){return t}em(t){return t}codespan(t){return t}del(t){return t}html(t){return t}text(t){return t}link(t,n,r){return""+r}image(t,n,r){return""+r}br(){return""}}class Ye{options;renderer;textRenderer;constructor(t){this.options=t||It,this.options.renderer=this.options.renderer||new ar,this.renderer=this.options.renderer,this.renderer.options=this.options,this.textRenderer=new Ei}static parse(t,n){return new Ye(n).parse(t)}static parseInline(t,n){return new Ye(n).parseInline(t)}parse(t,n=!0){let r="";for(let i=0;i0&&h.tokens[0].type==="paragraph"?(h.tokens[0].text=S+" "+h.tokens[0].text,h.tokens[0].tokens&&h.tokens[0].tokens.length>0&&h.tokens[0].tokens[0].type==="text"&&(h.tokens[0].tokens[0].text=S+" "+h.tokens[0].tokens[0].text)):h.tokens.unshift({type:"text",text:S+" "}):k+=S+" "}k+=this.parse(h.tokens,c),f+=this.renderer.listitem(k,$,!!m)}r+=this.renderer.list(f,o,a);continue}case"html":{const s=l;r+=this.renderer.html(s.text,s.block);continue}case"paragraph":{const s=l;r+=this.renderer.paragraph(this.parseInline(s.tokens));continue}case"text":{let s=l,o=s.tokens?this.parseInline(s.tokens):s.text;for(;i+1{const o=l[s].flat(1/0);r=r.concat(this.walkTokens(o,n))}):l.tokens&&(r=r.concat(this.walkTokens(l.tokens,n)))}}return r}use(...t){const n=this.defaults.extensions||{renderers:{},childTokens:{}};return t.forEach(r=>{const i={...r};if(i.async=this.defaults.async||i.async||!1,r.extensions&&(r.extensions.forEach(l=>{if(!l.name)throw new Error("extension name required");if("renderer"in l){const s=n.renderers[l.name];s?n.renderers[l.name]=function(...o){let a=l.renderer.apply(this,o);return a===!1&&(a=s.apply(this,o)),a}:n.renderers[l.name]=l.renderer}if("tokenizer"in l){if(!l.level||l.level!=="block"&&l.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");const s=n[l.level];s?s.unshift(l.tokenizer):n[l.level]=[l.tokenizer],l.start&&(l.level==="block"?n.startBlock?n.startBlock.push(l.start):n.startBlock=[l.start]:l.level==="inline"&&(n.startInline?n.startInline.push(l.start):n.startInline=[l.start]))}"childTokens"in l&&l.childTokens&&(n.childTokens[l.name]=l.childTokens)}),i.extensions=n),r.renderer){const l=this.defaults.renderer||new ar(this.defaults);for(const s in r.renderer){if(!(s in l))throw new Error(`renderer '${s}' does not exist`);if(s==="options")continue;const o=s,a=r.renderer[o],c=l[o];l[o]=(...f)=>{let p=a.apply(l,f);return p===!1&&(p=c.apply(l,f)),p||""}}i.renderer=l}if(r.tokenizer){const l=this.defaults.tokenizer||new sr(this.defaults);for(const s in r.tokenizer){if(!(s in l))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;const o=s,a=r.tokenizer[o],c=l[o];l[o]=(...f)=>{let p=a.apply(l,f);return p===!1&&(p=c.apply(l,f)),p}}i.tokenizer=l}if(r.hooks){const l=this.defaults.hooks||new Zn;for(const s in r.hooks){if(!(s in l))throw new Error(`hook '${s}' does not exist`);if(s==="options")continue;const o=s,a=r.hooks[o],c=l[o];Zn.passThroughHooks.has(s)?l[o]=f=>{if(this.defaults.async)return Promise.resolve(a.call(l,f)).then(h=>c.call(l,h));const p=a.call(l,f);return c.call(l,p)}:l[o]=(...f)=>{let p=a.apply(l,f);return p===!1&&(p=c.apply(l,f)),p}}i.hooks=l}if(r.walkTokens){const l=this.defaults.walkTokens,s=r.walkTokens;i.walkTokens=function(o){let a=[];return a.push(s.call(this,o)),l&&(a=a.concat(l.call(this,o))),a}}this.defaults={...this.defaults,...i}}),this}setOptions(t){return this.defaults={...this.defaults,...t},this}lexer(t,n){return Qe.lex(t,n??this.defaults)}parser(t,n){return Ye.parse(t,n??this.defaults)}#e(t,n){return(r,i)=>{const l={...i},s={...this.defaults,...l};this.defaults.async===!0&&l.async===!1&&(s.silent||console.warn("marked(): The async option was set to true by an extension. The async: false option sent to parse will be ignored."),s.async=!0);const o=this.#t(!!s.silent,!!s.async);if(typeof r>"u"||r===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof r!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(r)+", string expected"));if(s.hooks&&(s.hooks.options=s),s.async)return Promise.resolve(s.hooks?s.hooks.preprocess(r):r).then(a=>t(a,s)).then(a=>s.hooks?s.hooks.processAllTokens(a):a).then(a=>s.walkTokens?Promise.all(this.walkTokens(a,s.walkTokens)).then(()=>a):a).then(a=>n(a,s)).then(a=>s.hooks?s.hooks.postprocess(a):a).catch(o);try{s.hooks&&(r=s.hooks.preprocess(r));let a=t(r,s);s.hooks&&(a=s.hooks.processAllTokens(a)),s.walkTokens&&this.walkTokens(a,s.walkTokens);let c=n(a,s);return s.hooks&&(c=s.hooks.postprocess(c)),c}catch(a){return o(a)}}}#t(t,n){return r=>{if(r.message+=`
+Please report this to https://github.com/markedjs/marked.`,t){const i="
An error occurred:
"+Me(r.message+"",!0)+"
";return n?Promise.resolve(i):i}if(n)return Promise.reject(r);throw r}}}const $t=new so;function ce(e,t){return $t.parse(e,t)}ce.options=ce.setOptions=function(e){return $t.setOptions(e),ce.defaults=$t.defaults,Qs(ce.defaults),ce};ce.getDefaults=yi;ce.defaults=It;ce.use=function(...e){return $t.use(...e),ce.defaults=$t.defaults,Qs(ce.defaults),ce};ce.walkTokens=function(e,t){return $t.walkTokens(e,t)};ce.parseInline=$t.parseInline;ce.Parser=Ye;ce.parser=Ye.parse;ce.Renderer=ar;ce.TextRenderer=Ei;ce.Lexer=Qe;ce.lexer=Qe.lex;ce.Tokenizer=sr;ce.Hooks=Zn;ce.parse=ce;ce.options;ce.setOptions;ce.use;ce.walkTokens;ce.parseInline;Ye.parse;Qe.lex;function af(e){if(typeof e=="function"&&(e={highlight:e}),!e||typeof e.highlight!="function")throw new Error("Must provide highlight function");return typeof e.langPrefix!="string"&&(e.langPrefix="language-"),{async:!!e.async,walkTokens(t){if(t.type!=="code")return;const n=kl(t.lang);if(e.async)return Promise.resolve(e.highlight(t.text,n,t.lang||"")).then(xl(t));const r=e.highlight(t.text,n,t.lang||"");if(r instanceof Promise)throw new Error("markedHighlight is not set to async but the highlight function is async. Set the async option to true on markedHighlight to await the async highlight function.");xl(t)(r)},renderer:{code(t,n,r){const i=kl(n),l=i?` class="${e.langPrefix}${Cl(i)}"`:"";return t=t.replace(/\n$/,""),`
${r?t:Cl(t,!0)}
+
`}}}}function kl(e){return(e||"").match(/\S*/)[0]}function xl(e){return t=>{typeof t=="string"&&t!==e.text&&(e.escaped=!0,e.text=t)}}const oo=/[&<>"']/,cf=new RegExp(oo.source,"g"),ao=/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,uf=new RegExp(ao.source,"g"),ff={"&":"&","<":"<",">":">",'"':""","'":"'"},El=e=>ff[e];function Cl(e,t){if(t){if(oo.test(e))return e.replace(cf,El)}else if(ao.test(e))return e.replace(uf,El);return e}var co={},Dt={},Rn={},df=Qn&&Qn.__awaiter||function(e,t,n,r){function i(l){return l instanceof n?l:new n(function(s){s(l)})}return new(n||(n=Promise))(function(l,s){function o(f){try{c(r.next(f))}catch(p){s(p)}}function a(f){try{c(r.throw(f))}catch(p){s(p)}}function c(f){f.done?l(f.value):i(f.value).then(o,a)}c((r=r.apply(e,t||[])).next())})},hf=Qn&&Qn.__generator||function(e,t){var n={label:0,sent:function(){if(l[0]&1)throw l[1];return l[1]},trys:[],ops:[]},r,i,l,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(c){return function(f){return a([c,f])}}function a(c){if(r)throw new TypeError("Generator is already executing.");for(;n;)try{if(r=1,i&&(l=c[0]&2?i.return:c[0]?i.throw||((l=i.return)&&l.call(i),0):i.next)&&!(l=l.call(i,c[1])).done)return l;switch(i=0,l&&(c=[c[0]&2,l.value]),c[0]){case 0:case 1:l=c;break;case 4:return n.label++,{value:c[1],done:!1};case 5:n.label++,i=c[1],c=[0];continue;case 7:c=n.ops.pop(),n.trys.pop();continue;default:if(l=n.trys,!(l=l.length>0&&l[l.length-1])&&(c[0]===6||c[0]===2)){n=0;continue}if(c[0]===3&&(!l||c[1]>l[0]&&c[1]"u")return Promise.reject(new Error("This is a library for the browser!"));if(e.getLoadingState()===ft.LOADED)return e.instance.getSiteKey()===t?Promise.resolve(e.instance):Promise.reject(new Error("reCAPTCHA already loaded with different site key!"));if(e.getLoadingState()===ft.LOADING)return t!==e.instanceSiteKey?Promise.reject(new Error("reCAPTCHA already loaded with different site key!")):new Promise(function(i,l){e.successfulLoadingConsumers.push(function(s){return i(s)}),e.errorLoadingRunnable.push(function(s){return l(s)})});e.instanceSiteKey=t,e.setLoadingState(ft.LOADING);var r=new e;return new Promise(function(i,l){r.loadScript(t,n.useRecaptchaNet||!1,n.useEnterprise||!1,n.renderParameters?n.renderParameters:{},n.customUrl).then(function(){e.setLoadingState(ft.LOADED);var s=r.doExplicitRender(grecaptcha,t,n.explicitRenderParameters?n.explicitRenderParameters:{},n.useEnterprise||!1),o=new gf.ReCaptchaInstance(t,s,grecaptcha);e.successfulLoadingConsumers.forEach(function(a){return a(o)}),e.successfulLoadingConsumers=[],n.autoHideBadge&&o.hideBadge(),e.instance=o,i(o)}).catch(function(s){e.errorLoadingRunnable.forEach(function(o){return o(s)}),e.errorLoadingRunnable=[],l(s)})})},e.getInstance=function(){return e.instance},e.setLoadingState=function(t){e.loadingState=t},e.getLoadingState=function(){return e.loadingState===null?ft.NOT_LOADED:e.loadingState},e.prototype.loadScript=function(t,n,r,i,l){var s=this;n===void 0&&(n=!1),r===void 0&&(r=!1),i===void 0&&(i={}),l===void 0&&(l="");var o=document.createElement("script");o.setAttribute("recaptcha-v3-script","");var a="https://www.google.com/recaptcha/api.js";n&&(r?a="https://recaptcha.net/recaptcha/enterprise.js":a="https://recaptcha.net/recaptcha/api.js"),r&&(a="https://www.google.com/recaptcha/enterprise.js"),l&&(a=l),i.render&&(i.render=void 0);var c=this.buildQueryString(i);return o.src=a+"?render=explicit"+c,new Promise(function(f,p){o.addEventListener("load",s.waitForScriptToLoad(function(){f(o)},r),!1),o.onerror=function(h){e.setLoadingState(ft.NOT_LOADED),p(h)},document.head.appendChild(o)})},e.prototype.buildQueryString=function(t){var n=Object.keys(t);return n.length<1?"":"&"+Object.keys(t).filter(function(r){return!!t[r]}).map(function(r){return r+"="+t[r]}).join("&")},e.prototype.waitForScriptToLoad=function(t,n){var r=this;return function(){window.grecaptcha===void 0?setTimeout(function(){r.waitForScriptToLoad(t,n)},e.SCRIPT_LOAD_DELAY):n?window.grecaptcha.enterprise.ready(function(){t()}):window.grecaptcha.ready(function(){t()})}},e.prototype.doExplicitRender=function(t,n,r,i){var l={sitekey:n,badge:r.badge,size:r.size,tabindex:r.tabindex};return r.container?i?t.enterprise.render(r.container,l):t.render(r.container,l):i?t.enterprise.render(l):t.render(l)},e.loadingState=null,e.instance=null,e.instanceSiteKey=null,e.successfulLoadingConsumers=[],e.errorLoadingRunnable=[],e.SCRIPT_LOAD_DELAY=25,e}();Dt.load=uo.load;Dt.getInstance=uo.getInstance;(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ReCaptchaInstance=e.getInstance=e.load=void 0;var t=Dt;Object.defineProperty(e,"load",{enumerable:!0,get:function(){return t.load}}),Object.defineProperty(e,"getInstance",{enumerable:!0,get:function(){return t.getInstance}});var n=Rn;Object.defineProperty(e,"ReCaptchaInstance",{enumerable:!0,get:function(){return n.ReCaptchaInstance}})})(co);const mf=["nick","mail","link"],Sl=e=>e.filter(t=>mf.includes(t)),Tl=["//unpkg.com/@waline/emojis@1.1.0/weibo"],vf=["//unpkg.com/@waline/emojis/tieba/tieba_agree.png","//unpkg.com/@waline/emojis/tieba/tieba_look_down.png","//unpkg.com/@waline/emojis/tieba/tieba_sunglasses.png","//unpkg.com/@waline/emojis/tieba/tieba_pick_nose.png","//unpkg.com/@waline/emojis/tieba/tieba_awkward.png","//unpkg.com/@waline/emojis/tieba/tieba_sleep.png"],yf=e=>new Promise((t,n)=>{if(e.size>128*1e3)return n(new Error("File too large! File size limit 128KB"));const r=new FileReader;r.readAsDataURL(e),r.onload=()=>{var i;return t(((i=r.result)==null?void 0:i.toString())||"")},r.onerror=n}),bf=e=>e===!0?'
sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main@' $PREFIX/etc/apt/sources.list
sed -i 's@^\(deb.*games stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/game-packages-24 games stable@' $PREFIX/etc/apt/sources.list.d/game.list
sed -i 's@^\(deb.*science stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/science-packages-24 science stable@' $PREFIX/etc/apt/sources.list.d/science.list
let timeJsonArray = []; let result = []; //放置结果的数组 let allDom = $('#table1 .timetable_con'); //变量allDom作为选择器选择id为table1 class类为timetable_con for (let u = 0; u < allDom.length; u++) { //for循环遍历allDom let re = { sections: [], weeks: [] } let aaa = $(allDom[u]).find('span') let week = $(allDom[u]).parent('td')[0].attribs.id //获取当前第几周 if (week) { re.day = week.split('-')[0] //获取当前是周几,分词然后获取第一个内容 } for (let i = 0; i < aaa.length; i++) { // 获取上课地点 if (aaa[i].attribs.title == '上课地点') {
for (let j = 0; j < $(aaa[i]).next()[0].children.length; j++) {
let lesson = $(aaa[i]).next()[0].children[j].data // console.log("lesson为"+lesson) for (let a = Number(lesson.split(')')[0].split('(')[1].split('-')[0]); a < Number(lesson.split(')')[0].split('(')[1].split('-')[1].split('节')[0]) + 1; a++) { // console.log("a1为"+a) re.sections.push({ section: a }) }
//一个学期上上课的周数 if (lesson.length == 20) {
for (let a = Number(lesson.split(')')[1].split('-')[0]); a < Number(lesson.split(')')[2].split('-')[1].split('周')[0]) + 1; a++) {
re.weeks.push(a) }
} elseif (lesson.length == 15) {
for (let a = Number(lesson.split(')')[1].split('-')[0]); a < Number(lesson.split(')')[1].split('-')[1].split('周')[0]) + 1; a++) {
let evenNum = a; if (evenNum % 2 == 0) { re.weeks.push(evenNum) }
}
} else {
for (let a = Number(lesson.split(')')[1].split('-')[0]); a < Number(lesson.split(')')[1].split('-')[1].split('周')[0]) + 1; a++) {
re.weeks.push(a) } }
} } //获取授课教师姓名 if (aaa[i].attribs.title == '教师') {
你应该避免在 Markdown 正文中重复创建文章标题,因为文章标题会根据 frontmatter 中 title 自动生成。
+
+
避免标题层级过深,一般到三级标题就够了。
+
+
一级
+
二级
+
三级 inline code
+
四级
+
五级
+
六级
+
段落
+
Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.
+
使用行尾使用两个空格进行段落内的换行
+
All work and no play makes Jack a dull boy.
+All work and no play makes Jack a dull boy.
+
图片
+
小尺寸的图片
+
+
大尺寸的图片
+
+
带标题的图片
+图片标题
+
强调
+
这是重要内容,这是次要内容
+
删除线
+
这是一段被删除的文本。
+
引用
+
The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a footer or cite element, and optionally with in-line changes such as annotations and abbreviations.
+
+
Tiam, ad mint andaepu dandae nostion secatur sequo quae.
+Note that you can use Markdown syntax within a blockquote.
+
+
嵌套的引用
+
+
引用
+
+
嵌套的引用
+
+
+
带脚标的引用
+
+
Don't communicate by sharing memory, share memory by communicating.
+— Rob Pike1
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Phasellus ultricies, sapien non euismod aliquam, dui ligula tincidunt odio, at accumsan nulla sapien eget ex.
Proin eleifend dictum ipsum, non euismod ipsum pulvinar et. Vivamus sollicitudin, quam in pulvinar aliquam, metus elit pretium purus
Proin sit amet velit nec enim imperdiet vehicula.
Ut bibendum vestibulum quam, eu egestas turpis gravida nec
Sed scelerisque nec turpis vel viverra. Vivamus vitae pretium sapien
+
代码块
+
Syntax
+
we can use 3 backticks ``` in new line and write snippet and close with 3 backticks on new line and to highlight language specific syntac, write one word of language name after first 3 backticks, for eg. html, javascript, css, markdown, typescript, txt, bash
- Fruit
+ - Apple
+ - Orange
+ - Banana
+- Dairy
+ - Milk
+ - Cheese
+
+
Output
+
+
Fruit
+
+
Apple
+
Orange
+
Banana
+
+
+
Dairy
+
+
Milk
+
Cheese
+
+
+
+
Other Elements — abbr, sub, sup, kbd, mark
+
Syntax
+
markdown
<abbr title="Graphics Interchange Format">GIF</abbr> is a bitmap image format.
+
+H<sub>2</sub>O
+
+X<sup>n</sup> + Y<sup>n</sup> = Z<sup>n</sup>
+
+Press <kbd><kbd>CTRL</kbd>+<kbd>ALT</kbd>+<kbd>Delete</kbd></kbd> to end the session.
+
+Most <mark>salamanders</mark> are nocturnal, and hunt for insects, worms, and other small creatures.
+
+
Output
+
GIF is a bitmap image format.
+
H2O
+
Xn + Yn = Zn
+
Press CTRL+ALT+Delete to end the session.
+
Most salamanders are nocturnal, and hunt for insects, worms, and other small creatures.
+
Spoiler
+
md
||hide content||
+
+
正常情况下,该内容会隐藏 hide content,鼠标悬浮时才会显示。
+
参考
+
+
+
The above quote is excerpted from Rob Pike's talk during Gopherfest, November 18, 2015. ↩
\ No newline at end of file
diff --git a/tags/video/index.html b/tags/video/index.html
new file mode 100644
index 0000000..59558ff
--- /dev/null
+++ b/tags/video/index.html
@@ -0,0 +1,12 @@
+ 标签 · Video - 满河星
+
+
+