<?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>🐦‍⬛ Typecho on Ben&#39;s Blog</title>
    <link>https://jinpeng.cv/en/posts/typecho/</link>
    <description>Recent content in 🐦‍⬛ Typecho on Ben&#39;s Blog</description>
    <generator>Hugo -- 0.154.0</generator>
    <language>en</language>
    <copyright>©️ 2025 Ben</copyright>
    <atom:link href="https://jinpeng.cv/en/posts/typecho/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>The Dusk of the Countryside</title>
      <link>https://jinpeng.cv/en/posts/typecho/137/</link>
      <pubDate>Wed, 01 Feb 2023 22:20:27 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/137/</guid>
      <description>&lt;p&gt;I grew up in the countryside and still return to live with my parents during holidays. However, I don’t feel any deep affection for rural life. The village I’m from makes me lament the hardships of its people.&lt;/p&gt;
&lt;h2 id=&#34;memories-of-rural-changes&#34;&gt;Memories of Rural Changes&lt;/h2&gt;
&lt;p&gt;Since I haven’t conducted—nor do I wish to—a detailed survey to substantiate my views, everything I describe here is based on my personal experiences and observations of rural life.&lt;br&gt;
I’m 25 years old and still haven’t completed my education, which means I have long holidays every year to return home and spend time with my family during the New Year and other breaks.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>I grew up in the countryside and still return to live with my parents during holidays. However, I don’t feel any deep affection for rural life. The village I’m from makes me lament the hardships of its people.</p>
<h2 id="memories-of-rural-changes">Memories of Rural Changes</h2>
<p>Since I haven’t conducted—nor do I wish to—a detailed survey to substantiate my views, everything I describe here is based on my personal experiences and observations of rural life.<br>
I’m 25 years old and still haven’t completed my education, which means I have long holidays every year to return home and spend time with my family during the New Year and other breaks.</p>
<p>The village is becoming increasingly empty, with slightly more people around during the New Year. But even then, it doesn’t feel livelier. Unlike before, families no longer visit each other’s homes. At most, neighbors who live close by might gather for a chat when the weather is nice and they’re not busy, using the time to vent about work stress or the loneliness of life. These conversations usually last anywhere from a few minutes to half an hour.</p>
<p>I remember a time when people would gather at someone’s home or in their yard on sunny days, sitting together for hours. Children weren’t constantly clinging to adults for attention either—they had their own ways of entertaining themselves. Boys played marbles, girls jumped rope, and everyone joined in games like hide-and-seek, freeze tag, or catch. The simplest activities never seemed to bore them. Every day, they played until their mothers stood at the door or behind the house, calling their names repeatedly. Back then, our playground was the entire village—we knew every hole in the ground and every pile of straw. Nowadays, children’s worlds are confined to their own homes. As a result, I’m only familiar with my niece, Manman; I don’t know any of the other kids, and they don’t seem interested in playing with me either.</p>
<p>With China’s socioeconomic development, changes brought by progress have inevitably reached the countryside. In recent years, the economic and agricultural reforms I’ve witnessed have been far from satisfactory, often sparking widespread criticism from villagers toward local officials.</p>
<p>Three incidents stand out in my memory. The first happened many years ago when a company aggressively promoted the cultivation of <em>Cili</em> (a type of berry) across the county’s rural areas. They partnered with farmers, paying them rent for their land and planting <em>Cili</em> on it. The company promised to buy the harvested berries. On paper, it seemed perfect: farmers could move away from growing corn, potentially earning more from <em>Cili</em>, with all parties benefiting. But this ideal scenario collapsed when the company stopped purchasing the berries. For the first year or two, they did buy them, albeit at lower prices than promised. Farmers were content as long as the land generated some income, regardless of the amount. Eventually, however, the company stopped coming altogether. Many remote plots planted with <em>Cili</em> became overgrown with weeds, rendering them unusable for crops like corn.</p>
<p>The second incident occurred when I first started university. This time, it seemed more official, led by the township government. Another industrial reform was introduced, with a specialized cooperative established where farmers contributed their land as shares to develop fruit orchards. What followed was something I witnessed firsthand. Since the land was now part of the cooperative, farmers could no longer grow their usual crops. Many, including my mother—and even me—ended up working for what seemed like a mix of government and business figures. That winter, my mother took me to plant trees all over the hills. We earned about 40 yuan per day, with a team leader keeping track of attendance in a small notebook. For over ten days, we planted trees across almost every plot in the village—soft-seed pomegranates, apples, pears, plums, and apricots. As we worked, I mostly listened to the villagers’ chatter while daydreaming about the day these trees would bear fruit, imagining myself picking and eating them to my heart’s content. But my naive fantasies were shattered less than two years later when villagers were told the trees were no longer wanted and they could “handle them themselves.” Hearing this news left me speechless—just another failure by “those officials.”</p>
<p>The third incident involved a reform of rural drinking water sources. I wasn’t involved in installing the pipes, but during one holiday, I returned home to find a new water pipe outside our door—though without a faucet yet. While I’d seen such pipes in cities, it was shocking for someone like me, who had drunk mountain spring water for over 20 years. For lifelong villagers, it must have been even more startling. But their surprise and excitement were pointless—the pipes had no water.</p>
<p>The above accounts reflect only my small village. I’m sure not all rural areas are like this, and farmers have indeed benefited from some policies, like the installation of cabinets in every home. Though not particularly sturdy, these cabinets have brought convenience and improved daily life.</p>
<p>Other changes are harder to recall, but this time when I returned, I noticed a concrete base for a solar streetlight outside our home. I hope to see the light installed by my next visit.</p>
<h2 id="work-and-income">Work and Income</h2>
<p>In the countryside, aside from farming, there are few other ways to earn a living—which, of course, is the traditional role of rural areas. The village I’m from is hilly, with farmland scattered across slopes in small, uneven patches—some so tiny they can only support a few corn plants. No matter how poor the land, it’s enough for self-sufficiency; at the very least, no one starves. The corn grown can feed two pigs and one cow (here, I’ll note an unequal treatment: farmers usually raise at least two pigs because they worry the animals will feel lonely, but cows are almost always solitary—no one seems concerned about their loneliness. Coincidentally, I was born in the Year of the Ox).</p>
<p>However, as society develops, rural families can no longer settle for mere self-sufficiency. Two pigs and a cow can’t sustain a household anymore. Children in the countryside need better education, healthcare, and modern welfare benefits. Older generations have no concept of retirement age or pensions—the elderly I know work their entire lives until their last breath. With no other options, young people are forced to leave home and migrate to cities for work, building urban centers to support their rural families.</p>
<p>Students study hard, acquiring knowledge and skills, only to realize that what they’ve learned doesn’t translate to opportunities back home. Most become high-level migrant workers, leaving the countryside unchanged while the cities they help build flourish.</p>
<p>Perhaps there’s something fundamentally flawed in our social structure, economic system, or production models—something that overlooks certain groups of people.</p>
<p>My father is 55. For most of his life, he worked in coal mines. Last year, he decided to quit, and I didn’t want him to continue either. His reason? A petty supervisor who constantly belittled him. Mine? Coal mining is dangerous, and I just want him and my mother to live out their remaining years in peace and health.</p>
<p>But after the New Year, my mother urged him to start looking for work again. When asked about his age, she quickly interjected, “He’s only 54.” Fifty-five might not seem old, but thinking ahead 15 years to when he’ll be 70 is sobering—we all know how fast a decade passes.</p>
<p>Given his age, coal mines are wary of hiring older workers. Everyone knows that after decades in the mines, their lungs are likely filled with dust, making them highly susceptible to pneumoconiosis between the ages of 50 and 60.</p>
<p>Unsurprisingly, my father hasn’t found work yet. He and my mother worry endlessly—I’m unmarried, still job-hunting, and will need money. To reassure them, I’ve proudly declared that I’ll end up better off than 70% of people, though I haven’t mentioned the string of failed job interviews I’ve had.</p>
<h2 id="children-and-the-elderly">Children and the Elderly</h2>
<p>I have an older brother and sister, both married. My brother has a stable job, but my sister is raising two children alone—one four years old, the other just three months. My grandfather will turn 90 this June. His vision and hearing are nearly gone. Rural toilets aren’t indoors; ours was built in 2004 as part of a biogas project—before that, it was just a pit. For my grandfather, navigating the path to the toilet is terrifying, especially in winter, so someone usually has to accompany him. Last year, I bought him a portable toilet, but he’s never used it. Despite his frailty, he still clings to his pride.</p>
<p>Last year, due to the pandemic, my brother-in-law barely earned anything. He left to find work right after the New Year, leaving my sister to care for the children. Soon, my grandfather will return home, adding to my mother’s burdens—farming, tending livestock, and now looking after him. If my father doesn’t find work, at least he can help share some of the load.</p>
<p>By rural standards, my family is relatively fortunate. At least no one has suffered a major illness that would upend our lives. But in the countryside, I’ve seen and heard of too many people falling sick from relentless labor. They’re terrified of hospitals—not because of pain, but the cost. For any ailment, getting an IV at a small clinic is already a major compromise. But diseases don’t wait. Many miss their best chance at treatment by avoiding proper hospitals. My beloved uncle passed away from prostate cancer because of this.</p>
<p>Every time I return home, I emphasize to my parents how important their health is—money is secondary. But most of the time, their focus remains solely on us.</p>
<p>The countryside has few people, but many elderly and children. The elderly will never leave; the children will never stay. And the struggling younger generation? They can’t return to the village, nor can they truly settle in the cities.</p>
<h2 id="the-future">The Future</h2>
<p>Some questions only time can answer:</p>
<p>Do we still need rural areas like those in Guizhou?</p>
<p>Will these villages eventually become cities?</p>
<p>Where do we go from here?</p>
<p>Perhaps, there will be no more nostalgia for home.</p>
<p>Or:</p>
<p>Maybe, homesickness will be no more.</p>
<p>(Note: The original Chinese phrase &ldquo;再无乡愁&rdquo; conveys a sense that the feeling of longing for one&rsquo;s hometown or homeland might cease to exist. The translation captures this meaning while maintaining the poetic brevity of the original.)</p>
]]></content:encoded>
    </item>
    <item>
      <title>God Sees the Truth, But Waits</title>
      <link>https://jinpeng.cv/en/posts/typecho/131/</link>
      <pubDate>Tue, 06 Dec 2022 17:06:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/131/</guid>
      <description>&lt;p&gt;&lt;em&gt;God Sees the Truth, But Waits&lt;/em&gt; (1872) tells the story of a man wrongly convicted and imprisoned for a murder he did not commit; it is Tolstoy’s parable of forgiveness. Tolstoy’s tale inspired Stephen King’s novella &lt;em&gt;Rita Hayworth and Shawshank Redemption&lt;/em&gt; (1982), which was adapted into the famous 1994 film.&lt;/p&gt;
&lt;p&gt;In the town of Vladimir lived a young merchant named Ivan Dmitrich Aksyonov. He owned two shops and a house of his own.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>God Sees the Truth, But Waits</em> (1872) tells the story of a man wrongly convicted and imprisoned for a murder he did not commit; it is Tolstoy’s parable of forgiveness. Tolstoy’s tale inspired Stephen King’s novella <em>Rita Hayworth and Shawshank Redemption</em> (1982), which was adapted into the famous 1994 film.</p>
<p>In the town of Vladimir lived a young merchant named Ivan Dmitrich Aksyonov. He owned two shops and a house of his own.</p>
<p>Aksyonov was a handsome man with curly blond hair, full of cheer and very fond of singing. In his younger days, he was often invited to drink; when he drank too much, he would become reckless. But after marriage, he gave up alcohol, indulging only occasionally.</p>
<p>One summer, Aksyonov planned to travel to the Nizhny Fair. As he bid farewell to his family, his wife said to him, “Ivan Dmitrich, don’t go today. I had a bad dream about you.”</p>
<p>Aksyonov laughed. “Are you afraid I’ll go carousing at the fair?”</p>
<p>His wife replied, “I don’t know what I fear; I only know I had a bad dream. I dreamed you returned from town, and when you took off your cap, I saw your hair had turned quite gray.”</p>
<p>Aksyonov chuckled. “That’s a good sign,” he said. “See if I don’t sell everything and bring you back gifts from the fair.”</p>
<p>So he said goodbye to his family and set off.</p>
<p>Halfway there, he met a merchant he knew, and they stayed at the same inn overnight. They had tea together and then slept in adjoining rooms.</p>
<p>Aksyonov was not used to sleeping late. Hoping to leave while it was still cool, he woke the driver before dawn and told him to harness the horses.</p>
<p>Then he went to the innkeeper (who lived in a small cottage at the back), settled the bill, and continued his journey.</p>
<p>After traveling about twenty-five miles, he stopped to feed the horses. Aksyonov rested in the hallway of an inn for a while, then stepped onto the porch, ordered a pot of hot tea, and took out his guitar to play.</p>
<p>Suddenly, a troika arrived, its bells jingling, and an official stepped down, followed by two soldiers. He approached Aksyonov and began questioning him—who he was, where he came from. Aksyonov answered fully and said, “Would you like to share a cup of tea with me?” But the official pressed on: “Where did you stay last night? Were you alone, or with another merchant? Did you see the other merchant this morning? Why did you leave the inn before dawn?”</p>
<p>Aksyonov didn’t understand why he was being questioned like this, but he recounted everything that had happened. Then he asked, “Why are you interrogating me as if I were a thief or a robber? I’m traveling for my own business. There’s no need for such questioning.”</p>
<p>The official called the soldiers over and said, “I am the district police officer. I’m questioning you because the merchant who stayed with you at the inn last night was found with his throat cut. We must search your belongings.”</p>
<p>They entered the house. The soldiers and the officer unpacked Aksyonov’s luggage and searched it. Suddenly, the officer pulled a knife from the bag and shouted, “Whose knife is this?”</p>
<p>Aksyonov looked and was horrified to see a bloodstained knife drawn from his bag.</p>
<p>“How did blood get on this knife?”</p>
<p>Aksyonov tried to answer but could barely speak, stammering, “I—don’t know—it’s not mine.” The officer said, “This morning, the merchant was found in bed with his throat slit. You’re the only one who could have done it. The room was locked from the inside, and no one else was there. This bloodstained knife was in your bag, and your face and manner betray you! Tell me how you killed him and how much money you stole.”</p>
<p>Aksyonov swore he hadn’t done it; he hadn’t seen the merchant after they drank tea together; he had no money except his own eight thousand rubles, and the knife wasn’t his. But his voice faltered, his face turned pale, and he trembled with fear as if guilty.</p>
<p>The officer ordered the soldiers to bind Aksyonov and place him in the cart. As they tied his feet and threw him onto the cart, Aksyonov crossed himself and wept. His money and goods were confiscated, and he was taken to the nearest town, where he was imprisoned. In Vladimir, inquiries were made about his character. The town’s merchants and other residents said that while he used to drink and idle away his time, he was a good man. Then the trial began: he was charged with murdering a merchant from Ryazan and stealing twenty thousand rubles from him.</p>
<p>His wife was in despair, not knowing what to believe. Her children were young—one still a nursing infant. She took them to the town where her husband was imprisoned. At first, she wasn’t allowed to see him, but after pleading, she was granted permission. When she saw her husband in prison garb, shackled and confined among thieves and criminals, she fainted and didn’t regain consciousness for a long time. Then she pulled the children close and sat beside her husband. She told him about home and asked what had happened. He told her everything, and she asked, “What can we do now?”</p>
<p>“We must petition the Tsar not to let an innocent man perish.”</p>
<p>His wife told him she had already submitted a petition to the Tsar, but it was rejected.</p>
<p>Aksyonov didn’t answer, only looking despondent.</p>
<p>Then his wife said, “My dream about your hair turning gray wasn’t for nothing. Do you remember? You shouldn’t have left that day.” She ran her fingers through his hair and said, “Dearest Vanya, tell your wife the truth—was it you?”</p>
<p>“So even you doubt me!” Aksyonov covered his face with his hands and wept. A soldier then came and said his wife and children had to leave. Aksyonov bid his family farewell for the last time.</p>
<p>After they left, Aksyonov recalled their words. Remembering that even his wife had doubted him, he thought, <em>It seems only God knows the truth. We can only plead with Him, and only He can grant mercy.</em></p>
<p>Aksyonov stopped writing petitions, abandoned all hope, and prayed only to God.</p>
<p>He was sentenced to flogging and hard labor in the mines. So he was beaten with knotted lashes, and once the wounds healed, he was exiled to Siberia with other convicts.</p>
<p>Aksyonov lived as a convict in Siberia for twenty-six years. His hair turned snow-white, his beard grew long and thin, and gray streaked through it. He lost all joy; his back bent; he walked slowly, spoke little, and never laughed, only praying often.</p>
<p>In prison, Aksyonov learned to make boots, earning a little money, which he used to buy <em>The Lives of the Saints</em>. He read it when the prison was well-lit; on Sundays, he read in the prison church and sang in the choir, for his voice was still good.</p>
<p>The prison authorities liked Aksyonov for his meekness, and his fellow prisoners respected him—they called him “Grandfather” and “The Saint.” When they had requests for the authorities, they always asked Aksyonov to speak for them. When quarrels arose among the prisoners, they turned to Aksyonov to settle disputes and judge matters.</p>
<p>No news came from Aksyonov’s family, and he didn’t know if his wife and children were still alive.</p>
<p>One day, a new group of convicts arrived. That evening, the old prisoners gathered around the newcomers, asking where they were from and what crimes they’d committed. Only Aksyonov sat nearby, listening gloomily.</p>
<p>Among the new convicts was a tall, sturdy man of about sixty, with a short gray beard. He was telling the others why he’d been arrested.</p>
<p>“Well, friends,” he said, “I was arrested for stealing a horse. I just unhitched one from a sleigh, and they accused me of theft. I said I only meant to ride it home quickly and then let it go. Besides, the driver was a friend. So I said, ‘It’s nothing.’ But they said, ‘You stole the horse.’ Yet they couldn’t say how or where I stole it. True, I’ve done wrong before—I should’ve been sent here long ago, but I wasn’t caught then. Now I’m here for no reason… But I’m lying to you. I’ve been to Siberia before, though not for long.”</p>
<p>“Where are you from?” someone asked.</p>
<p>“From Vladimir. My family’s from there. My name’s Makar, and they call me Semyonich.”</p>
<p>Aksyonov looked up and said, “Tell me, Semyonich, do you know anything about the Aksyonov family in Vladimir? Are they still alive?”</p>
<p>“Know them? Of course! The Aksyonovs are rich, though their father’s in Siberia—seems he’s a convict like us! And you, Grandfather, how’d you end up here?”</p>
<p>Aksyonov didn’t like speaking of his misfortune. He sighed and said, “For my sins, I’ve been in prison twenty-six years.”</p>
<p>“What sins?” asked Makar Semyonich.</p>
<p>But Aksyonov only said, “Well, well—I must’ve deserved it!” He meant to say no more, but his companions told the newcomers how Aksyonov had come to Siberia—how someone had killed a merchant, planted the knife in his bag, and how Aksyonov had been wronged.</p>
<p>When Makar Semyonich heard this, he stared at Aksyonov, slapped his knee, and exclaimed, “Well, I never! Truly amazing! And you’re so old now, Grandfather!”</p>
<p>The others asked why he was so surprised, whether he’d seen Aksyonov before, but Makar Semyonich didn’t answer. He only said, “What a small world, meeting here like this!”</p>
<p>These words made Aksyonov wonder if this man knew who’d killed the merchant. So he asked, “Perhaps, Semyonich, you’ve heard of that affair or seen me before?”</p>
<p>“How could I not hear? The world’s full of rumors. But it was so long ago, I’ve forgotten what I heard.”</p>
<p>“Maybe you heard who killed the merchant?” asked Aksyonov.</p>
<p>Makar Semyonich laughed and replied, “Must’ve been the one whose bag the knife was found in! If someone else hid it there, as the saying goes, ‘Catch the thief with the goods, or he’s no thief.’ Who could slip a knife into your bag under your head without waking you?”</p>
<p>Hearing this, Aksyonov was certain this man was the murderer. He stood and walked away. Aksyonov didn’t sleep that night. He felt wretched, and scenes from his life flashed before him—his wife as she’d looked when he left for the fair, her face and eyes vivid in his mind, her voice laughing and talking. Then he saw his children, small as they’d been then, one in a little cloak, the other at his mother’s breast. He remembered his younger, happier self, sitting on the inn porch playing the guitar, carefree. He recalled the flogging, the executioner, the onlookers, the chains, the prisoners, the twenty-six years of prison life, his premature aging. The pain of it all made him long for death.</p>
<p><em>All because of that villain!</em> Aksyonov thought. His anger at Makar Semyonich burned so fiercely he craved vengeance, even at the cost of his own life. He prayed all night but found no peace. The next day, he avoided Makar Semyonich, refusing even to look at him.</p>
<p>Two weeks passed. Aksyonov couldn’t sleep at night, tormented, unsure what to do.</p>
<p>One evening, as he paced the prison, he noticed dirt spilling from under a sleeping shelf. He stopped to look. Suddenly, Makar Semyonich crawled out from under the shelf and stared at Aksyonov in terror. Aksyonov tried to walk past, pretending not to see, but Makar grabbed his hand and confessed he’d dug a tunnel under the wall. He asked Aksyonov to carry out the dirt in his boots and empty them each day when the prisoners went to work.</p>
<p>“Old man, if you keep quiet, you can escape too. If you talk, they’ll flog me to death, but I’ll kill you first.”</p>
<p>Aksyonov trembled with rage, glaring at his enemy. He pulled his hand free and said, “I don’t want to escape, and you needn’t kill me. You killed me long ago! As for what I should do—God will guide me.”</p>
<p>The next day, as the prisoners marched to work, guards noticed one emptying dirt from his boots. The prison was searched, and the tunnel found. The warden interrogated the prisoners, demanding to know who’d dug it. All denied knowledge. Those who knew wouldn’t betray Makar Semyonich, knowing he’d be flogged nearly to death. Finally, the warden turned to Aksyonov, whom he considered honest:</p>
<p>“You’re a righteous old man. Before God, tell me—who dug that hole?”</p>
<p>Makar Semyonich stood as if indifferent, not even glancing at Aksyonov. Aksyonov’s lips and hands shook; for a long moment, he couldn’t speak. He thought, <em>Should I shield the man who ruined my life? Let him pay for my suffering. But if I speak, they’ll flog him to death—and what if I’m wrong? What good would it do me?</em></p>
<p>“Well, old man?” the warden repeated. “Tell the truth—who dug the tunnel?”</p>
<p>Aksyonov glanced at Makar Semyonich and said, “I cannot say, sir. It’s not God’s will! Do as you please—I’m in your hands.”</p>
<p>No matter how the warden pressed, Aksyonov said no more, and the matter was dropped.</p>
<p>That night, as Aksyonov lay half-asleep, someone crept up and sat on his bunk. Peering through the dark, he recognized Makar.</p>
<p>“What more do you want?” Aksyonov asked. “Why are you here?”</p>
<p>Makar Semyonich was silent. Aksyonov sat up. “What do you want? Go, or I’ll call the guards!”</p>
<p>Makar leaned close and whispered, “Ivan Dmitrich, forgive me!”</p>
<p>“For what?” asked Aksyonov.</p>
<p>“I killed the merchant and hid the knife in your things. I meant to kill you too, but I heard noise outside, so I slipped the knife into your bag and fled through the window.”</p>
<p>Aksyonov was silent, unsure what to say. Makar slid from the bunk and knelt. “Ivan Dmitrich,” he pleaded, “forgive me! For God’s sake, forgive me! I’ll confess to the murder—you’ll be freed and can go home.”</p>
<p>“Easy for you to say,” Aksyonov replied. “But I’ve suffered twenty-six years for you. Where can I go now? My wife is dead, my children have forgotten me. I’ve nowhere…”</p>
<p>Makar didn’t rise but knocked his head on the floor. “Ivan Dmitrich, forgive me!” he cried. “When they flogged me with the knotted ropes, it hurt less than seeing you now… You pitied me, didn’t betray me. Forgive me, wretch that I am!” He began to weep.</p>
<p>Hearing his sobs, Aksyonov wept too. “God will forgive you!” he said. “Perhaps I’m a hundred times worse than you.” With these words, his heart lightened, and his longing for home faded. He no longer wished to leave prison, only to await the end of his sentence.</p>
<p>Though Aksyonov spoke thus, Makar Semyonich confessed his crime. But by the time the order for Aksyonov’s release came, he was already dead.</p>
<h2 id="about-the-author"><strong>About the Author</strong></h2>
<p>Leo Nikolayevich Tolstoy (Russian: Лев Николаевич Толстой, romanized: Lev Nikolayevich Tolstoy; English: Leo Nikolayevich Tolstoy; born September 9, 1828 [Old Style: August 28] – died November 20, 1910 [Old Style: November 7]) was born in Yasnaya Polyana, Russia.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Gossip is a fearful thing.</title>
      <link>https://jinpeng.cv/en/posts/typecho/123/</link>
      <pubDate>Tue, 29 Nov 2022 11:45:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/123/</guid>
      <description>&lt;p&gt;Having a filter placed over my mouth feels terrible! I&amp;rsquo;m not a gun that kills people stealthily!&lt;/p&gt;
&lt;p&gt;Some recent events have left me feeling bewildered, mostly due to the pandemic. One category involves the chaos in grassroots epidemic prevention efforts. Many people who rarely go out have their only reason for leaving home being to gather for mass nucleic acid testing—and end up getting infected as a result. This issue has persisted since the outbreak began, yet mandatory city-wide testing has continued for a full three years. It&amp;rsquo;s not that no one has raised this concern, but it wasn&amp;rsquo;t until yesterday that Guangzhou announced that those with no need to go out no longer have to undergo testing.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Having a filter placed over my mouth feels terrible! I&rsquo;m not a gun that kills people stealthily!</p>
<p>Some recent events have left me feeling bewildered, mostly due to the pandemic. One category involves the chaos in grassroots epidemic prevention efforts. Many people who rarely go out have their only reason for leaving home being to gather for mass nucleic acid testing—and end up getting infected as a result. This issue has persisted since the outbreak began, yet mandatory city-wide testing has continued for a full three years. It&rsquo;s not that no one has raised this concern, but it wasn&rsquo;t until yesterday that Guangzhou announced that those with no need to go out no longer have to undergo testing.</p>
<p>Another issue is our freedom of speech on social media platforms. Recently, I stumbled upon some drama involving Bilibili content creator &ldquo;Manufacturer Ao,&rdquo; a gaming video uploader, and came across something particularly infuriating: comments in his section were automatically changed to &ldquo;Good good good.&rdquo; I also learned that for LexBurner, comments deemed less friendly were automatically altered to &ldquo;Welcome home.&rdquo; It feels like someone has fitted a silencer to our mouths—though perhaps that analogy isn&rsquo;t quite right. A better comparison might be removing the trigger linkage from a gun or modifying it so that pulling the trigger shoots out candy instead. But even that feels off—we are free individuals, not guns perpetually aimed at others.</p>
<p>The pandemic shows no signs of improvement; if anything, it&rsquo;s worsening. Meanwhile, nucleic acid testing companies are raking in massive profits. As a result, the comment section under our Foreign Ministry spokesperson&rsquo;s Weibo posts was flooded with phrases like &ldquo;Good good good,&rdquo; &ldquo;Mhm mhm,&rdquo; and &ldquo;Right right right&rdquo; by the masses. The fact that comment filtering wasn&rsquo;t enabled gave me a fleeting sense of freedom—kudos to Jian Ge!</p>
<p>This series of events reminded me of the story of the &ldquo;Khwarazmian messengers&rdquo; and the &ldquo;clarinet&rdquo; placed in a swimming pool to generate ultrasonic waves and heat cold water. Regarding the former, the problem persists: even if higher authorities don&rsquo;t demand it, lower levels assume that&rsquo;s what the higher-ups want. I don&rsquo;t know how to solve this. As for the latter, the truth is that the clarinet serves no purpose other than to slice someone&rsquo;s backside.</p>
<p>I&rsquo;m not a fool, nor am I rude. When I see something wrong or unjust, I speak up for justice. It&rsquo;s normal for people to hold different opinions—that&rsquo;s part of the process of communication and exchanging viewpoints. Yet the reality is that certain harsh truths aren&rsquo;t allowed to be spoken because they might upset someone, so criticism is suppressed. Praise is amplified, while dissent is hidden through selective comment moderation.</p>
<p>But why would I even want to voice such harsh opinions? In truth, I rarely do.</p>
<p>As far back as the Han Dynasty, Zhuge Liang advised in <em>The Memorial to the Emperor Before Going to War</em>:</p>
<blockquote>
<p>&ldquo;It is truly fitting to open wide the path of remonstrance, to glorify the virtuous legacy of the late emperor, and to inspire the morale of those with noble aspirations. One should not belittle oneself, distort analogies, or block the path of loyal counsel.&rdquo;</p>
</blockquote>
<p>I greatly admire my classmate Xingxing, who loves this world, has her own ideals, and strives to plant seeds of goodness with her modest efforts.</p>
<p>Yet I feel increasingly powerless. When sincere criticism is labeled as malicious incitement, I can only helplessly accept their &ldquo;free criticism&rdquo; of that sincerity. When genuine praise is dismissed as being &ldquo;biased&rdquo; or &ldquo;little pink,&rdquo; I can only resign myself to this &ldquo;free critique.&rdquo;</p>
<p>This society is beautiful, but my spiritual world and my material world have diverged.</p>
<p>I love my country and want to make our society better. I want the 24-character core socialist values to be not just deeply ingrained in people&rsquo;s hearts but also reflected in every corner of life. But I am too insignificant to contribute anything meaningful. Arguing with others yields no positive outcomes and solves no fundamental problems. Adopting a non-committal stance toward certain issues seems like the best approach I can take.</p>
<p>Let me ride on the course of nature to my final rest, as happy with what comes from Heaven as with what I doubt not.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Scientific Questions</title>
      <link>https://jinpeng.cv/en/posts/typecho/122/</link>
      <pubDate>Mon, 14 Nov 2022 11:17:55 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/122/</guid>
      <description>&lt;p&gt;In 2005, &lt;em&gt;Science&lt;/em&gt; magazine proposed 100 scientific questions, while China&amp;rsquo;s key scientific concerns are collected and released annually by the China Association for Science and Technology. Below is the current list:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Top 10 Cutting-Edge Scientific Questions:&lt;/strong&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;How can early diagnosis of Alzheimer&amp;rsquo;s disease during the asymptomatic stage be achieved?&lt;/li&gt;
