<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Shopping on Ben&#39;s Blog</title>
    <link>https://jinpeng.cv/en/tags/shopping/</link>
    <description>Recent content in Shopping on Ben&#39;s Blog</description>
    <generator>Hugo -- 0.154.0</generator>
    <language>en</language>
    <copyright>©️ 2025 Ben</copyright>
    <lastBuildDate>Sun, 15 Mar 2026 22:54:18 -0600</lastBuildDate>
    <atom:link href="https://jinpeng.cv/en/tags/shopping/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>2026-03-14</title>
      <link>https://jinpeng.cv/en/diary/2026/march/2026-03-14/</link>
      <pubDate>Sat, 14 Mar 2026 22:34:12 -0600</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/march/2026-03-14/</guid>
      <description>&lt;p&gt;今天师兄约我出去大统华买菜。&lt;/p&gt;
&lt;p&gt;我们去了 winners 逛，师兄啥都没买，我买了一条 19.99 的短裤，和一个 19.99 健身包。这价格要啥自行车。&lt;/p&gt;
&lt;p&gt;然后我们去 Trip O&amp;rsquo;s 吃了好吃但是很贵的汉堡，这是一家加拿大本土的品牌。师兄说很少能在快餐店看到白人服务员。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>今天师兄约我出去大统华买菜。</p>
<p>我们去了 winners 逛，师兄啥都没买，我买了一条 19.99 的短裤，和一个 19.99 健身包。这价格要啥自行车。</p>
<p>然后我们去 Trip O&rsquo;s 吃了好吃但是很贵的汉堡，这是一家加拿大本土的品牌。师兄说很少能在快餐店看到白人服务员。</p>
<p>然后去大统华买了超级多的菜，师兄买啥我买啥。回来晚上吃了可多零食，又煮了泡面吃。</p>
]]></content:encoded>
    </item>
    <item>
      <title>2026-03-01</title>
      <link>https://jinpeng.cv/en/diary/2026/march/2026-03-01/</link>
      <pubDate>Sun, 01 Mar 2026 22:05:16 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/march/2026-03-01/</guid>
      <description>&lt;p&gt;Luis and I had a promise to buy some groceries at T&amp;amp;T. We bought a lot of snacks and groceries. I also treated him to try Zongzi and steam buns, he liked these. It was fun to hangout with him, because he knows how to respect each other and he is inocence.&lt;/p&gt;
&lt;p&gt;I went to Safeway for buying some food, but got nothing due to no properly discount.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Luis and I had a promise to buy some groceries at T&amp;T. We bought a lot of snacks and groceries. I also treated him to try Zongzi and steam buns, he liked these. It was fun to hangout with him, because he knows how to respect each other and he is inocence.</p>
<p>I went to Safeway for buying some food, but got nothing due to no properly discount.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2026-02-01</title>
      <link>https://jinpeng.cv/en/diary/2026/february/2026-02-01/</link>
      <pubDate>Sun, 01 Feb 2026 14:58:37 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/february/2026-02-01/</guid>
      <description>&lt;h3 id=&#34;-1500--optimized-obsidian-startup-speed&#34;&gt;🕒 15:00 | Optimized Obsidian Startup Speed&lt;/h3&gt;
