<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>笔记 on MoeJueのブログ</title>
    <link>https://ja.moejue.cn/en/tags/%E7%AC%94%E8%AE%B0/</link>
    <description>Recent content in 笔记 on MoeJueのブログ</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Sun, 06 Jul 2025 14:25:00 +0000</lastBuildDate>
    <atom:link href="https://ja.moejue.cn/en/tags/%E7%AC%94%E8%AE%B0/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Multi-chain support is not as simple as you think</title>
      <link>https://ja.moejue.cn/en/posts/269/</link>
      <pubDate>Sat, 05 Jul 2025 08:20:55 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/269/</guid>
      <description>&lt;h4 id=&#34;a-practical-reflection-on-multi-chain-wallet-integration&#34;&gt;A practical reflection on multi-chain wallet integration&lt;/h4&gt;&#xA;&lt;p&gt;Finally, I have some free time to sort out the code. The Web3 project has access to multi-chain wallet connection functions, mainly involving Ethereum, Polygon, BSC and Solana. At first glance, it seemed like it was just a matter of &amp;ldquo;doing a few more sets of compatible logic&amp;rdquo;, but after I actually implemented it, I discovered that many things were actually not as simple as I thought.&lt;/p&gt;</description>
    </item>
    <item>
      <title>[Notes] Git Common Commands by Scenario</title>
      <link>https://ja.moejue.cn/en/posts/264/</link>
      <pubDate>Mon, 02 Jun 2025 06:58:42 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/264/</guid>
      <description>&lt;blockquote&#xA;    class=&#34;border-primary bg-muted/30 hover:bg-muted/40 my-6 rounded-r-lg border-l-4 py-4 pr-4 pl-6 italic transition-all duration-200 ease-out hover:translate-x-1&#34;&gt;&#xA;    &lt;div class=&#34;prose prose-sm max-w-none&#34;&gt;&#xA;      &lt;p&gt;For common Git operations in everyday development. It&amp;rsquo;s organized into categories to help you get started or get started.&lt;/p&gt;&#xA;&#xA;    &lt;/div&gt;&#xA;  &lt;/blockquote&gt;&lt;script&gt;&#xA;function toggleAlert(alertId) {&#xA;  const content = document.getElementById(alertId + &#39;-content&#39;);&#xA;  const chevron = document.getElementById(alertId + &#39;-chevron&#39;);&#xA;  const header = content.previousElementSibling;&#xA;  &#xA;  if (content.classList.contains(&#39;hidden&#39;)) {&#xA;    content.classList.remove(&#39;hidden&#39;);&#xA;    chevron.style.transform = &#39;rotate(0deg)&#39;;&#xA;    header.setAttribute(&#39;aria-expanded&#39;, &#39;true&#39;);&#xA;  } else {&#xA;    content.classList.add(&#39;hidden&#39;);&#xA;    chevron.style.transform = &#39;rotate(-90deg)&#39;;&#xA;    header.setAttribute(&#39;aria-expanded&#39;, &#39;false&#39;);&#xA;  }&#xA;}&#xA;&#xA;&#xA;document.addEventListener(&#39;DOMContentLoaded&#39;, function() {&#xA;  const collapsedAlerts = document.querySelectorAll(&#39;.alert-content.hidden&#39;);&#xA;  collapsedAlerts.forEach(function(content) {&#xA;    const alertId = content.id.replace(&#39;-content&#39;, &#39;&#39;);&#xA;    const chevron = document.getElementById(alertId + &#39;-chevron&#39;);&#xA;    if (chevron) {&#xA;      chevron.style.transform = &#39;rotate(-90deg)&#39;;&#xA;    }&#xA;  });&#xA;});&#xA;&lt;/script&gt;&#xA;&#xA;&lt;hr&gt;&#xA;&lt;h2 id=&#34;-basic-commands&#34;&gt;📦 Basic Commands&lt;/h2&gt;&#xA;&lt;p&gt;order&lt;/p&gt;</description>
    </item>
    <item>
      <title>What is Web3.0, and what does it have to do with blockchain?</title>
      <link>https://ja.moejue.cn/en/posts/202/</link>
      <pubDate>Mon, 17 Jun 2024 12:59:22 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/202/</guid>
      <description>&lt;p&gt;Another new inexplicable word -. - I can roughly summarize it into the following points:&lt;/p&gt;&#xA;&lt;h2 id=&#34;what-is-web30&#34;&gt;What is web3.0&lt;/h2&gt;&#xA;&lt;p&gt;Web 3.0 (Web3) is the development direction of the next generation of the Internet, aiming to create a more decentralized, user-controlled and data-protected network environment. Different from the previous Web 1.0 (static web pages) and Web 2.0 (dynamic, interactive web pages and social media), the core concepts and technologies of Web 3.0 include the following aspects:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Thermal Bluetooth printer development</title>
      <link>https://ja.moejue.cn/en/posts/100/</link>
      <pubDate>Tue, 05 Nov 2019 14:49:50 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/100/</guid>
      <description>&lt;p&gt;Recently, I have been working on receipt printing. The project requirement is to implement it on both IOS and Android. I was confused when I started doing it. Then I found a lot of information on the Internet, stepped on a lot of pitfalls, and read a lot of articles. The result turned out to be okay.&#xA;Bluetooth printers are generally divided into two printing modes, receipt printing and label printing.&lt;/p&gt;</description>
    </item>
    <item>
      <title>WeChat authorized login</title>
      <link>https://ja.moejue.cn/en/posts/88/</link>
      <pubDate>Fri, 05 Apr 2019 09:29:45 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/88/</guid>
      <description>&lt;p&gt;&#xA;&lt;figure class=&#34;image-figure not-prose my-8&#34; &#xA;        data-lightbox-enabled=&#34;false&#34;&#xA;        data-gallery-type=&#34;auto&#34;&gt;&#xA;  &lt;div class=&#34;image-container&#34;&gt;&#xA;    &lt;img&#xA;    src=&#34;https://res.wx.qq.com/mpres/htmledition/weui-desktopSkin/svg/buildless/bg_logo_primary4247a9.svg&#34;&#xA;    alt=&#34;&#34;&#xA;    &#xA;    &#xA;    loading=&#34;lazy&#34;&#xA;    decoding=&#34;async&#34;&#xA;    data-gallery-src=&#34;https://res.wx.qq.com/mpres/htmledition/weui-desktopSkin/svg/buildless/bg_logo_primary4247a9.svg&#34;&#xA;    data-gallery-alt=&#34;&#34;&#xA;    data-gallery-title=&#34;&#34; /&gt;&lt;/div&gt;&#xA;&#xA;  &lt;/figure&gt; Documentation: &lt;a href=&#34;https://mp.weixin.qq.com/wiki?t=resource/res_main&amp;amp;id=mp1421135319&#34;target=&#34;_blank&#34;&#xA;  class=&#34;inline-flex items-center gap-1&#34;&#xA;&gt;https://mp.weixin.qq.com/wiki?t=resource/res_main&amp;amp;id=mp1421135319&#xA;  &lt;svg id=&#34;external-link&#34; class=&#34;h-3 w-3 flex-shrink-0&#34;&#xA;    fill=&#34;none&#34;&#xA;    stroke=&#34;currentColor&#34;&#xA;    viewBox=&#34;0 0 24 24&#34;&gt;&lt;path fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6&#34;/&gt;&lt;/svg&gt;&#xA;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;The authorized login of WeChat is similar to the authorized login of QQ, Sina and other platforms, and both adopt the OauthOAuth2.0 authentication method.&lt;br&gt;&#xA;There are two types of WeChat authorization:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Silent authorization&lt;/li&gt;&#xA;&lt;li&gt;Pop-up authorization requires manual consent from the user.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Explanation of the differences between the two scopes&lt;/p&gt;</description>
    </item>
    <item>
      <title>WeChat JSAPI payment</title>
      <link>https://ja.moejue.cn/en/posts/89/</link>
      <pubDate>Sat, 30 Mar 2019 09:30:21 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/89/</guid>
      <description>&lt;p&gt;&#xA;&lt;figure class=&#34;image-figure not-prose my-8&#34; &#xA;        data-lightbox-enabled=&#34;false&#34;&#xA;        data-gallery-type=&#34;auto&#34;&gt;&#xA;  &lt;div class=&#34;image-container&#34;&gt;&#xA;    &lt;img&#xA;    src=&#34;https://image.baidu.com/search/down?url=https://tva1.sinaimg.cn//large/0072Vf1pgy1g1l3k211blj30ia04x74e.jpg&#34;&#xA;    alt=&#34;&#34;&#xA;    &#xA;    &#xA;    loading=&#34;lazy&#34;&#xA;    decoding=&#34;async&#34;&#xA;    data-gallery-src=&#34;https://image.baidu.com/search/down?url=https://tva1.sinaimg.cn//large/0072Vf1pgy1g1l3k211blj30ia04x74e.jpg&#34;&#xA;    data-gallery-alt=&#34;&#34;&#xA;    data-gallery-title=&#34;&#34; /&gt;&lt;/div&gt;&#xA;&#xA;  &lt;/figure&gt; I have been doing business related to WeChat some time ago. Although it is not a new technology, I have never had the opportunity to come into contact with it before. Then I stepped on some pitfalls and took the time to organize and record it.&lt;br&gt;&#xA;There are 7 types of WeChat payment, including: payment code payment, JSAPI payment, Native payment, APP payment, H5 payment, mini program payment, and face payment.&lt;br&gt;&#xA;WeChat JSAPI payment is used in this business: the user enters the merchant&amp;rsquo;s H5 page by scanning the QR code on WeChat, following the official account, etc., and calls JSSDK within &lt;strong&gt;WeChat&lt;/strong&gt; to complete the payment.&lt;/p&gt;</description>
    </item>
    <item>
      <title>[Notes] Comprehensive list of commonly used Git commands</title>
      <link>https://ja.moejue.cn/en/posts/57/</link>
      <pubDate>Sat, 16 Jun 2018 08:56:21 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/57/</guid>
      <description>&lt;p&gt;Following the last time, I took the time to sort out a relatively complete list of commonly used Git commands, and found a great map, very high-definition (1759*3162).&lt;/p&gt;&#xA;&lt;p&gt;View, add, submit, delete, retrieve, reset modified files&lt;/p&gt;&#xA;&lt;p&gt;git help &lt;command&gt; # Display help for command&lt;/p&gt;&#xA;&lt;p&gt;git show # Display the contents of a certain commit git show $id&lt;/p&gt;&#xA;&lt;p&gt;git co &amp;ndash; &lt;file&gt; # Discard workspace modifications&lt;/p&gt;&#xA;&lt;p&gt;git co . # Discard workspace modifications&lt;/p&gt;</description>
    </item>
    <item>
      <title>Installation of PHP environment under Linux</title>
      <link>https://ja.moejue.cn/en/posts/65/</link>
      <pubDate>Mon, 07 May 2018 06:52:32 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/65/</guid>
      <description>&lt;p&gt;Learning environment: Centos 7.2 official version _64 bit&lt;/p&gt;&#xA;&lt;p&gt;# Update source&#xA;yum update&lt;/p&gt;&#xA;&lt;h1 id=&#34;安装nginx&#34;&gt;安装nginx&lt;/h1&gt;&#xA;&lt;p&gt;yum install nginx -y&lt;/p&gt;&#xA;&lt;h1 id=&#34;安装mysql&#34;&gt;安装mysql&lt;/h1&gt;&#xA;&lt;p&gt;wget &lt;a href=&#34;https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm&#34;target=&#34;_blank&#34;&#xA;  class=&#34;inline-flex items-center gap-1&#34;&#xA;&gt;https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm&#xA;  &lt;svg id=&#34;external-link&#34; class=&#34;h-3 w-3 flex-shrink-0&#34;&#xA;    fill=&#34;none&#34;&#xA;    stroke=&#34;currentColor&#34;&#xA;    viewBox=&#34;0 0 24 24&#34;&gt;&lt;path fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6&#34;/&gt;&lt;/svg&gt;&#xA;&lt;/a&gt;&#xA;yum localinstall mysql57-community-release-el7-11.noarch.rpm&lt;/p&gt;&#xA;&lt;h1 id=&#34;安装php72&#34;&gt;安装PHP7.2&lt;/h1&gt;&#xA;&lt;p&gt;rpm -Uvh &lt;a href=&#34;https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm&#34;target=&#34;_blank&#34;&#xA;  class=&#34;inline-flex items-center gap-1&#34;&#xA;&gt;https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm&#xA;  &lt;svg id=&#34;external-link&#34; class=&#34;h-3 w-3 flex-shrink-0&#34;&#xA;    fill=&#34;none&#34;&#xA;    stroke=&#34;currentColor&#34;&#xA;    viewBox=&#34;0 0 24 24&#34;&gt;&lt;path fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6&#34;/&gt;&lt;/svg&gt;&#xA;&lt;/a&gt;&#xA;rpm -Uvh &lt;a href=&#34;https://mirror.webtatic.com/yum/el7/webtatic-release.rpm&#34;target=&#34;_blank&#34;&#xA;  class=&#34;inline-flex items-center gap-1&#34;&#xA;&gt;https://mirror.webtatic.com/yum/el7/webtatic-release.rpm&#xA;  &lt;svg id=&#34;external-link&#34; class=&#34;h-3 w-3 flex-shrink-0&#34;&#xA;    fill=&#34;none&#34;&#xA;    stroke=&#34;currentColor&#34;&#xA;    viewBox=&#34;0 0 24 24&#34;&gt;&lt;path fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M15 3h6v6m-11 5L21 3m-3 10v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6&#34;/&gt;&lt;/svg&gt;&#xA;&lt;/a&gt;&#xA;yum update&#xA;yum install -y php72w-cli php72w-common php72w-dba php72w-devel php72w-fpm php72w-gd php72w-imap php72w-mbstring php72w-mysql php72w-pdo php72w-pdo_dblib php72w-pear php72w-pecl-igbinary php72w-pecl-xdebug php72w-process php72w-xml php72w-xmlrpc php72w-opcache php72w-pecl-memcached php72w-pecl-mongodb php72w-pecl-redis&lt;/p&gt;</description>
    </item>
    <item>
      <title>Simple Steps for Using Git</title>
      <link>https://ja.moejue.cn/en/posts/64/</link>
      <pubDate>Tue, 03 Apr 2018 12:04:32 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/64/</guid>
      <description>&lt;p&gt;This article does not elaborate any conceptual knowledge, just make a note, simply is the use of the steps, if you encounter obstacles, please Google it!&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Using SSH to Bind Git to GitHub&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;1. Generate &lt;code&gt;SSH key&lt;/code&gt;&lt;/p&gt;&#xA;&lt;p&gt;ssh-keygen -t rsa&lt;/p&gt;&#xA;&lt;p&gt;Specify the RSA algorithm to generate the key, after which two files will be generated, id_rsa and id_rsa.pub, i.e., the key id_rsa and the public key id_rsa.pub. For these two files&lt;/p&gt;</description>
    </item>
    <item>
      <title>Use .htaccess to bind subdomain names to subdirectories</title>
      <link>https://ja.moejue.cn/en/posts/58/</link>
      <pubDate>Mon, 22 Jan 2018 01:18:11 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/58/</guid>
      <description>&lt;p&gt;Under normal circumstances, a virtual host is only allowed to bind one domain name to the root directory.&lt;br&gt;&#xA;People who have used emlog should be familiar with the static links in it. It is a typical use of .htaccess files to redirect domain names to web pages.&lt;br&gt;&#xA;Use .htaccess to bind domain names to subdirectories. The prerequisite is that your space server must support the rewrite function of apache. Only in this way can .htaccess be used. If your space is a Linux server, it is usually enabled by default. That is, you can bind domain names to subdirectories and multiple sites in one space.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Notes: Sublime Text3 configuration</title>
      <link>https://ja.moejue.cn/en/posts/54/</link>
      <pubDate>Thu, 28 Dec 2017 13:49:37 +0000</pubDate>
      <guid>https://ja.moejue.cn/en/posts/54/</guid>
      <description>&lt;p&gt;Save the configuration information of Sublime Text3 to avoid losing it next time.&lt;/p&gt;&#xA;&lt;h2 id=&#34;configuration&#34;&gt;Configuration:&lt;/h2&gt;&#xA;&lt;p&gt;{&#xA;&amp;ldquo;font_size&amp;rdquo;: 21, // Set font size&#xA;&amp;ldquo;word_wrap&amp;rdquo;: true, // Automatic line wrapping&#xA;&amp;ldquo;update_check&amp;rdquo;: false, // disable update check&#xA;&amp;ldquo;font_face&amp;rdquo;: &amp;ldquo;Courier New&amp;rdquo;, // Set font&#xA;&amp;ldquo;highlight_modified_tabs&amp;rdquo;: true, // Highlight file modifications&#xA;&amp;ldquo;create_window_at_startup&amp;rdquo;: false, // Cancel startup and automatically open a new window&#xA;&amp;ldquo;open_files_in_new_window&amp;rdquo;: false, // Cancel the opening of the file and generate a new window&#xA;&amp;ldquo;highlight_line&amp;rdquo;: true, // Highlight the current line&#xA;&amp;ldquo;show_encoding&amp;rdquo;: true, // The encoding type is displayed in the lower right corner&#xA;&amp;ldquo;open_files_in_new_window&amp;rdquo;: false, // Disable opening in a new window every time&#xA;&amp;ldquo;caret_style&amp;rdquo;: &amp;ldquo;phase&amp;rdquo;, // Set the cursor flashing mode&#xA;&amp;ldquo;line_padding_top&amp;rdquo;: 5, // Spacing on the line&#xA;&amp;ldquo;line_padding_bottom&amp;rdquo;: 5, // Spacing under the line&#xA;&amp;ldquo;fade_fold_buttons&amp;rdquo;: false, //Always display the code shrink icon&#xA;&amp;ldquo;translate_tabs_to_spaces&amp;rdquo;: false // Use spaces instead of Tabs&#xA;}&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