&lt;li&gt;How can trustworthy, reliable, and interpretable AI technical approaches and solutions be realized?&lt;/li&gt;
&lt;li&gt;How can atomic-scale precision fabrication and structural regulation be achieved to construct future information-functional devices?&lt;/li&gt;
&lt;li&gt;What challenges and problems does the management of emerging pollutants face?&lt;/li&gt;
&lt;li&gt;How can automated, intelligent, and precise chemical synthesis be realized?&lt;/li&gt;
&lt;li&gt;How can multi-omics integration be used to study complex biological traits?&lt;/li&gt;
&lt;li&gt;Can controlled atomic-scale removal of material surfaces be achieved?&lt;/li&gt;
&lt;li&gt;How can comprehensive and precise evaluation of urban integrated transportation systems and infrastructure resilience be conducted?&lt;/li&gt;
&lt;li&gt;How do black holes in the universe form and evolve?&lt;/li&gt;
&lt;li&gt;What are the key scientific issues limiting uranium extraction from seawater?&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;Top 10 Engineering and Technical Challenges:&lt;/strong&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>In 2005, <em>Science</em> magazine proposed 100 scientific questions, while China&rsquo;s key scientific concerns are collected and released annually by the China Association for Science and Technology. Below is the current list:</p>
<p><strong>Top 10 Cutting-Edge Scientific Questions:</strong></p>
<ol>
<li>How can early diagnosis of Alzheimer&rsquo;s disease during the asymptomatic stage be achieved?</li>
<li>How can trustworthy, reliable, and interpretable AI technical approaches and solutions be realized?</li>
<li>How can atomic-scale precision fabrication and structural regulation be achieved to construct future information-functional devices?</li>
<li>What challenges and problems does the management of emerging pollutants face?</li>
<li>How can automated, intelligent, and precise chemical synthesis be realized?</li>
<li>How can multi-omics integration be used to study complex biological traits?</li>
<li>Can controlled atomic-scale removal of material surfaces be achieved?</li>
<li>How can comprehensive and precise evaluation of urban integrated transportation systems and infrastructure resilience be conducted?</li>
<li>How do black holes in the universe form and evolve?</li>
<li>What are the key scientific issues limiting uranium extraction from seawater?</li>
</ol>
<p><strong>Top 10 Engineering and Technical Challenges:</strong></p>
<ol>
<li>How can key technologies for deep-sea aquaculture facilities in China be advanced?</li>
<li>How can large-scale, low-cost geological storage of coal mine waste (solid, liquid, and gas) be achieved while ensuring ecological synergy?</li>
<li>How can a comprehensive treatment system for cardiogenic shock be established?</li>
<li>How can the engineering application of all-solid-state lithium-metal batteries be realized?</li>
<li>How can high-precision, complex, hard-surface conformal circuits be achieved?</li>
<li>How can the technical challenges of constructing ultra-long, deeply buried tunnels in highly complex plateau geology be overcome while ensuring safety and performance?</li>
<li>How can the modeling and characterization of high-temperature, cross-medium thermo-mechanical-chemical coupling be resolved?</li>
<li>How can helium be extracted from low-grade helium-bearing natural gas?</li>
<li>How can remote sensing technology be leveraged to effectively diagnose, identify, and assess Earth&rsquo;s health?</li>
<li>How can ultra-large-aperture spaceborne antennas be deployed, assembled, and constructed in orbit?</li>
</ol>
<p><strong>Top 10 Industrial Technology Issues:</strong></p>
<ol>
<li>How can a clinical translation system for cell and gene therapies be established?</li>
<li>How can memory-computing integrated chips be engineered and industrialized?</li>
<li>How can the coal-fired power industry achieve low-carbon development under carbon neutrality goals?</li>
<li>How can standardized design, automated production, robotic construction, and prefabricated building methods systematically address industrialization and high energy consumption in construction?</li>
<li>How can independently controllable industrial design software be developed?</li>
<li>How can multi-source data be used to achieve precise forecasting of crop diseases and pests?</li>
<li>How can adiponitrile be synthesized efficiently and safely using non-petroleum raw materials?</li>
<li>Why has wheat crown rot recently become a severe epidemic in China’s major wheat-producing regions, and how can it be scientifically and effectively controlled?</li>
<li>How can large-scale variable-speed pumped-storage hydroelectric units be developed?</li>
</ol>
<p>How to Break Through the Domestic &ldquo;Chokepoint&rdquo; Technology of High-Quality Para-Aramid Fiber to Meet the Demands of High-End Applications?</p>
<p>The localization of high-performance para-aramid fiber—a critical material for advanced applications—faces significant technical bottlenecks. To overcome these challenges, it is essential to focus on key areas:</p>
<ol>
<li><strong>Core Technology Innovation</strong>: Strengthen R&amp;D in polymerization, spinning, and heat treatment processes to achieve stable production of high-strength, high-modulus fibers.</li>
<li><strong>Equipment and Process Optimization</strong>: Develop precision manufacturing equipment and refine production techniques to enhance consistency and yield.</li>
<li><strong>Raw Material Independence</strong>: Reduce reliance on imported intermediates by establishing domestic supply chains for key monomers like p-phenylenediamine (PPD) and terephthaloyl chloride (TPC).</li>
<li><strong>Collaborative Ecosystem</strong>: Foster partnerships between academia, research institutions, and industry to accelerate technology transfer and industrialization.</li>
<li><strong>Standardization and Certification</strong>: Align with international quality benchmarks to ensure competitiveness in aerospace, bulletproof armor, and other high-end markets.</li>
</ol>
<p>By addressing these aspects, China can achieve self-sufficiency in premium para-aramid production, breaking foreign monopolies and securing supply chain resilience for strategic sectors.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Quick Translation with MouseInc or ImTip Combined with Saladict</title>
      <link>https://jinpeng.cv/en/posts/typecho/121/</link>
      <pubDate>Wed, 26 Oct 2022 20:14:32 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/121/</guid>
      <description>&lt;p&gt;Sometimes, frequent translation between Chinese and English is necessary. The only translation tools on my personal computer are the Eudic dictionary and the Saladict browser extension.&lt;/p&gt;
&lt;p&gt;Eudic always feels sluggish when launching, making it a bit unpleasant to use. On the other hand, Saladict works seamlessly in the browser, providing a much smoother experience. Although Saladict supports clipboard reading with a global hotkey (I set mine to &lt;code&gt;ALT+T&lt;/code&gt;), it still requires an extra &lt;code&gt;CTRL+C&lt;/code&gt; press each time, which feels inconvenient.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Sometimes, frequent translation between Chinese and English is necessary. The only translation tools on my personal computer are the Eudic dictionary and the Saladict browser extension.</p>
<p>Eudic always feels sluggish when launching, making it a bit unpleasant to use. On the other hand, Saladict works seamlessly in the browser, providing a much smoother experience. Although Saladict supports clipboard reading with a global hotkey (I set mine to <code>ALT+T</code>), it still requires an extra <code>CTRL+C</code> press each time, which feels inconvenient.</p>
<img alt="image-20221026195957505" loading="lazy" src="https://dagwbl.oss-cn-chengdu.aliyuncs.com/picture/obsidian/image-20221026195957505.png"><p>The official tutorial suggests integrating Saladict with tools like Quicker or UTools for faster lookups. However, installing additional software isn’t ideal for me—I’ve tried both before, and while they offer rich customization, I simply don’t prefer them.</p>
<p>Later, I experimented with AutoHotKey, but again, running an extra program wasn’t to my liking.</p>
<p>Then, I glanced at my taskbar icons:</p>
<img alt="image-20221026193940313" loading="lazy" src="https://dagwbl.oss-cn-chengdu.aliyuncs.com/picture/obsidian/image-20221026193940313.png"><p>I noticed that both <strong>MouseInc</strong> and <strong>ImTip</strong> offer powerful hotkey customization, making them perfect for achieving what I needed.</p>
<h3 id="mouseinc"><strong>MouseInc</strong></h3>
<p>This is a mouse gesture tool—once you get used to it, there’s no going back. The documentation can be found here: <a href="https://docs.shuax.com/MouseInc/#/">MouseInc Manual (shuax.com)</a>.</p>
<p>Here’s how I configured it: I replaced the built-in &ldquo;Baidu Search&rdquo; gesture (<code>S</code>) with a shortcut for Saladict.</p>
<img alt="image-20221026194425643" loading="lazy" src="https://dagwbl.oss-cn-chengdu.aliyuncs.com/picture/obsidian/image-20221026194425643.png"><p>That’s it! Here’s a demo of how it works:</p>
<img alt="GIF 2022-10-26 20-12-59" loading="lazy" src="https://dagwbl.oss-cn-chengdu.aliyuncs.com/picture/obsidian/GIF%202022-10-26%2020-12-59.gif"><h3 id="imtip"><strong>ImTip</strong></h3>
<p>This is an input method indicator. Since I frequently switch between Chinese and English input—and I usually hide my taskbar—it’s hard to tell whether I’m in full-width or half-width mode. ImTip solves this problem perfectly. The small floating window following the cursor in the GIF above is from this tool.</p>
<p>Documentation here: <a href="https://imtip.aardio.com/">ImTip (Input Method Tracker) - Official Site (aardio.com)</a>.</p>
<p>ImTip also provides a &ldquo;Super Hotkey&rdquo; feature, allowing me to skip the copy step and look up words instantly.</p>
<p>Just enable <strong>Super Hotkey</strong> and add the following configuration:</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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-c" data-lang="c"><span class="line"><span class="cl"><span class="c1">// Saladict Hotkey  
</span></span></span><span class="line"><span class="cl"><span class="p">[</span><span class="s">&#34;Alt+T&#34;</span><span class="p">]</span> <span class="o">=</span> <span class="nf">function</span><span class="p">(</span><span class="n">hFocus</span><span class="p">){</span>  
</span></span><span class="line"><span class="cl">    <span class="n">key</span><span class="p">.</span><span class="nf">up</span><span class="p">(</span><span class="s">&#34;ALT&#34;</span><span class="p">);</span>  
</span></span><span class="line"><span class="cl">    <span class="n">key</span><span class="p">.</span><span class="nf">combine</span><span class="p">(</span><span class="s">&#34;CTRL&#34;</span><span class="p">,</span><span class="s">&#34;C&#34;</span><span class="p">);</span> <span class="c1">// Copy  
</span></span></span><span class="line"><span class="cl">    <span class="c1">//key.up(&#34;CTRL&#34;);  
</span></span></span><span class="line"><span class="cl">    <span class="n">key</span><span class="p">.</span><span class="nf">combine</span><span class="p">(</span><span class="s">&#34;ALT&#34;</span><span class="p">,</span><span class="s">&#34;T&#34;</span><span class="p">);</span> <span class="c1">// Look up  
</span></span></span><span class="line"><span class="cl"><span class="p">};</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>Now, pressing <code>ALT+T</code> directly triggers the translation lookup.</p>
<p>Actually, when Old Niu&rsquo;s keyboard broke before, this method could also have been used—achieving the blocking effect through hotkey mapping.</p>
]]></content:encoded>
    </item>
    <item>
      <title>The First Thing to Do When Bored</title>
      <link>https://jinpeng.cv/en/posts/typecho/119/</link>
      <pubDate>Thu, 13 Oct 2022 10:18:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/119/</guid>
      <description>&lt;h2 id=&#34;about-52pojie&#34;&gt;About 52PoJie&lt;/h2&gt;
&lt;p&gt;52PoJie (which means &amp;ldquo;I Love Cracking&amp;rdquo; in Chinese) and GitHub are both websites. The URL for 52PoJie is &lt;a href=&#34;https://www.52pojie.cn/&#34;&gt;吾爱破解 - LCG - LSG|安卓破解|病毒分析|www.52pojie.cn&lt;/a&gt;. As the name suggests, this is a website focused on cracking (reverse engineering). The community mainly consists of several types of people:&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="about-52pojie">About 52PoJie</h2>
<p>52PoJie (which means &ldquo;I Love Cracking&rdquo; in Chinese) and GitHub are both websites. The URL for 52PoJie is <a href="https://www.52pojie.cn/">吾爱破解 - LCG - LSG|安卓破解|病毒分析|www.52pojie.cn</a>. As the name suggests, this is a website focused on cracking (reverse engineering). The community mainly consists of several types of people:</p>
<ol>
<li><strong>True technical experts</strong> who share various techniques and self-written scripts or programs while also enthusiastically answering others&rsquo; questions.</li>
<li><strong>Learners</strong> who come to study these technologies.</li>
<li><strong>Reposters</strong> who redistribute various cracked software.</li>
<li><strong>Freeloaders</strong> who do not contribute to the website&rsquo;s content but only search for relevant resources when needed.</li>
</ol>
<blockquote>
<p>For a brief introduction to reverse engineering, you can refer to the first part of the following article:</p>
<p><a href="https://zhuanlan.zhihu.com/p/71140571">Reverse Engineering (Part 1) - Zhihu (zhihu.com)</a></p>
</blockquote>
<p>The overall atmosphere of the website is quite harmonious. I belong to the fourth category—freeloaders. For people like me, the site only requires searching and browsing, so there’s no learning barrier unless you aspire to become a technical expert, which is a whole other matter.</p>
<hr>
<h2 id="about-github">About GitHub</h2>
<p>GitHub is a groundbreaking website that has made social programming a reality. It is also a development community and the most mainstream code hosting platform on the planet.<br>
Its URL is: <a href="https://github.com/">https://github.com/</a></p>
<blockquote>
<p>If you&rsquo;re in certain regions (e.g., school networks), you might need alternative methods to access the site. Additionally, English is the default language for communication.</p>
<p>A domestic alternative with similar functionality is <a href="https://gitee.com/">https://gitee.com/</a>.</p>
</blockquote>
<p>Anyone can create repositories on GitHub and choose whether to make them public. Repositories are typically used to store code files, but they can also hold other documents—for example, I store my graduation thesis in a private repository. One of its core features is version control, though this can be ignored if you&rsquo;re not actively developing.</p>
<blockquote>
<p><a href="https://www.yiibai.com/git/what_is_version_control.html">What is Version Control? - Git Tutorial (yiibai.com)</a></p>
</blockquote>
<p>Since most well-known repositories are public (and it’s their openness that makes them famous), anyone can easily view the source code of public repositories. This transparency means malicious code is rare, and the community is generally harmonious, consisting of people from all over the world.</p>
<p>The user base here is mainly divided into two groups: <strong>contributors</strong> and <strong>freeloaders</strong>. Veteran freeloaders often evolve into contributors. I fall into the category of a &ldquo;contributor with little contribution,&rdquo; while many others here are highly skilled.</p>
<p>First, we must learn to be competent freeloaders—meaning we should learn to utilize the resources available. Fortunately, this is simple: just use the search bar.</p>
<p>I’ve bookmarked many repositories created by others:</p>
<img alt="image-20221013100529865" loading="lazy" src="https://dagwbl.oss-cn-chengdu.aliyuncs.com/picture/obsidian/image-20221013100529865.png"><p>Of course, truly mastering everything is impossible because GitHub is not static—new content is contributed daily, making it a constantly evolving platform. The concept of lifelong learning is deeply embodied here.</p>
<p>Since you&rsquo;re not by my side, I can&rsquo;t give you a detailed explanation. For this kind of thing, it&rsquo;s better to have a concrete example or a specific goal to work toward—that way, you&rsquo;ll gain a more hands-on understanding and a deeper personal experience.</p>
]]></content:encoded>
    </item>
    <item>
      <title>The Moon Sets, the Sun Rises – Set Sail and Embark on a New Journey</title>
      <link>https://jinpeng.cv/en/posts/typecho/116/</link>
      <pubDate>Wed, 12 Oct 2022 23:40:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/116/</guid>
      <description>&lt;p&gt;&lt;em&gt;By Tan Xi&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Morning blossoms fade by dusk, fleeting as a white steed’s shadow. Life moves swiftly, with hurried steps and passing faces. Looking back, the youth once carried dreams as vast as spring’s meadows, hearts set on golden honors, enduring years of diligent study, their pens shaping the world, their aspirations boundless. Today, those same youths see their names inscribed on the雁塔 (a symbol of academic success), unrestrained as the open sea, unafraid of gathering storm clouds, toasting the east wind with wine. The years ahead will witness the close of three high school years, like the moon setting at dawn, and the beginning of a new voyage at Yunnan Normal University.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>By Tan Xi</em></p>
<p>Morning blossoms fade by dusk, fleeting as a white steed’s shadow. Life moves swiftly, with hurried steps and passing faces. Looking back, the youth once carried dreams as vast as spring’s meadows, hearts set on golden honors, enduring years of diligent study, their pens shaping the world, their aspirations boundless. Today, those same youths see their names inscribed on the雁塔 (a symbol of academic success), unrestrained as the open sea, unafraid of gathering storm clouds, toasting the east wind with wine. The years ahead will witness the close of three high school years, like the moon setting at dawn, and the beginning of a new voyage at Yunnan Normal University.</p>
<p>The sorrow of parting swells as the sun dips low; a chant of farewell points eastward to the horizon. Goodbyes are a solitary journey made together. All gatherings must end. Reflecting on three years of high school, we recited lessons beneath cherry blossoms in early spring, sweated on sun-scorched soccer fields, laughed through chilly autumn breezes during every break, and lined up for hot water while snowflakes drifted outside the window. Perhaps one day, I’ll stumble upon an unsolved math problem, furrow my brow, and realize those late-night study sessions are long gone. A pang of loss strikes—&ldquo;I’d buy osmanthus wine to relive those days, but it’s never the same as youth’s fleeting joy.&rdquo; Mountains and rivers behind us, the banquet of our shared time now rings its closing bell. We know parting is life’s unavoidable lesson, and in this graduation ceremony where dreams take flight, countless farewells transform into heartfelt wishes for reunion at the summit. A single line—&ldquo;Fear not the road ahead lacks friends; the world knows your name&rdquo;—speaks more than volumes.</p>
<p>Three rains converge, winds and clouds stir across the land; meeting is an unseen force gathering momentum. Grateful for Yunnan Normal University’s embrace, three years have led to this serendipitous encounter. Farewell is not an end, but meeting is the start of all things: winter meets spring, bringing warm sun; poetry meets wine, birthing distant horizons; I meet Yunnan Normal University, charting a new course for my dreams. &ldquo;As the south blooms in splendor, we meet again in the season of falling flowers.&rdquo; For the sake of our ideals, we shoulder our bags, willing to leave home, crafting prose as vast as mountains, writing brilliance with our pens, encountering new vistas, venturing into wider worlds. On Yunnan Normal University’s stage, one dream after another blossoms along its thriving path. From distant corners we come, having traversed separate landscapes, yet choosing to gather here—fate’s unseen hand at work. We do not know when we’ll meet, but we stand ready for every possibility. Sincerity can split metal and stone; thus, meeting Yunnan Normal University is both a long-planned homecoming and an opportunity poised to unfold.</p>
<p>Though the Northern Sea is vast, it can be reached by soaring on the wind. Though the morning sun has passed, the evening glow is yet to come.</p>
<p>Parting comes because youth, clad in bright attire and riding spirited steeds, finds the path of ideals still unfolding. Our meeting was once marked by fervent vows and noble pursuits—cleansing the murky and uplifting the pure—a refusal to let our golden years slip away.</p>
<p>As we walk upon the cultural soil of Shida, the surroundings grow unfamiliar, and relationships become more diverse. Yet, our horizons broaden, and our vision expands. The dividends of education manifest in our generation. We are not weary travelers rushing through the dust, but steadfast dream-chasers with unwavering steps.</p>
<p>The past is beyond recall, but the future remains full of promise. May we all encounter better versions of ourselves at Shida.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Another Big Shot Discovered—Xie Yihui</title>
      <link>https://jinpeng.cv/en/posts/typecho/114/</link>
      <pubDate>Wed, 14 Sep 2022 11:45:27 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/114/</guid>
      <description>&lt;p&gt;As usual, let&amp;rsquo;s go straight to his website:&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://yihui.org/&#34;&gt;Yihui Xie | 谢益辉&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Below is the introduction from his homepage:&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;I’m a software engineer &lt;a href=&#34;https://yihui.org/todo/&#34;&gt;working&lt;/a&gt; at &lt;a href=&#34;https://www.rstudio.com/&#34;&gt;RStudio, PBC&lt;/a&gt;. I earned my PhD from the Department of Statistics, Iowa State University. My &lt;a href=&#34;https://lib.dr.iastate.edu/etd/13518/&#34;&gt;thesis&lt;/a&gt; was &lt;em&gt;Dynamic &lt;a href=&#34;https://github.com/ggobi/cranvas&#34;&gt;Graphics&lt;/a&gt; and &lt;a href=&#34;https://yihui.org/knitr/&#34;&gt;Reporting&lt;/a&gt; for Statistics&lt;/em&gt;, advised by &lt;a href=&#34;https://www.dicook.org/&#34;&gt;Di Cook&lt;/a&gt; and &lt;a href=&#34;https://www.stat.iastate.edu/people/heike-hofmann&#34;&gt;Heike Hofmann&lt;/a&gt;. I have developed a few R packages either seriously or for &lt;a href=&#34;https://cran.rstudio.com/package=fun&#34;&gt;fun&lt;/a&gt; (or both), such as &lt;a href=&#34;https://yihui.org/knitr/&#34;&gt;knitr&lt;/a&gt;, &lt;a href=&#34;https://yihui.org/animation/&#34;&gt;animation&lt;/a&gt;, &lt;a href=&#34;https://bookdown.org/&#34;&gt;bookdown&lt;/a&gt;, &lt;a href=&#34;https://github.com/rstudio/blogdown&#34;&gt;blogdown&lt;/a&gt;, &lt;a href=&#34;https://github.com/rstudio/pagedown&#34;&gt;pagedown&lt;/a&gt;, &lt;a href=&#34;https://slides.yihui.org/xaringan/&#34;&gt;xaringan&lt;/a&gt;, and &lt;a href=&#34;https://yihui.org/tinytex/&#34;&gt;tinytex&lt;/a&gt;. I founded a Chinese website called “&lt;a href=&#34;https://cosx.org/&#34;&gt;Capital of Statistics&lt;/a&gt;” in 2006, which has grown into a large online community on statistics. I initiated the Chinese R conference in 2008. I’m a big fan of &lt;a href=&#34;https://github.com/yihui&#34;&gt;GitHub&lt;/a&gt;, &lt;a href=&#34;https://www.lyx.org/&#34;&gt;LyX&lt;/a&gt; and &lt;a href=&#34;https://pandoc.org/&#34;&gt;Pandoc&lt;/a&gt;. I hate IE. I fall asleep when I see beamer slides, and I yell at people who use &lt;code&gt;\\textbf{}&lt;/code&gt; to write &lt;code&gt;\\title{}&lt;/code&gt;. I know I cannot eat code, so I cook almost every day to stay away from my computer for two hours.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>As usual, let&rsquo;s go straight to his website:</p>
<p><a href="https://yihui.org/">Yihui Xie | 谢益辉</a></p>
<p>Below is the introduction from his homepage:</p>
<hr>
<p>I’m a software engineer <a href="https://yihui.org/todo/">working</a> at <a href="https://www.rstudio.com/">RStudio, PBC</a>. I earned my PhD from the Department of Statistics, Iowa State University. My <a href="https://lib.dr.iastate.edu/etd/13518/">thesis</a> was <em>Dynamic <a href="https://github.com/ggobi/cranvas">Graphics</a> and <a href="https://yihui.org/knitr/">Reporting</a> for Statistics</em>, advised by <a href="https://www.dicook.org/">Di Cook</a> and <a href="https://www.stat.iastate.edu/people/heike-hofmann">Heike Hofmann</a>. I have developed a few R packages either seriously or for <a href="https://cran.rstudio.com/package=fun">fun</a> (or both), such as <a href="https://yihui.org/knitr/">knitr</a>, <a href="https://yihui.org/animation/">animation</a>, <a href="https://bookdown.org/">bookdown</a>, <a href="https://github.com/rstudio/blogdown">blogdown</a>, <a href="https://github.com/rstudio/pagedown">pagedown</a>, <a href="https://slides.yihui.org/xaringan/">xaringan</a>, and <a href="https://yihui.org/tinytex/">tinytex</a>. I founded a Chinese website called “<a href="https://cosx.org/">Capital of Statistics</a>” in 2006, which has grown into a large online community on statistics. I initiated the Chinese R conference in 2008. I’m a big fan of <a href="https://github.com/yihui">GitHub</a>, <a href="https://www.lyx.org/">LyX</a> and <a href="https://pandoc.org/">Pandoc</a>. I hate IE. I fall asleep when I see beamer slides, and I yell at people who use <code>\\textbf{}</code> to write <code>\\title{}</code>. I know I cannot eat code, so I cook almost every day to stay away from my computer for two hours.</p>
<p>This is Yihui Xie’s personal homepage. At the end of 2013, I graduated from the Department of Statistics at the <a href="https://www.iastate.edu/">Ames Village University</a>, finally answering the most frequently asked question of my first 30 years: &ldquo;How come you haven’t graduated yet?&rdquo; I currently work at RStudio. I support open-source, enjoy tinkering with websites and code, and am a highly self-driven person. In badminton, I love cross-court drops; in table tennis, I play like Tai Chi; in tennis, I chase balls all over the court; in basketball, I get knocked around easily; and after one rock climbing session, my legs turned to jelly. I’m a homebody with a taste for strong, spicy flavors—stubbornly unrepentant. My IQ is slightly below average, and I have an insurmountable cognitive barrier when it comes to mahjong and <em>Sanguosha</em>. I was once woken up by a professor during a real analysis class. I enjoy reading, occasionally browsing random posts online, and have a particular interest in poetry and couplets. My current favorite couplet is:</p>
<blockquote>
<p>&ldquo;A thousand autumns distant, I alone remain;<br>
After a hundred battles, I return to books again.&rdquo;</p>
</blockquote>
<p>My favorite poem is:</p>
<blockquote>
<p>&ldquo;Deep as the sea is my affection—<br>
When we first met, what age were we?<br>
Vaguely I still remember now,<br>
It wasn’t in a past life’s decree.<br>
After school, before the flowers,<br>
Poems carved on stone by the stream,<br>
In the garden pavilion where spring waters gleam.<br>
Meeting you with a smile—<br>
No joy in this world could ever compare.&rdquo;</p>
</blockquote>
<p>Helplessly watching the clouds drift like grey hounds, counting the calamities of red sheep,<br>
Vague and weary, no need to bring it up.<br>
Superficial airs grow, genuine spirit wanes,<br>
Drowning the heart and soul—how much longer?</p>
<p>Eternal fame, the burdens of a lifetime,<br>
Every matter strays from its original intent.<br>
Locked within the heart,<br>
That childhood flavor lingers on.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Discovering an Interesting Big Shot</title>
      <link>https://jinpeng.cv/en/posts/typecho/113/</link>
      <pubDate>Mon, 12 Sep 2022 20:43:54 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/113/</guid>
      <description>&lt;p&gt;Go directly to the expert&amp;rsquo;s website: &lt;a href=&#34;http://yufree.cn&#34;&gt;yufree&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Below is the introduction from the homepage, featuring numerous articles and shares:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I am a scientist at the Jackson Laboratory. My research interests are environmental chemistry, data analysis, and exposomics. Contact me via &lt;a href=&#34;http://yufree.cn/en&#34;&gt;blog&lt;/a&gt; or &lt;a href=&#34;mailto:yufreecas@gmail.com&#34;&gt;Email&lt;/a&gt; if you have questions, and my CV is available &lt;a href=&#34;https://yufree.cn/en/vitae/&#34;&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;This humble monk&amp;rsquo;s mind is full of untimely thoughts, fond of humor and sarcasm. When browsing &lt;a href=&#34;http://yufree.cn/cn&#34;&gt;this blog&lt;/a&gt;, do not take the words too seriously.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Go directly to the expert&rsquo;s website: <a href="http://yufree.cn">yufree</a></p>
<p>Below is the introduction from the homepage, featuring numerous articles and shares:</p>
<blockquote>
<p>I am a scientist at the Jackson Laboratory. My research interests are environmental chemistry, data analysis, and exposomics. Contact me via <a href="http://yufree.cn/en">blog</a> or <a href="mailto:yufreecas@gmail.com">Email</a> if you have questions, and my CV is available <a href="https://yufree.cn/en/vitae/">here</a>.</p>
<p>This humble monk&rsquo;s mind is full of untimely thoughts, fond of humor and sarcasm. When browsing <a href="http://yufree.cn/cn">this blog</a>, do not take the words too seriously.</p>
<p>Currently begging for sustenance in the Land of the Free under the guise of a scientist.</p>
<p>Daily life revolves around scientific data, with endless trial and error.</p>
<p>In spare moments, capturing light and shadow through RGB, though satisfactory works are rare.</p>
<p>A foodie without a kitchen, willing to play the role of Shennong by sampling the &ldquo;toxicity&rdquo; of regional delicacies.</p>
<p>Conference presentations always feel rushed, and registration fees are steep. Thus, planning to teach after completing studies—ample time for sarcasm and a reliable way to earn a living.</p>
</blockquote>
]]></content:encoded>
    </item>
    <item>
      <title>Writing the Meaning of Life with Poor Words</title>
      <link>https://jinpeng.cv/en/posts/typecho/111/</link>
      <pubDate>Fri, 02 Sep 2022 09:49:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/111/</guid>
      <description>&lt;p&gt;Overly delving into one thing may not be a good thing, especially when what you&amp;rsquo;re studying has already been thoroughly researched by others, and you clearly know you can&amp;rsquo;t push the boundaries further than they have. At that point, you start to feel like your life is being wasted.&lt;/p&gt;