&lt;p&gt;By disabling some plugins and delaying the startup of others, I successfully improved the startup speed of #Obsidian on my phone.&lt;/p&gt;
&lt;h3 id=&#34;-1504--tinkering-with-vim&#34;&gt;🕒 15:04 | Tinkering with Vim&lt;/h3&gt;
&lt;p&gt;I downloaded the nightly version of #Wezterm , and my terminal can now display images! However, there are still some minor issues affecting my #neovim workflow. At this point, one of the biggest reasons I want to buy a #MacBook is to have a perfect terminal environment for writing and note-taking.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h3 id="-1500--optimized-obsidian-startup-speed">🕒 15:00 | Optimized Obsidian Startup Speed</h3>
<p>By disabling some plugins and delaying the startup of others, I successfully improved the startup speed of #Obsidian on my phone.</p>
<h3 id="-1504--tinkering-with-vim">🕒 15:04 | Tinkering with Vim</h3>
<p>I downloaded the nightly version of #Wezterm , and my terminal can now display images! However, there are still some minor issues affecting my #neovim workflow. At this point, one of the biggest reasons I want to buy a #MacBook is to have a perfect terminal environment for writing and note-taking.</p>
<h3 id="-bought-a-pair-of-work-shoes">🥾 Bought a Pair of Work Shoes</h3>
<p>For safety reasons, we are required to have a pair of CSA-certified safety shoes.</p>
<p>Amir asked me to go shoe shopping last Thursday, but I didn&rsquo;t want to spend a workday shopping. He mentioned that if I went today at 2 PM, he could join me. Around 2 PM, I received a message from him asking to push it back to 3 PM. I didn&rsquo;t believe he’d actually be ready by 3 PM, so I told him I was going ahead without him. He then asked if I could just buy a size 8 for him, but since I also needed to get groceries, I declined.</p>
<p>This was the first time I asked for a student discount, and I got 10% off! Not bad at all.</p>
<h3 id="-walked-home">🚶 Walked Home</h3>
<p>Since I missed the bus, I decided to walk home. I stopped at Safeway on the way to buy some eggs and chicken 🍗.</p>
<p>I was feeling so hungry that I broiled all of the chicken and made a stir-fry with melon and pork. Hot meals always recharge my energy.</p>
<h3 id="-chezmoi-and-wezterm">🛠️ Chezmoi and Wezterm</h3>
<p>Today I tried Neovide, a GUI for #neovim. I really like its smooth animations. However, after trying the nightly #Wezterm and seeing that it supports image display, I gave up on Neovide immediately. That feature is a game-changer for me.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2026-01-17</title>
      <link>https://jinpeng.cv/en/diary/2026/january/2026-01-17/</link>
      <pubDate>Sat, 17 Jan 2026 21:41:14 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/january/2026-01-17/</guid>
      <description>&lt;p&gt;Today is Saturday. I &lt;strong&gt;woke up early&lt;/strong&gt; to video call Huan before she went to bed. I &lt;strong&gt;scolded her&lt;/strong&gt; a bit again because I feel she often &lt;strong&gt;represses her emotions&lt;/strong&gt; just to be a &amp;ldquo;good person.&amp;rdquo; I don&amp;rsquo;t think that’s healthy, especially between family and partners—it&amp;rsquo;s important to be honest about how we feel.&lt;/p&gt;
&lt;p&gt;After the call, I started working on my assignment. I’ve really come to &lt;strong&gt;enjoy using Quarto and LaTeX&lt;/strong&gt; to complete my homework; the results look very professional.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Today is Saturday. I <strong>woke up early</strong> to video call Huan before she went to bed. I <strong>scolded her</strong> a bit again because I feel she often <strong>represses her emotions</strong> just to be a &ldquo;good person.&rdquo; I don&rsquo;t think that’s healthy, especially between family and partners—it&rsquo;s important to be honest about how we feel.</p>
<p>After the call, I started working on my assignment. I’ve really come to <strong>enjoy using Quarto and LaTeX</strong> to complete my homework; the results look very professional.</p>
<p>The weather was so beautiful today that I decided to go for a walk. I found a <strong>park bench</strong> and called my parents. My mom mentioned she wanted to take a job planting trees all day for only <strong>60 RMB a day</strong>. I spent a long time trying to <strong>persuade her not to do it</strong>. She has spent her entire life working the soil, and I really want her to finally just <strong>relax and enjoy a peaceful life</strong>.</p>
<p>As it started to get dark, we hung up, and I stopped by <strong>Safeway</strong> to pick up some groceries.</p>
<p>On my way back, a man from <strong>Somalia</strong> struck up a conversation with me. It was a nice interaction, and it made me realize that I should <strong>head to the park or go for walks more frequently</strong> whenever the weather is this nice.</p>
]]></content:encoded>
    </item>
    <item>
      <title>2026-01-10</title>
      <link>https://jinpeng.cv/en/diary/2026/january/2026-01-10/</link>
      <pubDate>Sun, 11 Jan 2026 20:46:28 -0700</pubDate>
      <guid>https://jinpeng.cv/en/diary/2026/january/2026-01-10/</guid>
      <description>&lt;p&gt;I was on the phone with Huan this morning until almost 11:00 AM. Afterward, Dr. Zhao asked me to go &lt;strong&gt;grocery shopping&lt;/strong&gt; with him so we could head back to his place to cook.&lt;/p&gt;