&lt;p&gt;Every day, I write down a lot of things, recording a vast amount of work and study notes—though it’s more accurate to call them records of pitfalls. Gradually, I’ve come to realize that such efforts don’t hold much meaning. If they’re not done well enough, they won’t provide even the slightest help in real life.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>Overly delving into one thing may not be a good thing, especially when what you&rsquo;re studying has already been thoroughly researched by others, and you clearly know you can&rsquo;t push the boundaries further than they have. At that point, you start to feel like your life is being wasted.</p>
<p>Every day, I write down a lot of things, recording a vast amount of work and study notes—though it’s more accurate to call them records of pitfalls. Gradually, I’ve come to realize that such efforts don’t hold much meaning. If they’re not done well enough, they won’t provide even the slightest help in real life.</p>
<p>Lately, whenever I have free time, I find myself pondering the meaning of life. If I were to voice these thoughts, people might find them childish—something more suited to middle or high school students. The difference is, back then, I wondered what kind of person I should become for life to be meaningful, whereas now I question whether what I’m currently doing has any meaning at all, and what meaningful things even look like.</p>
<p>Obsessive behaviors are meaningless. Obsessing over games is meaningless, over videos is meaningless, and even over reading is meaningless. Obsession means there’s no room left to think about anything else. Like the various sensors I’ve been tinkering with these past few days—I also find them meaningless, unless I later become an inventor or find a use for them.</p>
<p>I believe meaningful things are creative endeavors, processes with inputs and outputs, much like computer programs. This requires us to reflect on what we’re experiencing, think critically afterward, and then produce our own output. Only then can everything become meaningful.</p>
<p>If a person’s life is like writing a novel, it can’t just be a random jumble of words from a dictionary. A novel has plotlines, a main thread, and a story. What it embodies is the human spirit, shining anew with every reader it encounters. The goal of life should be to steer our living environment toward a better direction—starting with ourselves, then the people around us, then those in our country, and finally all of humanity. We can’t aspire to anything nobler than this. We stop here; we don’t extend our help to figures like Jesus or Buddha to improve their lives.</p>
<p>Thus, when I realize I might be doing something meaningless, I feel disheartened. Pursuing a master’s degree feels this way, and a Ph.D. should be no different. If I’m not genuinely exploring the unknown or correcting humanity’s misconceptions, then I’d consider all these years of study unworthy—even if I ultimately earn a degree. The purpose of this piece lies here.</p>
<p>However, there is one benefit: the composure and experience gained in school have allowed me to rise above my past self, to think from a higher perspective—to consider what society needs and what I can contribute.</p>
<p>I see myself as the same kind of person as Mr. Wang Xiaobo—at least, that’s what I believe. If Mr. Wang had any objections, he no longer has the chance to voice them—I was born the year he passed away. The heavens always seem to envy talent prematurely. Wang Xiaobo is my favorite writer. Unlike other geniuses or philosophers, he feels more like a guide for the youth. Because of him, I developed a deep curiosity about figures like Russell, Duras, and Kafka. Perhaps it’s just that fate gave him too little time. If he were still working today, he might have become a… well, I’m not sure, but he would undoubtedly still be shining, still offering his witty yet sincere words to share his inner world with everyone.</p>
<p>I’m fortunate to be an audience member, but the strange feeling is that it’s as if I’ve seen myself—or rather, as if I’ve been awakened. Describing it this way is undoubtedly flattering myself, but if my embellishments lead more people to discover Mr. Wang, then it’s worth it. Due to his writing style, his works were never destined for textbooks or widespread recognition. Though he lived in his era, he existed parallel to it.</p>
<p>I, too, want to write my life into a novel that people would love to read. But if I were to seriously pursue writing, I’d be sorely lacking—most of all, in logical coherence. I’d like to express my inner world, but every time I see my messy, disorganized words, I’m overcome with shame.</p>
<p>But I still have to keep writing. It&rsquo;s fine to sell poor writing cheaply—modern people wouldn’t use stiff paper to wipe their behinds, after all. If, by chance, someone engrossed in reading happens to see it and, after finishing, criticizes me, then the value of this lousy writing will have been realized. At least the obsessed reader might start rethinking and break free from their obsession.</p>
]]></content:encoded>
    </item>
    <item>
      <title>My Spiritual Homeland</title>
      <link>https://jinpeng.cv/en/posts/typecho/110/</link>
      <pubDate>Thu, 01 Sep 2022 01:25:38 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/110/</guid>
      <description>&lt;p&gt;By Wang Xiaobo&lt;/p&gt;
&lt;p&gt;When I was thirteen, I often stole books from my father’s bookcase to read. At that time, the political atmosphere was tense, and he had locked away all the books that were unsuitable to be left out in the open. In that bookcase were Ovid’s &lt;em&gt;Metamorphoses&lt;/em&gt;, Shakespeare’s plays translated by Zhu Shenghao, and even &lt;em&gt;The Decameron&lt;/em&gt;. The case was locked, but my elder brother knew how to pick the lock. He also had a way of persuading me to take the risks: &lt;em&gt;You’re young and slight. I don’t think Dad will have the heart to spank you.&lt;/em&gt; But in reality, when it came to spanking me, my father didn’t seem particularly gentlemanly, and my hands and feet weren’t agile enough, always giving him the opportunity. In short, we both read the stolen books, but I was the only one who got spanked. That’s how I got to read some books. Though it was unfair, I don’t regret it.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>By Wang Xiaobo</p>
<p>When I was thirteen, I often stole books from my father’s bookcase to read. At that time, the political atmosphere was tense, and he had locked away all the books that were unsuitable to be left out in the open. In that bookcase were Ovid’s <em>Metamorphoses</em>, Shakespeare’s plays translated by Zhu Shenghao, and even <em>The Decameron</em>. The case was locked, but my elder brother knew how to pick the lock. He also had a way of persuading me to take the risks: <em>You’re young and slight. I don’t think Dad will have the heart to spank you.</em> But in reality, when it came to spanking me, my father didn’t seem particularly gentlemanly, and my hands and feet weren’t agile enough, always giving him the opportunity. In short, we both read the stolen books, but I was the only one who got spanked. That’s how I got to read some books. Though it was unfair, I don’t regret it.</p>
<p>After reading <em>Metamorphoses</em>, I became fascinated with ancient Greece. My elder brother also told me: <em>In ancient Greece, there were philosophers who walked around in loose robes. One day, a philosopher went to visit a friend and, finding him not at home, took a wax tablet and casually drew a curve on it, handing it to the friend’s family before returning home. When the friend came back and saw the tablet, he was so struck by the beauty of the curve that he immediately hid near the philosopher’s house. When the philosopher stepped out, the friend rushed in, took a wax tablet, and carefully drew a curve on it…</em> Of course, the rest of the story is easy to guess: the philosopher returned home, saw the tablet left by his friend, took another wax tablet, and poured all his thoughts into a single curve, which he then gave to his friend to see, truly astounding him. Now, I think this story was made up by my elder brother. But back then, I pondered it seriously and finally said, rather naively: <em>How wonderful.</em> Looking back thirty years later, I feel no shame. A frog at the bottom of a well still has its own patch of sky, and a thirteen-year-old child can have his own spiritual home. Besides, it’s good to have an elder brother—though I have no objections to the country’s family planning policy.</p>
<p>It wasn’t until I grew up that I understood what kind of endeavors science and art truly are. My elder brother later became a disciple of the late master of logic, Shen Youding, while I studied the sciences. We even discussed the distinctions between truth and falsehood and shared our thoughts on thermodynamics—but that was when I was in my twenties. Later, when I traveled abroad and visited Cambridge, I saw the apple tree that inspired Newton’s theory of gravity and the “Byron’s Pool” where Byron limped in for a swim. But I always found myself reminiscing about my childhood, when I gazed at the starry sky of human wisdom. A towering edifice must have its cornerstone, and the first loves of our hearts are irreplaceable. All wise men and poets have likely experienced that moment when, as children, they were struck by the light of the stars. I’ve always felt that such passions are as essential to a person as love itself.</p>
<p>I often return to my childhood, thinking with a child’s mind, and many difficult problems become easier to solve. Of course, the purpose of life is to achieve something—something in the humanities. It’s like walking a path. If some pedantic old man forces you down it with a ruler and a whip, then it’s not walking a path but reciting a genealogy. I’ve heard that’s how children were taught in the former Soviet Union: they had to memorize all of Pushkin, half of Lermontov, and remember that Russia was the homeland of elephants (Shostakovich mentioned much of this in his memoirs). I won’t say how children are taught here, lest I offend my teachers. I doubt that memorizing genealogies counts as having a spiritual home, but I don’t want to argue with anyone. Andersen wrote <em>The Thorny Road of Honor</em>, saying that the humanities are like a path of burning thorns, upon which the wise and benevolent walk. Of course, he was considering all the clamor of the secular world, but I don’t think we need to dwell on that. Seen through the tranquil eyes of a child, this path is one between two bamboo fences, covered with purple morning glories, each blossom cradling a blue dragonfly. This might sound sentimental, but to convince Andersen, you’d have to use such language. On his deathbed, Wittgenstein said: <em>Tell them I’ve had a wonderful life.</em> To me, it feels as though he walked through a path of morning glories. Though I know nothing of his work, I feel he and I are kindred spirits.</p>
<p>I can’t quite grasp the profundity of the following argument: <em>To rebuild our spiritual home and restore humanistic values, we must eliminate all vulgar people—starting with those currently in vogue.</em> If the reasoning is that readers have limited money in their pockets, and if they buy others’ books, they won’t have money to buy mine, so we must eliminate the competition—that I can understand. But the earlier statement doesn’t seem so profound. And if it is, I still don’t agree—we should, like merchants, adhere to honesty and oppose unfair competition. The idea of making my thoughts and works the orthodox choice in this noisy world has never occurred to me, nor would I dare entertain it. Given that, I must explain my motivation for writing (including this piece). Frankly, I’m not entirely sure myself. All I can say is: If I were to die today, I probably couldn’t say, like Wittgenstein, <em>I’ve had a wonderful life</em>, or like Stendhal, <em>I lived, I loved, I wrote.</em> I’m terrified of ending up with nothing to say, so I’m working hard.</p>
<p>This article was originally published in the <em>Beijing Youth Daily</em> on November 30, 1995.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Pulling the Nipple Away from the Mouth</title>
      <link>https://jinpeng.cv/en/posts/typecho/103/</link>
      <pubDate>Sat, 20 Aug 2022 12:01:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/103/</guid>
      <description>&lt;p&gt;By Zhu Che&lt;/p&gt;
&lt;p&gt;I live on the top floor of Building 27. The sun scorches the reinforced concrete rooftop, and the heat lingers until four or five in the morning. As a result, my bed is nothing like those in Guiyang—during the summer, it’s essentially a full-coverage electric blanket. It’s unbearably hot, I fall asleep late, and dawn comes early. The construction workers start their noisy labor early too, so I inevitably wake up early, my pillow drenched in sweat. I’d love to go back to sleep, but the moment I pick up my phone and open Bilibili, I give up on the idea—though I’m still exhausted. So I drag myself out of bed, turn off my phone, sit naked in front of my computer, and start pondering: What do we actually gain from spending so much time on video platforms?&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>By Zhu Che</p>
<p>I live on the top floor of Building 27. The sun scorches the reinforced concrete rooftop, and the heat lingers until four or five in the morning. As a result, my bed is nothing like those in Guiyang—during the summer, it’s essentially a full-coverage electric blanket. It’s unbearably hot, I fall asleep late, and dawn comes early. The construction workers start their noisy labor early too, so I inevitably wake up early, my pillow drenched in sweat. I’d love to go back to sleep, but the moment I pick up my phone and open Bilibili, I give up on the idea—though I’m still exhausted. So I drag myself out of bed, turn off my phone, sit naked in front of my computer, and start pondering: What do we actually gain from spending so much time on video platforms?</p>
<p>These days, I rarely watch soap operas or idol dramas for two reasons. First, they consume an enormous amount of time. I’m still a student, fully devoted to my studies, and though I occasionally earn some money working for my advisor, that income is like stumbling upon wild strawberries (white <em>pao</em>) while herding cattle in the mountains—it might improve my life slightly, but it’s nowhere near enough to sustain me. Right now, I’m not even part of the proletariat, though for the past twenty-plus years, I’ve been entirely supported by the purest form of proletarian labor. If I were to immerse myself in soap operas produced at great cost, it would mean trading my wild strawberries and the labor of those who support me for their entertainment. That’s a transaction I refuse to make—it would weigh too heavily on my conscience.</p>
<p>The second reason is my belief in the &ldquo;tittytainment&rdquo; theory. I don’t want to be treated like an infant, my life stifled by a pacifier. If I were truly a baby, I’d probably love that pacifier. But I’ve grown up a little now, and I know that no matter how realistic or satisfying the pacifier feels, sucking on it day and night won’t yield a single drop of milk. At best, it’ll stimulate my mouth to produce saliva, which I’ll swallow, mistaking it for nourishment.</p>
<p>There are many manufacturers of these pacifiers, and their quality varies. Some are made with integrity—their pacifiers are attached to bottles filled with formula, which still contains some nutrients. Finding such pacifiers isn’t a bad deal. But most are questionable. You can’t even guess what they’re made of—maybe a lump of clay, a scrap of torn pants, and a sprinkle of lime to mimic powdered bone, all mashed together and molded into a nipple. The result? A pacifier they claim is &ldquo;down-to-earth,&rdquo; &ldquo;full of depth,&rdquo; and &ldquo;weathered by life.&rdquo; You might think my description is exaggerated, and even I feel that way as I write this. But honestly, I wouldn’t be surprised if some were made from animal waste.</p>
<p>In recent years, with the rise of short-video platforms, things have taken a turn. A small group of people realized that users could make their own pacifiers if given the raw materials and a platform to sell them. Thus, short-video platforms flourished. This shift terrifies me. Everyone from 7-year-olds to 70-year-olds can participate in this cycle, and the harm is obvious. A 7-year-old should be learning about the real world; a 17-year-old should be planning how to make life better and then spending the next 50 years putting that plan into action.</p>
<p>Many people enjoy watching others’ lives—myself included. Seeing people different from us broadens our horizons, while seeing those similar to us fosters empathy. We’re happy to watch all kinds of people. At the same time, many are eager to share their lives, especially when they receive validation and praise, which encourages even more sharing. This innate desire is the foundation of the pacifier market. That said, there are also those who distill their spiritual insights into &ldquo;formula&rdquo; and scatter it across the market—unpackaged, unlabeled, and requiring time to &ldquo;brew.&rdquo;</p>
<p>I don’t deny the validity of these pacifiers. Looking back over the past few years, I’ve had plenty shoved into my mouth—even this morning, I sucked on one for nearly an hour. But it doesn’t feel right. We’re living, breathing people. We need formula, the nutrients within it, to grow—especially our spiritual selves. Yet here’s the paradox: when we suck on a dry pacifier, we don’t spit it out. The saliva in our mouths creates the illusion that we’re getting milk, but every cell in our bodies screams in hunger. This drives us to suck even harder, trapping us in a vicious cycle until we starve to death—spiritually.</p>
<p>Anyone can tell whether a pacifier has milk behind it. But we’re lazy. When we’re half-starved, the pacifier-makers use recommendation algorithms to shove their products into our mouths from all directions, even blocking our search for real nourishment. Usually, a simple swipe would clear the way, but often we can’t even muster the effort to do that. Instead, we instinctively give the pacifier a taste, just for the sensation. It’s like masturbation—except the latter’s physical toll forces you to stop eventually, while the former doesn’t.</p>
<p>So far, I’ve only described the problem without offering a solution. Here it is: Refuse the pacifiers shoved in your face. Use search functions to pinpoint the nutrients you need. In your free time, explore—whether in the real world, online, or in bookstores. If you encounter a pacifier, don’t suck it. If you find a bottle, shake it to see if there’s milk inside. Follow this approach, and you should be able to find enough sustenance.</p>
<p>Indeed, life is filled with various pressures and challenges. These pressures may make life dull and monotonous, causing us to feel hungry more quickly and leaving us with little time to seek proper nourishment. Occasionally indulging in some comforting &ldquo;pacifiers&rdquo; can be meaningful. However, it is essential to understand the purpose behind these pacifiers. More importantly, we must recognize that our spirit is different from our physical body. Our spirit would rather consume nothing at all than feed on the saliva produced by the stimulation of such pacifiers.</p>
]]></content:encoded>
    </item>
    <item>
      <title>有关“伟大一族”</title>
      <link>https://jinpeng.cv/en/posts/typecho/99/</link>
      <pubDate>Mon, 08 Aug 2022 23:47:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/99/</guid>
      <description>&lt;p&gt;文/王小波&lt;/p&gt;
&lt;p&gt;有位老同学从美国回来探家。我们俩有七八年没见了。他的情况还不错：虽然薪水不很多，但两口子都挣钱，所以还算宽裕。自从美国一别，他的房子买到了第三所，汽车换到了第四辆，至于PC机，只要听说新出来一种更快的，他马上就去买一台，手上过了多少就没了数了。老婆还没有换，也没有这种打算，这正是我喜欢他的地方。虽然没坐过罗尔斯·罗伊斯，没住过棕榈海滩的豪华别墅，手里没有巨额股票，倒有一屁股的饥荒，但就像东北人说的，他起码也“造”了个痛快。我现在房无一间地无一垄，当然只有羡慕的份儿。但我们见面不是光聊这些——这就太过庸俗了。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>文/王小波</p>
<p>有位老同学从美国回来探家。我们俩有七八年没见了。他的情况还不错：虽然薪水不很多，但两口子都挣钱，所以还算宽裕。自从美国一别，他的房子买到了第三所，汽车换到了第四辆，至于PC机，只要听说新出来一种更快的，他马上就去买一台，手上过了多少就没了数了。老婆还没有换，也没有这种打算，这正是我喜欢他的地方。虽然没坐过罗尔斯·罗伊斯，没住过棕榈海滩的豪华别墅，手里没有巨额股票，倒有一屁股的饥荒，但就像东北人说的，他起码也“造”了个痛快。我现在房无一间地无一垄，当然只有羡慕的份儿。但我们见面不是光聊这些——这就太过庸俗了。</p>
<p>我们哥俩都闯荡过四方，种过地，放过牧，当过工人，二十年前在大学里同窗时，心里都曾燃烧起雄心壮志，要开创伟大的事业。所谓伟大的事业，就是要让自己的梦想成真。那时想了些什么，现在我都不好意思说，只好拿别人做例子。比方说微软公司的大老板比尔·盖茨，年轻时想过要把当时看着不起眼的微处理机做成一种能用的计算机，让人人都能拥有和使用计算机，这样，科学的时代就真正降临人世了——这种梦想的伟大之处就在这里。现在这种梦想在很大程度上变成了真实，他在其中有很大的贡献，这是值得佩服的。至于他在商业上的成功，照我看还不太值得佩服。还有一个例子是：马丁·路德·金曾经高呼“我有一个梦想”，今天在美国的校园里，有时能看到高大英俊的黑人小伙子和白人姑娘拥抱在一起。从这种特别美丽的景象里，可以体会到金博士梦想的伟大。时至今日，我说多了没有意思，脸上也发热。我只能说，像这样的梦想我们也曾有过。</p>
<p>每个人都有自己的梦想，这些梦想不见得都是伟大事业的起点。鲁迅先生的杂文里提到有这样的人：他梦想的最高境界是在雪天，呕上半口血，由丫环扶着，懒懒地到院子里去看梅花。我看了以后着实生气：人怎么能想这样的事！同时我还想：假如这位先生不那么考究，不要下雪、梅花、丫环搀着等等，光要呕血的话，这件事我倒能帮上忙。那时我是个小伙子，胳臂很有劲儿，拳头也够硬。现在当然不想帮这种忙，过了那个年龄。现在偶尔照照镜子，里面那个人满脸皱纹，我不大认识。走在街上，迎面过来一个庞然大物，仔细从眉眼上辨认，居然是自己当年的梦中情人，于是不免倒吸一口凉气。凉气吸多了就会忘事，所以要赶紧把要说的事说清楚。梦想虽不见得都是伟大事业的起点，但每种伟大的事业必定源于一种梦想——我对这件事很有把握。</p>
<p>现在的青年里有“追星族”、“上班族”，但想要开创伟大事业的人却没有名目，就叫他们“伟大一族”好了。过去这样的人在校园里（不管是中国校园还是美国校园）是很多的。当盖茨先生穿着一身便装，蓬着一头乱发出现在校园里时，和我们当年一样，属于“伟大一族”。刚回中国时，我带过的那些学生起码有一半属伟大一族，因为他们眼睛里闪烁着梦想的光芒。谁是、谁不是这一族，我一眼就能看出来，但这一族的人数是越来越少了，将来也许会像恐龙一样灭绝掉。我问我哥们儿，现在干吗呢，他说坐在那里给人家操作软件包，气得我吼了起来：咱们这样的人应该做研究工作——谁给他打软件包？但是他说，人家给钱就得了，管它干什么。我一想也对。谁要是给我一年三四万美元让我“打”软件包，我也给他“打”去了。这说明现在连我也不属伟大一族。但在年轻时，我们有过很宏伟的梦想。伟大一族不是空想家，不是只会从众起哄的狂热分子，更不是连事情还没弄清就热血沸腾的青年。他们相信，任何美好的梦想都有可能成真——换言之，不能成真的梦想本身就是不美好的。假如事情没做成，那是做得不得法；假如做成了，却不美好，倒像是一场噩梦，那是因为从开始就想得不对头。不管结局是怎样，这条路总是存在的——必须准备梦想，准备为梦想工作。这种想法对不对，现在我也没有把握。我有把握的只是：确实有这样的一族。</p>
<p>本篇最初发表于1996年2月21日《南方周末》。</p>
]]></content:encoded>
    </item>
    <item>
      <title>科学的美好</title>
      <link>https://jinpeng.cv/en/posts/typecho/97/</link>
      <pubDate>Fri, 05 Aug 2022 15:21:19 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/97/</guid>
      <description>&lt;p&gt;&lt;em&gt;文/王小波 1997&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;我原是学理科的，最早学化学。我学得不坏，老师讲的东西我都懂。化学光懂了不成，还要做实验，做实验我就不行了。用移液管移液体，别人都用橡皮球吸液体，我老用嘴去吸——我知道移液管不能用嘴吸，只是橡皮球经常找不着——吸别的还好，有一回我竟去吸浓氨水，好像吸到了陈年的老尿罐里，此后有半个月嗓子哑掉了。做毕业论文时，我做个萃取实验，烧瓶里盛了一大瓶子氯仿，滚滚沸腾着，按说不该往外跑，但我的装置漏气，一会儿就漏个精光。漏掉了我就去领新的，新的一会儿又漏光。一个星期我漏掉了五大瓶氯仿，漏掉的起码有一小半被我吸了进去。这种东西是种麻醉药，我吸进去的氯仿足以醉死十条大蟒。说也奇怪，我居然站着不倒，只是有点迷糊。在这种情况下，我还把实验做了出来，证明我的化学课学得蛮好。但是老师和同学一致认为我不适合干化学。尤其是和我在一个实验室里做实验的同学更是这样认为，他们也吸进了一些氯仿，远没我吸得多，却都抱怨说头晕。他们还称我为实验室里的人民公敌。我自己也是这样想的：继续干化学，毒死我自己还不要紧，毒死同事就不好了。我对这门科学一直恋恋不舍：学化学的女孩很多，有不少长得很漂亮。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>文/王小波 1997</em></p>
<p>我原是学理科的，最早学化学。我学得不坏，老师讲的东西我都懂。化学光懂了不成，还要做实验，做实验我就不行了。用移液管移液体，别人都用橡皮球吸液体，我老用嘴去吸——我知道移液管不能用嘴吸，只是橡皮球经常找不着——吸别的还好，有一回我竟去吸浓氨水，好像吸到了陈年的老尿罐里，此后有半个月嗓子哑掉了。做毕业论文时，我做个萃取实验，烧瓶里盛了一大瓶子氯仿，滚滚沸腾着，按说不该往外跑，但我的装置漏气，一会儿就漏个精光。漏掉了我就去领新的，新的一会儿又漏光。一个星期我漏掉了五大瓶氯仿，漏掉的起码有一小半被我吸了进去。这种东西是种麻醉药，我吸进去的氯仿足以醉死十条大蟒。说也奇怪，我居然站着不倒，只是有点迷糊。在这种情况下，我还把实验做了出来，证明我的化学课学得蛮好。但是老师和同学一致认为我不适合干化学。尤其是和我在一个实验室里做实验的同学更是这样认为，他们也吸进了一些氯仿，远没我吸得多，却都抱怨说头晕。他们还称我为实验室里的人民公敌。我自己也是这样想的：继续干化学，毒死我自己还不要紧，毒死同事就不好了。我对这门科学一直恋恋不舍：学化学的女孩很多，有不少长得很漂亮。</p>
<p>后来我去学数学，在这方面我很有天分。无论是数字运算，还是公式推导，我都像闪电一样快，只是结果不一定全对。人家都说，我做起数学题来像小日本一样疯狂：我们这一代人在银幕上见到的日本人很多，这些人总是头戴战斗帽，挺着刺刀不知死活地冲锋，别人说我做数学题时就是这么个模样。学数学的女孩少，长得也一般。但学这门科学我害不到别人，所以我也很喜欢。有一回考试，我看看试题，觉得很容易，就像刮风一样做完了走人。等分数出来，居然考了全班的最低分。找到老师一问，原来那天的试题分为两部分，一半在试题纸的正面，我看到了，也做了。还有一半在反面，我根本就没看见。我赶紧看看这些没做的题，然后说：这些题目我都会做。老师说，知道你会，但是没做也不能给分。他还说什么“就是要整整你这屁股眼大掉了心的人”。这就是胡说八道了。谁也不能大到了这个地步。一门课学到了要挨整的程度，就不如不学。</p>
<p>我现在既不是化学家，也不是数学家，更不是物理学家。我靠写文章为生，与科技绝缘——只是有时弄弄计算机。这个行当我会得不少，从最低等的汇编语言到最新潮的C++全会写，硬件知识也有一些。但从我自己的利益来看，我还不如一点都不会，省得整夜不睡，鼓捣我的电脑，删东加西，最后把整个系统弄垮，手头又没有软件备份。于是，在凌晨五点钟，我在朋友家门前踱来踱去，抽着烟；早起的清洁工都以为我失恋了，这门里住着我失去的恋人，我在表演失魂落魄给她看。其实不是的，电脑死掉了，我什么都干不了，更睡不着觉。好容易等到天大亮了，我就冲进去，向他借软件来恢复系统——瞎扯了这么多，现在言归正传。我要说的是：我和科学没有缘分，但是我爱科学，甚至比真正的科学家还要爱得多些。</p>
<p>正如罗素先生所说，近代以来，科学建立了一种理性的权威——这种权威和以往任何一种权威不同。科学的道理不同于“夫子曰”，也不同于红头文件。科学家发表的结果，不需要凭借自己的身份来要人相信。你可以拿一枝笔，一张纸，或者备几件简单的实验器材，马上就可以验证别人的结论。当然，这是一百年前的事。验证最新的科学成果要麻烦得多，但是这种原则一点都没有改变。科学和人类其他事业完全不同，它是一种平等的事业。真正的科学没有在中国诞生，这是有原因的。这是因为中国的文化传统里没有平等：从打孔孟到如今，讲的全是尊卑有序。上面说了，拿煤球炉子可以炼钢，你敢说要做实验验证吗？你不敢。炼出牛屎一样的东西，也得闭着眼说是好钢。在这种框架之下，根本就不可能有科学。</p>
<p>科学的美好，还在于它是种自由的事业。它有点像它的一个产物互联网(Internet)——谁都没有想建造这样一个全球性的电脑网络，大家只是把各自的网络连通，不知不觉就把它造成了。科学也是这样的，世界上各地的人把自己的发明贡献给了科学，它就诞生了。这就是科学的实质。还有一样东西也是这么诞生的，那就是市场经济。做生意的方法，你发明一些，我发明一些，慢慢地形成了现在这个东西，你看它不怎么样，但它还无可替代。一种自由发展而成的事业，总是比个人能想出来的强大得多。参与自由的事业，像做自由的人一样，令人神往。当然，扯到这里就离了题。现在总听到有人说，要有个某某学，或者说，我们要创建有民族风格的某某学，仿佛经他这么一规划、一呼吁，在他画出的框子里就会冒出一种真正的科学。老母鸡“格格”地叫一阵，挣红了脸，就能生一个蛋，但科学不会这样产生。人会情绪激动，又会爱慕虚荣。科学没有这些老病，对人的这些毛病，它也不予回应。最重要的是：科学就是它自己，不在任何人的管辖之内。</p>
<p>对于科学的好处，我已经费尽心机阐述了一番，当然不可能说得全面。其实我最想说的是：科学是人创造的事业，但它比人类本身更为美好。我的老师说过，科学对中国人来说，是种外来的东西，所以我们对它的理解，有过种种偏差：始则惊为洪水猛兽，继而当巫术去理解，再后来把它看做一种宗教，拜倒在它的面前。他说这些理解都是不对的，科学是个不断学习的过程。我老师说得很对。我能补充的只是：除了学习科学已有的内容，还要学习它所有、我们所无的素质。我现在不学科学了，但我始终在学习这些素质。这就是说，人要爱平等、爱自由，人类开创的一切事业中，科学最有成就，就是因为有这两样做根基。对个人而言，没有这两样东西，不仅谈不上成就，而且会活得像一只猪。比这还重要的只有一样，就是要爱智慧。无论是个人，还是民族，做聪明人才有前途，当笨蛋肯定是要倒霉。大概是在一年多以前吧，我写了篇小文章讨论这个问题，论证人爱智慧比当笨蛋好些。结果冒出一位先生把我臭骂一顿，还说我不爱国——真是好没来由！我只是论证一番，又没强逼着你当聪明人。你爱当笨蛋就去当吧，你有这个权利。</p>
]]></content:encoded>
    </item>
    <item>
      <title>京片子与民族自信心</title>
      <link>https://jinpeng.cv/en/posts/typecho/96/</link>
      <pubDate>Thu, 04 Aug 2022 22:18:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/96/</guid>
      <description>&lt;p&gt;&lt;em&gt;王小波&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;我生在北京西郊大学区里。长大以后，到美国留学，想要恭维港台来的同学，就说：你国语讲得不坏！他们也很识趣，马上恭维回来：不能和你比呀。北京乃是文化古都，历朝历代人文荟萃，语音也是所有中国话里最高尚的一种，海外华人佩服之至。我曾在美国华文报纸上读到一篇华裔教授的大陆游记，说到他遭服务小姐数落的情形：只听得一串京片子，又急又快，字字清楚，就想起了《老残游记》里大明湖上黑妞说书，不禁目瞪口呆，连人家说什么都没有去想——我们北京人的语音就有如此的魅力。当然，教授愣完了，开始想那些话，就臊得老脸通红。过去，我们北京的某些小姐（尤其是售票员）在粗话的词汇量方面，确实不亚于门头沟的老矿工——这不要紧，语音还是我们高贵。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>王小波</em></p>
<p>我生在北京西郊大学区里。长大以后，到美国留学，想要恭维港台来的同学，就说：你国语讲得不坏！他们也很识趣，马上恭维回来：不能和你比呀。北京乃是文化古都，历朝历代人文荟萃，语音也是所有中国话里最高尚的一种，海外华人佩服之至。我曾在美国华文报纸上读到一篇华裔教授的大陆游记，说到他遭服务小姐数落的情形：只听得一串京片子，又急又快，字字清楚，就想起了《老残游记》里大明湖上黑妞说书，不禁目瞪口呆，连人家说什么都没有去想——我们北京人的语音就有如此的魅力。当然，教授愣完了，开始想那些话，就臊得老脸通红。过去，我们北京的某些小姐（尤其是售票员）在粗话的词汇量方面，确实不亚于门头沟的老矿工——这不要紧，语音还是我们高贵。</p>
<p>但是，这已是昨日黄花。今天你打开收音机或者电视机，就会听到一串“嗯嗯啊啊”的港台腔调。港台人把国语讲成这样也会害臊，大陆的广播员却不知道害臊。有一句鬼话，叫做“那么呢”，那么来那么去，显得很低智，但人人都说。我不知这是从哪儿学来的，但觉得该算到港台的账上。再发展下去，就要学台湾小朋友，说出“好可爱好高兴噢”这样的鬼话。台湾人造的新词新话，和他们的口音有关。国语口音纯正的人学起来很难听。</p>
<p>除了广播员，说话港台化最为厉害的，当数一些女歌星。李敖先生骂老K（国民党），说他们“手淫台湾，意淫大陆”，这个比方太过粗俗，但很有表现力。我们的一些时髦小姐糟蹋自己的语音，肯定是在意淫港币和新台币——这两个地方除了货币，再没什么格外让人动心的东西。港台人说国语，经常一顿一顿，你知道是为什么吗？他们在想这话汉语该怎么说啊。他们英语讲得太多，常把中国话忘了，所以是可以原谅的。我的亲侄子在美国上小学，回来讲汉语就犯这毛病。犯了我就打他屁股，打一下就好。中国的歌星又不讲英文，再犯这种毛病，显得活像是大头傻子。电台请歌星做节目，播音室里该预备几个乒乓球拍子。乒乓球拍子不管用，就用擀面杖。这样一级一级往上升，我估计用不到狼牙棒，就能把这种病治好。治好了广播员，治好了歌星，就可以治其他小姐的病。如今在饭店里，听见鼻腔里哼出一句港味的“先生”，我就起鸡皮疙瘩。北京的女孩子，干吗要用鼻甲来说话！</p>
<p>这篇文章一直在谈语音语调，但语音又不是我真正关心的问题。我关心的是，港台文化正在侵入内地。尤其是那些狗屎不如的电视连续剧，正在电视台上一集集地演着，演得中国人连中国话都说不好了。香港和台湾的确是富裕，但没有文化。咱们这里看上去没啥，但人家还是仰慕的。所谓文化，乃是历朝历代的积累。你把城墙拆了，把四合院扒了，它还在人身上保留着。除了语音，还有别的——就拿笔者来说，不过普普通通一个北方人，稍稍有点急公好义，仗义疏财，有那么一丁点燕赵古风，台湾来的教授见了就说：你们大陆同学，气概了不得……<br>
我在海外的报刊上看到这样一则故事：有个前国军上校，和我们打了多年的内战，枪林弹雨都没把他打死。这一方面说明我们的火力还不够厉害，另一方面也说明这个老东西确实有两下子。改革开放之初，他巴巴地从美国跑了回来，在北京的饭店里被小姐骂了一顿，一口气上不来，脑子里崩了血筋，当场毙命。就是这样可怕的故事也挡不住他们回来，他们还觉得被正庄京片子给骂死，也算是死得其所。我认识几位华裔教授，常回大陆，再回到美利坚，说起大陆服务态度之坏，就扼腕叹息道：再也不回去了。隔了半年，又见他打点行装。问起来时，他却说：骂人的京片子也是很好听的呀！他们还说：骂人的小姐虽然粗鲁，人却不坏，既诚实又正直，不会看人下菜碟，专拍有钱人马屁——这倒不是谬奖。八十年代初的北京小姐，就是洛克菲勒冒犯到她，也是照骂不误：“别以为有几个臭钱就能在我这儿起腻，惹急了我他妈的拿大嘴巴子贴你！”断断不会见了港客就骨髓发酥非要嫁他不可——除非是领导上交待了任务，要把他争取过来。粗鲁虽然不好，民族自尊心却是好的，小姐遇上起腻者，用大嘴巴子去“贴”他，也算合理；总比用脸去贴好吧。这些事说起来也有十几年了。如今北京多了很多合资饭店，里面的小姐不骂人，这几位教授却不来了。我估计是听说这里满街的鸟语，觉着回来没意思。他们不来也不要紧，但我们总该留点东西，好让别人仰慕啊。</p>
<p>写于20世纪90年代</p>
]]></content:encoded>
    </item>
    <item>
      <title>肚子里的战争</title>
      <link>https://jinpeng.cv/en/posts/typecho/95/</link>
      <pubDate>Thu, 04 Aug 2022 11:12:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/95/</guid>
      <description>&lt;p&gt;文/王小波&lt;/p&gt;
&lt;p&gt;我年轻时，有一回得了病，住进了医院。当时医院里没有大夫，都是工农兵出身的卫生员——真正的大夫全都下到各队去接受贫下中农再教育去了。话虽如此说，穿着白大褂的，不叫他大夫又能叫什么呢。我入院第一天，大夫来查房，看过我的化验单，又拿听诊器把我上下听了一遍，最后还是开口来问：你得了什么病。原来那张化验单他没看懂。其实不用化验单也能看出我的病来：我浑身上下像隔夜的茶水一样的颜色，正在闹黄疸。我告诉他，据我自己的估计，大概是得了肝炎。这事发生在二十多年前，当时还没听说有乙肝，更没有听说丙肝丁肝和戊肝，只有一种传染性肝炎。据说这一种肝炎中国原来也没有，还是三年困难时吃伊拉克蜜枣吃出来的——叫做蜜枣，其实是椰枣。我虽没吃椰枣，也得了这种病。大夫问我该怎么办，我说你给我点维生素吧——我的病就是这么治的。说句实在话，住院对我的病情毫无帮助。但我自己觉得还是住在医院里好些，住在队里会传染别人。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>文/王小波</p>
<p>我年轻时，有一回得了病，住进了医院。当时医院里没有大夫，都是工农兵出身的卫生员——真正的大夫全都下到各队去接受贫下中农再教育去了。话虽如此说，穿着白大褂的，不叫他大夫又能叫什么呢。我入院第一天，大夫来查房，看过我的化验单，又拿听诊器把我上下听了一遍，最后还是开口来问：你得了什么病。原来那张化验单他没看懂。其实不用化验单也能看出我的病来：我浑身上下像隔夜的茶水一样的颜色，正在闹黄疸。我告诉他，据我自己的估计，大概是得了肝炎。这事发生在二十多年前，当时还没听说有乙肝，更没有听说丙肝丁肝和戊肝，只有一种传染性肝炎。据说这一种肝炎中国原来也没有，还是三年困难时吃伊拉克蜜枣吃出来的——叫做蜜枣，其实是椰枣。我虽没吃椰枣，也得了这种病。大夫问我该怎么办，我说你给我点维生素吧——我的病就是这么治的。说句实在话，住院对我的病情毫无帮助。但我自己觉得还是住在医院里好些，住在队里会传染别人。</p>
<p>在医院里没有别的消遣，只有看大夫们给人开刀。这一刀总是开向阑尾——应该说他们心里还有点数，知道别的手术做不了。我说看开刀可不是瞎说的，当地经常没有电，有电时电压也极不稳，手术室是四面全是玻璃窗的房子，下午两点钟阳光最好，就是那时动手术——全院的病人都在外面看着，互相打赌说几个小时找到阑尾。后来我和学医的朋友说起此事，他们都不信，说阑尾手术还能动几个钟头？不管你信也好，不信也罢，我看到的几个手术没有一次在一小时之内找着阑尾的。做手术的都说，人的盲肠太难找——他们中间有好几位是部队骡马卫生员出身，参加过给军马的手术，马的盲肠就很大，骡子的盲肠也不小，哪个的盲肠都比人的大，就是把人个子小考虑在内之后，他的盲肠还是太小。闲着没事聊天时，我对他们说：你们对人的下水不熟悉，就别给人开刀了。你猜他们怎么说？“越是不熟就越是要动——在战争中学习战争！”现在的年轻人可能不知道，这后半句是毛主席语录。人的肠子和战争不是一码事，但这话就没人说了。我觉得有件事情最可恶：每次手术他们都让个生手来做，以便大家都有机会学习战争，所以阑尾总是找不着。刀口开在什么部位，开多大也完全凭个人的兴趣。但我必须说他们一句好话：虽然有些刀口偏左，有些刀口偏右，还有一些开在中央，但所有的刀口都开在了肚子上，这实属难能可贵。</p>
<p>我在医院里遇上一个哥们，他犯了阑尾炎，大夫动员他开刀。我劝他千万别开刀——万一非开不可，就要求让我给他开。虽然我也没学过医，但修好过一个闹钟，还修好了队里一台手摇电话机。就凭这两样，怎么也比医院里这些大夫强。但他还是让别人给开了，主要是因为别人要在战争里学习战争，怎么能不答应。也是他倒霉，打开肚子以后，找了三个小时也没找到阑尾，急得主刀大夫把他的肠子都拿了出来，上下一通紧倒。小时候我家附近有家小饭铺，卖炒肝、烩肠，清晨时分厨师在门外洗猪大肠，就是这么一种景象。眼看天色越来越暗，别人也动手来找，就有点七手八脚。我的哥们被人找得不耐烦，撩开了中间的白布帘子，也去帮着找。最后终于在太阳下山以前找到，把它割下来，天也就黑了，要是再迟一步，天黑了看不见，就得开着膛晾一宿。原来我最爱吃猪大肠；自从看过这个手术，再也不想吃了。</p>
<p>时隔近三十年，忽然间我想起了住院看别人手术的事，主要是有感于当时的人浑浑噩噩，简直是在发疯。谁知道呢，也许再过三十年，再看今天的人和事，也会发现有些人也是在发疯。如此看来，我们的理性每隔三十年就有一次质的飞跃——但我怀疑这么理解是不对的。理性可以这样飞越，等于说当初的人根本没有理性。就说三十年前的事吧，那位主刀的大叔用漆黑的大手捏着活人的肠子上下倒腾时，虽然他说自己在学习战争，但我就不信他不知道自己是在胡闹。由此就得到一个结论：一切人间的荒唐事，整个社会的环境虽是一个原因，但不主要。主要的是：那个闹事的人是在借酒撒疯。这就是说，他明知道自己在胡闹，但还要闹下去，主要是因为胡闹很开心。</p>
<p>我们还可以得到进一步的推论：不管社会怎样，个人要为自己的行为负责——但作为杂文的作者，把推论都写了出来，未免有直露之嫌，所以到此打住。住医院的事我还没写完呢：我在医院里住着，肝炎一点都不见好，脸色越来越黄；我的哥们动了手术，刀口也总是长不上，人也越来越瘦。后来我们就结伴回北京来看病。我一回来病就好了，我的哥们却进了医院，又开了一次刀。北京的大夫说，上一次虽把阑尾割掉了，但肠子没有缝住，粘到刀口上成了一个瘘，肠子里的东西顺着刀口往外冒，所以刀口老不好。大夫还说，冒到外面还是万分幸运，冒到肚子里面，人就完蛋了。我哥们倒不觉得有什么幸运，他只是说：妈的，怪不得总吃不饱，原来都漏掉了。</p>
<p>这位兄弟是个很豪迈的人，如果不是这样，也不会拿自己的内脏给别人学习战争。</p>
<p>本篇最初发表于1997年第9期《三联生活周刊》杂志。</p>
]]></content:encoded>
    </item>
    <item>
      <title>椰子树与平等</title>
      <link>https://jinpeng.cv/en/posts/typecho/94/</link>
      <pubDate>Thu, 04 Aug 2022 00:32:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/94/</guid>
      <description>&lt;p&gt;&lt;em&gt;王小波&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;二十多年前，我在云南插队。当地气候炎热，出产各种热带水果，就是没有椰子。整个云南都不长椰子，根据野史记载，这其中有个缘故。据说，在三国以前，云南到处都是椰子，树下住着幸福的少数民族。众所周知，椰子有很多用处，椰茸可以当饭吃，椰子油也可食用。椰子树叶里的纤维可以织粗糙的衣裙，椰子树干是木材。这种树木可以满足人的大部分需要，当地人也就不事农耕，过着悠闲的生活。忽一日，诸葛亮南征来到此地，他要教化当地人，让他们遵从我们的生活方式：干我们的活，穿我们的衣服，服从我们的制度。这件事起初不大成功，当地人没看出我们的生活方式有什么优越之处。首先，秋收春种，活得很累，起码比摘椰子要累；其次，汉族人的衣着在当地也不适用。就以诸葛先生为例，那身道袍料子虽好，穿在身上除了捂汗和捂痱子，捂不出别的来；至于那顶道冠，既不遮阳，也不挡雨，只能招马蜂进去做窝。当地天热，摘两片椰树叶把羞处遮遮就可以了。至于汉朝的政治制度，对当地的少数民族来说，未免太过烦琐。诸葛先生磨破了嘴皮子，言必称孔孟，但也没人听。他不觉得自己的道理不对，却把账算在了椰子树身上：下了一道命令，一夜之间就把云南的椰树砍了个精光，免得这些蛮夷之人听不进圣贤的道理。没了这些树，他说话就有人听了——对此，我的解释是，诸葛亮他老人家南征，可不是一个人去的，还带了好多的兵，砍树用的刀斧也可以用来砍人，砍树这件事说明他手下的人手够用，刀斧也够用。当地人明白了这个意思，就怕了诸葛先生。我这种看法你尽可以不同意——我知道你会说，诸葛亮乃古之贤人，不会这样赤裸裸地用武力威胁别人；所以，我也不想坚持这种观点。对于此事，野史上是这么解释的：蛮夷之人，有些稀奇之物，就此轻狂，胆敢藐视天朝大邦；没了这些珍稀之物，他们就老实了。这就是说，云南人当时犯有轻狂的毛病，这是一种道德缺陷。诸葛先生砍树，是为了纠正这种毛病，是为他们好。我总觉得这种说法有点太过惊世骇俗。人家有几样好东西，活得好一点，心情也好一点，这就是轻狂；非得把这些好东西毁了，让人家心情沉痛，这就是不轻狂——我以为这是野史作者的意见，诸葛先生不是这样的人。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>王小波</em></p>
<p>二十多年前，我在云南插队。当地气候炎热，出产各种热带水果，就是没有椰子。整个云南都不长椰子，根据野史记载，这其中有个缘故。据说，在三国以前，云南到处都是椰子，树下住着幸福的少数民族。众所周知，椰子有很多用处，椰茸可以当饭吃，椰子油也可食用。椰子树叶里的纤维可以织粗糙的衣裙，椰子树干是木材。这种树木可以满足人的大部分需要，当地人也就不事农耕，过着悠闲的生活。忽一日，诸葛亮南征来到此地，他要教化当地人，让他们遵从我们的生活方式：干我们的活，穿我们的衣服，服从我们的制度。这件事起初不大成功，当地人没看出我们的生活方式有什么优越之处。首先，秋收春种，活得很累，起码比摘椰子要累；其次，汉族人的衣着在当地也不适用。就以诸葛先生为例，那身道袍料子虽好，穿在身上除了捂汗和捂痱子，捂不出别的来；至于那顶道冠，既不遮阳，也不挡雨，只能招马蜂进去做窝。当地天热，摘两片椰树叶把羞处遮遮就可以了。至于汉朝的政治制度，对当地的少数民族来说，未免太过烦琐。诸葛先生磨破了嘴皮子，言必称孔孟，但也没人听。他不觉得自己的道理不对，却把账算在了椰子树身上：下了一道命令，一夜之间就把云南的椰树砍了个精光，免得这些蛮夷之人听不进圣贤的道理。没了这些树，他说话就有人听了——对此，我的解释是，诸葛亮他老人家南征，可不是一个人去的，还带了好多的兵，砍树用的刀斧也可以用来砍人，砍树这件事说明他手下的人手够用，刀斧也够用。当地人明白了这个意思，就怕了诸葛先生。我这种看法你尽可以不同意——我知道你会说，诸葛亮乃古之贤人，不会这样赤裸裸地用武力威胁别人；所以，我也不想坚持这种观点。对于此事，野史上是这么解释的：蛮夷之人，有些稀奇之物，就此轻狂，胆敢藐视天朝大邦；没了这些珍稀之物，他们就老实了。这就是说，云南人当时犯有轻狂的毛病，这是一种道德缺陷。诸葛先生砍树，是为了纠正这种毛病，是为他们好。我总觉得这种说法有点太过惊世骇俗。人家有几样好东西，活得好一点，心情也好一点，这就是轻狂；非得把这些好东西毁了，让人家心情沉痛，这就是不轻狂——我以为这是野史作者的意见，诸葛先生不是这样的人。</p>
<p>野史是不能当真的，但云南现在确实没有椰子，而过去是有的。所以这些椰树可能是诸葛亮砍的。假如这不是耍野蛮，就该有种道义上的解释。我觉得诸葛亮砍椰树时，可能是这么想的：人人理应生来平等，但现在不平等了，四川不长椰树，那里的人要靠农耕为生；云南长满了椰树，这里的人就活得很舒服。让四川也长满椰树，这是一种达到公平的方法，但是限于自然条件，很难做到。所以，必须把云南的椰树砍掉，这样才公平。假如有不平等，有两种方式可以拉平：一种是向上拉平，这是最好的，但实行起来有困难；比如，有些人生来四肢健全，有些人则生有残疾，一种平等之道是把所有的残疾人都治成正常人，这可不容易做到。另一种是向下拉平，要把所有的正常人都变成残疾人就很容易，只消用铁棍一敲，一声惨叫，这就变过来了。诸葛先生采取的是向下拉平之道，结果就害得我吃不上椰子。在云南时，我觉得嘴淡时就啃几个木瓜。木瓜淡而无味，假如没熟透，啃后满嘴都是麻的。但我没有抱怨木瓜树。这种树内地也是不长的，假如它的果子太好吃，诸葛先生也会把它砍光啦。</p>
<p>我这篇文章题目在说椰子，实质在谈平等问题，挂羊头卖狗肉，正是我的用意。人人理应生来平等，这一点人人都同意。但实际上是不平等的，而且最大的不平等不是有人有椰子树，有人没有椰子树。如罗素先生所说，最大的不平等是知识的差异——有人聪明有人笨，这就是问题之所在。这里所说的知识、聪明是广义的，不单包括科学知识，还包括文化素质、艺术的品味，等等。这种椰子树长在人脑里，不光能给人带来物质福利，还有精神上的幸福。这后一方面的差异我把它称为幸福能力的差异。有些作品，有些人能欣赏，有些人就看不懂，这就是说，有些人的幸福能力较为优越。这种优越最招人嫉妒。消除这种优越的方法之一就是给聪明人头上一闷棍，把他打笨些。但打轻了不管用，打重了会把脑子打出来，这又不是我们的本意。另一种方法则是：一旦聪明人和傻人起了争执，我们总说傻人有理。久而久之，聪明人也会变傻。这种法子现在正用着呢。</p>
<p>本篇最初发表于1996年第14期《三联生活周刊》杂志。</p>
]]></content:encoded>
    </item>
    <item>
      <title>智慧与国学</title>
      <link>https://jinpeng.cv/en/posts/typecho/93/</link>
      <pubDate>Tue, 02 Aug 2022 01:10:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/93/</guid>
      <description>&lt;p&gt;智慧与国学&lt;/p&gt;
&lt;p&gt;王小波&lt;/p&gt;
&lt;p&gt;　　　　　　　　　　　　　　　　　一&lt;/p&gt;
&lt;p&gt;　　我有一位朋友在内蒙古插过队，他告诉我说，草原上绝不能有驴。假如有了的话，所有的马群都要“炸”掉。原因是这样的：那个来自内地的、长耳朵的善良动物来到草原上，看到了马群，以为见到了表亲，快乐地奔了过去；而草原上的马没见过这种东西，以为来了魔鬼，被吓得一哄而散。于是一方急于认表亲，一方急于躲鬼，都要跑到累死了才算。近代以来，确有一头长耳朵怪物，奔过了中国的原野，搅乱了这里的马群，它就是源于西方的智慧。假如这头驴可以撵走，倒也简单。问题在于撵不走。于是就有了种种针对驴的打算：把它杀掉，阉掉，让它和马配骡子，没有一种是成功的。现在我们希望驴和马能和睦相处，这大概也不可能。有驴子的地方，马就养不住。其实在这个问题上？马儿的意见最为正确：对马来说，驴子的确是可怕的怪物。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>智慧与国学</p>
<p>王小波</p>
<p>　　　　　　　　　　　　　　　　　一</p>
<p>　　我有一位朋友在内蒙古插过队，他告诉我说，草原上绝不能有驴。假如有了的话，所有的马群都要“炸”掉。原因是这样的：那个来自内地的、长耳朵的善良动物来到草原上，看到了马群，以为见到了表亲，快乐地奔了过去；而草原上的马没见过这种东西，以为来了魔鬼，被吓得一哄而散。于是一方急于认表亲，一方急于躲鬼，都要跑到累死了才算。近代以来，确有一头长耳朵怪物，奔过了中国的原野，搅乱了这里的马群，它就是源于西方的智慧。假如这头驴可以撵走，倒也简单。问题在于撵不走。于是就有了种种针对驴的打算：把它杀掉，阉掉，让它和马配骡子，没有一种是成功的。现在我们希望驴和马能和睦相处，这大概也不可能。有驴子的地方，马就养不住。其实在这个问题上？马儿的意见最为正确：对马来说，驴子的确是可怕的怪物。</p>
<p>　　让我们来看看驴子的古怪之处。当年欧几里得讲几何学，有学生发问道，这学问能带来什么好处？欧几里得叫奴隶给他一块钱，还讽刺他道：这位先生要从学问里找好处啊！又过了很多年，法拉第发现了电磁感应，演示给别人看，有位贵妇人说：这有什么用？法拉第反问道：刚生出来的小孩子有什么用？按中国人的标准，这个学生和贵妇有理，欧几里得和法拉第没有理：学以致用嘛，没有用处的学问哪能叫做学问。西方的智者却站在老师一边，赞美欧几里得和法拉第，鄙薄学生和贵妇。时至今日，我们已经看出，很直露地寻求好处，恐怕不是上策。这样既不能发现欧氏几何，也不能发现电磁感应，最后还要吃很大的亏。怎样在科学面前掩饰我们要好处的暖昧心情，成了一个难题。</p>
<p>　　有学者指出，中国传统的思维方式有重实用的倾向。他们还以为，这一点并不坏。抱着这种态度，我们很能欣赏一台电动机。这东西有“器物之用”，它对我们的生活有些贡献。我们还可以像个迂夫子那样细列出它有“抽水之用”、“通风之用”，等等。如何得到“之用”，还是个问题，于是我们就想到了发明电动机的那个人——他叫做西门子或者爱迪生。他的工作对我们可以使用电机有所贡献，换言之，他的工作对器物之用又有点用，可以叫做“器物之用之用”。像这样林林总总，可以揪出一大群：法拉第、麦克斯韦，等等，分别具有“之用之用之用”或更多的之用。像我这样的驴子之友看来，这样来想问题，岂止是有点笨，简直是脑子里有块榆木疙瘩，嗓子里有一口痰。我认为在器物的背后是人的方法与技能，在方法与技能的背后是人对自然的了解，在人对自然了解的背后，是人类了解现在、过去与未来的万丈雄心。按老派人士的说法，它该叫做“之用之用之用之用”，是末节的末节。一个人假如这样看待人类最高尚的品行，何止是可耻，简直是可杀。而区区的物品，却可以叫“之用”，和人亲近了很多。总而言之，以自己为中心，只要好处；由此产生的狼心狗肺的说法，肯定可以把法拉第、爱迪生等人气得在坟墓里打滚。</p>
<p>　　在西方的智慧里，怎样发明电动机，是个已经解决了的问题，所以才会有电动机。罗素先生就说，他赞成不计成败利钝地追求客观真理。这话还是有点绕。我觉得西方的智者有一股不管三七二十一，总要把自己往聪明里弄的劲头儿，为了变得聪明，就需要种种知识。不管电磁感应有没有用，我们先知道了再说。换言之，追求智慧与利益无干？这是一种兴趣。现代文明的特快列车竟发轫于一种兴趣，说来叫人不能相信，但恐怕真是这样。</p>
<p>　　中国人还认为，求学是痛苦的，学海无涯苦做舟。学童不仅要背四书五经，还要挨戒尺板子，仅仅是因为考虑到他们的承受力，才没有动用老虎凳。学习本身很痛苦，必须以更大的痛苦为推动力，和调教牲口没有本质的区别。当然，夫子曾说，学而时习之，不亦说乎？但他老人家是圣人，和我们不一样。再说，也没人敢打他的板子。从书上看，孟子曾从思辨中得到一些快乐。但春秋以后到近代，再没有中国人敢说学习是快乐的了。一切智力的活动都是如此，谁要说动脑子有乐趣，最轻的罪名也是不严肃——顺便说一句，我认为最严肃的东西是老虎凳，对坐在上面的人来说，更是如此。据我所知，有些外国人不是这样看问题。维特根斯坦在临终时，回顾自己一生的智力活动时说：告诉他们，我度过了美好的一生。还有一个物理学家说：我就要死了，带上两道难题去问上帝。在天堂里享受永生的快乐他还嫌不够，还要在那里讨论物理！总的来说，学习一事，在人家看来快乐无比，而在我们眼中则毫无乐趣，如同一个太监面对后宫佳丽。如此看来，东西方两种智慧的区别，不仅是驴和马的区别，而且是叫驴和骟马的区别。那东西怎么就没了，真是个大问题！</p>
<p>　　作为驴子之友，我对爱马的人也有一种敬意。通过刻苦的修炼来完善自己，成为一个敬祖宗畏鬼神、俯仰皆能无愧的好人，这种打算当然是好的。惟一使人不满意的是，这个好人很可能是个笨蛋。直愣愣地想什么东西有什么用处，这是任何猿猴都有的想法。只有一种特殊的裸猿（也就是人类），才会时时想到“我可能还不够聪明”！所以，我不满意爱马的人对这个问题的解答。也许在这个问题上可以提出一个骡子式的折衷方案：你只有变得更聪明，才能看到人间的至善。但我不喜欢这样的答案。我更喜欢驴子的想法：智慧本身就是好的。有一天我们都会死去，追求智慧的道路还会有人在走着。死掉以后的事我看不到。但在我活着的时候，想到这件事，心里就很高兴。</p>
<p>　　　　　　　　　　　　　　　　　二</p>
<p>　　物理学家海森堡给上帝带去的那两道难题是相对论和湍流。他还以为后一道题太难，连上帝都不会。我也有一个问题，但我不想向上帝提出，那就是什么是智慧。假如这个问题有答案，也必定在我的理解范围之外。当然，不是上帝的人对此倒有些答案，但我总是不信。相比之下我倒更相信苏格拉底的话：我只知道自己一无所知。罗素先生说，虽然有科学上的种种成就，但我们所知甚少，尤其是面对无限广阔的未知，简直可以说是无知的。与罗素的注释相比，我更喜欢苏格拉底的那句原话，这句话说得更加彻底。他还有些妙论我更加喜欢：只有那些知道自己智慧一文不值的人，才是最有智慧的人。这对某种偏向是种解毒剂。</p>
<p>　　如果说我们都一无所知，中国的读书人对此肯定持激烈的反对态度：孔夫子说自己知天命而且不逾矩，很显然，他不再需要知道什么了。后世的人则以为：天已经生了仲尼，万古不长如夜了。再后来的人则以为，精神原子弹已经炸过，世界上早没有了未解决的问题。总的来说，中国人总要以为自己有了一种超级的知识，博学得够够的、聪明得够够的，甚至巴不得要傻一些。直到现在，还有一些人以为，因为我们拥有世界上最博大精深的文化遗产，可以坐待世界上一切寻求智慧者的皈依——换言之，我们不仅足够聪明，还可以担任联合国救济署的角色，把聪明分绐别人一些。我当然不会反对这样说：我们中国人是全世界、也是全宇宙最聪明的人。一种如此聪明的人，除了教育别人，简直就无事可干。</p>
<p>　　马克·吐温在世时，有一次遇到了一个人，自称能让每个死人的灵魂附上自己的体。他决定通过这个人来问候一下死了的表兄，就问道：你在哪里？死表哥通过活着的人答道：我在天堂里。当然，马克·吐温很为表哥高兴，但问下去就不高兴了——你现在喝什么酒？灵魂答道：在天堂里不喝酒。又问抽什么烟？回答是不抽烟。再问干什么？答案是什么都不干，只是谈论我们在人间的朋友，希望他们到这里和我们相会。这个处境和我们有点相像，我们这些人现在就无事可干，只能静待外国物质文明破产，来投靠我们的东方智慧。这话梁任公1920年就说过，现在还有人说。洋鬼子在物质堆里受苦，我们享受天人合一的大快乐，正如在天堂里的人闲着没事拿人间的朋友磕磕牙，我们也有了机会表示自己的善良了。说实在的，等人来这点事还是洋鬼子给我们找的。要不是达·伽马找到好望角绕了过来，我们还真闲着没事于。从汉代到近代，全中国那么多聪明人，可不都在闲着：人文学科弄完了，自然科学没的弄。马克·吐温的下一个问题，我国的一些人文学者就不一定爱听了：等你在人间的朋友们都死掉，来到了你那里，再谈点什么？是啊是啊，全世界的人都背弃了物质文明，投奔了我们，此后再干点什么？难道重操旧业，去弄八股文？除此之外，再搞点考据、训诂什么的。过去的读书人有这些就够了，而现在的年轻人未必受得了。把拥有这种超级智慧比作上天堂，马克·吐温的最后一个问题深得我心：你是知道我的生活方式的，有什么方法能使我不上天堂而下地狱，我倒很想知道！言下之意是：忍受地狱毒火的煎熬，也比闲了没事要好。是啊是啊！我宁可做个苏格拉底那样的人，自以为一无所知，体会寻求知识的快乐，也不肯做个“智慧满盈”的儒士，忍受这种无所事事的煎熬！</p>
<p>　　　　　　　　　　　　　　　　　三</p>
<p>　　我有位阿姨，生了个傻女儿，比我大几岁，不知从几岁开始学会了缝扣子。她大概还学过些别的，但没有学会。总而言之，这是她惟一的技能。我到她家去坐时，每隔三到五分钟，这傻丫头都要对我狂嚎一声：“我会缝扣子！”我知道她的意思：她想让我向她学缝扣子。但我就是不肯，理由有二：其一，我自己会缝扣子；其二，我怕她扎着我。她这样爱我，让人感动。但她身上的味也很难闻。</p>
<p>　　我在美国留学时，认得一位青年，叫做戴维。我看他人还不错，就给他讲解中华文化的真谛，什么忠孝、仁义之类。他听了居然不感动，还说：“我们也爱国。我们也尊敬老年人。这有什么？我们都知道！”我听了不由得动了邪火，真想扑上去咬他。之所以没有咬，是因为想起了傻大姐，自觉得该和她有点区别，所以悻悻然地走开，心里想道：妈的！你知道这些，还不是从我们这里知道的。礼义廉耻，洋人所知没有我们精深，但也没有儿奸母、子食父、满地拉屎。东方文化里所有的一切，那边都有，之所以没有投入全身心来讲究，主要是因为人家还有些别的事情。</p>
<p>　　假如我那位傻大姐学会了一点西洋学术，比方说，几何学，一定会跳起来大叫道：人所以异于禽兽者，几稀！这东西就是几何学！这话不是没有道理，的确没有哪种禽兽会几何学。那时她肯定要逼我跟她学几何，如果我不肯跟她学，她定要说我是禽兽之类，并且责之以大义。至于我是不是已经会了一些，她就不管了。我的意思当然不是说她能学会这东西，而是说她只要会了任伺一点东西，都会当作超级智慧，相比之下那东西是什么倒无所谓。由这件事我想到超级知识的本质。这种东西罗素和苏格拉底都学不会，我学起来也难。任何知识本身，即便烦难，也可以学会。难就难在让它变成超级，从中得到大欢喜、大欢乐，无限的自满、自足、手之舞之足之蹈之的那种品行。这种品行我的那位傻大姐身上最多，我身上较少。至于罗素、苏格拉底两位先生，他们身上一点都没有。</p>
<p>　　傻大姐是个知识的放大器，学点东西极苦，学成以后极乐。某些国人对待国学的态度与傻大姐相近。说实在的，他们把它放得够大了。拉封丹寓言里，有一则《大山临盆》，内容如下：大山临盆，天为之崩，地为之裂，日月星辰，为之无光。房倒屋坍，烟尘滚滚，天下生灵，死伤无数……最后生下了一只耗子。中国的人文学者弄点学问，就如大山临盆一样壮烈。当然，我说的不止现在，而且有过去，还有未来。</p>
<p>　　正如迂夫子不懂西方的智慧，也能对它品头论足一样，罗素没有手舞足蹈的品行，但也能品出其中的味道——大概把对自己所治之学的狂热感情视作学问本身乃是一种常见的毛病，不独中国人犯，外国人也要犯。他说：人可能认为自己有无穷的财源，而且这种想法可以让他得到一些（何止是一些！罗素真是不懂——王注）满足。有人确实有这种想法，但银行经理和法院一般不会同意他们。银行里有账目，想骗也骗不成；至于在法院里，我认为最好别吹牛，搞不好要进去的。远离这两个危险的场所，躲在人文学科的领域之内，享受自满自足的大快乐，在目前还是可以的；不过要有人养。在自然科学里就不行：这世界上每年都有人发明永动机，但谁也不能因此发财。顺便说一句，我那位傻大姐，现在已经五十岁了，还靠我那位不幸的阿姨养活着。</p>
<p>　　</p>
<p>　　发表于1995年第11期《读书》杂志</p>
]]></content:encoded>
    </item>
    <item>
      <title>躺在舒适圈</title>
      <link>https://jinpeng.cv/en/posts/typecho/89/</link>
      <pubDate>Mon, 25 Jul 2022 23:21:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/89/</guid>
      <description>&lt;p&gt;常常作为一个沉默的大多数中的一份子，有时候也会想要不通过话语来表达些什么，将话语要表达的记录下来就变成一种必要的事情了。&lt;/p&gt;