&lt;p&gt;As usual, we &lt;strong&gt;wandered around the mall&lt;/strong&gt; for a bit and ended up having Mexican food again. Honestly, it &lt;strong&gt;wasn&amp;rsquo;t very good&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Later, Dr. Zhao prepared a &lt;strong&gt;huge spread of dishes&lt;/strong&gt; and invited two other friends over. After dinner, they were getting ready to watch a movie, but I decided to &lt;strong&gt;head home early&lt;/strong&gt;. I wanted to make a few phone calls and &lt;strong&gt;get some rest&lt;/strong&gt;.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I was on the phone with Huan this morning until almost 11:00 AM. Afterward, Dr. Zhao asked me to go <strong>grocery shopping</strong> with him so we could head back to his place to cook.</p>
<p>As usual, we <strong>wandered around the mall</strong> for a bit and ended up having Mexican food again. Honestly, it <strong>wasn&rsquo;t very good</strong>.</p>
<p>Later, Dr. Zhao prepared a <strong>huge spread of dishes</strong> and invited two other friends over. After dinner, they were getting ready to watch a movie, but I decided to <strong>head home early</strong>. I wanted to make a few phone calls and <strong>get some rest</strong>.</p>
<div class="encrypted-content" data-cipher="LuK5pep5LiK57uZ5qyi5qyi5omT55S16K&#43;d77yM5omT5Yiw5LqG5pep5LiK5b&#43;r5Y2B5LiA54K577yM5biI5YWE5Y&#43;r5oiR5LuK5aSp5ZKM5LuW5Y675Lmw5Lqb6I&#43;c44CC54S25ZCO5Y675LuW5a625YGa6aWt5ZCD44CCPC9wPgo8cD7nhafkvovpgJvkuobpgJvllYblnLrvvIzlj4jlho3kuIDmrKHlkIPloqjopb/lk6Xppa3jgILlubbkuI3lpb3lkIPjgII8L3A&#43;CjxwPueEtuWQjuW4iOWFhOWBmuS6huS4gOWkp&#43;ahjOWtkOiPnO&#43;8jOi/mOmCgOivt&#43;S6huS7luWPpuWkluS4pOS4quaci&#43;WPi&#43;OAgumlreWQjuS7luS7rOWHhuWkh&#43;eci&#43;eUteW9se&#43;8jOaIkeWHhuWkh&#43;WFiOWbnuadpeS6huS6huOAguaJk&#43;aJk&#43;eUteivne&#43;8jOaXqeeCueS8keaBr&#43;OAgjwvcD4KPHA&#43;55aSp" data-hint="Content Here is Encrypted" data-error="Password Error">
  <div class="locked-state">
    <p>🔒 Content Here is Encrypted</p>
    <div class="password-prompt">
      <div class="password-input-wrapper">
        <input type="password" class="password-input"
               placeholder="Please input password"
               id="pwd-input-0"
               aria-label="加密内容密码">
        <button type="button"
                class="toggle-visibility-btn"
                aria-pressed="false"
                aria-label="显示或隐藏密码"
                onclick="toggleVisibility(this, 'pwd-input-0')">
          <svg class="icon icon-eye-open" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M12 5C6 5 2 12 2 12s4 7 10 7 10-7 10-7-4-7-10-7Zm0 11a4 4 0 1 1 0-8 4 4 0 0 1 0 8Zm0-6a2 2 0 1 0 0 4 2 2 0 0 0 0-4Z"/>
          </svg>
          <svg class="icon icon-eye-closed" viewBox="0 0 24 24" aria-hidden="true">
            <path d="M3.5 4.5 2 6l3.2 3.2A13 13 0 0 0 2 12s4 7 10 7a9.7 9.7 0 0 0 4.7-1.2L18 19l2.5 2.5 1.5-1.5-18-18Zm8.5 12c-5.1 0-8-4-8-4a11 11 0 0 1 2.6-2.9l1.6 1.6a4 4 0 0 0 5.2 5.2l1.6 1.6A7.7 7.7 0 0 1 12 16.5Zm8-4.5a12.5 12.5 0 0 0-4.2-3.6l1.6-1.6A13.6 13.6 0 0 1 22 12s-1.1 2-3 4.1l-1.4-1.4A11.2 11.2 0 0 0 20 12Z"/>
          </svg>
        </button>
      </div>
      <button class="decrypt-btn" onclick="decryptContent(event, 'pwd-input-0')">
        Unlock
      </button>
    </div>
    <div class="status-message"></div>
  </div>
  <div class="decrypted-content markdown-body" hidden></div>