&lt;p&gt;从医院出来之后，就每天能躺着就尽量躺着，能让我下床的事情无非三件，吃喝、拉撒、手机没电了。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>常常作为一个沉默的大多数中的一份子，有时候也会想要不通过话语来表达些什么，将话语要表达的记录下来就变成一种必要的事情了。</p>
<p>从医院出来之后，就每天能躺着就尽量躺着，能让我下床的事情无非三件，吃喝、拉撒、手机没电了。</p>
<p>我看起来是处于舒适圈的一个状态。</p>
<p>但这让我很自然的经常感到一些事情变得没有必要，一些事情自己做不到，可一些事情不得不做，还有一些事情不想做却无可奈何的做着，比如打游戏或者刷视频啥的，明明这些事情已经不能够给我带来放松和快乐了，取而代之的是疲惫和无聊。</p>
<p>舒适圈这个概念真的很让人琢磨不透，首先有人不愿意待在舒适的圈子里吗？纵使是 masochism 也只是因为 masochistic 让其感到舒适而已。</p>
<p>长时间的舒适会让人恐惧，这种恐惧来自于时间，时间并不会让你长时间停留在舒适的空间，而是将你引向黑暗，永恒的黑暗。借用引力波的概念，为了便于解释，从网上搜了一张图片<br>
<img alt="2022-07-25T15:20:04.png" loading="lazy" src="http://42.192.117.142/usr/uploads/2022/07/1316417595.png"><br>
图片所示的大球与所承托大球的曲面构成了这个世界，而小球围绕大球所经过的轨迹则是我们的一生，每个人都是如此，看来我们似乎无法改变掉进深渊的终极命运。</p>
<p>其实在这条轨迹上，我们能够在不同的位置获得不同的照片，而照片的内容就是我们的生活与见闻，我们被一张张的照片包裹着，而获得每一张照片是需要代价的。我认为的停留在舒适圈的概念就是在我们在获得某一张照片之后，一直盯着这张照片看，全然不管后面会有什么照片。</p>
<p>事实上，每一张照片都有其固定的强度极限，随着我们越来越接近深渊，深渊对我们的引力也将会越来越大，这引力大于之前获得照片的强度极限时，便会将其撕裂，这也就是长期舒适的恐惧的来源，毕竟失去照片之后，我们也失去了包围我们的生活，我们将直面深渊。</p>
<p>因此，所谓的舒适圈只是相对于当下的舒适，倘若时间之矢不停止，那么也决不存在永恒的舒适。而正确的决定就是主动摆脱当下的照片，走出舒适圈，去获得人生轨迹下一个点的照片，确保下一个点也依然是舒适的，这就是跳出舒适圈的意义。</p>
<p>个人如此，人类亦如此。</p>
]]></content:encoded>
    </item>
    <item>
      <title>网站和数据库突然莫名奇妙出了问题</title>
      <link>https://jinpeng.cv/en/posts/typecho/88/</link>
      <pubDate>Thu, 07 Jul 2022 11:54:45 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/88/</guid>
      <description>&lt;p&gt;从发现问题到现在折腾了好久，一直没有找到问题的根源所在，下面是临时使用的方案，下次再出问题，全部重新更换系统和数据库了。&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;/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-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./mysqld_safe --user&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;root --basedir&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local/lighthouse/softwares/mariadb/data --datadir&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;/usr/local/lighthouse/softwares/mariadb/data
&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;</description>
      <content:encoded><![CDATA[<p>从发现问题到现在折腾了好久，一直没有找到问题的根源所在，下面是临时使用的方案，下次再出问题，全部重新更换系统和数据库了。</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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-bash" data-lang="bash"><span class="line"><span class="cl">./mysqld_safe --user<span class="o">=</span>root --basedir<span class="o">=</span>/usr/local/lighthouse/softwares/mariadb/data --datadir<span class="o">=</span>/usr/local/lighthouse/softwares/mariadb/data
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>努力生存</title>
      <link>https://jinpeng.cv/en/posts/typecho/87/</link>
      <pubDate>Sun, 12 Jun 2022 22:16:31 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/87/</guid>
      <description>&lt;p&gt;在这个社会上如何生存，我们通过消费来获取生存所需的物质，消费则比如通过资金作为中介完成价值交换。获取并积累资金就成了我们不得不去做的事情，因为我们要生存，但往往提到金钱就冠以肤浅庸俗的标签。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>在这个社会上如何生存，我们通过消费来获取生存所需的物质，消费则比如通过资金作为中介完成价值交换。获取并积累资金就成了我们不得不去做的事情，因为我们要生存，但往往提到金钱就冠以肤浅庸俗的标签。</p>
<p>如果谁硬要说这是庸俗的事，除非他的资金是通过别人直接供给的，那坦然接受这个标签就好了，一人一生无数标签，多一个也没啥。</p>
<p>主要说想说的就是在作为生产者时的角色定位，大家都说只要肯努力就饿不死，的确是这样的，我们可以工地搬砖，可以街头发传单，可以街头炸豆腐，可以努力找个好工作，找个好单位，都可以，但我们应该尽量避免为了生存而付出无限度的时间和精力。</p>
<p>生产指提供有价值的物质和非物质产品，侠义生产主要可以分为农副产品生产，工业生产以及相应加工过程。围绕产品流通则产生了相应的经营行业。</p>
<p>对于实体产品没什么好说的，拥有生产资源，你就可以通过雇佣劳动力将生产资源运转起来，从而将资源转化为产品。事实上大多数人都是没有这种生产资源的，也即是大多数人只能够出卖自己劳动力来与有生产资源的人产生被雇佣的关系，这是最简单和通过时间与体力的累积来换取资本家所给的报酬。提到资本家，就免不了的提到剥削这个词，因而普通的劳动者往往处于一种隐性的不公平地位。</p>
<p>在没有生产资源的前提下如何摆脱普通的劳动者身份，就只能围绕非实体产品的生产展开。这里的生产更常见的指代叫做“服务”，也可以分为围绕实体产品的技术服务和纯技术服务。围绕实体的技术服务上限可以特别高，下限同样也可以特别低，比如维护Windows系统的和修电脑的，而纯技术服务更多出现在专业领域和文化领域，有一部分人才在其领域别有建树，能够提供创造性的创意和想法，从而产生出艺术产品或高科技产品，这类产品往往不受资本家的控制和约束，甚至还专门有资本家供养着这群艺术家和天才。而他们只需提供自己能提供但普通人不能提供的价值，这就是他们的价值所在。</p>
<p>我们可以成为艺术家吗？可以，但是如果你不是生来就具有艺术天赋的话，你得忽悠住社会上的大部分人，大多数人没这个能力，比如写出《天书》的徐冰，将汉字笔画部首重新组合成一本没有意义的书，却将其称为天书，说是剥离了汉字本身的含义，能够本真的体现汉字的美。这个我是不赞同的，天的不可知并不能够用简单的无意义来取代，但毋庸置疑，他是成功的。忽悠住了一大群人。</p>
<p>我们可以成为天才吗？我只能说也许可以，天才有着普通人难以企及的思维和灵性，能够摆脱现有知识的桎梏，创造性丰富人类现有的知识库。但绝大多数人，并不能够简单的通过长时间的努力来使自己变成天才，那么我们就不需要努力了吗？</p>
<p>当然不是，我们可以成为通过努力使自己接近于天才或者艺术家，这就已经足够使我们能够在这个物欲横流的社会立足，往往这类人被称为专家或者匠人，当你所在的领域只有寥寥几个专家或者匠人的时候，那么你就是天才，你就是艺术家。</p>
<p>这个时候我们便可以通过自己的身份背后所蕴含的价值，借助能够体现这个价值的实体化作品来完成资金的变现累积，我们每个人都应该朝着这个目标努力，尽管只有少数人能够达到这个身份，但这也是这其所能带来价值的原因所在。</p>
<p>这也就是努力的重要性，无论在什么领域，努力学习并运用最广博和最先进的知识到所在领域，而不是简单的把自己当作一个零件或者一个工具，最终实现人的自我价值。</p>
]]></content:encoded>
    </item>
    <item>
      <title>愚蠢的人类</title>
      <link>https://jinpeng.cv/en/posts/typecho/82/</link>
      <pubDate>Wed, 01 Jun 2022 15:09:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/82/</guid>
      <description>&lt;p&gt;&lt;em&gt;摘自《金捷幡》https://jinjiefan.com/&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;这个世界，是向人类能理解的相反方向前进的。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;人类的困惑，也比2000年前多得多。&lt;/p&gt;
&lt;p&gt;那时候的哲人，比如老子、孔子、佛陀、基督，都对这个世界有无比清晰的看法和论断。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>摘自《金捷幡》https://jinjiefan.com/</em></p>
<blockquote>
<p>这个世界，是向人类能理解的相反方向前进的。</p>
</blockquote>
<p>人类的困惑，也比2000年前多得多。</p>
<p>那时候的哲人，比如老子、孔子、佛陀、基督，都对这个世界有无比清晰的看法和论断。</p>
<p>欧几里得的几何学，也几乎把城里乡下能用到的数学都系统地概括了。</p>
<p>而今天，我们发现自己对宇宙和世界是那么的无知：无论在宏观上还是微观上，无论从数学上还是从物理意义上。</p>
<h1 id="一">一、</h1>
<p>伽利略在1623年出版的《试金者》中，宣称宇宙是用数学语言写的。这似乎给人类打开了天国秘密之门。</p>
<p>随即，笛卡尔和费马的解析几何综合了逻辑、几何和代数，为微积分打下了的基础。然后牛顿爵士似乎完全解释了天体运动的奥秘，而麦克斯韦的四个偏微分方程又将光电磁的内裤扒下了。</p>
<p>经典物理学的创立是人类第一次真正拿到上帝给出的密码。古代宗教先哲们随时准备退休养老，因为中学教材都要胜过他们了。</p>
<p>然而事情并未这样发生。</p>
<h1 id="二">二、</h1>
<p>欧几里得神秘留下的第五公设，为2000年后罗巴切夫斯基和黎曼等人打开了非欧几何的大门，最终放出了“广义相对论”这个妖怪。</p>
<p>绝对时空观的打破、时间因速度而变慢、空间是弯曲的：这种诡异的理论让正常人的脑子终于不够用了。</p>
<p>无论如何，广义相对论还是基于美妙的几何学，站在人类智力顶尖的1%人群还是勉强可以接受的。</p>
<p>但随即大魔头“量子力学”的诞生和完善，终于让99.99999999%的人包括爱因斯坦，都再也无法理解这些数学公式代表的实际意义。</p>
<h1 id="三">三、</h1>
<p>等到超弦理论和M理论横空出世，数学更是远远超过了人类能够想象的物理世界，平行宇宙、降维打击等成为新科幻的题材。</p>
<p>浩瀚的宇宙居然在超光速膨胀，原来定义成不可再分的原子居然又被分成费米子玻色子等基本粒子甚至跳舞的弦。真空也不再是空的，而充满了暗物质、暗能量和来自波函数概率论的各种云。</p>
<p>我们现在的义务教育、甚至通识高等教育，都不敢涉及这些内容，因为老师也不懂。科普的工作，居然最后都交给了记者和洗稿天才们。</p>
<p>愚蠢的人类开始试图回归老子、佛陀和基督，对新科学选择性失明，他们宁愿相信老子和仁波切的理论才是万物理论。</p>
<h1 id="四">四、</h1>
<p>人类追捧“大道至简”几千年，因为人脑压根没有分析复杂变量系统的能力。 围棋中传颂百年的各种美学，正是人类简化思维文化的精华，然而它们最终被Alpha Go的概率论砸得稀烂。</p>
<p>各种成功学、鸡血学都在让你认为，单一或个别变量就能让你一飞冲天。直到你碰得头破血流，才随便另找一个变量掩盖你的失意。</p>
<h1 id="五">五、</h1>
<p>股评和预测最受欢迎了，因为它们安抚了人们简单的头脑，即使这些解释都是事后诸葛亮或者干脆是胡诌的。</p>
<p>经济学家通常也扮演着类似的角色，只不过他们的理论是安慰精英阶层的。人类总是想拥有预测未来的能力，在这方面经济学家好像成功的不多。</p>
<p>贸易战和越来越混沌的世界格局，以及各种人工智能的涌现，也许是一个热力学第二定律，告诉你这个世界并不是你能够思考的。</p>
<h1 id="六">六、</h1>
<p>医学大概是更落后的一门“科学”了，而我们大多数的疾病，其原因都是复杂的。绝大多数人无法区分吃药和自愈之间的关系，而现代实用医学只是大样本的统计学而已。 愚蠢的人类，宁愿相信各种大师，宁愿相信古代先哲，也不愿相信概率。 每年人们在脸上抹着数千亿美元的护肤品，徒劳地试图扭转写在基因里的衰老时间表。</p>
<p>虽然人类已经把硅基芯片探索到纳米级，但是仍远没有能力制作一个单细胞微米级的碳基草履虫。这使得真正的医学征途还远未展开。</p>
<p>逻辑、概率和算法才是你可以依赖的。这句话是对吗？</p>
<h1 id="七">七、</h1>
<p>聪明人，会计划一条收益最大的路，然后一直坚持走下去。但大多数人倒在半途，有的因前半程运气不佳，有的因为情绪失控，有的因为中途改变判断…而坚持下来的那些人成为传奇，语录被到处传颂。</p>
<p>世界和科学再也不是我们这种猪脑可以搞明白的，能学懂19世纪数学的已经是地球上的奇才了。试图搞明白它其实增加了被洗脑的可能，因为人脑倾向于接受简化的解释。飞上天的运气，也不是每头猪都有的，运气压根就不是数学里存在的东西。</p>
<p>上帝究竟为什么设计了一个如此复杂、命中注定让我们越来越无法掌握无法理解的系统？</p>
<p>看看世界上最聪明的头脑们在“哥本哈根诠释”上的论战，我也越来越相信我们都只是生活在低维世界的微粒。</p>
<h1 id="八">八、</h1>
<p>那么，如此黑暗的这篇文章会有一个闪亮的结尾吗？</p>
<p>答案是肯定的。</p>
<p>既然我们没法了解这个复杂系统，那么就去做你爱的事情吧：爱你爱的人，做你爱的工作，吃你爱的食物，买你爱的东西，投资你爱的公司(股票)…</p>
<p>组成我们身体的物质和能量，最终都会分解回归宇宙。但是“信息”却似乎可以超越时空，这是写这篇糊里糊涂文字的初衷，至少它能化身比特穿越未来。</p>
]]></content:encoded>
    </item>
    <item>
      <title>神空</title>
      <link>https://jinpeng.cv/en/posts/typecho/80/</link>
      <pubDate>Sun, 29 May 2022 21:47:30 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/80/</guid>
      <description>&lt;p&gt;馆外窗外淅淅沥沥的雨，似乎是阻挡住了我回去的脚步，破旧的运动鞋踩上湿漉漉的地砖定会很滑吧，于是我便决心等雨停。&lt;/p&gt;
&lt;p&gt;仔细一看时间21点23，可这个时间并不是我要走的时间，我明白我又神空了（我所指的神确切来说应该是我的注意力）。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>馆外窗外淅淅沥沥的雨，似乎是阻挡住了我回去的脚步，破旧的运动鞋踩上湿漉漉的地砖定会很滑吧，于是我便决心等雨停。</p>
<p>仔细一看时间21点23，可这个时间并不是我要走的时间，我明白我又神空了（我所指的神确切来说应该是我的注意力）。</p>
<p>我没有注意力了，包括写下这些苍白的文字，我的头脑都是有着各种各样乱七八糟无法描述的想法。也会有不断的念想去尝试各种各样的事情，大部分事情都只是停留在脑袋去做的阶段，想着着手去做应该也是没有什么成果或者进展，便一一作罢。</p>
<p>这就给了我一个假象，就是我明明要做的事情很多，按道理来说我应该忙的要死才对。可偏偏我不知所措，无事可做，这就是神空所带来的后果。</p>
<p>这样的状态来自于我没有分清楚事情的轻重缓急，或者说在比较短的一段时间里，这些事情的各种结果通通不会影响到我。从这儿一想，大学里面的大部分人应该都处于这个状态，所以才会看到好多同学一整天一整天的玩游戏。我也会一整天一整天的玩游戏，但我好像不喜欢玩游戏，长时间的游戏只会让我感觉疲惫和空虚。放下手机，随之便陷入茫然。</p>
<p>一一作罢令人神空，解决方法也很简单，那就是一一做吧。既然我分不清各种事情的轻重缓急，那么我应该明白在足够长的一段时间里每件事情都会给我带来影响。破除神空的状态也仅仅是一个观念的问题，每件事情都很重要，都必须马上做，至于先做哪个，脑袋里第一浮现出来的就是答案。</p>
]]></content:encoded>
    </item>
    <item>
      <title>白种人上帝的骄子！</title>
      <link>https://jinpeng.cv/en/posts/typecho/79/</link>
      <pubDate>Mon, 23 May 2022 10:58:33 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/79/</guid>
      <description>&lt;p&gt;&lt;em&gt;朱自清 1925年6月19日夜&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;原载于1925年7月5日《文学周报》第180期&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;过了一百年这社会竟没有什么改变，甚至还有大批的国人加入到袭击同胞的小西洋人阵营中。&lt;/em&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>朱自清 1925年6月19日夜</em></p>
<p><em>原载于1925年7月5日《文学周报》第180期</em></p>
<p><em>过了一百年这社会竟没有什么改变，甚至还有大批的国人加入到袭击同胞的小西洋人阵营中。</em></p>
<h2 id="01">01</h2>
<p>去年暑假到上海，在一路电车的头等里，见一个大西洋人带着一个小西洋人，相并地坐着。我不能确说他俩是英国人或美国人；我只猜他们是父与子。那小西洋人，那白种的孩子，不过十一二岁光景，看去是个可爱的小孩，引我久长的注意。他戴着平顶硬草帽，帽檐下端正地露着长圆的小脸。白中透红的面颊，眼睛上有着金黄的长睫毛，显出和平与秀美。我向来有种癖气：见了有趣的小孩，总想和他亲热，做好同伴；若不能亲热，便随时亲近亲近也好。在高等小学时，附设的初等里，有一个养着乌黑的西发的刘君，真是依人的小鸟一般；牵着他的手问他的话时，他只静静地微仰着头，小声儿回答我不常看见他的笑容，他的脸老是那么幽静和真诚，皮下却烧着亲热的火把。我屡次让他到我家来，他总不肯；后来两年不见，他便死了。我不能忘记他！我牵过他的小手，又摸过他的圆下巴。但若遇着陌生的小孩，我自然不能这么做，那可有些窘了；不过也不要紧，我可用我的眼睛看他一回，两回，十回，几十回！孩子大概不很注意人的眼睛，所以尽可自由地看，和看女人要遮遮掩掩的不同。我凝视过许多初会面的孩子，他们都不曾向我抗议；至多拉着同在的母亲的手，或倚着她的膝头，将眼看她两看罢了。所以我胆子很大。这回在电车里又发了老癖气，我两次三番地看那白种的孩子，小西洋人！</p>
<h2 id="02">02</h2>
<p>初时他不注意或者不理会我，让我自由地看他。但看了不几回，那父亲站起来了，儿子也站起来了，他们将到站了。这时意外的事来了。那小西洋人本坐在我的对面；走近我时，突然将脸尽力地伸过来了，两只蓝眼睛大大地睁着，那好看的睫毛已看不见了；两颊的红也已褪了不少了。和平，秀美的脸一变而为粗俗，凶恶的脸了！他的眼睛里有话：“咄！黄种人，黄种的支那人，你你看吧！你配看我！”他已失了天真的稚气，脸上满布着横秋的老气了！我因此宁愿称他为“小西洋人”。他伸着脸向我足有两秒钟；电车停了，这才胜利地掉过头，牵着那大西洋人的手走了。大西洋人比儿子似乎要高出一半；这时正注目窗外，不曾看见下面的事。儿子也不去告诉他，只独断独行地伸他的脸；伸了脸之后，便又若无其事的，始终不发一言在沉默中得着胜利，凯旋而去。不用说，这在我自然是一种袭击，“出其不意，攻其不备”的袭击！</p>
<h2 id="03">03</h2>
<p>这突然的袭击使我张皇失措；我的心空虚了，四面的压迫很严重，使我呼吸不能自由。我曾在Ｎ城的一座桥上，遇见一个女人；我偶然地看她时，她却垂下了长长的黑睫毛，露出老练和鄙夷的神色。那时我也感着压迫和空虚，但比起这一次，就稀薄多了：我在那小西洋人两颗枪弹似的眼光之下，茫然地觉着有被吞食的危险，于是身子不知不觉地缩小大有在奇境中的阿丽思的劲儿！我木木然目送那父与子下了电车，在马路上开步走；那小西洋人竟未一回头，断然地去了。我这时有了迫切的国家之感！我做着黄种的中国人，而现在还是白种人的世界，他们的骄傲与践踏当然会来的；我所以张皇失措而觉着恐怖者，因为那骄傲我的，践踏我的，不是别人，只是一个十来岁的“白种的”孩子，竟是一个十来岁的白种的“孩子”！我向来总觉得孩子应该是世界的，不应该是一种，一国，一乡，一家的。我因此不能容忍中国的孩子叫西洋人为“洋鬼子”。但这个十来岁的白种的孩子，竟已被揿入人种与国家的两种定型里了。他已懂得凭着人种的优势和国家的强力，伸着脸袭击我了。这一次袭击实是许多次袭击的小影，他的脸上便缩印着一部中国的外交史。他之来上海，或无多日，或已长久，耳濡目染，他的父亲，亲长，先生，父执，乃至同国，同种，都以骄傲践踏对付中国人；而他的读物也推波助澜，将中国编排得一无是处，以长他自己的威风。所以他向我伸脸，决非偶然而已。</p>
<h2 id="04">04</h2>
<p>这是袭击，也是侮蔑，大大的侮蔑！我因了自尊，一面感着空虚，一面却又感着愤怒；于是有了迫切的国家之念。我要诅咒这小小的人！但我立刻恐怖起来了：这到底只是十来岁的孩子呢，却已被传统所埋葬；我们所日夜想望着的“赤子之心”，世界之世界（非某种人的世界，更非某国人的世界！），眼见得在正来的一代，还是毫无信息的！这是你的损失，我的损失，他的损失，世界的损失；虽然是怎样渺小的一个孩子！但这孩子却也有可敬的地方：他的从容，他的沉默，他的独断独行，他的一去不回头，都是力的表现，都是强者适者的表现。决不婆婆妈妈的，决不粘粘搭搭的，一针见血，一刀两断，这正是白种人之所以为白种人。我真是一个矛盾的人。无论如何，我们最要紧的还是看看自己，看看自己的孩子！谁也是上帝之骄子；这和昔日的王侯将相一样，是没有种的！</p>
]]></content:encoded>
    </item>
    <item>
      <title>女人</title>
      <link>https://jinpeng.cv/en/posts/typecho/78/</link>
      <pubDate>Mon, 23 May 2022 10:27:38 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/78/</guid>
      <description>&lt;p&gt;&lt;em&gt;1925年2月15日，白马湖&lt;/em&gt;&lt;br&gt;
&lt;em&gt;朱自清记朋友关于女人之谈，现在只剩wc了，偶然读到故分享一下&lt;/em&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;白水是个老实人，又是个有趣的人。他能在谈天的时候，滔滔不绝地发出长篇大论。这回听勉子说，日本某杂志上有《女？》一文，是几个文人以“女”为题的桌话的记录。他说，“这倒有趣，我们何不也来一下？”我们说，“你先来！”他搔了搔头发道：“好！就是我先来；你们可别临阵脱逃才好。”我们知道他照例是开口不能自休的。果然，一番话费了这多时候，以致别人只有补充的工夫，没有自叙的余裕。那时我被指定为临时书记，曾将桌上所说，拉杂写下。现在整理出来，便是以下一文。因为十之八是白水的意见，便用了第一人称，作为他自述的模样；我想，白水大概不至于不承认吧？&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p><em>1925年2月15日，白马湖</em><br>
<em>朱自清记朋友关于女人之谈，现在只剩wc了，偶然读到故分享一下</em></p>
<blockquote>
<p>白水是个老实人，又是个有趣的人。他能在谈天的时候，滔滔不绝地发出长篇大论。这回听勉子说，日本某杂志上有《女？》一文，是几个文人以“女”为题的桌话的记录。他说，“这倒有趣，我们何不也来一下？”我们说，“你先来！”他搔了搔头发道：“好！就是我先来；你们可别临阵脱逃才好。”我们知道他照例是开口不能自休的。果然，一番话费了这多时候，以致别人只有补充的工夫，没有自叙的余裕。那时我被指定为临时书记，曾将桌上所说，拉杂写下。现在整理出来，便是以下一文。因为十之八是白水的意见，便用了第一人称，作为他自述的模样；我想，白水大概不至于不承认吧？</p>
</blockquote>
<h1 id="01">01</h1>
<p>老实说，我是个欢喜女人的人；从国民学校时代直到现在，我总一贯地欢喜着女人。虽然不曾受着什么“女难”，而女人的力量，我确是常常领略到的。女人就是磁石，我就是一块软铁；为了一个虚构的或实际的女人，呆呆的想了一两点钟，乃至想了一两个星期，真有不知肉味光景这种事是屡屡有的。在路上走，远远的有女人来了，我的眼睛便像蜜蜂们嗅着花香一般，直攫过去。但是我很知足，普通的女人，大概看一两眼也就够了，至多再掉一回头。像我的一位同学那样，遇见了异性，就立正向左或向右转，仔细用他那两只近视眼，从眼镜下面紧紧追出去半日半日，然后看不见，然后开步走我是用不着的。我们地方有句土话说：“乖子望一眼，呆子望到晚；”我大约总在“乖子”一边了。我到无论什么地方，第一总是用我的眼睛去寻找女人。在火车里，我必走遍几辆车去发见女人；在轮船里，我必走遍全船去发见女人。我若找不到女人时，我便逛游戏场去，赶庙会去，我大胆地加一句参观女学校去；这些都是女人多的地方。于是我的眼睛更忙了！我拖着两只脚跟着她们走，往往直到疲倦为止。</p>
<h1 id="02">02</h1>
<p>我所追寻的女人是什么呢？我所发见的女人是什么呢？这是艺术的女人。从前人将女人比做花，比做鸟，比做羔羊；他们只是说，女人是自然手里创造出来的艺术，使人们欢喜赞叹正如艺术的儿童是自然的创作，使人们欢喜赞叹一样。不独男人欢喜赞叹，女人也欢喜赞叹；而“妒”便是欢喜赞叹的另一面，正如“爱”是欢喜赞叹的一面一样。受欢喜赞叹的，又不独是女人，男人也有。“此柳风流可爱，似张绪当年，”便是好例；而“美丰仪”一语，尤为“史不绝书”。但男人的艺术气氛，似乎总要少些；贾宝玉说得好：男人的骨头是泥做的，女人的骨头是水做的。这是天命呢？还是人事呢？我现在还不得而知；只觉得事实是如此罢了。你看，目下学绘画的“人体习作”的时候，谁不用了女人做他的模特儿呢？这不是因为女人的曲线更为可爱么？我们说，自有历史以来，女人是比男人更其艺术的；这句话总该不会错吧？所以我说，艺术的女人。所谓艺术的女人，有三种意思：是女人中最为艺术的，是女人的艺术的一面，是我们以艺术的眼去看女人。我说女人比男人更其艺术的，是一般的说法；说女人中最为艺术的，是个别的说法。而“艺术”一词，我用它的狭义，专指眼睛的艺术而言，与绘画，雕刻，跳舞同其范类。艺术的女人便是有着美好的颜色和轮廓和动作的女人，便是她的容貌，身材，姿态，使我们看了感到“自己圆满”的女人。这里有一块天然的界碑，我所说的只是处女，少妇，中年妇人，那些老太太们，为她们的年岁所侵蚀，已上了凋零与枯萎的路途，在这一件上，已是落伍者了。女人的圆满相，只是她的“人的诸相”之一；她可以有大才能，大智慧，大仁慈，大勇毅，大贞洁等等，但都无碍于这一相。诸相可以帮助这一相，使其更臻于充实；这一相也可帮助诸相，分其圆满于它们，有时更能遮盖它们的缺处。我们之看女人，若被她的圆满相所吸引，便会不顾自己，不顾她的一切，而只陶醉于其中；这个陶醉是刹那的，无关心的，而且在沉默之中的。</p>
<h1 id="03">03</h1>
<p>我们之看女人，是欢喜而决不是恋爱。恋爱是全般的，欢喜是部分的。恋爱是整个“自我”与整个“自我”的融合，故坚深而久长；欢喜是“自我”间断片的融合，故轻浅而飘忽。这两者都是生命的趣味，生命的姿态。但恋爱是对人的，欢喜却兼人与物而言。此外本还有“仁爱”，便是“民胞物与”之怀；再进一步，“天地与我并生，万物与我为一”，便是“神爱”，“大爱”了。这种无分物我的爱，非我所要论；但在此又须立一界碑，凡伟大庄严之像，无论属人属物，足以吸引人心者，必为这种爱；而优美艳丽的光景则始在“欢喜”的阈中。至于恋爱，以人格的吸引为骨子，有极强的占有性，又与二者不同。Y君以人与物平分恋爱与欢喜，以为“喜”仅属物，“爱”乃属人；若对人言“喜”，便是蔑视他的人格了。现在有许多人也以为将女人比花，比鸟，比羔羊，便是侮辱女人；赞颂女人的体态，也是侮辱女人。所以者何？便是蔑视她们的人格了！但我觉得我们若不能将“体态的美”排斥于人格之外，我们便要慢慢的说这句话！而美若是一种价值，人格若是建筑于价值的基石上，我们又何能排斥那“体态的美”呢？所以我以为只须将女人的艺术的一面作为艺术而鉴赏它，与鉴赏其他优美的自然一样；艺术与自然是“非人格”的，当然便说不上“蔑视”与否。在这样的立场上，将人比物，欢喜赞叹，自与因袭的玩弄的态度相差十万八千里，当可告无罪于天下。只有将女人看作“玩物”，才真是蔑视呢；即使是在所谓的“恋爱”之中。艺术的女人，是的，艺术的女人！我们要用惊异的眼去看她，那是一种奇迹！</p>
<h1 id="04">04</h1>
<p>我之看女人，十六年于兹了，我发见了一件事，就是将女人作为艺术而鉴赏时，切不可使她知道；无论是生疏的，是较熟悉的。因为这要引起她性的自卫的羞耻心或他种嫌恶心，她的艺术味便要变稀薄了；而我们因她的羞耻或嫌恶而关心，也就不能静观自得了。所以我们只好秘密地鉴赏；艺术原来是秘密的呀，自然的创作原来是秘密的呀。但是我所欢喜的艺术的女人，究竟是怎样的呢？您得问了。让我告诉您：我见过西洋女人，日本女人，江南江北两个女人，城内的女人，名闻浙东西的女人；但我的眼光究竟太狭了，我只见过不到半打的艺术的女人！而且其中只有一个西洋人，没有一个日本人！那西洋的处女是在Ｙ城里一条僻巷的拐角上遇着的，惊鸿一瞥似地便过去了。其余有两个是在两次火车里遇着的，一个看了半天，一个看了两天；还有一个是在乡村里遇着的，足足看了三个月。我以为艺术的女人第一是有她的温柔的空气；使人如听着箫管的悠扬，如嗅着玫瑰花的芬芳，如躺着在天鹅绒的厚毯上。她是如水的密，如烟的轻，笼罩着我们；我们怎能不欢喜赞叹呢？这是由她的动作而来的；她的一举步，一伸腰，一掠鬓，一转眼，一低头，乃至衣袂的微扬，裙幅的轻舞，都如蜜的流，风的微漾；我们怎能不欢喜赞叹呢？最可爱的是那软软的腰儿；从前人说临风的垂柳，《红楼梦》里说晴雯的“水蛇腰儿”，都是说腰肢的细软的；但我所欢喜的腰呀，简直和苏州的牛皮糖一样，使我满舌头的甜，满牙齿的软呀。腰是这般软了，手足自也有飘逸不凡之概。你瞧她的足胫多么丰满呢！从膝关节以下，渐渐的隆起，像新蒸的面包一样；后来又渐渐渐渐地缓下去了。这足胫上正罩着丝袜，淡青的？或者白的？拉得紧紧的，一些儿皱纹没有，更将那丰满的曲线显得丰满了；而那闪闪的鲜嫩的光，简直可以照出人的影子。你再往上瞧，她的两肩又多么亭匀呢！像双生的小羊似的，又像两座玉峰似的；正是秋山那般瘦，秋水那般平呀。肩以上，便到了一般人讴歌颂赞所集的“面目”了。我最不能忘记的，是她那双鸽子般的眼睛，伶俐到像要立刻和人说话。在惺忪微倦的时候，尤其可喜，因为正像一对睡了的褐色小鸽子。和那润泽而微红的双颊，苹果般照耀着的，恰如曙色之与夕阳，巧妙的相映衬着。再加上那覆额的，稠密而蓬松的发，像天空的乱云一般，点缀得更有情趣了。而她那甜蜜的微笑也是可爱的东西；微笑是半开的花朵，里面流溢着诗与画与无声的音乐。是的，我说的已多了；我不必将我所见的，一个人一个人分别说给你，我只将她们融合成一个Sketch给你看这就是我的惊异的型，就是我所谓艺术的女子的型。但我的眼光究竟太狭了！我的眼光究竟太狭了！</p>
<h1 id="05">05</h1>
<p>在女人的聚会里，有时也有一种温柔的空气；但只是笼统的空气，没有详细的节目。所以这是要由远观而鉴赏的，与个别的看法不同；若近观时，那笼统的空气也许会消失了的。说起这艺术的“女人的聚会”，我却想着数年前的事了，云烟一般，好惹人怅惘的。在Ｐ城一个礼拜日的早晨，我到一所宏大的教堂里去做礼拜；听说那边女人多，我是礼拜女人去的。那教堂是男女分坐的。我去的时候，女坐还空着，似乎颇遥遥的；我的遐想便去充满了每个空坐里。忽然眼睛有些花了，在薄薄的香泽当中，一群白上衣，黑背心，黑裙子的女人，默默的，远远的走进来了。我现在不曾看见上帝，却看见了带着翼子的这些安琪儿了！另一回在傍晚的湖上，暮霭四合的时候，一只插着小红花的游艇里，坐着八九个雪白雪白的白衣的姑娘；湖风舞弄着她们的衣裳，便成一片浑然的白。我想她们是湖之女神，以游戏三昧，展现色相于人间的呢！第三回在湖中的一座桥上，淡月微云之下，倚着十来个，也是姑娘，朦朦胧胧的与月一齐白着。在抖荡的歌喉里，我又遇着月姊儿的化身了！这些是我所发见的又一型。</p>
<h1 id="06">06</h1>
<p>是的，艺术的女人，那是一种奇迹！</p>
]]></content:encoded>
    </item>
    <item>
      <title>鲸的浮沉</title>
      <link>https://jinpeng.cv/en/posts/typecho/76/</link>
      <pubDate>Sun, 22 May 2022 10:56:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/76/</guid>
      <description>&lt;p&gt;生活，是一片浩渺汹涌的海&lt;/p&gt;
&lt;p&gt;虽然已在其中生活25载&lt;/p&gt;
&lt;p&gt;我深深的明白&lt;/p&gt;
&lt;p&gt;一条鲸&lt;/p&gt;
&lt;p&gt;需要不断浮沉&lt;/p&gt;
&lt;p&gt;浮与沉之间&lt;/p&gt;
&lt;p&gt;是生存与生活没有规律的不断切换&lt;/p&gt;
&lt;p&gt;生活的不满都可以在浮到水面时向空中吐上口水发泄&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>生活，是一片浩渺汹涌的海</p>
<p>虽然已在其中生活25载</p>
<p>我深深的明白</p>
<p>一条鲸</p>
<p>需要不断浮沉</p>
<p>浮与沉之间</p>
<p>是生存与生活没有规律的不断切换</p>
<p>生活的不满都可以在浮到水面时向空中吐上口水发泄</p>
<p>心也会随着浮沉</p>
<p>浮起来是为了生存</p>
<p>沉下去是为了生活</p>
<p>操蛋的生活淹不死我们</p>
<p>发泄完鼓足气之后我们总会沉匿入大海，探寻游历着魔幻未知的生活</p>
]]></content:encoded>
    </item>
    <item>
      <title>VBA取消EXCEL所有sheet隐藏行列和筛选状态</title>
      <link>https://jinpeng.cv/en/posts/typecho/72/</link>
      <pubDate>Sun, 15 May 2022 22:52:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/72/</guid>
      <description>&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;/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-vb&#34; data-lang=&#34;vb&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;Sub&lt;/span&gt; &lt;span class=&#34;nf&#34;&gt;Macro1&lt;/span&gt;&lt;span class=&#34;p&#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;c&#34;&gt;&amp;#39;
&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;c&#34;&gt;&amp;#39; Macro1 Macro
&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;c&#34;&gt;&amp;#39;
&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;c&#34;&gt;&amp;#39;
&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;Dim&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;c&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;i&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;As&lt;/span&gt; &lt;span class=&#34;kt&#34;&gt;Integer&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;Dim&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;s&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;As&lt;/span&gt; &lt;span class=&#34;kt&#34;&gt;String&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;n&#34;&gt;c&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Worksheets&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Count&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;For&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;i&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;To&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;c&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;n&#34;&gt;s&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;s&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Worksheets&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Name&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;amp;&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;Chr&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;13&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;Worksheets&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;i&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;).&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Select&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;n&#34;&gt;Selection&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;AutoFilter&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;n&#34;&gt;Cells&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Select&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;n&#34;&gt;Selection&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EntireRow&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Hidden&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;False&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;n&#34;&gt;Selection&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;EntireColumn&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Hidden&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;False&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;Next&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;n&#34;&gt;MsgBox&lt;/span&gt; &lt;span class=&#34;s&#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&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;End&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;Sub&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;</description>
      <content:encoded><![CDATA[<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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-vb" data-lang="vb"><span class="line"><span class="cl"><span class="k">Sub</span> <span class="nf">Macro1</span><span class="p">()</span>
</span></span><span class="line"><span class="cl"><span class="c">&#39;
</span></span></span><span class="line"><span class="cl"><span class="c">&#39; Macro1 Macro
</span></span></span><span class="line"><span class="cl"><span class="c">&#39;
</span></span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="c">&#39;
</span></span></span><span class="line"><span class="cl">    <span class="k">Dim</span> <span class="n">c</span><span class="p">,</span> <span class="n">i</span> <span class="ow">As</span> <span class="kt">Integer</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="k">Dim</span> <span class="n">s</span> <span class="ow">As</span> <span class="kt">String</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="n">c</span> <span class="o">=</span> <span class="n">Worksheets</span><span class="p">.</span><span class="n">Count</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="k">For</span> <span class="n">i</span> <span class="o">=</span> <span class="n">1</span> <span class="k">To</span> <span class="n">c</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="n">s</span> <span class="o">=</span> <span class="n">s</span> <span class="o">&amp;</span> <span class="n">Worksheets</span><span class="p">(</span><span class="n">i</span><span class="p">).</span><span class="n">Name</span> <span class="o">&amp;</span> <span class="n">Chr</span><span class="p">(</span><span class="n">13</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="n">Worksheets</span><span class="p">(</span><span class="n">i</span><span class="p">).</span><span class="n">Select</span>
</span></span><span class="line"><span class="cl">    <span class="n">Selection</span><span class="p">.</span><span class="n">AutoFilter</span>
</span></span><span class="line"><span class="cl">    <span class="n">Cells</span><span class="p">.</span><span class="n">Select</span>
</span></span><span class="line"><span class="cl">    <span class="n">Selection</span><span class="p">.</span><span class="n">EntireRow</span><span class="p">.</span><span class="n">Hidden</span> <span class="o">=</span> <span class="k">False</span>
</span></span><span class="line"><span class="cl">    <span class="n">Selection</span><span class="p">.</span><span class="n">EntireColumn</span><span class="p">.</span><span class="n">Hidden</span> <span class="o">=</span> <span class="k">False</span>
</span></span><span class="line"><span class="cl">    <span class="k">Next</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    <span class="n">MsgBox</span> <span class="s">&#34;已经取消所有筛选和隐藏状态&#34;</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="k">End</span> <span class="k">Sub</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>文件开头</title>
      <link>https://jinpeng.cv/en/posts/typecho/70/</link>
      <pubDate>Fri, 06 May 2022 09:36:28 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/70/</guid>
      <description>&lt;h2 id=&#34;winhex中那些常见的文件格式对应的16进制头&#34;&gt;winhex中那些常见的文件格式对应的16进制头&lt;/h2&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;/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-json&#34; data-lang=&#34;json&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.zip&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;504B0304&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;504B&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.7z&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;377ABCAF271C&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.rar&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;526172211A0700&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;C43D7B00400700&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.gz&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;1F8B08&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.tar.gz&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;1F8B&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.tar&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;30373037&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.bz&amp;amp;bz2&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;425A68&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.jpeg&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;FFD8FFE0&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;FFD9&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.jpeg&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;FFD8FFE1&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;FFD9&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.png&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;89504E47&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;AE426082&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.gif&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;474946383961&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;003B&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.bmp&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;424D&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.tif&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;49492A00&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.exe&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;4D5A&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.jar&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;5F27A889&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.evt&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;03000000&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.xml&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;3C3F786D6C&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.html&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;68746D6C3E&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.mdb&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;5374616E&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.doc&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;D0CF11E0&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.pdf&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;25504446&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.xls&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;09040600&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.psd&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;38425053&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.mov&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;6D646174&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.avi&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;41564920&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.wav&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;57415645&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.ram&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;2E7261FD&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.rm&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;2E524D46&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.mpg&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;000001BA&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.mpg&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;000001B3&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;{&lt;/span&gt;&lt;span class=&#34;err&#34;&gt;&amp;#39;fileformat&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;.dwg&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;stahex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;41433130&amp;#39;,&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;endhex&amp;#39;:&lt;/span&gt; &lt;span class=&#34;err&#34;&gt;&amp;#39;&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;</description>
      <content:encoded><![CDATA[<h2 id="winhex中那些常见的文件格式对应的16进制头">winhex中那些常见的文件格式对应的16进制头</h2>
<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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-json" data-lang="json"><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.zip&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;504B0304&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;504B&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.7z&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;377ABCAF271C&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.rar&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;526172211A0700&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;C43D7B00400700&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.gz&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;1F8B08&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.tar.gz&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;1F8B&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.tar&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;30373037&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.bz&amp;bz2&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;425A68&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.jpeg&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;FFD8FFE0&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;FFD9&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.jpeg&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;FFD8FFE1&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;FFD9&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.png&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;89504E47&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;AE426082&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.gif&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;474946383961&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;003B&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.bmp&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;424D&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.tif&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;49492A00&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.exe&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;4D5A&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.jar&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;5F27A889&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.evt&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;03000000&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.xml&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;3C3F786D6C&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.html&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;68746D6C3E&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.mdb&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;5374616E&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.doc&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;D0CF11E0&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.pdf&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;25504446&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.xls&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;09040600&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.psd&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;38425053&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.mov&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;6D646174&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.avi&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;41564920&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.wav&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;57415645&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.ram&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;2E7261FD&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.rm&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;2E524D46&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.mpg&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;000001BA&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.mpg&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;000001B3&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span><span class="line"><span class="cl"><span class="p">{</span><span class="err">&#39;fileformat&#39;:</span> <span class="err">&#39;.dwg&#39;,</span> <span class="err">&#39;stahex&#39;:</span> <span class="err">&#39;41433130&#39;,</span> <span class="err">&#39;endhex&#39;:</span> <span class="err">&#39;&#39;</span><span class="p">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>故乡的消亡</title>
      <link>https://jinpeng.cv/en/posts/typecho/68/</link>
      <pubDate>Wed, 04 May 2022 12:14:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/68/</guid>
      <description>&lt;p&gt;没有思念，没有要紧的事情，只单是无聊，我觉得该回家了。&lt;/p&gt;
&lt;p&gt;记忆中的故乡是热闹的，不上学的时候，和村里大大小小的小伙伴，去到刚收割了水稻的田里抓人打滚，去到湍急清冽的河水中游泳，抹完肥皂再一跃扎进水中，而后似花鸡似的赤身裸体趴在黑色大石头上，直到给背晒上一层一搓就掉的皮肤才罢休。一点儿烦恼都没，除了玩耍时的开心就是妈妈吆喝吃饭的意犹未尽。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>没有思念，没有要紧的事情，只单是无聊，我觉得该回家了。</p>
<p>记忆中的故乡是热闹的，不上学的时候，和村里大大小小的小伙伴，去到刚收割了水稻的田里抓人打滚，去到湍急清冽的河水中游泳，抹完肥皂再一跃扎进水中，而后似花鸡似的赤身裸体趴在黑色大石头上，直到给背晒上一层一搓就掉的皮肤才罢休。一点儿烦恼都没，除了玩耍时的开心就是妈妈吆喝吃饭的意犹未尽。</p>
<p>随着年纪的增长，我愈发觉得自己老了，25岁。故乡在岁月的河流中像是穿了水鞋，我肉眼可见的故乡老了，光秃秃的稻田里不再有成群嘻戏的孩子，晃悠悠的棕树上结的棕巴也不再一盛开就陨落，静悄悄的村子里只剩下寥寥佝偻的背影和三三两两的寒暄。</p>
<p>不难预想，20年后故乡会是怎样一番光景，严格来说，故乡还是现乡，城镇化与现代化没有改变我的家乡，却实实在在的改变了家乡的每一个人，壮年们为了美好生活的实现背井离乡，同时为中国的基建事业与能源保障奉献着自己所能奉献的一切。在上世纪就已奉献完自己，只剩些余热的人们，在用他们的余热绵长而无力的延缓故乡的衰老，当余热耗尽的时候，故乡也将伴随着他们结束这群人这块地的这一段不为外人所知的历史。</p>
<p>客观的说，这是一个时代的结束。</p>
]]></content:encoded>
    </item>
    <item>
      <title>一团乱麻</title>
      <link>https://jinpeng.cv/en/posts/typecho/65/</link>
      <pubDate>Wed, 27 Apr 2022 10:23:27 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/65/</guid>
      <description>&lt;h2 id=&#34;捋捋&#34;&gt;捋捋&lt;/h2&gt;
&lt;p&gt;今天似乎又捋不清了，该做什么，优先做什么，乱糟糟的。&lt;/p&gt;
&lt;p&gt;要做的事情依旧很多，而且每样都需要花费很多时间。&lt;/p&gt;
&lt;p&gt;梳理一下吧&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;还有3篇没有写完的论文&lt;/li&gt;
&lt;li&gt;PHP接口开发没有完成&lt;/li&gt;
&lt;li&gt;相应客户端也没有写完&lt;/li&gt;
&lt;li&gt;物端单元盒的整合设计
&lt;ul&gt;
&lt;li&gt;PCB设计&lt;/li&gt;
&lt;li&gt;外壳模型设计及制作&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;专利撰写&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;目前的主要任务就这些，专利比较简单一些，留在周末做吧，那么今天就写接口。一天想做很多往往是啥都没有干成。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="捋捋">捋捋</h2>
<p>今天似乎又捋不清了，该做什么，优先做什么，乱糟糟的。</p>
<p>要做的事情依旧很多，而且每样都需要花费很多时间。</p>
<p>梳理一下吧</p>
<ul>
<li>还有3篇没有写完的论文</li>
<li>PHP接口开发没有完成</li>
<li>相应客户端也没有写完</li>
<li>物端单元盒的整合设计
<ul>
<li>PCB设计</li>
<li>外壳模型设计及制作</li>
</ul>
</li>
<li>专利撰写</li>
</ul>
<p>目前的主要任务就这些，专利比较简单一些，留在周末做吧，那么今天就写接口。一天想做很多往往是啥都没有干成。</p>
<h2 id="vba批量修改字体格式">VBA批量修改字体格式</h2>
<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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-fallback" data-lang="fallback"><span class="line"><span class="cl">Sub ChangeTextFont()
</span></span><span class="line"><span class="cl"> Set pages = ActivePresentation.Slides.Range
</span></span><span class="line"><span class="cl"> pageCount = pages.Count
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"> &#39;第一页和最后一页跳过
</span></span><span class="line"><span class="cl"> For i = 2 To pageCount - 1
</span></span><span class="line"><span class="cl">  DoEvents
</span></span><span class="line"><span class="cl">  ActiveWindow.View.GotoSlide Index:=i
</span></span><span class="line"><span class="cl">  shapeCount = ActiveWindow.Selection.SlideRange.Shapes.Count
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">  For j = 1 To shapeCount
</span></span><span class="line"><span class="cl">   ActiveWindow.Selection.SlideRange.Shapes(j).Select
</span></span><span class="line"><span class="cl">   shapeType = ActiveWindow.Selection.SlideRange.Shapes(j).Type
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">   &#39;1  - 自选图形
</span></span><span class="line"><span class="cl">   &#39;7  - 公式
</span></span><span class="line"><span class="cl">   &#39;13 - 图片
</span></span><span class="line"><span class="cl">   &#39;14 - 占位符
</span></span><span class="line"><span class="cl">   &#39;15 - 艺术字
</span></span><span class="line"><span class="cl">   &#39;17 - 文本框
</span></span><span class="line"><span class="cl">   &#39;19 - 表格
</span></span><span class="line"><span class="cl">   &#39;Debug.Print shapeType
</span></span><span class="line"><span class="cl">   Select Case shapeType
</span></span><span class="line"><span class="cl">   Case 1, 14, 17
</span></span><span class="line"><span class="cl">    Set txtRange = ActiveWindow.Selection.ShapeRange.TextFrame.TextRange
</span></span><span class="line"><span class="cl">    txtRange.Select
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">    If txtRange.Text &lt;&gt; &#34;&#34; Then
</span></span><span class="line"><span class="cl">     &#39;设置字体为宋体, 24号
</span></span><span class="line"><span class="cl">     With txtRange.Font
</span></span><span class="line"><span class="cl">      .Name = &#34;宋体&#34;
</span></span><span class="line"><span class="cl">      .Size = 24
</span></span><span class="line"><span class="cl">     End With
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">     &#39;设置段落格式为1.3倍行距
</span></span><span class="line"><span class="cl">     With txtRange.ParagraphFormat
</span></span><span class="line"><span class="cl">      .SpaceWithin = 1.3
</span></span><span class="line"><span class="cl">     End With
</span></span><span class="line"><span class="cl">    End If
</span></span><span class="line"><span class="cl">   Case 7, 13, 15
</span></span><span class="line"><span class="cl">   Case 19
</span></span><span class="line"><span class="cl">   End Select
</span></span><span class="line"><span class="cl">  Next j
</span></span><span class="line"><span class="cl"> Next i
</span></span><span class="line"><span class="cl">End Sub
</span></span></code></pre></td></tr></table>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>在信息时代长大</title>
      <link>https://jinpeng.cv/en/posts/typecho/59/</link>
      <pubDate>Fri, 22 Apr 2022 16:21:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/59/</guid>
      <description>&lt;p&gt;21世纪是信息时代吗？&lt;br&gt;
每个人都这么说，身边的人每个都这么和我说，我也一直这么认为的。&lt;/p&gt;
&lt;p&gt;记得小时候第一次见到电脑，是在小学的时候在班主任的办公室，那是我第一次看到硕大的显示器屏幕，我目不转睛的盯着老师对电脑的操作，生怕错过了一个细节。我至今仍然记得当时老师打开浏览器的地址栏，依次输入了h t t p s : / / b a i d u . c o m，然后显示器上就出现了一个神奇的界面，然后继续用键盘和鼠标与显示器交互着。当时我在心里想：我天！这也太神奇了吧！然后心思都没在和老师的交流上面，之后我飞奔跑回教室，在笔记本上写下这串已经在心里默背了好几遍的字母。这是信息时代给我的第一印象，时至今日，仍然会回想起这个场景。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>21世纪是信息时代吗？<br>
每个人都这么说，身边的人每个都这么和我说，我也一直这么认为的。</p>
<p>记得小时候第一次见到电脑，是在小学的时候在班主任的办公室，那是我第一次看到硕大的显示器屏幕，我目不转睛的盯着老师对电脑的操作，生怕错过了一个细节。我至今仍然记得当时老师打开浏览器的地址栏，依次输入了h t t p s : / / b a i d u . c o m，然后显示器上就出现了一个神奇的界面，然后继续用键盘和鼠标与显示器交互着。当时我在心里想：我天！这也太神奇了吧！然后心思都没在和老师的交流上面，之后我飞奔跑回教室，在笔记本上写下这串已经在心里默背了好几遍的字母。这是信息时代给我的第一印象，时至今日，仍然会回想起这个场景。</p>
<p>第二次接触电脑是初中时一个老师的笔记本电脑，已经忘了老师叫干什么了，反正就需要把笔记本打开，我兴冲冲的跑过去，然后面对着眼前的若干按键，肯定我不知道按那颗才能开机，我仔细琢磨着，然后老师来了，按了一颗比较特殊的，电脑就亮起来了，当时我的心里：哦噢噢！下次我一定会了。</p>
<p>然后初中也有了微机课，一个星期一节课，忘记交了些啥了，反正没用来干过正事，初中还是比较保守和比较乖的，都没去过网吧啥的，好歹接触过微机课，自以为比较了解了。</p>
<p>高中印象最深的就是一次运动会，当时每个班都可以写小纸条去给广播的同学读，然后我碰到龙吉胜老师，叫我帮忙去教学楼顶楼的一个办公室打印一份通知，这应该是我第一次用电脑来做正事，软件不太熟练，打字也不太熟练，但我还是完成了，还仔细调了一下格式，觉得好有成就感，打印出来后心里想着他可能会夸我吧，最后没有。不过还是很开心，然后印象比较深的就是上课和姚述屿玩那个金山打字警察追小偷的游戏，只觉得他好快。再后来和几个同学一起参加了潘老师的信息学奥赛二课培训，对这个曾经让我大吃一惊的设备逐渐熟练起来。</p>
<p>距离我的小学，已经过去十多年了，现在我每天都和电脑打交道，基本上熟悉了电脑的各种操作，我知道我电脑可以做哪些事情。在地址栏输入一个百度的网址再也不会有当年那种惊讶的感觉。电脑是一个可以创造信息，也可以接收信息的工具，因此第三次工业革命之后，我们称之为信息时代。</p>
<p>之所以想写一点东西，是因为现在的信息时代让我震惊而悲哀，我们几乎可以获取所有的信息，铺天盖地，眼花缭乱，我们以为每天我们看到的信息是我们自己主动选择主动去看的，主动权在我们手里，我们可以决定看或者不看。在体制和框架遍布的世界，生产信息和传播信息的人或者监管信息传播的人，任意一个环节的存在一己私利都将导致我们接收到的信息是不完整的，甚至的错误的。</p>
<p>倘若我们没见过彩虹，彩虹也不再会出现，有人告诉你彩虹的颜色是棕色的，每个人都这样告诉你，你可能最终会把彩虹与老婆饼归类到一起，“彩虹不是彩色的，就像老婆饼里没老婆”。当然，现实通常没那么过分，彩虹还是彩色的，但可能彩虹里面只有橙黄绿青蓝紫或者红橙黄绿青紫。当然现实通常也没有那么明显，一般不会在一个客观普遍的事物出现，但在一些无法具体描述的过于难以描述的类似于我们对世界的看法，即我们的世界观、我们的人生观之类的东西，却很容易受到外界的影响而少了红色或者蓝色。而这也是我们作为人，作为独立的人最为重要的东西。“两个凡是”是不正确的，历史对此已经予以证明。</p>
<p>好在忙于用乌云遮蔽彩虹的主是繁忙的，繁忙导致主没有办法遮蔽那些古老而蕴含有丰富彩虹的书籍，因为主没有功夫将书籍还原成现实世界。但作为独立的人是有这个能力的，至少焚书坑儒的事情在信息时代应该不会发生了。适当远离网络上的即时信息未尝不是一件好事，可能我们因此无法听懂周围人口中的梗，无法知道idol的最新情况，无法知道世界上哪个角落发生了什么事情；但这些事情不是从古至今每天都在发生的吗？活在当下，即时网络上的当下不是当下！</p>
]]></content:encoded>
    </item>
    <item>
      <title>新年</title>
      <link>https://jinpeng.cv/en/posts/typecho/55/</link>
      <pubDate>Wed, 20 Apr 2022 09:23:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/55/</guid>
      <description>&lt;p&gt;不知不觉已经在急诊待了三个月&lt;br&gt;
真的很幸运不管在哪都能遇到很好的老师很好的师姐，还记得才入科，什么都不会，师姐都很耐心的教我，有时候病人很多，自己业务还不熟总是出各种各样小差错，老师和师姐们也不是第一时间怪我，而是帮我处理好病人的事后 又开始教我下次该注意什么，真的真的很感谢小郭师姐，总是不厌其烦的回答我问题，一点点从开医嘱，问诊，写病历，再到后面能自己处理一些比较简单的病人，跟着她真的学到了很多，不仅工作上的事交的很仔细，学习上有啥不懂的也很耐心，也至于后面孟婕师姐说我面对病人时候思路好清晰，其实潜移默化的被小郭师姐影响着。让我的急诊生活过得充实而精彩。王老师也是，从来不嫌弃我临床基础差，一点点病历都很耐心的给我批改，一次次带着我查房，也不给我们施加压力，遇到病人总是想把他知道的全部交给我们，给我们讲解剖，教我们读片，看心电图，还会时不时夸奖我们，真的神仙老师，不管多小多基础的问题都可以问他，也跟着王老师学了超级多，急诊科老师真的见多识广，面对危重病人、疑难杂症，临危不乱，思路清晰，真的是我们学习的典范。小兰和李芳师姐也是超级好相处，面对我这个啥都不会啥都不懂的，一遍遍带着我收病人，教我各种处理方法，小兰也是个可爱的男同学，虽然总是不小心被抓包，哈哈哈哈，回想起我们四个一起值班的日子还是很快乐。当然虽然后面出科了，但是来了两个也很好的师兄师姐，吴师兄，一个总是能遇到脑梗患者的师兄，为人随和无压力，嘿嘿还期待着他的喜糖呢，用他的工作经历给我拓展了好多知识面，和师兄搭班也很有安全感哈哈哈哈，孟婕师姐也是超级温柔的师姐，还记得才来那天我们三忙得晕头转向，师姐还被病人质疑，真的好委屈啊，替师姐打抱不平。师姐真的很好，很体谅我们师弟师妹，相处下来毫无距离感，最喜欢师姐教训病人“不要过度用药”那种职业光辉在闪闪发光，嘿嘿说了那么多，现在想想我的急诊生活还是美好的。&lt;br&gt;
我还记得第一次问诊的紧张与不安，到后面大部分患者自己都能迎难而上，面面相觑的看着病人还要假装淡定，到后面坚定的回答病人的疑问；还记得看到剧烈腹痛的病人时的手足无措，到现在清楚的告知病情，处理病人，得到病人的肯定；记得最初总是因为一点小问题被病人或家属骂的狗血淋头，以至于每次下班后都能做噩梦，无数遍幻想过自己可能那一次就成为医闹的牺牲者，到后面也能安抚好病人的情绪；记得接诊的那几个聋哑青少年，突然想起老朱说的，面对弱者好像我们就会多很多耐心，其实想想，急诊科的故事不止这些，说不完道不清，但是他们都真真实实的来过的世界，教会我很多。&lt;br&gt;
2021是不平凡的一年，于我而言，有疫情，有毕业，有考研，有工作，亦有迷茫、有焦虑、有激动、有开心、有后悔……&lt;br&gt;
毕业，五年真的好快，快到我还没想好就已经结束了，感觉好多事还没做完就结束了，有时候，真希望，多年以后她们还记得我是他或她的大学同学。&lt;br&gt;
爱情，友情，其实不用想那么多，该在的一直不会离开。我总能遇到很好很好的你们，希望你们也是。&lt;br&gt;
考研，能真真切切感受到，笔试，初试，准备复试，到出结果，自己努力去完成一件事，过程似乎比结果更重要了&lt;br&gt;
医院，是一个复杂的地方，从医学生到医生，不仅仅是简简单单的一本执医证就能改变的，医学的本身就是学无止境&lt;br&gt;
病人，也许一句话能摧毁你好久的努力，让你质疑自己是不是不适合当医生，但当一句肯定，你会觉得，嗯，好像也还不错，每天都不一定很好，但每天都有着很多小美好在等着你。&lt;br&gt;
疫情，当从新闻上看到和自己体验，真的不一样，其实，疫情真的离我们不远，希望疫情早点结束吧，我想家了，我想你们啦，&lt;br&gt;
生活，好像还不错&lt;br&gt;
2021不是那么满意，但也没那么差&lt;br&gt;
2022，请对我再好一点吧。&lt;br&gt;
最后，不知道是幸运还是不幸，应该是幸运吧，三个月，没有写过一个死亡病例，希望每次都能这么幸运啊&lt;br&gt;
2022.1.1&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>不知不觉已经在急诊待了三个月<br>
真的很幸运不管在哪都能遇到很好的老师很好的师姐，还记得才入科，什么都不会，师姐都很耐心的教我，有时候病人很多，自己业务还不熟总是出各种各样小差错，老师和师姐们也不是第一时间怪我，而是帮我处理好病人的事后 又开始教我下次该注意什么，真的真的很感谢小郭师姐，总是不厌其烦的回答我问题，一点点从开医嘱，问诊，写病历，再到后面能自己处理一些比较简单的病人，跟着她真的学到了很多，不仅工作上的事交的很仔细，学习上有啥不懂的也很耐心，也至于后面孟婕师姐说我面对病人时候思路好清晰，其实潜移默化的被小郭师姐影响着。让我的急诊生活过得充实而精彩。王老师也是，从来不嫌弃我临床基础差，一点点病历都很耐心的给我批改，一次次带着我查房，也不给我们施加压力，遇到病人总是想把他知道的全部交给我们，给我们讲解剖，教我们读片，看心电图，还会时不时夸奖我们，真的神仙老师，不管多小多基础的问题都可以问他，也跟着王老师学了超级多，急诊科老师真的见多识广，面对危重病人、疑难杂症，临危不乱，思路清晰，真的是我们学习的典范。小兰和李芳师姐也是超级好相处，面对我这个啥都不会啥都不懂的，一遍遍带着我收病人，教我各种处理方法，小兰也是个可爱的男同学，虽然总是不小心被抓包，哈哈哈哈，回想起我们四个一起值班的日子还是很快乐。当然虽然后面出科了，但是来了两个也很好的师兄师姐，吴师兄，一个总是能遇到脑梗患者的师兄，为人随和无压力，嘿嘿还期待着他的喜糖呢，用他的工作经历给我拓展了好多知识面，和师兄搭班也很有安全感哈哈哈哈，孟婕师姐也是超级温柔的师姐，还记得才来那天我们三忙得晕头转向，师姐还被病人质疑，真的好委屈啊，替师姐打抱不平。师姐真的很好，很体谅我们师弟师妹，相处下来毫无距离感，最喜欢师姐教训病人“不要过度用药”那种职业光辉在闪闪发光，嘿嘿说了那么多，现在想想我的急诊生活还是美好的。<br>
我还记得第一次问诊的紧张与不安，到后面大部分患者自己都能迎难而上，面面相觑的看着病人还要假装淡定，到后面坚定的回答病人的疑问；还记得看到剧烈腹痛的病人时的手足无措，到现在清楚的告知病情，处理病人，得到病人的肯定；记得最初总是因为一点小问题被病人或家属骂的狗血淋头，以至于每次下班后都能做噩梦，无数遍幻想过自己可能那一次就成为医闹的牺牲者，到后面也能安抚好病人的情绪；记得接诊的那几个聋哑青少年，突然想起老朱说的，面对弱者好像我们就会多很多耐心，其实想想，急诊科的故事不止这些，说不完道不清，但是他们都真真实实的来过的世界，教会我很多。<br>
2021是不平凡的一年，于我而言，有疫情，有毕业，有考研，有工作，亦有迷茫、有焦虑、有激动、有开心、有后悔……<br>
毕业，五年真的好快，快到我还没想好就已经结束了，感觉好多事还没做完就结束了，有时候，真希望，多年以后她们还记得我是他或她的大学同学。<br>
爱情，友情，其实不用想那么多，该在的一直不会离开。我总能遇到很好很好的你们，希望你们也是。<br>
考研，能真真切切感受到，笔试，初试，准备复试，到出结果，自己努力去完成一件事，过程似乎比结果更重要了<br>
医院，是一个复杂的地方，从医学生到医生，不仅仅是简简单单的一本执医证就能改变的，医学的本身就是学无止境<br>
病人，也许一句话能摧毁你好久的努力，让你质疑自己是不是不适合当医生，但当一句肯定，你会觉得，嗯，好像也还不错，每天都不一定很好，但每天都有着很多小美好在等着你。<br>
疫情，当从新闻上看到和自己体验，真的不一样，其实，疫情真的离我们不远，希望疫情早点结束吧，我想家了，我想你们啦，<br>
生活，好像还不错<br>
2021不是那么满意，但也没那么差<br>
2022，请对我再好一点吧。<br>
最后，不知道是幸运还是不幸，应该是幸运吧，三个月，没有写过一个死亡病例，希望每次都能这么幸运啊<br>
2022.1.1</p>
]]></content:encoded>
    </item>
    <item>
      <title>需要一点甜头</title>
      <link>https://jinpeng.cv/en/posts/typecho/50/</link>
      <pubDate>Sat, 16 Apr 2022 23:01:40 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/50/</guid>
      <description>&lt;p&gt;这几天在持续性摆烂&lt;/p&gt;