</div>



<style>
.encrypted-content {
  border: 1px solid #878787;
  border-radius: 0.5rem;
  padding: 1.5rem;
  margin: 1.5rem 0;
  transition: all 0.3s ease;
}

.encrypted-content.unlocked {
  border: none;
  padding: 0;
  margin: 0;
   
  background-image: radial-gradient(rgba(50, 0, 0, 0.1) 1px, transparent 0) !important;
  background-size: 10px 10px;
   
}

.password-prompt {
  display: flex;
  gap: 0.75rem;
  margin: 1rem 0;
}

.password-input-wrapper {
  position: relative;
  flex: 3;
}

.password-input {
  width: 100%;
  min-width: 150px;
  padding: 0.75rem;
  padding-right: 2.5rem;
  border: 1px solid #ddd;
  border-radius: 0.25rem;
}

.password-input.error {
  border-color: #dc3545;
}

.toggle-visibility-btn {
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  cursor: pointer;
  line-height: 0;
  padding: 0;
  color: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
}

.toggle-visibility-btn .icon {
  width: 1.25rem;
  height: 1.25rem;
  fill: currentColor;
}

.toggle-visibility-btn .icon-eye-closed {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-open {
  display: none;
}

.toggle-visibility-btn.is-visible .icon-eye-closed {
  display: block;
}

.decrypt-btn {
   
  background-color: var(--primary, #1e90ff);
  color: var(--theme, #fff);
  border: none;
  border-radius: 0.25rem;
  cursor: pointer;
  transition: opacity 0.3s;
  font-weight: 500;
  flex: 1;
}

.decrypt-btn:hover {
  opacity: 0.9;
}


.status-message {
  color: #6c757d;
  font-size: 0.9em;
  min-height: 1.2em;
}

.status-message.error {
  color: #dc3545;
}
</style>

<script>
  function toggleVisibility(btn, inputId) {
    const input = document.getElementById(inputId);
    const isPwd = input.type === 'password';
    input.type = isPwd ? 'text' : 'password';
    btn.setAttribute('aria-pressed', String(isPwd));
    btn.classList.toggle('is-visible', isPwd);
  }

  function decryptContent(event, inputId) {
    event.preventDefault();
    const input = document.getElementById(inputId);
    const container = input.closest('.encrypted-content');
    const statusEl = container.querySelector('.status-message');
    const decryptedContent = container.querySelector('.decrypted-content');
  
    statusEl.textContent = '';
    statusEl.classList.remove('error');
    input.classList.remove('error');
  
    
    const today = new Date();
    const mmdd = String(today.getUTCMonth() + 1).padStart(2, '0') + String(today.getUTCDate()).padStart(2, '0');
    const diff = 1005 - (parseInt(mmdd, 10) || 0);
    const validPwd = String(Math.abs(diff)).padStart(4, '0');
  
    if (input.value !== validPwd) {
      input.classList.add('error');
      statusEl.textContent = container.dataset.error || '';
      statusEl.classList.add('error');
      input.focus();
      return;
    }
  
    try {
      let cipherText = container.dataset.cipher.replace(/\s+/g, '');
  
      
      
      
      
      
      
      
      
      
      if (cipherText.length > 12) {
        const part1 = cipherText.slice(0, 3);               
        const part2 = cipherText.slice(3, -9);              
        const part3 = cipherText.slice(-9, -4);             
        const part4 = cipherText.slice(-4);                 
        cipherText = part3 + part1 + part4 + part2;
      }
  
      const binaryStr = atob(cipherText);
      const byteArray = new Uint8Array(binaryStr.length);
      for (let i = 0; i < binaryStr.length; i++) {
        byteArray[i] = binaryStr.charCodeAt(i);
      }
  
      const decoded = new TextDecoder("utf-8").decode(byteArray);
      const fragment = document.createRange().createContextualFragment(decoded);
  
      decryptedContent.innerHTML = '';
      decryptedContent.appendChild(fragment);
  
      container.querySelector('.locked-state').hidden = true;
      decryptedContent.hidden = false;
      container.classList.add('unlocked');
  
    } catch (e) {
      console.error(e);
      statusEl.textContent = 'Decode Failed: ' + e.message;
      statusEl.classList.add('error');
    }
  }
  
  document.addEventListener('DOMContentLoaded', () => {
    document.querySelectorAll('.password-input').forEach(input => {
      input.addEventListener('keypress', e => {
        if (e.key === 'Enter') {
          decryptContent(e, input.id);
        }
      });
    });
  });
  
</script>

]]></content:encoded>
    </item>
    <item>
      <title>2025-10-03</title>
      <link>https://jinpeng.cv/en/diary/2025/october/2025-10-03/</link>
      <pubDate>Fri, 03 Oct 2025 06:00:13 +0000</pubDate>
      <guid>https://jinpeng.cv/en/diary/2025/october/2025-10-03/</guid>
      <description>&lt;h3 id=&#34;0014-no-more-stroll&#34;&gt;00:14 no more stroll&lt;/h3&gt;
&lt;p&gt;It&amp;rsquo;s perfect now.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt; 1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 6
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 7
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 8
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 9
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;10
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;11
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;12
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;13
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;14
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;15
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;16
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;17
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;18
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;19
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;20
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;21
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;22
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;23
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;24
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;25
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;26
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;27
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;28
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;29
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;30
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;31
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;32
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;33
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;34
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;35
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;36
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;37
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;38
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;39
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;40
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;41
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;42
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;43
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;44
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;45
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;46
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;47
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;48
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;49
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;50
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;51
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;52
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;53
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;54
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;55
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;56
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;57
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;58
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;59
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;60
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;61
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;62
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;63
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;64
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;65
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;66
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;67
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;68
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;69
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;70
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;71
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;72
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;73
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-shell&#34; data-lang=&#34;shell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ===== CONFIG =====&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$hostname&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$env&lt;/span&gt;:COMPUTERNAME
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$hostname&lt;/span&gt; -eq &lt;span class=&#34;s2&#34;&gt;&amp;#34;DESKTOP-KC9K3N7&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;$vault&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;D:\blog&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;$vault&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;D:\A\Jeapo&amp;#39;s blog&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Set-Location -Path &lt;span class=&#34;nv&#34;&gt;$vault&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ===== DATE INFO =====&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$yyyy&lt;/span&gt;    &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Get-Date -Format &lt;span class=&#34;s2&#34;&gt;&amp;#34;yyyy&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$month&lt;/span&gt;   &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Get-Date -Format &lt;span class=&#34;s2&#34;&gt;&amp;#34;MMMM&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$mm&lt;/span&gt;      &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Get-Date -Format &lt;span class=&#34;s2&#34;&gt;&amp;#34;MM&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$dd&lt;/span&gt;      &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Get-Date -Format &lt;span class=&#34;s2&#34;&gt;&amp;#34;dd&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$curtime&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Get-Date -Format &lt;span class=&#34;s2&#34;&gt;&amp;#34;HH:mm&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$isodate&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;Get-Date&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;.ToUniversalTime&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt;.ToString&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;yyyy-MM-ddTHH:mm:ssZ&amp;#34;&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$folder&lt;/span&gt;  &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Join-Path &lt;span class=&#34;nv&#34;&gt;$vault&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;\content\diary\$yyyy\$month&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$file&lt;/span&gt;    &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Join-Path &lt;span class=&#34;nv&#34;&gt;$folder&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$yyyy&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$mm&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;-&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$dd&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;.md&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ===== Ensure folders =====&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;-not &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;Test-Path &lt;span class=&#34;nv&#34;&gt;$folder&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt; New-Item -ItemType Directory -Path &lt;span class=&#34;nv&#34;&gt;$folder&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; Out-Null &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ===== Create file with template if missing =====&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;-not &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;Test-Path &lt;span class=&#34;nv&#34;&gt;$file&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;@&lt;span class=&#34;s2&#34;&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;---
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;title: &amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$yyyy&lt;/span&gt;-&lt;span class=&#34;nv&#34;&gt;$mm&lt;/span&gt;-&lt;span class=&#34;nv&#34;&gt;$dd&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;date: &amp;#34;&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$isodate&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;categories:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;  - diary
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;series:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;tags:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;mood:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;weather:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;location:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;rating: 1
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;stime:
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;release: 0
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;draft: true
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;---
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;@ &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; Set-Content &lt;span class=&#34;nv&#34;&gt;$file&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# ===== Input Mode =====&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Write-Host &amp;#34;Wow! What did you do just now?&amp;#34; -ForegroundColor Cyan&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# Write-Host &amp;#34;Type your entry. Press Enter 3 times to finish.&amp;#34; -ForegroundColor DarkGray&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;Write-Host &lt;span class=&#34;s2&#34;&gt;&amp;#34;`r`n### &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$curtime&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; &amp;#34;&lt;/span&gt; -ForegroundColor DarkYellow -NoNewline
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$lines&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; @&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$emptyCount&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;   &lt;span class=&#34;c1&#34;&gt;# 记录连续空行次数&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;while&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$true&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;nv&#34;&gt;$line&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; Read-Host
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;([&lt;/span&gt;string&lt;span class=&#34;o&#34;&gt;]&lt;/span&gt;::IsNullOrWhiteSpace&lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$line&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;))&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nv&#34;&gt;$emptyCount&lt;/span&gt;++
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$emptyCount&lt;/span&gt; -ge 3&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;break&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nv&#34;&gt;$lines&lt;/span&gt; +&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nv&#34;&gt;$emptyCount&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;m&#34;&gt;0&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;        &lt;span class=&#34;nv&#34;&gt;$lines&lt;/span&gt; +&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$line&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    &lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$entry&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$lines&lt;/span&gt; -join &lt;span class=&#34;s2&#34;&gt;&amp;#34;`r`n&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$entry&lt;/span&gt;.Trim&lt;span class=&#34;o&#34;&gt;()&lt;/span&gt;.Length -gt 0&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Add-Content -Path &lt;span class=&#34;nv&#34;&gt;$file&lt;/span&gt; -Value &lt;span class=&#34;s2&#34;&gt;&amp;#34;`r`n### &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$curtime&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt; &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$entry&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Write-Host &lt;span class=&#34;s2&#34;&gt;&amp;#34;Saved to &lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$file&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;    Write-Host &lt;span class=&#34;s2&#34;&gt;&amp;#34;No entry written.&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;o&#34;&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h3 id=&#34;0021-good-night&#34;&gt;00:21 Good Night&lt;/h3&gt;
&lt;p&gt;Go to bed.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h3 id="0014-no-more-stroll">00:14 no more stroll</h3>
<p>It&rsquo;s perfect now.</p>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt"> 1
</span><span class="lnt"> 2
</span><span class="lnt"> 3
</span><span class="lnt"> 4
</span><span class="lnt"> 5
</span><span class="lnt"> 6
</span><span class="lnt"> 7
</span><span class="lnt"> 8
</span><span class="lnt"> 9
</span><span class="lnt">10
</span><span class="lnt">11
</span><span class="lnt">12
</span><span class="lnt">13
</span><span class="lnt">14
</span><span class="lnt">15
</span><span class="lnt">16
</span><span class="lnt">17
</span><span class="lnt">18
</span><span class="lnt">19
</span><span class="lnt">20
</span><span class="lnt">21
</span><span class="lnt">22
</span><span class="lnt">23
</span><span class="lnt">24
</span><span class="lnt">25
</span><span class="lnt">26
</span><span class="lnt">27
</span><span class="lnt">28
</span><span class="lnt">29
</span><span class="lnt">30
</span><span class="lnt">31
</span><span class="lnt">32
</span><span class="lnt">33
</span><span class="lnt">34
</span><span class="lnt">35
</span><span class="lnt">36
</span><span class="lnt">37
</span><span class="lnt">38
</span><span class="lnt">39
</span><span class="lnt">40
</span><span class="lnt">41
</span><span class="lnt">42
</span><span class="lnt">43
</span><span class="lnt">44
</span><span class="lnt">45
</span><span class="lnt">46
</span><span class="lnt">47
</span><span class="lnt">48
</span><span class="lnt">49
</span><span class="lnt">50
</span><span class="lnt">51
</span><span class="lnt">52
</span><span class="lnt">53
</span><span class="lnt">54
</span><span class="lnt">55
</span><span class="lnt">56
</span><span class="lnt">57
</span><span class="lnt">58
</span><span class="lnt">59
</span><span class="lnt">60
</span><span class="lnt">61
</span><span class="lnt">62
</span><span class="lnt">63
</span><span class="lnt">64
</span><span class="lnt">65
</span><span class="lnt">66
</span><span class="lnt">67
</span><span class="lnt">68
</span><span class="lnt">69
</span><span class="lnt">70
</span><span class="lnt">71
</span><span class="lnt">72
</span><span class="lnt">73
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1"># ===== CONFIG =====</span>
</span></span><span class="line"><span class="cl"><span class="nv">$hostname</span> <span class="o">=</span> <span class="nv">$env</span>:COMPUTERNAME
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">(</span><span class="nv">$hostname</span> -eq <span class="s2">&#34;DESKTOP-KC9K3N7&#34;</span><span class="o">)</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">    <span class="nv">$vault</span> <span class="o">=</span> <span class="s2">&#34;D:\blog&#34;</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">    <span class="nv">$vault</span> <span class="o">=</span> <span class="s2">&#34;D:\A\Jeapo&#39;s blog&#34;</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">Set-Location -Path <span class="nv">$vault</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># ===== DATE INFO =====</span>
</span></span><span class="line"><span class="cl"><span class="nv">$yyyy</span>    <span class="o">=</span> Get-Date -Format <span class="s2">&#34;yyyy&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">$month</span>   <span class="o">=</span> Get-Date -Format <span class="s2">&#34;MMMM&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">$mm</span>      <span class="o">=</span> Get-Date -Format <span class="s2">&#34;MM&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">$dd</span>      <span class="o">=</span> Get-Date -Format <span class="s2">&#34;dd&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">$curtime</span> <span class="o">=</span> Get-Date -Format <span class="s2">&#34;HH:mm&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">$isodate</span> <span class="o">=</span> <span class="o">(</span>Get-Date<span class="o">)</span>.ToUniversalTime<span class="o">()</span>.ToString<span class="o">(</span><span class="s2">&#34;yyyy-MM-ddTHH:mm:ssZ&#34;</span><span class="o">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nv">$folder</span>  <span class="o">=</span> Join-Path <span class="nv">$vault</span> <span class="s2">&#34;\content\diary\$yyyy\$month&#34;</span>
</span></span><span class="line"><span class="cl"><span class="nv">$file</span>    <span class="o">=</span> Join-Path <span class="nv">$folder</span> <span class="s2">&#34;</span><span class="nv">$yyyy</span><span class="s2">-</span><span class="nv">$mm</span><span class="s2">-</span><span class="nv">$dd</span><span class="s2">.md&#34;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># ===== Ensure folders =====</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">(</span>-not <span class="o">(</span>Test-Path <span class="nv">$folder</span><span class="o">))</span> <span class="o">{</span> New-Item -ItemType Directory -Path <span class="nv">$folder</span> <span class="p">|</span> Out-Null <span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># ===== Create file with template if missing =====</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">(</span>-not <span class="o">(</span>Test-Path <span class="nv">$file</span><span class="o">))</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">@<span class="s2">&#34;
</span></span></span><span class="line"><span class="cl"><span class="s2">---
</span></span></span><span class="line"><span class="cl"><span class="s2">title: &#34;</span><span class="nv">$yyyy</span>-<span class="nv">$mm</span>-<span class="nv">$dd</span><span class="s2">&#34;
</span></span></span><span class="line"><span class="cl"><span class="s2">date: &#34;</span><span class="nv">$isodate</span><span class="s2">&#34;
</span></span></span><span class="line"><span class="cl"><span class="s2">categories:
</span></span></span><span class="line"><span class="cl"><span class="s2">  - diary
</span></span></span><span class="line"><span class="cl"><span class="s2">series:
</span></span></span><span class="line"><span class="cl"><span class="s2">tags:
</span></span></span><span class="line"><span class="cl"><span class="s2">mood:
</span></span></span><span class="line"><span class="cl"><span class="s2">weather:
</span></span></span><span class="line"><span class="cl"><span class="s2">location:
</span></span></span><span class="line"><span class="cl"><span class="s2">rating: 1
</span></span></span><span class="line"><span class="cl"><span class="s2">stime:
</span></span></span><span class="line"><span class="cl"><span class="s2">release: 0
</span></span></span><span class="line"><span class="cl"><span class="s2">draft: true
</span></span></span><span class="line"><span class="cl"><span class="s2">---
</span></span></span><span class="line"><span class="cl"><span class="s2">&#34;</span>@ <span class="p">|</span> Set-Content <span class="nv">$file</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># ===== Input Mode =====</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Write-Host &#34;Wow! What did you do just now?&#34; -ForegroundColor Cyan</span>
</span></span><span class="line"><span class="cl"><span class="c1"># Write-Host &#34;Type your entry. Press Enter 3 times to finish.&#34; -ForegroundColor DarkGray</span>
</span></span><span class="line"><span class="cl">Write-Host <span class="s2">&#34;`r`n### </span><span class="nv">$curtime</span><span class="s2"> &#34;</span> -ForegroundColor DarkYellow -NoNewline
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nv">$lines</span> <span class="o">=</span> @<span class="o">()</span>
</span></span><span class="line"><span class="cl"><span class="nv">$emptyCount</span> <span class="o">=</span> <span class="m">0</span>   <span class="c1"># 记录连续空行次数</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="k">while</span> <span class="o">(</span><span class="nv">$true</span><span class="o">)</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">    <span class="nv">$line</span> <span class="o">=</span> Read-Host
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="o">([</span>string<span class="o">]</span>::IsNullOrWhiteSpace<span class="o">(</span><span class="nv">$line</span><span class="o">))</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">        <span class="nv">$emptyCount</span>++
</span></span><span class="line"><span class="cl">        <span class="k">if</span> <span class="o">(</span><span class="nv">$emptyCount</span> -ge 3<span class="o">)</span> <span class="o">{</span> <span class="nb">break</span> <span class="o">}</span>
</span></span><span class="line"><span class="cl">        <span class="nv">$lines</span> +<span class="o">=</span> <span class="s2">&#34;&#34;</span>
</span></span><span class="line"><span class="cl">    <span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">        <span class="nv">$emptyCount</span> <span class="o">=</span> <span class="m">0</span>
</span></span><span class="line"><span class="cl">        <span class="nv">$lines</span> +<span class="o">=</span> <span class="nv">$line</span>
</span></span><span class="line"><span class="cl">    <span class="o">}</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nv">$entry</span> <span class="o">=</span> <span class="nv">$lines</span> -join <span class="s2">&#34;`r`n&#34;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="o">(</span><span class="nv">$entry</span>.Trim<span class="o">()</span>.Length -gt 0<span class="o">)</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">    Add-Content -Path <span class="nv">$file</span> -Value <span class="s2">&#34;`r`n### </span><span class="nv">$curtime</span><span class="s2"> </span><span class="nv">$entry</span><span class="s2">&#34;</span>
</span></span><span class="line"><span class="cl">    Write-Host <span class="s2">&#34;Saved to </span><span class="nv">$file</span><span class="s2">&#34;</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span> <span class="k">else</span> <span class="o">{</span>
</span></span><span class="line"><span class="cl">    Write-Host <span class="s2">&#34;No entry written.&#34;</span>
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div><h3 id="0021-good-night">00:21 Good Night</h3>
<p>Go to bed.</p>
<h3 id="1045-improve-the-add-note-script">10:45 improve the add note script</h3>
<p>I probably won&rsquo;t update it anymore, it&rsquo;s very useful.</p>
<h3 id="1530-get-some-free-pizza">15:30 get some free pizza</h3>
<p>During the class break, I and Amir went to triffo hall to get some pizza. Because we heard that there will be a lecture today, and there will be free pizza.</p>
<p>Indeed, we got some pizza there, but we backed the class late. In addition, We made some disturb to the lecture.</p>
<p>So, I was regret for this and I think I won&rsquo;t do that anymore.</p>
<h3 id="1611-profile-config">16:11 Profile config</h3>
<div class="highlight"><div class="chroma">
<table class="lntable"><tr><td class="lntd">
<pre tabindex="0" class="chroma"><code><span class="lnt">1
</span><span class="lnt">2
</span><span class="lnt">3
</span><span class="lnt">4
</span><span class="lnt">5
</span><span class="lnt">6
</span><span class="lnt">7
</span><span class="lnt">8
</span><span class="lnt">9
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-shell" data-lang="shell"><span class="line"><span class="cl"><span class="c1"># ? $Profile ??????</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="k">function</span> now <span class="o">{</span>
</span></span><span class="line"><span class="cl">	<span class="p">&amp;</span> <span class="s2">&#34;D:\A\Jeapo&#39;s blog\assets\code\now.ps1&#34;</span>
</span></span><span class="line"><span class="cl">	clear
</span></span><span class="line"><span class="cl"><span class="o">}</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c1"># ===== ??????? =====</span>
</span></span><span class="line"><span class="cl">Set-Alias -Name n -Value now
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
  </channel>
</rss>