&lt;p&gt;桌面上放了好几篇都没有写完的文章&lt;/p&gt;
&lt;p&gt;总是写着写着觉得很垃圾&lt;/p&gt;
&lt;p&gt;过了几天再看又觉得还OK&lt;/p&gt;
&lt;p&gt;好奇怪啊&lt;/p&gt;
&lt;p&gt;不管了&lt;/p&gt;
&lt;p&gt;把每一篇都写完投出去吧&lt;/p&gt;
&lt;p&gt;哪怕是一篇普刊都好&lt;/p&gt;
&lt;p&gt;需要一点点甜头来奖励自己给自己正反馈了&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>这几天在持续性摆烂</p>
<p>桌面上放了好几篇都没有写完的文章</p>
<p>总是写着写着觉得很垃圾</p>
<p>过了几天再看又觉得还OK</p>
<p>好奇怪啊</p>
<p>不管了</p>
<p>把每一篇都写完投出去吧</p>
<p>哪怕是一篇普刊都好</p>
<p>需要一点点甜头来奖励自己给自己正反馈了</p>
]]></content:encoded>
    </item>
    <item>
      <title>矛盾</title>
      <link>https://jinpeng.cv/en/posts/typecho/47/</link>
      <pubDate>Wed, 30 Mar 2022 22:25:26 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/47/</guid>
      <description>&lt;p&gt;我现在喜欢和人保持有一定距离&lt;/p&gt;
&lt;p&gt;即便有时会有一点尴尬&lt;/p&gt;
&lt;p&gt;有一点孤独&lt;/p&gt;
&lt;p&gt;可我还是享受&lt;/p&gt;
&lt;p&gt;我接受不了别人的过度亲近&lt;/p&gt;
&lt;p&gt;在我看来是自以为是的自来熟&lt;/p&gt;
&lt;p&gt;无论男生还是女生&lt;/p&gt;
&lt;p&gt;可大多时候我还得不能让人看出我的反感&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>我现在喜欢和人保持有一定距离</p>
<p>即便有时会有一点尴尬</p>
<p>有一点孤独</p>
<p>可我还是享受</p>
<p>我接受不了别人的过度亲近</p>
<p>在我看来是自以为是的自来熟</p>
<p>无论男生还是女生</p>
<p>可大多时候我还得不能让人看出我的反感</p>
<p>大多时候都是我在与我自己做斗争</p>
<p>是理智与情绪的斗争</p>
<p>没有特殊情况的话</p>
<p>理智总会小胜</p>
<p>情绪的出现总是爆发性的</p>
<p>撕毁一切</p>
<p>我可能是哪儿出了点问题</p>
<p>才会有这些想法和别人格格不入</p>
<p>可现实我又是个和善幽默的人</p>
<p>矛盾</p>
]]></content:encoded>
    </item>
    <item>
      <title>摒弃内心观念，着眼于目标实现</title>
      <link>https://jinpeng.cv/en/posts/typecho/46/</link>
      <pubDate>Wed, 30 Mar 2022 17:11:52 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/46/</guid>
      <description>&lt;p&gt;经过一番精心整理，终于准备好画hist图的数据了，结果出来的图和数据完全不一样，然后查看hist的api，发现开发者早已经想到了这么多，只需要提供原始数据和切分的份数就好了。就这样浪费了我两天的时间，&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>经过一番精心整理，终于准备好画hist图的数据了，结果出来的图和数据完全不一样，然后查看hist的api，发现开发者早已经想到了这么多，只需要提供原始数据和切分的份数就好了。就这样浪费了我两天的时间，</p>
<blockquote>
<p>　很多时候我们只要着眼于目标，从目标逆向溯源，看看为了达到目标需要准备些什么。这是最直接了当的方法，而不是凭借自己的历史经验，认为应该先做什么，再做什么。还沾沾自喜的想在自己规划的一步一步的过程中学习了解新东西，可你会碰到无限的新事物，每一个新事物都会把你拉进一个黑洞，你为走出黑洞拼尽全力，头晕眼花，精疲力竭，终于拖着将死的躯壳抵达终点，你发现终点好像和你想的有些区别。其实，只是你走的路不是正常的路，而是内心迂腐而荒草丛生的荆棘密林。</p>
</blockquote>
<blockquote>
<p>就像是希腊波斯战争随着你穿越到了21世纪，Pheidippides在传达喜报时仍然选择从马拉松跑到雅典一样。</p>
</blockquote>
<p>经过这次教训，日后定要摒弃自我的观念，着眼于目标的实现，而不是盲目探索，毕竟学海无涯。</p>
]]></content:encoded>
    </item>
    <item>
      <title>猜疑让人孤独，让人成熟</title>
      <link>https://jinpeng.cv/en/posts/typecho/41/</link>
      <pubDate>Fri, 25 Mar 2022 22:28:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/41/</guid>
      <description>&lt;p&gt;我发现音乐歌词的任务栏放在这儿真的超级合适，取消边框，黑灰搭配。&lt;/p&gt;
&lt;p&gt;又周末了，今天好像啥都没有做，不过还是挺难受的。&lt;/p&gt;
&lt;p&gt;要怎么面对怀疑，纵使有万般的勇气，都无可奈何&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>我发现音乐歌词的任务栏放在这儿真的超级合适，取消边框，黑灰搭配。</p>
<p>又周末了，今天好像啥都没有做，不过还是挺难受的。</p>
<p>要怎么面对怀疑，纵使有万般的勇气，都无可奈何</p>
<p>怀疑不是心魔，是实实在在存在的能够给人造成困扰的东西</p>
<p>做不到不让人怀疑，但可以做到自己不去怀疑别人。</p>
<p>猜疑让人心累，让所有人</p>
]]></content:encoded>
    </item>
    <item>
      <title>乍现又消失的灵感</title>
      <link>https://jinpeng.cv/en/posts/typecho/36/</link>
      <pubDate>Sun, 20 Mar 2022 15:20:26 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/36/</guid>
      <description>&lt;p&gt;灵感乍现的时候&lt;/p&gt;
&lt;p&gt;无论有什么紧要的事情都务必将灵感记下来！&lt;/p&gt;
&lt;p&gt;灵感的出现往往都是人非常慵懒和放松的时候&lt;/p&gt;
&lt;p&gt;就在昨天晚上&lt;/p&gt;
&lt;p&gt;半夜醒来&lt;/p&gt;
&lt;p&gt;半睡半醒的一个状态&lt;/p&gt;
&lt;p&gt;突然想到一个绝妙的想法&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>灵感乍现的时候</p>
<p>无论有什么紧要的事情都务必将灵感记下来！</p>
<p>灵感的出现往往都是人非常慵懒和放松的时候</p>
<p>就在昨天晚上</p>
<p>半夜醒来</p>
<p>半睡半醒的一个状态</p>
<p>突然想到一个绝妙的想法</p>
<p>可以解决我当前的一个很棘手的问题</p>
<p>我为自己的灵感感到满意</p>
<p>遍带着满溢的满意安然入睡</p>
<p>……</p>
<p>但是当我醒过来的时候</p>
<p>我连是什么难题都忘了</p>
<p>我难题太多了(ಥ_ಥ)</p>
<p>无疑是今天最伤心的事情了</p>
<p>这种其妙的感觉就像是</p>
<p>我不知道拥有无尽的财富是什么样的感觉</p>
<p>但我我真的拥有过</p>
<p>254 字 · Mi 10 · 多云 · 19℃ · 贵州大学西校区-东门</p>
]]></content:encoded>
    </item>
    <item>
      <title>PHP中数据库插入错误</title>
      <link>https://jinpeng.cv/en/posts/typecho/29/</link>
      <pubDate>Tue, 08 Mar 2022 19:59:40 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/29/</guid>
      <description>&lt;p&gt;在php中数据库插入错误，一般是sql语句中参数不正确，或者参数对应的类型不正确。&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;/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-php&#34; data-lang=&#34;php&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;$sql&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;INSERT INTO SensorData (id, sensor, coords, value1, value2, value3) VALUES (&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$id&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;,&amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$sensor&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;, &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$coords&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;, &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$value1&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;, &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$value2&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;, &amp;#39;&lt;/span&gt;&lt;span class=&#34;si&#34;&gt;$value3&lt;/span&gt;&lt;span class=&#34;s2&#34;&gt;&amp;#39;)&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$conn&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;query&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;nv&#34;&gt;$sql&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;===&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;TRUE&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;)&lt;/span&gt; &lt;span class=&#34;p&#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;k&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;New record created successfully&amp;#34;&lt;/span&gt;&lt;span class=&#34;p&#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;p&#34;&gt;}&lt;/span&gt; &lt;span class=&#34;k&#34;&gt;else&lt;/span&gt; &lt;span class=&#34;p&#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;k&#34;&gt;echo&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;Error: &amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;.&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$sql&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;.&lt;/span&gt; &lt;span class=&#34;s2&#34;&gt;&amp;#34;&amp;lt;br&amp;gt;&amp;#34;&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;.&lt;/span&gt; &lt;span class=&#34;nv&#34;&gt;$conn&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;-&amp;gt;&lt;/span&gt;&lt;span class=&#34;na&#34;&gt;error&lt;/span&gt;&lt;span class=&#34;p&#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;p&#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;p&gt;另外在使用dht传感器的过程中，出现ETIMEOUT错误，一般是引脚插错，重新检查换用其他引脚，我这个板子目前只有1号引脚可以正常使用。&lt;br&gt;
&lt;img alt=&#34;2022-03-08T11:59:16.png&#34; loading=&#34;lazy&#34; src=&#34;http://42.192.117.142/usr/uploads/2022/03/2857179748.png&#34;&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>在php中数据库插入错误，一般是sql语句中参数不正确，或者参数对应的类型不正确。</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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-php" data-lang="php"><span class="line"><span class="cl"><span class="nv">$sql</span> <span class="o">=</span> <span class="s2">&#34;INSERT INTO SensorData (id, sensor, coords, value1, value2, value3) VALUES (&#39;</span><span class="si">$id</span><span class="s2">&#39;,&#39;</span><span class="si">$sensor</span><span class="s2">&#39;, &#39;</span><span class="si">$coords</span><span class="s2">&#39;, &#39;</span><span class="si">$value1</span><span class="s2">&#39;, &#39;</span><span class="si">$value2</span><span class="s2">&#39;, &#39;</span><span class="si">$value3</span><span class="s2">&#39;)&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="k">if</span> <span class="p">(</span><span class="nv">$conn</span><span class="o">-&gt;</span><span class="na">query</span><span class="p">(</span><span class="nv">$sql</span><span class="p">)</span> <span class="o">===</span> <span class="k">TRUE</span><span class="p">)</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">    <span class="k">echo</span> <span class="s2">&#34;New record created successfully&#34;</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span> <span class="k">else</span> <span class="p">{</span>
</span></span><span class="line"><span class="cl">    <span class="k">echo</span> <span class="s2">&#34;Error: &#34;</span> <span class="o">.</span> <span class="nv">$sql</span> <span class="o">.</span> <span class="s2">&#34;&lt;br&gt;&#34;</span> <span class="o">.</span> <span class="nv">$conn</span><span class="o">-&gt;</span><span class="na">error</span><span class="p">;</span>
</span></span><span class="line"><span class="cl"><span class="p">}</span>
</span></span></code></pre></td></tr></table>
</div>
</div><p>另外在使用dht传感器的过程中，出现ETIMEOUT错误，一般是引脚插错，重新检查换用其他引脚，我这个板子目前只有1号引脚可以正常使用。<br>
<img alt="2022-03-08T11:59:16.png" loading="lazy" src="http://42.192.117.142/usr/uploads/2022/03/2857179748.png"></p>
]]></content:encoded>
    </item>
    <item>
      <title>ESP32 MicroPython: Non-blocking Delays and Multithreading | Multitasking</title>
      <link>https://jinpeng.cv/en/posts/typecho/25/</link>
      <pubDate>Mon, 07 Mar 2022 15:54:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/25/</guid>
      <description>&lt;p&gt;![nonblock and multithreading]&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&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;span class=&#34;lnt&#34;&gt; 74
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 75
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 76
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 77
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 78
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 79
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 80
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 81
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 82
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 83
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 84
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 85
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 86
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 87
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 88
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 89
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 90
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 91
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 92
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 93
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 94
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 95
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 96
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 97
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 98
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt; 99
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;100
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;101
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;102
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;103
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;104
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;105
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;106
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;107
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;108
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;109
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;110
&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-python&#34; data-lang=&#34;python&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;machine&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;kn&#34;&gt;import&lt;/span&gt; &lt;span class=&#34;nn&#34;&gt;time&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;n&#34;&gt;red&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;27&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;OUT&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;grn&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;26&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;OUT&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;blu&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;25&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;OUT&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;mode&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;33&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;IN&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;PULL_UP&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;left&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;32&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;IN&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;PULL_UP&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;rght&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;35&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;IN&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;entr&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;34&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;machine&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Pin&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;IN&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;r_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;g_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;b_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;k_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;r_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;300&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;n&#34;&gt;g_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;500&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;n&#34;&gt;b_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;700&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;n&#34;&gt;k_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;200&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;n&#34;&gt;state&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#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;n&#34;&gt;EDIT_RESOLUTION&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;10&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;n&#34;&gt;reset&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#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&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;**************************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;  DEFAULT Interval Values &amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;--------------------------&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Red interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;r_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Grn interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Blu interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;**************************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;kc&#34;&gt;True&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;r_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;r_interval&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;red&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;red&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#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;n&#34;&gt;r_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g_interval&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;grn&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;grn&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#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;n&#34;&gt;g_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b_interval&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;blu&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt; &lt;span class=&#34;ow&#34;&gt;not&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;blu&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;p&#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;n&#34;&gt;b_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;k_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;k_interval&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;k_start&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;time&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;ticks_ms&lt;/span&gt;&lt;span class=&#34;p&#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;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;mode&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# idle 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;n&#34;&gt;state&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Red edit mode&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;-------------&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# red edit 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;n&#34;&gt;state&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;2&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Grn edit mode&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;-------------&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# grn edit 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;n&#34;&gt;state&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;3&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Blu edit mode&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;-------------&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# blu edit 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;n&#34;&gt;state&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;*************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Idle mode&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;-------------&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;left&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# red edit 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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;r_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;r_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Red interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;r_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# grn edit 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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;g_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Grn interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# blu edit 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;k&#34;&gt;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;&amp;gt;&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;b_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;-=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Blu interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;rght&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;if&lt;/span&gt;   &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;1&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# red edit 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;n&#34;&gt;r_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Red interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;r_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;2&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# grn edit 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;n&#34;&gt;g_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Grn interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;k&#34;&gt;elif&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;state&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;3&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt; &lt;span class=&#34;c1&#34;&gt;# blu edit 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;n&#34;&gt;b_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;+=&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;EDIT_RESOLUTION&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Blu interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;if&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;entr&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;.&lt;/span&gt;&lt;span class=&#34;n&#34;&gt;value&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;()&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;==&lt;/span&gt;&lt;span class=&#34;mi&#34;&gt;0&lt;/span&gt;&lt;span class=&#34;p&#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;n&#34;&gt;r_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;300&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;n&#34;&gt;g_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;500&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;n&#34;&gt;b_interval&lt;/span&gt; &lt;span class=&#34;o&#34;&gt;=&lt;/span&gt; &lt;span class=&#34;mi&#34;&gt;700&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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;**************************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Values RESETTED to DEFAULT&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;--------------------------&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Red interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;r_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Grn interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;g_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;Blu interval:&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;b_interval&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;,&lt;/span&gt; &lt;span class=&#34;s1&#34;&gt;&amp;#39;ms&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;nb&#34;&gt;print&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;(&lt;/span&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;**************************&amp;#39;&lt;/span&gt;&lt;span class=&#34;p&#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;div class=&#34;footnotes&#34; role=&#34;doc-endnotes&#34;&gt;
&lt;hr&gt;
&lt;ol&gt;
&lt;li id=&#34;fn:1&#34;&gt;
&lt;p&gt;&lt;a href=&#34;https://1.bp.blogspot.com/-rYdcCBcd2K0/X26oBPSJclI/AAAAAAAACDc/jXve0NeUYHcXtYScTmdbod5hMptYgfJnwCLcBGAsYHQ/w640-h322/MP_009_Time.png&#34;&gt;https://1.bp.blogspot.com/-rYdcCBcd2K0/X26oBPSJclI/AAAAAAAACDc/jXve0NeUYHcXtYScTmdbod5hMptYgfJnwCLcBGAsYHQ/w640-h322/MP_009_Time.png&lt;/a&gt;&amp;#160;&lt;a href=&#34;#fnref:1&#34; class=&#34;footnote-backref&#34; role=&#34;doc-backlink&#34;&gt;&amp;#x21a9;&amp;#xfe0e;&lt;/a&gt;&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>![nonblock and multithreading]<sup id="fnref:1"><a href="#fn:1" class="footnote-ref" role="doc-noteref">1</a></sup></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><span class="lnt"> 74
</span><span class="lnt"> 75
</span><span class="lnt"> 76
</span><span class="lnt"> 77
</span><span class="lnt"> 78
</span><span class="lnt"> 79
</span><span class="lnt"> 80
</span><span class="lnt"> 81
</span><span class="lnt"> 82
</span><span class="lnt"> 83
</span><span class="lnt"> 84
</span><span class="lnt"> 85
</span><span class="lnt"> 86
</span><span class="lnt"> 87
</span><span class="lnt"> 88
</span><span class="lnt"> 89
</span><span class="lnt"> 90
</span><span class="lnt"> 91
</span><span class="lnt"> 92
</span><span class="lnt"> 93
</span><span class="lnt"> 94
</span><span class="lnt"> 95
</span><span class="lnt"> 96
</span><span class="lnt"> 97
</span><span class="lnt"> 98
</span><span class="lnt"> 99
</span><span class="lnt">100
</span><span class="lnt">101
</span><span class="lnt">102
</span><span class="lnt">103
</span><span class="lnt">104
</span><span class="lnt">105
</span><span class="lnt">106
</span><span class="lnt">107
</span><span class="lnt">108
</span><span class="lnt">109
</span><span class="lnt">110
</span></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-python" data-lang="python"><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">machine</span>
</span></span><span class="line"><span class="cl"><span class="kn">import</span> <span class="nn">time</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">red</span> <span class="o">=</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="p">(</span><span class="mi">27</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">OUT</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="n">grn</span> <span class="o">=</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="p">(</span><span class="mi">26</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">OUT</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="n">blu</span> <span class="o">=</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="p">(</span><span class="mi">25</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">OUT</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">mode</span> <span class="o">=</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="p">(</span><span class="mi">33</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">IN</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">PULL_UP</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="n">left</span> <span class="o">=</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="p">(</span><span class="mi">32</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">IN</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">PULL_UP</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="n">rght</span> <span class="o">=</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="p">(</span><span class="mi">35</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">IN</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="n">entr</span> <span class="o">=</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="p">(</span><span class="mi">34</span><span class="p">,</span> <span class="n">machine</span><span class="o">.</span><span class="n">Pin</span><span class="o">.</span><span class="n">IN</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">r_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl"><span class="n">g_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl"><span class="n">b_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl"><span class="n">k_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">r_interval</span> <span class="o">=</span> <span class="mi">300</span>
</span></span><span class="line"><span class="cl"><span class="n">g_interval</span> <span class="o">=</span> <span class="mi">500</span>
</span></span><span class="line"><span class="cl"><span class="n">b_interval</span> <span class="o">=</span> <span class="mi">700</span>
</span></span><span class="line"><span class="cl"><span class="n">k_interval</span> <span class="o">=</span> <span class="mi">200</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="n">state</span> <span class="o">=</span> <span class="mi">0</span>
</span></span><span class="line"><span class="cl"><span class="n">EDIT_RESOLUTION</span> <span class="o">=</span> <span class="mi">10</span>
</span></span><span class="line"><span class="cl"><span class="n">reset</span> <span class="o">=</span> <span class="mi">0</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;**************************&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;  DEFAULT Interval Values &#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;--------------------------&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Red interval:&#39;</span><span class="p">,</span> <span class="n">r_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Grn interval:&#39;</span><span class="p">,</span> <span class="n">g_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Blu interval:&#39;</span><span class="p">,</span> <span class="n">b_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl"><span class="nb">print</span><span class="p">(</span><span class="s1">&#39;**************************&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl"><span class="k">while</span> <span class="kc">True</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span> <span class="o">-</span> <span class="n">r_start</span> <span class="o">&gt;=</span> <span class="n">r_interval</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">        <span class="n">red</span><span class="o">.</span><span class="n">value</span><span class="p">(</span> <span class="ow">not</span> <span class="n">red</span><span class="o">.</span><span class="n">value</span><span class="p">()</span> <span class="p">)</span>
</span></span><span class="line"><span class="cl">        <span class="n">r_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span> <span class="o">-</span> <span class="n">g_start</span> <span class="o">&gt;=</span> <span class="n">g_interval</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">        <span class="n">grn</span><span class="o">.</span><span class="n">value</span><span class="p">(</span> <span class="ow">not</span> <span class="n">grn</span><span class="o">.</span><span class="n">value</span><span class="p">()</span> <span class="p">)</span>
</span></span><span class="line"><span class="cl">        <span class="n">g_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span> <span class="o">-</span> <span class="n">b_start</span> <span class="o">&gt;=</span> <span class="n">b_interval</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">        <span class="n">blu</span><span class="o">.</span><span class="n">value</span><span class="p">(</span> <span class="ow">not</span> <span class="n">blu</span><span class="o">.</span><span class="n">value</span><span class="p">()</span> <span class="p">)</span>
</span></span><span class="line"><span class="cl">        <span class="n">b_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">    <span class="k">if</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span> <span class="o">-</span> <span class="n">k_start</span> <span class="o">&gt;=</span> <span class="n">k_interval</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">        <span class="n">k_start</span> <span class="o">=</span> <span class="n">time</span><span class="o">.</span><span class="n">ticks_ms</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="k">if</span> <span class="n">mode</span><span class="o">.</span><span class="n">value</span><span class="p">()</span><span class="o">==</span><span class="mi">0</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">            <span class="k">if</span> <span class="n">state</span><span class="o">==</span><span class="mi">0</span><span class="p">:</span> <span class="c1"># idle mode</span>
</span></span><span class="line"><span class="cl">                <span class="n">state</span> <span class="o">=</span> <span class="mi">1</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;*************&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Red edit mode&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;-------------&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="k">elif</span> <span class="n">state</span><span class="o">==</span><span class="mi">1</span><span class="p">:</span> <span class="c1"># red edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="n">state</span> <span class="o">=</span> <span class="mi">2</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;*************&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Grn edit mode&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;-------------&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="k">elif</span> <span class="n">state</span><span class="o">==</span><span class="mi">2</span><span class="p">:</span> <span class="c1"># grn edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="n">state</span> <span class="o">=</span> <span class="mi">3</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;*************&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Blu edit mode&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;-------------&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="k">elif</span> <span class="n">state</span><span class="o">==</span><span class="mi">3</span><span class="p">:</span> <span class="c1"># blu edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="n">state</span> <span class="o">=</span> <span class="mi">0</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;*************&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Idle mode&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;-------------&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="k">if</span> <span class="n">left</span><span class="o">.</span><span class="n">value</span><span class="p">()</span><span class="o">==</span><span class="mi">0</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">            <span class="k">if</span>   <span class="n">state</span><span class="o">==</span><span class="mi">1</span><span class="p">:</span> <span class="c1"># red edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="k">if</span> <span class="n">r_interval</span> <span class="o">-</span> <span class="n">EDIT_RESOLUTION</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">                    <span class="n">r_interval</span> <span class="o">-=</span> <span class="n">EDIT_RESOLUTION</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Red interval:&#39;</span><span class="p">,</span> <span class="n">r_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="k">elif</span> <span class="n">state</span><span class="o">==</span><span class="mi">2</span><span class="p">:</span> <span class="c1"># grn edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="k">if</span> <span class="n">g_interval</span> <span class="o">-</span> <span class="n">EDIT_RESOLUTION</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">                    <span class="n">g_interval</span> <span class="o">-=</span> <span class="n">EDIT_RESOLUTION</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Grn interval:&#39;</span><span class="p">,</span> <span class="n">g_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="k">elif</span> <span class="n">state</span><span class="o">==</span><span class="mi">3</span><span class="p">:</span> <span class="c1"># blu edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="k">if</span> <span class="n">b_interval</span> <span class="o">-</span> <span class="n">EDIT_RESOLUTION</span> <span class="o">&gt;</span> <span class="mi">0</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">                    <span class="n">b_interval</span> <span class="o">-=</span> <span class="n">EDIT_RESOLUTION</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Blu interval:&#39;</span><span class="p">,</span> <span class="n">b_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="k">if</span> <span class="n">rght</span><span class="o">.</span><span class="n">value</span><span class="p">()</span><span class="o">==</span><span class="mi">0</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">            <span class="k">if</span>   <span class="n">state</span><span class="o">==</span><span class="mi">1</span><span class="p">:</span> <span class="c1"># red edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="n">r_interval</span> <span class="o">+=</span> <span class="n">EDIT_RESOLUTION</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Red interval:&#39;</span><span class="p">,</span> <span class="n">r_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="k">elif</span> <span class="n">state</span><span class="o">==</span><span class="mi">2</span><span class="p">:</span> <span class="c1"># grn edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="n">g_interval</span> <span class="o">+=</span> <span class="n">EDIT_RESOLUTION</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Grn interval:&#39;</span><span class="p">,</span> <span class="n">g_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="k">elif</span> <span class="n">state</span><span class="o">==</span><span class="mi">3</span><span class="p">:</span> <span class="c1"># blu edit mode</span>
</span></span><span class="line"><span class="cl">                <span class="n">b_interval</span> <span class="o">+=</span> <span class="n">EDIT_RESOLUTION</span>
</span></span><span class="line"><span class="cl">                <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Blu interval:&#39;</span><span class="p">,</span> <span class="n">b_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">
</span></span><span class="line"><span class="cl">        <span class="k">if</span> <span class="n">entr</span><span class="o">.</span><span class="n">value</span><span class="p">()</span><span class="o">==</span><span class="mi">0</span><span class="p">:</span>
</span></span><span class="line"><span class="cl">            <span class="n">r_interval</span> <span class="o">=</span> <span class="mi">300</span>
</span></span><span class="line"><span class="cl">            <span class="n">g_interval</span> <span class="o">=</span> <span class="mi">500</span>
</span></span><span class="line"><span class="cl">            <span class="n">b_interval</span> <span class="o">=</span> <span class="mi">700</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">()</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;**************************&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Values RESETTED to DEFAULT&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;--------------------------&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Red interval:&#39;</span><span class="p">,</span> <span class="n">r_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Grn interval:&#39;</span><span class="p">,</span> <span class="n">g_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;Blu interval:&#39;</span><span class="p">,</span> <span class="n">b_interval</span><span class="p">,</span> <span class="s1">&#39;ms&#39;</span><span class="p">)</span>
</span></span><span class="line"><span class="cl">            <span class="nb">print</span><span class="p">(</span><span class="s1">&#39;**************************&#39;</span><span class="p">)</span>
</span></span></code></pre></td></tr></table>
</div>
</div><div class="footnotes" role="doc-endnotes">
<hr>
<ol>
<li id="fn:1">
<p><a href="https://1.bp.blogspot.com/-rYdcCBcd2K0/X26oBPSJclI/AAAAAAAACDc/jXve0NeUYHcXtYScTmdbod5hMptYgfJnwCLcBGAsYHQ/w640-h322/MP_009_Time.png">https://1.bp.blogspot.com/-rYdcCBcd2K0/X26oBPSJclI/AAAAAAAACDc/jXve0NeUYHcXtYScTmdbod5hMptYgfJnwCLcBGAsYHQ/w640-h322/MP_009_Time.png</a>&#160;<a href="#fnref:1" class="footnote-backref" role="doc-backlink">&#x21a9;&#xfe0e;</a></p>
</li>
</ol>
</div>
]]></content:encoded>
    </item>
    <item>
      <title>一个蜂鸣器也能有旋律</title>
      <link>https://jinpeng.cv/en/posts/typecho/21/</link>
      <pubDate>Sun, 06 Mar 2022 20:59:09 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/21/</guid>
      <description>&lt;img alt=&#34;img&#34; loading=&#34;lazy&#34; src=&#34;https://gitee.com/Dagwbl/cloudPicture/raw/master/typora/1228431-dec255b839fa6d06.png&#34;&gt;&lt;img alt=&#34;An image of a note frequency chart.&#34; loading=&#34;lazy&#34; src=&#34;https://gitee.com/Dagwbl/cloudPicture/raw/master/typora/5d01824628b9a6ce9bd2fc21_note-frequency-chart.png&#34;&gt;&lt;p&gt;今天还冲印了照片，只能上传缩略图，不知道效果咋样。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<img alt="img" loading="lazy" src="https://gitee.com/Dagwbl/cloudPicture/raw/master/typora/1228431-dec255b839fa6d06.png"><img alt="An image of a note frequency chart." loading="lazy" src="https://gitee.com/Dagwbl/cloudPicture/raw/master/typora/5d01824628b9a6ce9bd2fc21_note-frequency-chart.png"><p>今天还冲印了照片，只能上传缩略图，不知道效果咋样。</p>
]]></content:encoded>
    </item>
    <item>
      <title>单片机英文缩写的英文全称及中文名称</title>
      <link>https://jinpeng.cv/en/posts/typecho/20/</link>
      <pubDate>Fri, 04 Mar 2022 16:15:34 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/20/</guid>
      <description>&lt;h2 id=&#34;汇编指令&#34;&gt;汇编指令&lt;/h2&gt;
&lt;p&gt;助记符      英文注释        功能&lt;br&gt;
1   MOV    MOVe       传送&lt;br&gt;
2   MOVC   MOVe Code  代码传送&lt;br&gt;
3   PUSH   PUSH       压栈&lt;br&gt;
4   POP    POP        退栈&lt;br&gt;
5   XCH    eXCHange  交换&lt;br&gt;
6   XCHD   eXCHange Decimal  十进制交换&lt;br&gt;
7   ADD    ADD    加&lt;br&gt;
8   ADDC   ADD with Carry   带进位加&lt;br&gt;
9   SUBB   SUBbtract with  Borrow  带进位减&lt;br&gt;
10  INC    INCrement       增量&lt;br&gt;
11  DEC    DECrement       减量&lt;br&gt;
12  MUL    MULtiply        乘&lt;br&gt;
13  DIV    DIVide  除&lt;br&gt;
14  DA     Decimal Adjust  十进制调整&lt;br&gt;
15  ANL    Logical And    逻辑与&lt;br&gt;
16  ORL    Logical OR    逻辑或&lt;br&gt;
17  XRL    Logical eXclusive oR 逻辑异或&lt;br&gt;
18  CPL    ComPLement     求补&lt;br&gt;
19  CLR    CLeaR        清除&lt;br&gt;
20  SETB   SET Bit   置位&lt;br&gt;
21  RL     Rotate Left    循环左移&lt;br&gt;
22  RR     Rotate Right   循环右移&lt;br&gt;
23  RLC    Rotate Left  through the Carry flag 带进位循环左移&lt;br&gt;
24  RRC    Rotate Right through the Carry flag 带进位循环右移&lt;br&gt;
25  SWAP   SWAP  （半字节）互换&lt;br&gt;
26  AJMP   Absolute JuMP   绝对转移&lt;br&gt;
27  LJMP   Long JuMP  长跳转&lt;br&gt;
28  SJMP   Short JuMP  短转移&lt;br&gt;
29  JMP    JuMP  跳转&lt;br&gt;
30  JZ     Jump if acc is Zero   累加器为零转移&lt;br&gt;
31  JNZ    Jump if acc is Not Zero  累加器不为零转移&lt;br&gt;
32  JC     Jump if Carry（if Cy=1） 进位位为1转移&lt;br&gt;
33  JNC    Jump if Not Carry（if Cy=0） 进位位为0转移&lt;br&gt;
34  JB     Jump if Bit is set（if Bit=1）指定位为1转移&lt;br&gt;
35  JNB    Jump if Not Bit（if Bit=1）指定位为0转移&lt;br&gt;
36  JBC    Jump if Bit is set and Clear bit 指定位等于1转移并清该位&lt;br&gt;
37  CJNE   Compare and Jump if Not Equal 比较不相等转移&lt;br&gt;
38  DJNZ   Decrement and Jump if Not Zero 减1不为0转移&lt;br&gt;
39  ACALL  Absolute CALL  绝对调用&lt;br&gt;
40  LCALL  Long CALL  长调用&lt;br&gt;
41  RET    RETurn   子程序返回&lt;br&gt;
42  RETI   RETurn from Interrupt 中断返回&lt;br&gt;
43  NOP    No OPeration  空操作&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="汇编指令">汇编指令</h2>
<p>助记符      英文注释        功能<br>
1   MOV    MOVe       传送<br>
2   MOVC   MOVe Code  代码传送<br>
3   PUSH   PUSH       压栈<br>
4   POP    POP        退栈<br>
5   XCH    eXCHange  交换<br>
6   XCHD   eXCHange Decimal  十进制交换<br>
7   ADD    ADD    加<br>
8   ADDC   ADD with Carry   带进位加<br>
9   SUBB   SUBbtract with  Borrow  带进位减<br>
10  INC    INCrement       增量<br>
11  DEC    DECrement       减量<br>
12  MUL    MULtiply        乘<br>
13  DIV    DIVide  除<br>
14  DA     Decimal Adjust  十进制调整<br>
15  ANL    Logical And    逻辑与<br>
16  ORL    Logical OR    逻辑或<br>
17  XRL    Logical eXclusive oR 逻辑异或<br>
18  CPL    ComPLement     求补<br>
19  CLR    CLeaR        清除<br>
20  SETB   SET Bit   置位<br>
21  RL     Rotate Left    循环左移<br>
22  RR     Rotate Right   循环右移<br>
23  RLC    Rotate Left  through the Carry flag 带进位循环左移<br>
24  RRC    Rotate Right through the Carry flag 带进位循环右移<br>
25  SWAP   SWAP  （半字节）互换<br>
26  AJMP   Absolute JuMP   绝对转移<br>
27  LJMP   Long JuMP  长跳转<br>
28  SJMP   Short JuMP  短转移<br>
29  JMP    JuMP  跳转<br>
30  JZ     Jump if acc is Zero   累加器为零转移<br>
31  JNZ    Jump if acc is Not Zero  累加器不为零转移<br>
32  JC     Jump if Carry（if Cy=1） 进位位为1转移<br>
33  JNC    Jump if Not Carry（if Cy=0） 进位位为0转移<br>
34  JB     Jump if Bit is set（if Bit=1）指定位为1转移<br>
35  JNB    Jump if Not Bit（if Bit=1）指定位为0转移<br>
36  JBC    Jump if Bit is set and Clear bit 指定位等于1转移并清该位<br>
37  CJNE   Compare and Jump if Not Equal 比较不相等转移<br>
38  DJNZ   Decrement and Jump if Not Zero 减1不为0转移<br>
39  ACALL  Absolute CALL  绝对调用<br>
40  LCALL  Long CALL  长调用<br>
41  RET    RETurn   子程序返回<br>
42  RETI   RETurn from Interrupt 中断返回<br>
43  NOP    No OPeration  空操作</p>
<p><strong>51单片机英文缩写全称<br>
MCS-51指令</strong></p>
<p>**（1）数据传送类指令（7种助记符）<br>
**助记符    英文注释    功能<br>
MOV    Move          对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送<br>
MOVC    Move Code    读取程序存储器数据表格的数据传送<br>
MOVX    Move External RAM    对外部RAM的数据传送<br>
XCH    Exchange    字节交换<br>
XCHD    Exchange low-order Digit    低半字节交换<br>
PUSH    Push onto Stack)    入栈<br>
POP    Pop from Stack)    出栈</p>
<p>**（2）算术运算类指令（8种助记符）<br>
**ADD    Addition    加法<br>
ADDC    Add with Carry    带进位加法<br>
SUBB    Subtract with Borrow    带借位减法<br>
DA    Decimal Adjust    十进制调整<br>
INC    Increment    加1<br>
DEC    Decrement    减1<br>
MUL    Multiplication、Multiply    乘法<br>
DIV    Division、Divide    除法</p>
<p>**(3)逻辑运算类指令（10种助记符）<br>
**ANL    And Logic    逻辑与<br>
ORL    OR Logic    逻辑或<br>
XRL    Exclusive-OR Logic    逻辑异或<br>
CLR    Clear    清零<br>
CPL    Complement    取反<br>
RL    Rotate left    循环左移<br>
RLC    Rotate Left throught the Carry flag    带进位循环左移<br>
RR    Rotate Right    循环右移<br>
RRC    Rotate Right throught the Carry flag    带进位循环右移<br>
SWAP    Swap    低4位与高4位交换</p>
<p>**(4)控制转移类指令（17种助记符）<br>
**ACALL    Absolute subroutine Call    子程序绝对调用<br>
LCALL    Long subroutine Call    子程序长调用<br>
RET    Return from subroutine    子程序返回<br>
RETI    Return from Interruption    中断返回<br>
JMP    Jump Indirect<br>
SJMP    Short Jump    短转移<br>
AJMP    Absolute Jump    绝对转移<br>
LJMP    Long Jump    长转移<br>
CJNE    Compare and Jump if Not Equal    比较不相等则转移<br>
DJNZ    Decrement and Jump if Not Zero    减1后不为0则转移<br>
JZ    Jump if Zero    结果为０则转移<br>
JNZ    Jump if Not Zero    结果不为０则转移<br>
JC    Jump if the Carry flag is set    有进位则转移<br>
JNC    Jump if Not Carry    无进位则转移<br>
JB    Jump if the Bit is set)    B位为１则转移<br>
JNB    Jump if the Bit is Not set    B位为０则转移<br>
JBC    Jump if the Bit is set and Clear the bit    位为１则转移，并清除该位<br>
NOP    No Operation    空操作</p>
<p>**（5）位操作指令（1种助记符）<br>
**SETB    Set Bit    置位<br>
伪指令<br>
助记符    英文注释    功能<br>
ORG    Origin<br>
DB    Define Byte<br>
DW    Define Word<br>
EQU    Equal<br>
DATA     Data<br>
XDATA    External Data<br>
BIT     Bit<br>
END    End</p>
<p>**51外部引脚<br>
缩写    英文解释    中文解释<br>
**RST        （9）    Reset    复位信号引脚<br>
RxD        (10&ndash;P3.0)    Receive Data    串口接收端<br>
TxD        (11&ndash;P3.1)    Transmit Data    串口发送端<br>
INT0(————)      （12&ndash;P3.2）   Interrupt0    外部中断0信号输入引脚<br>
INT1(————)      （13&ndash;P3.3）   Interrupt1    外部中断1信号输入引脚<br>
T0         (14&ndash;P3.4)    Timer0    定时/计数器0输入信号引脚<br>
T1         (15&ndash;P3.5)    Timer1    定时/计数器1输入信号引脚<br>
WR(———)        (16&ndash;P3.6)    write    写信号引脚<br>
RD(———)        (17&ndash;P3.7)    read    读信号引脚<br>
PSEN(—————)      （29）    progammer saving enable    外部程序存储器读选通信号<br>
ALE       （30）    Address Latch Enable    地址锁存允许信号<br>
EA(———)       (31)    enable    外部ROM选择信号</p>
<p>**51内部寄存器<br>
**SFR    special funtion register    特殊功能寄存器<br>
ACC    accumulate    累加器A<br>
PSW    progammer status word    程序状态字<br>
CY   (PSW.7)    carry    进位标志位<br>
AC   (PSW.6)    assistant carry    辅助进位标志位<br>
OV   (PSW.2)    overflow    溢出标志位<br>
PC    progammer counter    程序计数器<br>
DPTR    data point register    数据指针寄存器<br>
SP    stack point    堆栈指针<br>
TCON    timer control    定时器控制寄存器<br>
TF1     （TCON.7）    Timer1 flag    T1中断标志位<br>
TR1     （TCON.6）    Timer1 Run    T1运行控制位<br>
TF0     （TCON.5）    Timer0 flag    T0中断标志位<br>
TR0     （TCON.4）    Timer0 Run    T0运行控制位<br>
IE1     （TCON.3）    Interrupt1 exterior    外部中断1中断标志位<br>
IT1     （TCON.2）    Interrupt1 touch    外部中断1触发方式选择位<br>
IE0     （TCON.1）    Interrupt0 exterior    外部中断0中断标志位<br>
IT0     （TCON.0）    Interrupt0 touch    0-电平触发；1-下降沿触发<br>
IE   （A8H）    interrupt enable    中断允许寄存器<br>
EA        (IE.7)    enable all interrupt    中断总允许位<br>
ES        (IE.4)    enable serial    串行口中断允许位<br>
ET1      （IE.3）    enable timer 1    T1中断允许位<br>
EX1      （IE.2）    enable exterior 1    外部中断1中断允许位<br>
ET0      （IE.1）    enable timer 0    T0中断允许位<br>
EX0      （IE.0）    enable exterior 0    外部中断0中断允许位<br>
IP    （B8H）    interrupt priority    中断优先级寄存器<br>
PS     (IP.4)    priority serial    串口优先级标志位<br>
PT1    (IP.3)    priority timer 1    定时器1优先级标志位<br>
PX1    (IP.2)    priority exterior 1    外部中断1优先级标志位<br>
PT0    (IP.1)    priority timer 0    定时器0优先级标志位<br>
PX0    (IP.0)    priority exterior 0    外部中断0优先级标志位<br>
PCON    (87H)    power control    电源控制和波特率选择<br>
TMOD   （89H）    timer mode    定时器方式控制寄存器</p>
<p>MSB = most significant bit//最高有效位<br>
LSB = last significant bit//最低有效位</p>
]]></content:encoded>
    </item>
    <item>
      <title>ESP 踩坑记录</title>
      <link>https://jinpeng.cv/en/posts/typecho/19/</link>
      <pubDate>Thu, 03 Mar 2022 21:15:17 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/19/</guid>
      <description>&lt;img alt=&#34;image-20220303201018944&#34; loading=&#34;lazy&#34; src=&#34;https://gitee.com/Dagwbl/cloudPicture/raw/master/typora/image-20220303201018944.png&#34;&gt;&lt;p&gt;烧写ESP32C3-mini-1 的时候，烧写起始地址应该从0x0000开始，否则一直报错，并且采用without usb 的固件&lt;/p&gt;
&lt;p&gt;而烧写ESP32-D0WDQ6 的时候应该从0x1000开始。&lt;/p&gt;</description>
      <content:encoded><![CDATA[<img alt="image-20220303201018944" loading="lazy" src="https://gitee.com/Dagwbl/cloudPicture/raw/master/typora/image-20220303201018944.png"><p>烧写ESP32C3-mini-1 的时候，烧写起始地址应该从0x0000开始，否则一直报错，并且采用without usb 的固件</p>
<p>而烧写ESP32-D0WDQ6 的时候应该从0x1000开始。</p>
]]></content:encoded>
    </item>
    <item>
      <title>摘一个scoop安装的docker遇到的启动问题</title>
      <link>https://jinpeng.cv/en/posts/typecho/11/</link>
      <pubDate>Wed, 16 Feb 2022 17:38:57 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/11/</guid>
      <description>&lt;p&gt;The pipe access that the error message mentions is a (probably unrelated) issue when docker client is run by non-admin users (see here).&lt;/p&gt;
&lt;p&gt;I think the most likely explanation is that the docker service has failed to start.&lt;/p&gt;
&lt;p&gt;When you ran dockerd you were actually starting an instance of the daemon - and the line API listen on //./pipe/docker_engine means that the system service hadn&amp;rsquo;t started previously - as the instance you started could create the pipe.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>The pipe access that the error message mentions is a (probably unrelated) issue when docker client is run by non-admin users (see here).</p>
<p>I think the most likely explanation is that the docker service has failed to start.</p>
<p>When you ran dockerd you were actually starting an instance of the daemon - and the line API listen on //./pipe/docker_engine means that the system service hadn&rsquo;t started previously - as the instance you started could create the pipe.</p>
<p>If you stop the running dockerd instance and run:</p>
<p>Get-Service docker | Restart-Service<br>
Get-WinEvent -logname application | where ProviderName -eq docker | sort TimeCreated<br>
You should be able to compare the log output with your manual start of dockerd, and see if any errors are blocking the service from starting.</p>
<p>If the event log records API listen on //./pipe/docker_engine then Get-Service docker should show the service as running, and your docker commands should be ok.</p>
<p>[Edit]</p>
<p>Looks like the uninstall of docker was failing because the service doesn&rsquo;t exist. Yet, the install is succeeding except for the service installation.</p>
<p>You can re-register the service with &amp;&lsquo;C:\Program Files\Docker\dockerd.exe&rsquo; &ndash;register-service</p>
<p>Maybe this will fail if the VPS provider is somehow stopping services from being registered?</p>
<p>Another option is to run docker interactively in one shell with &amp;&lsquo;C:\Program Files\Docker\dockerd.exe&rsquo; &ndash;run-service, and run your docker commands in another shell.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Welcome to Typecho</title>
      <link>https://jinpeng.cv/en/posts/typecho/start/</link>
      <pubDate>Wed, 18 Nov 2020 15:26:10 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/start/</guid>
      <description>&lt;p&gt;If you are seeing this post, it means your blog has been successfully installed.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<p>If you are seeing this post, it means your blog has been successfully installed.</p>
]]></content:encoded>
    </item>
    <item>
      <title>About</title>
      <link>https://jinpeng.cv/en/posts/typecho/start-page/</link>
      <pubDate>Wed, 18 Nov 2020 15:26:00 +0000</pubDate>
      <guid>https://jinpeng.cv/en/posts/typecho/start-page/</guid>
      <description>&lt;h2 id=&#34;about-the-website&#34;&gt;About the Website&lt;/h2&gt;
&lt;p&gt;No grand introductions here, just bits and pieces&lt;/p&gt;
&lt;h2 id=&#34;article-list&#34;&gt;&lt;a href=&#34;http://42.192.117.142/index.php/blog&#34;&gt;Article List&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Click the title to view the list of articles&lt;/p&gt;
&lt;h2 id=&#34;user-registration&#34;&gt;&lt;a href=&#34;http://42.192.117.142/admin/register.php&#34;&gt;User Registration&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;If any friends wish to register, click the title to sign up. Welcome to share your thoughts and experiences.&lt;/p&gt;
&lt;h2 id=&#34;about-myself&#34;&gt;About Myself&lt;/h2&gt;
&lt;p&gt;Verbally, my logic struggles to keep up with my thoughts. I prefer practical work over idle speculation and value genuine experiences over empty actions. I enjoy tinkering with new computer-related technologies, both hardware and software. Over the past three years, I’ve built an integrated system—from sensors to microcontrollers to servers—as part of my thesis. I dislike competing for superficial recognition but still want to prove myself. I’ve participated in two mathematical modeling competitions, never achieving the top rank, but the results weren’t bad either.&lt;/p&gt;</description>
      <content:encoded><![CDATA[<h2 id="about-the-website">About the Website</h2>
<p>No grand introductions here, just bits and pieces</p>
<h2 id="article-list"><a href="http://42.192.117.142/index.php/blog">Article List</a></h2>
<p>Click the title to view the list of articles</p>
<h2 id="user-registration"><a href="http://42.192.117.142/admin/register.php">User Registration</a></h2>
<p>If any friends wish to register, click the title to sign up. Welcome to share your thoughts and experiences.</p>
<h2 id="about-myself">About Myself</h2>
<p>Verbally, my logic struggles to keep up with my thoughts. I prefer practical work over idle speculation and value genuine experiences over empty actions. I enjoy tinkering with new computer-related technologies, both hardware and software. Over the past three years, I’ve built an integrated system—from sensors to microcontrollers to servers—as part of my thesis. I dislike competing for superficial recognition but still want to prove myself. I’ve participated in two mathematical modeling competitions, never achieving the top rank, but the results weren’t bad either.</p>
<p>Once aspiring to become an information security expert, I ended up in the broader field of &ldquo;big security&rdquo; due to a major mix-up. Generally, I prefer the bigger picture, but the fact that careers in big security are often labeled as &ldquo;security administrators&rdquo; gives me a headache. Fortunately, my past interest has now become both an assistant and a source of joy in my work.</p>
<p>Currently, my ambition is to become a writer and pen novels after retirement. As such, I pay extra attention to insights from life and work, reading and jotting down notes in my free time to accumulate ideas and words. When exhausted, I unwind by gaming or calling friends.</p>
<h3 id="the-difference-between--and-equals-in-java">The Difference Between &ldquo;==&rdquo; and &ldquo;equals()&rdquo; in Java</h3>
<p>In Java, <code>==</code> and <code>equals()</code> are both used to compare whether two objects are equal, but they differ in their implementation and usage.</p>
<h4 id="1--operator">1. <code>==</code> Operator</h4>
<ul>
<li>The <code>==</code> operator compares whether two objects are the same instance in memory, i.e., whether they point to the same address.</li>
<li>For primitive data types (e.g., <code>int</code>, <code>char</code>, <code>boolean</code>), <code>==</code> compares their values.</li>
<li>For reference types (e.g., <code>String</code>, custom objects), <code>==</code> compares their memory addresses.</li>
</ul>
<p>Example:</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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-java" data-lang="java"><span class="line"><span class="cl"><span class="n">String</span><span class="w"> </span><span class="n">str1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&#34;hello&#34;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">String</span><span class="w"> </span><span class="n">str2</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&#34;hello&#34;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">String</span><span class="w"> </span><span class="n">str3</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">String</span><span class="p">(</span><span class="s">&#34;hello&#34;</span><span class="p">);</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">System</span><span class="p">.</span><span class="na">out</span><span class="p">.</span><span class="na">println</span><span class="p">(</span><span class="n">str1</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">str2</span><span class="p">);</span><span class="w"> </span><span class="c1">// true, because they point to the same constant in the string pool  </span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">System</span><span class="p">.</span><span class="na">out</span><span class="p">.</span><span class="na">println</span><span class="p">(</span><span class="n">str1</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">str3</span><span class="p">);</span><span class="w"> </span><span class="c1">// false, because str3 is a new object with a different address  </span><span class="w">
</span></span></span></code></pre></td></tr></table>
</div>
</div><h5 id="2-equals-method">2. <code>equals()</code> Method</h5>
<ul>
<li>The <code>equals()</code> method is used to compare whether the contents of two objects are equal.</li>
<li>By default, the <code>equals()</code> method in the <code>Object</code> class behaves the same as <code>==</code>, comparing memory addresses. However, many classes (e.g., <code>String</code>, <code>Integer</code>) override this method to compare content.</li>
<li>For custom objects, you need to override the <code>equals()</code> method to define your own equality logic.</li>
</ul>
<p>Example:</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></code></pre></td>
<td class="lntd">
<pre tabindex="0" class="chroma"><code class="language-java" data-lang="java"><span class="line"><span class="cl"><span class="n">String</span><span class="w"> </span><span class="n">str1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="s">&#34;hello&#34;</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">String</span><span class="w"> </span><span class="n">str2</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">String</span><span class="p">(</span><span class="s">&#34;hello&#34;</span><span class="p">);</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">System</span><span class="p">.</span><span class="na">out</span><span class="p">.</span><span class="na">println</span><span class="p">(</span><span class="n">str1</span><span class="p">.</span><span class="na">equals</span><span class="p">(</span><span class="n">str2</span><span class="p">));</span><span class="w"> </span><span class="c1">// true, because the contents are the same  </span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="c1">// Custom object example  </span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="kd">class</span> <span class="nc">Person</span><span class="w"> </span><span class="p">{</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="n">String</span><span class="w"> </span><span class="n">name</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="kt">int</span><span class="w"> </span><span class="n">age</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="nd">@Override</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="kd">public</span><span class="w"> </span><span class="kt">boolean</span><span class="w"> </span><span class="nf">equals</span><span class="p">(</span><span class="n">Object</span><span class="w"> </span><span class="n">obj</span><span class="p">)</span><span class="w"> </span><span class="p">{</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="k">this</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">obj</span><span class="p">)</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">true</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="k">if</span><span class="w"> </span><span class="p">(</span><span class="n">obj</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="kc">null</span><span class="w"> </span><span class="o">||</span><span class="w"> </span><span class="n">getClass</span><span class="p">()</span><span class="w"> </span><span class="o">!=</span><span class="w"> </span><span class="n">obj</span><span class="p">.</span><span class="na">getClass</span><span class="p">())</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="kc">false</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="n">Person</span><span class="w"> </span><span class="n">person</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="n">Person</span><span class="p">)</span><span class="w"> </span><span class="n">obj</span><span class="p">;</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">        </span><span class="k">return</span><span class="w"> </span><span class="n">age</span><span class="w"> </span><span class="o">==</span><span class="w"> </span><span class="n">person</span><span class="p">.</span><span class="na">age</span><span class="w"> </span><span class="o">&amp;&amp;</span><span class="w"> </span><span class="n">name</span><span class="p">.</span><span class="na">equals</span><span class="p">(</span><span class="n">person</span><span class="p">.</span><span class="na">name</span><span class="p">);</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">    </span><span class="p">}</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="p">}</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">Person</span><span class="w"> </span><span class="n">p1</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">Person</span><span class="p">(</span><span class="s">&#34;Tom&#34;</span><span class="p">,</span><span class="w"> </span><span class="n">20</span><span class="p">);</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">Person</span><span class="w"> </span><span class="n">p2</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="k">new</span><span class="w"> </span><span class="n">Person</span><span class="p">(</span><span class="s">&#34;Tom&#34;</span><span class="p">,</span><span class="w"> </span><span class="n">20</span><span class="p">);</span><span class="w">
</span></span></span><span class="line"><span class="cl"><span class="n">System</span><span class="p">.</span><span class="na">out</span><span class="p">.</span><span class="na">println</span><span class="p">(</span><span class="n">p1</span><span class="p">.</span><span class="na">equals</span><span class="p">(</span><span class="n">p2</span><span class="p">));</span><span class="w"> </span><span class="c1">// true, because name and age are the same  </span><span class="w">
</span></span></span></code></pre></td></tr></table>
</div>
</div><h4 id="summary">Summary</h4>
<ul>
<li>Use <code>==</code> to compare primitive types or check if two references point to the same object.</li>
<li>Use <code>equals()</code> to compare the logical equality of objects (e.g., content).</li>
<li>For custom objects, remember to override <code>equals()</code> (and <code>hashCode()</code>) to ensure correct behavior in collections like <code>HashMap</code> or <code>HashSet</code>.</li>
</ul>
<p>Understanding the difference between these two is crucial for writing correct and efficient Java code!</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
