[{"content":"戏作三昧1 一 天保二年（1831）九月的一天上午，神田同朋町的松汤澡堂，照例从一清早，浴客便熙熙攘攘。式亭三马2几年前出版的滑稽本里曾写道：“那浮世澡堂，简直是神、释、色与无常的大杂烩。”如今这澡堂中的光景，实与那时毫无二致。但见澡堂里热气蒸腾，透过窗户射进来的日光，影影绰绰能瞧见一个个湿淋淋、光溜溜的身子，挤在狭窄的冲澡处，晃来晃去：一个梳老婆髻3的，泡在池子里哼俗曲；有个梳本多髻的，站在穿衣处拧手巾；还有个奔儿头上挽个大银杏髻的，正让人搓他那刺青的后脊梁；另一个梳由兵卫髻的家伙，从方才起就一个劲儿地洗脸；有个秃子坐在水槽前，不停地冲澡；再就是留着娃娃头的小小子，一心在玩小竹桶和瓷金鱼。真个是热闹非凡。先是哗哗的浇水声和木桶的碰撞声，其次便是聊大天、哼小调的，最后，从账房那边还不时传来木铎声。总之，澡堂的入口处，人称石榴口，里里外外一片嘈杂，就跟打仗一样。且不说商贩乞丐之流会随时掀开帘子闯进来，洗澡客进进出出，更是不在话下。\n就在这片喧闹之中，有个年过六旬的老人，斯斯文文地挨在一角，静静地搓着身上的污垢。两鬓的头发黄得挺寒碜，眼睛好像也有些毛病。人虽瘦，身子骨倒还结实，可以说挺硬朗。手上脚上的皮已经松了，不过，却透着股不服老的劲头。脸盘也如此，宽宽的腮帮子，略显大的嘴巴周围，显得精力旺盛，有股子野劲儿，几乎不减当年。\n老人仔仔细细洗完上身，也不用存放在澡堂里的自留桶冲一冲，便洗起下身来。黑色的搓澡巾不论搓多少遍，他那又干又皱的皮肤上也没搓出什么污垢来。八成是勾起了迟暮之感，老人只洗了一条腿，忽然泄气似的，拿澡巾的那只手竟停了下来。望着桶中浑浊的水面，分明映出窗外的天空：红红的柿子，稀稀拉拉挂在枝头上，下面露出瓦屋顶的一角。\n这时，老人的心头投下一道“死亡”的阴影，倒也不是那种要过他命、令人忌讳的死亡。说起来，不过像这桶中的天空一样宁静可人，是一种解脱烦恼、安然寂灭之感罢了。要是能摆脱一切尘劳，长眠不起——像个无知无识的孩童，梦都不做一个，就那样睡过去，该是何等快意！想我非但为谋生疲于奔命，还苦于写作，几十年不辍，弄得身心疲惫不堪……\n老人不禁怃然。抬起眼睛，周遭的谈笑依旧好不热闹。与此同时，一个个浴客赤条条的，在水蒸气里动来动去，令人眼花缭乱。石榴口那儿的俗曲声中，这会儿又夹杂着别的小调。此刻落在他心头的疑惑，如艺事长存之类的问题，在这里当然丝毫见不到踪影。\n“哎哟，先生！想不到会在此地遇上您老。曲亭先生一清早就来洗澡，在下真是做梦也想不到。”\n老人冷不防给人一招呼，这才回过神来。一看，身旁有个人红光满面，中等个儿，梳着细银杏髻，面前摆着自留桶，肩上搭块湿手巾，笑得甚开心。看样子是刚从池子出来，正要用干净水冲身。\n“你照旧好兴致，好得很嘛。”\n马琴泷泽琐吉微微笑着，略带挖苦地答道。\n二 “哪儿的话，一点儿也谈不上好。要说好，先生的《八犬传》，才越写越出彩儿，越发有奇趣，写得棒极了！”\n细银杏髻说着，把肩上的手巾放到桶里，抬高嗓门，高谈阔论起来。\n“想那船虫4装成盲女，要杀小文吾。小文吾给抓住，遭到严刑拷打，幸给庄介救了出来。这一安排，实在妙不可言。于是乎庄介与小文吾才有重逢的机缘。不才我，近江屋平吉，虽说是区区小杂货店店主，但对小说，自信还懂行。而先生的《八犬传》，就连在下，也无可挑剔。令人佩服之至。”\n马琴一声不响，又洗起脚来。当然，对爱看他小说的读者，一向颇有好感。不过，也不会因有好感就改变对那人的看法。像他这种聪明人，这么做，本是顺理成章的事。反过来说，即使对某人有看法，也从不会影响他对其人的好感，这确也有点儿怪。所以，有的场合，对同一个人，他既瞧不起，又抱有好感。像这位近江屋平吉，便是这样的一位读者。\n“能写出那样的杰作，花的心血，想必也非同寻常。在当今，先生可谓日本的罗贯中哩——哎呀，这话说得冒失啦，得罪，得罪。”\n平吉放开嗓门大笑起来。八成让他的声音吓了一跳，旁边有个矮个子正在冲澡，皮肤黑黢黢的，挽个小银杏髻，长了一对斜眼，回头瞅瞅马琴和平吉，做了个怪相，朝地上唾了一口痰。\n“你还热衷于写俳句吗？”马琴巧妙地换了个话题。倒不是在乎“斜眼儿”的表情。以他衰退的视力哪能看清，这倒是他不幸中的大幸。\n“承先生垂询，惶恐之至。在下虽好此道，笔下却不听话。尽管觍着脸到处现眼，今儿参加个诗会，明儿又去赴个诗社，却不知为什么，总不见长进。先生如何？对和歌、俳句之类，是不是也饶有兴趣？”\n“不，不大擅长此道。原先倒也写过。”\n“您这是说笑话。”\n“哪里，看来是与性情不合，至今都没入门儿呢。”\n马琴说到“与性情不合”，格外加重了语气。他并不认为自己作不来和歌、俳句。当然，在这些事上，也自认并不缺少才气。只不过他一向瞧不起这类艺术。因为，和歌也罢，俳句也罢，形制实在过于微小，容纳不下他的全部构思。一首和歌，一句俳句，无论叙景抒情有多精彩，所表现的内容，较之他汪洋恣肆的作品，充其量只抵得数行而已。在马琴眼里，那是二流艺术。\n三 马琴加重语气，说“与性情不合”，就包含了这层轻蔑。不幸的是，这位近江屋平吉，压根儿没听出其中的弦外之音。\n“噢，竟是这么回事呀。在下还以为，像先生这样的大作家，写什么都能得心应手。咳，俗话不是说，人无全才。”\n平吉拿着拧干的手巾，吭哧吭哧地把皮都搓红了，带点儿客套地这样说道。马琴原是自谦之辞，平吉竟照字面去领会。自尊心甚强的马琴，听了怫然不悦。尤其平吉客套的口吻，更叫他不痛快，便把手巾和搓澡巾往地上一扔，坐直身子，板起了脸，盛气凌人地说道：“话又说回来，像时下的和歌诗人，或是俳句宗匠，他们那点儿能耐，自信还及得上。”\n话一出口，顿时难为情起来，觉得自己的自尊心，简直像个小孩子家。方才平吉对《八犬传》大加赞赏，自己也没觉得有多高兴，这会儿，给人家看成不会写和歌、俳句，反倒不满起来，这不明摆着自相矛盾吗？马琴猛醒过来，慌忙拿起桶，从肩膀一直浇下去，像是要把心里的羞愧给冲掉似的。\n“就是嘛。要不然，您老也写不出那样的杰作呀。这么说来，在下能看出先生会作和歌、俳句，实在是好眼力呀。哎哟，怎么自吹自擂起来啦。”\n平吉又放开嗓门，大笑起来。方才那个“斜眼儿”已经不在跟前了。吐的那口痰，也让马琴的冲澡水冲掉了。可是，马琴倒比刚才更感惶恐。\n“哎呀，尽顾着说话，我也该到池里泡泡了。”\n马琴有说不出的狼狈，一面打着招呼，慢腾腾地站起身来，一面又生自己的气，感到宜赶紧离开这位好心的读者。见马琴神气十足，平吉作为读者，觉得脸上都增光似的。便朝马琴的身后说道：“那么，请先生改天作首和歌或俳句，好吗？您老答应啦？可千万别忘喽。在下就在此别过了。知道您老忙，不过，路过舍下的时候，请进来坐坐吧。在下也欲去府上叨扰。”\n说完，又涮起手巾来，眼睛望着马琴的背影走向石榴口，心里琢磨着，遇见曲亭老先生这事，回家后，该怎么讲给老婆听才好呢。\n四 石榴口里暗得像傍晚一样。热气蒸腾，比雾还浓。马琴眼睛不好，跌跌撞撞地扒拉开浴客，好歹摸索到澡堂的一角，总算把满是皱纹的身子泡了进去。\n水有点儿热。感到热气连指甲都浸透了，不禁长长嘘了口气，慢悠悠地四下里打量着。昏暗中，好像露出有七八个脑袋。有说话的，有唱小曲的。热水融化了人身上的油腻，滑不唧溜，水面上反射着从石榴口照进来的昏暗光线，悠悠地晃荡着。令人恶心的“澡堂子味儿”直冲鼻子。\n马琴的想象，向来带点儿浪漫色彩。就在这澡堂的热气里，无意中，眼前浮现出的一景，是他正打算写的小说里的：\n一艘沉甸甸的乌篷船。船外，海面上似乎正日暮风起。浪打船舷，听来沉重滞浊，像是油在晃动。与此同时，乌篷船也呼啦呼啦作响，八成是蝙蝠在拍打翅膀。这声音让一个船夫放心不下，悄悄从船舷探出头去察看。海面上雾蒙蒙的，只有红红的月牙儿，阴沉沉地挂在天上。于是……\n正想到这儿，陡然给打断了。因为他忽然听见石榴口那边，有人对他的小说在说长论短。声调也好，语气也好，分明是故意说给他听的。马琴本想从水池里出来，却又打消了念头，便一动不动，听那人数落。\n“什么曲亭先生、著作堂主人的，净说大话，马琴写的那玩意儿，全是炒人家的冷饭。说白了吧，他那本《八犬传》，还不是现成抄的《水浒传》！话又说回来，咳，要是不挑剔，有些故事真还算有点儿意思。好歹有人家中国小说打底儿不是？所以呀，他那本书，光是看一遍，就乖乖不得了。可是，这回干脆又抄起京传5的来了。我简直傻了眼，气都生不出来了。”\n马琴老眼昏花，眯缝着眼去看那个嚼舌头的人。因为热气挡着，看不大清，像是方才身边那个挽小银杏髻的“斜眼儿”。要真是他，没准是平吉刚才夸《八犬传》，惹他憋了一肚子火，才故意说两句出出气。\n“头一点，马琴那写法，全靠耍笔杆子，肚里没一点儿货色。就算有，也像个教私塾的冬烘先生，不过讲一通四书五经罢了。因为他对当今世事，一窍不通。证据就是，除了陈年旧事，他压根儿没写过别的。要把阿染和久松这两人6写活，他还没那本事，所以才写了《松染情史秋七草》7。照马琴大人的口气说，此类例子已多得数不胜数。”\n要是一方真的高出对方，你就是想恨也恨不起来。对方这么损自己，马琴尽管恼火，却也怪，竟恨他不起来。相反，倒是极想表示一下自己的轻蔑之情。之所以没这么做，恐怕是上了年纪，火气压得住的缘故。\n“要讲写小说，一九8和三马才了不起呢。人家写的人物，浑然天成，活灵活现。绝不靠耍小聪明，卖弄半吊子学问，胡编乱造。这一点上，跟蓑笠轩隐者9之流，不可同日而语。”\n凭马琴的经验，一旦听到别人贬自己的作品，非但会不高兴，还会深受其害。要说呢，倒不是因为说对了而感到沮丧，没了勇气。其实，他的本意是，为要反证人家说得不对，往后下笔，动机反倒会变得不纯。动机一不纯，其结果，写出来的作品，往往就不成样子，怕就怕在这里。那些媚俗的作者又当别论，但凡有点儿骨气的作家，格外容易陷入这种险境。所以，别人对自己小说的恶评，直到如今，马琴尽量不去看。不过，想归想，却又禁不住想看看究竟是怎样的恶评。此刻，在澡堂里之所以去听“小银杏髻”信口雌黄，多半也是受了这念头的蛊惑。\n他觉察到这一点，立马责备自己，竟然还泡在池汤里虚度时光，真是愚不可及。于是，不再理会“小银杏髻”的尖嗓门，一脚跨出石榴口。隔着热气，看得见窗外的蓝天，还看见蓝天下沐浴着温煦阳光的枝头柿子。马琴走到水槽前面，平心静气地用清水冲身。\n“反正马琴欺世盗名。亏他号称日本的罗贯中呢。”\n澡堂里，那人大概以为马琴还在场，照旧痛斥腓力10，骂不绝口。偏巧是个斜眼儿，兴许没看见马琴早已跨出石榴口去也。\n五 然而，马琴出了澡堂，心情阴沉沉的。“斜眼儿”倒是得计了，那番刻薄话，起码在这点上，还真奏了效。马琴走在秋高气爽的江户街头，对方才在澡堂听到的恶言恶语，以自己的眼光，一一审视，严加品评。他当即就弄清一件事：不论从哪一点上来看，这些谬论都不值一顾。话虽如此，一度给扰乱的心情，却不能轻易平静下来。\n他抬起怏怏不乐的眼睛，望着两旁的店家。店里的人与他的心境了不相涉，个个都为当日的营生忙活。土黄布上印着“各地名烟”的布帘子，梳子形的“正宗黄杨木”的黄招牌，写有“轿灯”字样的挂灯，还有上书“卜筮”二字的算卦招子——这些东西杂乱无章，排了一溜，乱糟糟地从他眼前掠过。\n“这些恶言恶语，我压根儿不放在眼里，可为什么心里这样烦躁呢？”马琴接着又想，“让自己不痛快的，首先是那个‘斜眼儿’对自己心怀的恶意。不拘什么理由，只要别人恶意相向，心里就会别扭。这有什么法子！”\n想到此处，对自己的怯弱，不免有些羞愧。其实，像他那样目空一切的人，固然不多，而对别人的恶意敏感到这地步的，也着实少有。从行为上来说，虽说结果相异，原因实乃相同：即同一神经，不同作用之故也。这一点他当然早就有所察觉。\n“不过，让我不快活的，还另有缘故。那就是，自己竟落到这样的处境，成了‘斜眼儿’的对头。我一向不喜欢跟人交恶，所以从来不去争强斗胜。”\n寻思至此，还想再深究一步，不料心情起了变化。抿紧的嘴巴，忽然咧了开来，也可看出端倪。\n“最后，搅乱自己心情的，居然是那个‘斜眼儿’。这事真让人不痛快。要是个高明的对手，自己准不甘示弱，将这不痛快回敬过去。可是，跟那么个“斜眼儿”叫阵，再怎么着，也总觉得不屑。”\n马琴一面苦笑，一面仰望高空。老鹰欢快的叫声，同阳光一起雨点儿般地落了下来。一直郁闷不舒的心情，渐渐轻快起来。\n“总之，不管‘斜眼儿’如何恶意中伤，顶多让我不自在罢了。老鹰叫得再响，太阳也不会停止旋转。我的《八犬传》，必能完成。到那时，日本就有了从古到今无与伦比的一大传奇之书！”\n他安抚着自己，恢复了自信。在窄巷中拐了个弯，静静地朝家走去。\n六 到家一看，暗乎乎的门厅里，脱鞋石上摆了一双麻花襻的雪屐，挺眼熟。一见之下，来客那张平板单调的脸，立刻浮在眼前。又来耽误工夫，心里不免生厌。\n“今儿上午算又白糟蹋了，唉！”一边想，一边上了木板地，女佣阿杉慌忙出来迎接，手拄地上，跪在那儿，仰头看着他脸说道：“和泉屋老板正在屋里等您回来呢。”\n马琴点了点头，把湿手巾交给阿杉。可他不想马上进书房。\n“太太呢？”\n“朝香去了。”\n“少奶奶也去了？”\n“是。带了小少爷一起去的。”\n“少爷呢？”\n“去了山本老爷家。”\n家里人全出门了。他有点儿扫兴。不得已，只好拉开挨着门厅的书房门。\n一看，客人端坐在屋子中间，正抽着一管细细的银烟袋，白脸膛上油光光的，拿捏着一股子劲儿。马琴书房里，除了裱着拓本的屏风，挂在壁龛里的一对红梅黄菊条幅外，再没一件像样的饰物。挨着墙，清一色摆了一排桐木书箱，有五十几只，倒也古色古香。窗户纸恐怕过了年还没换过，白纸东一块西一块地补在窟窿上，在秋阳的照射下，斜映出硕大的芭蕉残叶在婆娑弄影。正因此，客人的华丽服饰，同书房的氛围就越发显得不协调。\n“哟，先生，您回来啦。”\n隔扇一拉开，客人就圆滑地打招呼，还毕恭毕敬低头行了个礼。他就是书铺老板和泉屋市兵卫。当时《新编金瓶梅》声誉甚高，仅次于《八犬传》，便是由他承印的。\n“等了不少工夫吧？偏巧今儿一早去洗了个澡。”\n马琴不经意地皱了下眉头，依旧彬彬有礼地坐下来。\n“哎呀，一清早去洗澡？真是不错呢。”\n市兵卫一声感叹，好似不胜羡慕的样子。不论多么小的一点儿事，他都能信口恭维，表示钦佩，这种人很少见。何况那钦佩又是装出来的，就更加少见。马琴慢条斯理地抽着烟，照例赶紧把话题转到正事上。他尤其不喜欢和泉屋老板那钦佩人的劲儿。\n“不知今儿有何贵干？”\n“哎，那个，又来请您赐稿哟。”\n市兵卫指尖捏着烟袋转了一下，说话一副娘娘腔。这家伙性格有些怪。多数场合，表里不一。而且，何止是不一，经常是适得其反。一旦执意要做一件事，说起话来，准是拿出一副娘娘腔来。\n马琴一听这声音，不由得又皱起眉头。\n“要稿子，那可不成。”\n“哦，有什么为难吗？”\n“何止为难！今年我接了几部小说，压根儿腾不出手弄长篇。”\n“难怪。真是大忙人哪。”\n说完，用烟灰筒磕了磕烟袋上的灰，刚才的话仿佛忘得一干二净，脸上像没事人似的，冷不丁提起鼠小僧次郎太夫的事来。\n七 鼠小僧次郎太夫原是有名的大盗，今年5月上旬被捕，8月中给枭首示众。他专偷大名11府，盗来的钱财全施舍给穷人，所以得个“侠盗”的美名，所到之处备受称赞。\n“先生，听说被盗的大名府有七十六家，盗走的钱财共有三千一百八十三两二钱之多，真令人吃惊。虽说是个强盗，亦非常人所能及。”\n马琴不禁动了好奇心。市兵卫说这话，心中甚感得意，因他总能给作者提供些素材。这一得意，不用说，常惹得马琴恼火。恼火归恼火，好奇心照旧给吊了起来。马琴相当有艺术天赋，这方面格外容易上钩。\n“嗯，是了不起。我也听到种种传说，没想到真如此厉害。”\n“反正该算是盗中豪杰吧。听说从前当过荒尾但马守的随从，所以对大名府内的情形才这么轻车熟路的。行刑前游街示众，据看光景的人说，人长得胖墩墩的，还挺招人喜欢，身穿一件越后产的蓝绉绸褂子，里面衬的是白绸子单和服。这号人物，不恰好该在先生的小说里出场吗？”\n马琴含糊其词地应了一声，又点上一袋烟。而市兵卫可不是含糊其词就能打发掉的。\n“您看怎么样？能不能把这个次郎太夫写进《新编金瓶梅》里？您忙，这再清楚不过。就请勉为其难，答应下来吧。”\n说到这里，从鼠小僧一下又回到催稿的事上。他这套把戏，马琴早已见惯，仍是不肯应承。非但如此，比方才越发不痛快。虽说是一时中计，上了市兵卫的当，自己居然动了几分好奇，真是愚蠢透顶。烟抽得寡淡无味，一面说出这样一番道理来：“首先，勉强去写，总归也写不好。不用说，那会影响销路。你们也会觉得没意思，不是？所以呀，照我的意思去办，对双方都好。”\n“话虽如此，可还是想请您勉力而为，行不行？”\n市兵卫一边说，一边用视线“抚摩”马琴的脸（这是马琴形容和泉屋老板某种眼神的话），鼻孔里不时喷出烟来。\n“无论如何也写不出来。就是想写，也没工夫。没法子。”\n“那可难倒我了。”\n说着，这回突然把话锋转到作家同行之间的事上来。两片薄薄的嘴唇，依旧叼着细细的银烟袋。\n八 “听说种彦12又有新书要出版了。无非是丽辞华藻、哀感悲戚的故事罢了。种彦写的东西，自有他种彦才有的独特之处，别人是写不来的。”\n不知市兵卫是什么心思，凡提到作家名儿，不管对谁，从不加尊称。马琴每回听他这么直呼姓名，心里就想：背后提到我恐怕也是直呼“马琴”的吧。这种浅薄小人，把作家当成雇来的伙计，称名道姓的，自己凭什么要给他写稿子？——逢到肝火旺的时候，就越想越来气，这是常有的事。本来就没好脸色，这会儿一听提到种彦的名儿，脸色就越发难看起来。市兵卫却好像满不在乎。\n“我们还琢磨着，往后要不要出春水13的小说。先生讨厌他，可他倒挺投合那班俗人的趣味呢。”\n“嗯，是吗？”\n记得几时曾见过春水来着，眼前浮现出他那张脸，显得格外的猥琐。春水直言不讳，曾说过：“我不是作家。不过是为赚钱，投读者之所好，写些艳情小说供他们消遣罢了。”这话马琴早就有所耳闻。不用说，他从心里瞧不起这号不像作家的作家。尽管如此，此刻听市兵卫不加尊称，直呼其名，仍不禁感到不快。\n“总之，要说写那类色情故事，他最拿手啦。而且，笔头上是出名的快手。”\n市兵卫说着，睃了马琴一眼，然后赶紧又盯住衔在口中的银烟袋杆。一时里，他的表情显得非常下流。至少马琴这么觉得。\n“他写得极快，据说是走笔如神，不写上三两章，就不能罢手。先生有时，下笔是不是也很快呀？”\n马琴心里不仅不痛快，还觉得受了胁逼。他自尊极强，不愿别人拿自己和春水、种彦之流比，看究竟谁的笔头快。马琴其实是属于出活慢的一类。他认为那是自己没能耐，也常有泄气的时候。可是话又说回来，他又时时把笔头的快慢，当作衡量艺术良心的尺度，而且深以为贵。可是，自己心里怎么想是一回事，听任那班俗物来妄加訾议，则断断不容许。于是，朝壁龛的红梅黄菊望过去，一吐心中块垒道：“那得看时间和场合。有时快，有时慢。”\n“哦，哦，得看时间和场合。原来如此。”\n市兵卫第三次表示叹服。不过，他绝不会仅止于叹服的。紧接着，劈面就问：“那么，一再提到的那部稿子，您是不是已答应下来了？像春水他……”\n“我跟春水先生不一样。”\n马琴有个毛病，生起气来，下嘴唇爱朝左撇。这工夫，猛一下朝左撇了过去。\n“恕不从命。——阿杉，阿杉！和泉屋老板的鞋子，摆好了吗？”\n九 马琴将和泉屋市兵卫撵走后，一个人靠着廊柱，望着小院里的景致，肚里的火还没消，想法儿极力压下去。\n阳光洒满一院子，叶子残破的芭蕉、快要光秃的梧桐、青青的罗汉松和绿绿的竹子，暖洋洋地一起领受这只有几坪14大的秋色。这边，净手钵旁的芙蓉花，七零八落，只剩了寥寥几朵。对面，种在袖篱15外的桂花，却依旧香气袭人。老鹰的叫声，清脆如笛音，时不时自蓝天远远飘落下来。\n面对自然，他不由得想起人间的卑劣来。人之所以不幸，就缘于置身这卑劣的人世间，为卑劣所恼，连自己的言行也随之变得卑劣起来。就在方才，自己不也把和泉屋给撵走了。撵走人这种事，当然不是什么高尚之举。可是，对方实在卑劣，自己是给逼到那一步上的，非那么做不可。结果，就那么做了。那么做，只能说明自己也变得卑劣起来，跟市兵卫是半斤八两。换句话说，自己身不由己，已然堕落到这个份儿上了。\n想到这里，他记起前不久发生的同样一件事。去年春天，有个叫长岛政兵卫的人，住在相州朽木上新田一带，写信给马琴，要拜他为师。信上称，我自二十一岁耳聋，便决心要以文章扬名天下，直到二十四岁的今天，始终潜心于写作。不用说，我是《八犬传》和《巡岛记》的忠实读者。不过，待在乡野，对修业习艺，总归多有不便。因此，能否到府上来，收留我权当门客？另外，我还有够出六册书的小说原稿。敬请斧正，并代觅合适的书局出版。——信的大意如此。在马琴看来，对方这些要求，全是一厢情愿的如意算盘。马琴苦于视力不好，知道对方耳聋，便生出几分同情。于是，回信说，所求之事，碍难接受。马琴如此着笔，按说是够郑重其事的了。岂料对方回信，从头到尾，除了谩骂，就没别的。\n信的开头是这么写的：你的《八犬传》也罢，《巡岛记》也罢，写得又长又臭，我是耐着性儿才看完的。而你，对我的小说，仅有六册，却连看都不肯看一眼。你人格之低，不是明摆着的事吗？结尾更大肆攻击：身为前辈，竟不肯纳晚辈当门客，真是个吝啬鬼。马琴一怒之下，当即回信，信中还写了这样一句话：我的小说，竟为足下这种浅薄之徒所读，实乃我终生之耻。从那以后，就杳无音信。如今那个政兵卫是不是还在写小说？是不是还在梦想，有朝一日，他的小说风行日本呢……\n想起这件事，不禁觉得政兵卫很可怜，自己也很可怜。这样一来，又引发马琴一种说不出的寂寥之情。太阳无忧无虑地照着桂花，香气四溢。芭蕉和梧桐悄然无声，叶子连动都不动一下。老鹰也和原先一样，叫得还是那么欢快。这大自然，还有这人世间……马琴像做梦似的，靠在廊柱上发呆，直到十分钟后，女佣阿杉来禀知，午饭已经做好了。\n十 马琴独自无情无绪地吃完午饭，这才回到书房。心里有说不出的烦乱，很不痛快。为让自己平静下来，便翻开很久都未翻过的《水浒传》。一翻就翻到风雪夜，豹子头林冲在山神庙看到火烧草料场那段。戏剧性的场面，照例引起他的兴致来。可是看了一段，反倒有些不安起来。\n家人去朝香，还没回来。屋里鸦雀无声。他打起精神，对着《水浒传》，百无聊赖地抽起烟来。烟雾中，脑子里又冒出向来就有的一个疑问。\n身为道德家和艺术家，那个疑问，一直缠绕不去。对“先王之道”，他以前从没疑心过。就像他自己公开说的那样，他的小说就是“先王之道”在艺术上的表现。这倒没什么矛盾。可是，“先王之道”赋予艺术的价值，同他在感情上想赋予艺术的价值，想不到相差甚远。他心中道德家的一面，肯定前者，而艺术家那面，当然是认可后者。讨个巧，用妥协的办法来摆脱这矛盾，也不是没想过。其实，他就曾经公开说过些模棱两可的话，想拿调和的论调，来掩饰他对艺术的含糊态度。\n然而，骗得了人，却骗不了自己。他否定戏作的价值，称之为“劝善惩恶的工具”，可一旦碰上泉涌般的艺术灵感，心里立即会感到不安。《水浒传》中的一段，之所以出其不意，给他的心情以这种影响，因由盖在于此。\n在这点上，马琴心里是胆小的，他一声不响地抽着烟，硬把心思转到还没回家的亲人身上。然而，《水浒传》就摆在眼前。不安的念头始终围着《水浒传》兜圈子，怎么也赶不走。正在这工夫，好久没上门的华山渡边登16来了，来得恰是时候。穿着和服外褂和裙裤，腋下挟了个紫包袱，大概是来还书的。\n马琴好高兴，特意走到门厅去迎接这位好友。\n“今儿个来，一是还书，二来有件东西想请您看看。”\n华山一进书房，就这样说道。再一看，除了包袱，还拿着一卷像是绢画的东西，外面用纸裹着。\n“要是有空，就请过过目。”\n“噢，那就让我先睹为快吧。”\n华山似乎有些兴奋，故意微微一笑，来掩饰自己的心情，一边打开卷在纸里的绢画。画上画着几株萧索、光秃的树，远远近近，稀稀落落，林间站着两个拊掌谈笑的男子。无论是散落在地上的黄叶，还是麇集在树梢的乱鸦，画面上无处不流露着微寒的秋意。\n马琴凝视着这幅淡彩的寒山拾得17像，眼里渐渐闪动着柔和温润的光辉。\n“你的画总是这么出色。让我想起了王摩诘18。是意在‘食随鸣磬巢乌下，行踏空林落叶声’19吧？”\n十一 “这是昨天刚画的，还算满意。要是您老人家看得上，尽请留下，所以带来了。”\n华山摸着刚刮过胡子还青乎乎的下巴，踌躇满志地说。\n“当然，说是满意，不过是在至今所画的画里差强人意而已。作画总是不能得心应手哇。”\n“那太谢谢了。一向承你厚赠，实在过意不去。”\n马琴眼里看着画，嘴上喃喃道谢。不知怎的，心里蓦地闪过，自己工作还撂在那里没做完呢。而华山，好像依然也在琢磨自己的画。\n“每次看古人的画，总要想，怎么画得这么精妙！树是树，山石是山石，人物是人物，真是绘影绘神，把古人的心情画得悠悠然，简直呼之欲出。能画到这一步上，实在了不起。而我，说起来，水平还及不上个孩子。”\n“不过古人也说过，后生可畏呀。”\n马琴瞅着华山，见他一门心思想自己的画，心里似乎有点儿忌妒，破例开了句玩笑。\n“后生的确可畏。我们给夹在古人和后人之间，身不由己，任人推着赶着只有往前走的份儿。恐怕不光我们如此。古人大概也同样，后人想必也‘同出一途’。”\n“不错，要不往前走，立即就会给推倒了。这样看来，最要紧的是，得先想法子，如何往前走，哪怕走一步也好。”\n“正是。这比什么都要紧。”\n宾主各自为所说的话而动情，两人一时语塞，侧耳聆听秋日里那些微妙的声息。\n“《八犬传》写得还顺手吧？”\n隔了一会儿，华山转过话题问道。\n“哪里，毫无进展，真没法子。这方面似乎也不及古人呢。”\n“您老人家要这么说，我们就更惭愧了。”\n“要说惭愧，我比谁都惭愧。不过，无论如何也得尽力而为，除此别无他法。最近，我准备豁出去，跟《八犬传》拼老命了。”\n说着，马琴难为情似的苦笑了一下。\n“虽然也想过，大不了是个戏作罢了，可是，做起来却没那么简单。”\n“我画画儿也一样。既然画了，我就想，尽我所能，一直画到底。”\n“彼此都在拼命啊。”\n两人放声大笑起来。然而，那笑声里，充溢着只有他俩才知道的寂寞。与此同时，这寂寞，同样又使宾主二人感到一阵强烈的兴奋。\n“不过，画画儿很叫人羡慕哇。至少不会受到公家指责，这比什么都强。”\n这回马琴把话锋一转。\n十二 “那倒没有。您老人家写的东西，也无须担这个心吧？”\n“哪儿啊，多着呢。”\n于是，马琴举了一个实例，说明书籍审查大人专横到极点。因小说里有一段写到官府受贿，便责令要他改写。对这件事，马琴批评道：“审查大人那班家伙，越是找碴儿，越露马脚，有趣得很。他自己受了贿，就嫌人家写受贿的事，非逼你改掉不可。因为他们自己下流，爱动邪念，只要涉及男女之情的，不管什么书，立马就说是淫书。而且，还自以为道德上比作者多高似的，真让人哭笑不得。俗话说，猴子照镜子——龇牙咧嘴。因为自知低人一等，有气。”\n马琴一个劲儿地打着比方，华山不禁笑了起来。\n“这类事大概挺多。不过，即使被迫改写，也碍不上您老人家的面子。管他审查大人说什么，好作品，总归是好作品。”\n“话是这么说，蛮横无理的事，实在太多了。对了，还有一次，写到探监人去送吃的和穿的，也给删掉了五六行。”\n马琴说着说着，竟和华山一起呵呵笑了起来。\n“可是，过了五十年一百年，那些审查大人已成粪土，而《八犬传》则与世长存。”\n“《八犬传》留下来也罢，留不下来也罢，反正我觉得，不管什么时候都会有审查大人。”\n“是吗？我倒不那么认为。”\n“就算审查大人没有了，审查大人那一号人，不管什么世道都不曾断过。要是以为焚书坑儒只有古时候才有，那就大错特错了。”\n“近来，您老人家净说些灰心的话。”\n“倒不是我灰心。是审查大人横行的世道让我灰心。”\n“那就努力创作，岂不更好！”\n“看来只好这样了。”\n“那咱们就一道拼命吧。”\n这回，两人谁都没笑。非但没笑，马琴还神情庄重地瞅着华山。华山这句像是玩笑的话，竟出奇地觉着刺耳。\n“年轻人首先得明白，活下去才是正经。想拼命，什么时候都能拼。”\n过了一会儿，马琴这么说道。他知道华山的政治见解，这时，忽然感到一丝不安，故而才这么说。华山只是淡淡一笑，不置可否。\n十三 华山走后，马琴趁这股兴奋劲儿还没退，正该接续写《八犬传》，便照常例对着桌子坐下来。他一向有个习惯，总是先把头天写好的通读一遍，然后再接着往下写。所以，今天也是先拿起行距又窄又密、朱笔改得满篇皆红的几页稿子，慢慢儿用心重读一遍。\n不知何故，写的东西与自己的心意一点儿都不贴切。字里行间，处处透着一种不纯的杂音，破坏通篇的和谐。起初，他还以为是肝火太旺的缘故。\n“得怪这会儿心情不好。这可是自己尽心尽力才写出来的。”\n想到这儿，又重读一遍。可是，同方才没什么两样，还是很糟。他心里一下慌了起来，都不像个老人的样儿了。\n“先头儿写的怎么样呢？”\n他又看先前写的那段。照样是信手涂鸦，行文散乱，词句粗糙，比比皆是。接着又往前看。再接着往前看。\n一直看了下去，展现在眼里的，竟是一篇结构拙劣、章法混乱的作品。写景，不能给人留下一点儿印象；抒情，引不起别人的共鸣；而议论，又没丝毫道理可循。花了好几天的心血写出来的几章稿子，今儿让他一瞧，尽是些没用的饶舌。他顿时痛苦得像心上挨了一刀。\n“只好从头再写了。”\n马琴心里这样叫着，把稿子恨恨地一推，支起一条胳膊，侧身躺了下去。兴许还在惦记稿子的事，眼睛一直没离开书桌。就在这张书桌上，他写下了《弓张月》《南柯梦》，如今又在写《八犬传》。桌上的端砚，蹲螭形的镇纸，蛤蟆形的铜笔洗，雕有牡丹、狮子的青瓷砚屏，以及刻着兰花的孟宗竹根笔筒——所有这些文具，对他创作的艰辛，早已司空见惯了。看着这些文具，觉得目前的失败给他毕生的劳作投下了阴影——他禁不住怀疑起自己真正的实力来，不免忧心忡忡，有种不祥之感。\n“直到方才，还寻思着要写一部当今世上无与伦比的巨著来着。没准也跟别人一样，不过是种自负而已。”\n这种忧心，益增他孤独落寞之感，最是叫人不堪忍受。他没忘，凡是他尊敬的日本和中国文豪，在他们面前，自己从来都堪称谦恭。但在同时代作家里，对那些庸碌之辈，则极是傲慢不逊。结果，自己的能耐竟同他们半斤八两，而且还是个讨厌的辽东豕20，这个事实他马琴怎能甘心承认呢？然而，他的“我执”太强，没法儿用“彻悟”和“断念”来解脱自己。\n他躺在书桌前，瞧着这部失败的稿子，那眼神，就像遇难的船长，眼睁睁瞅着船往下沉。他闷声不响，一直在跟极度的绝望搏斗。这当口，他身后的隔扇哗啦一声给拉了开来，一声“爷爷，我回来啦！”接着，一双柔嫩的小手搂住他的脖子。不然的话，他还不知要郁闷到什么时候呢。小孙子太郎拉开隔扇，一下子就跳到马琴的腿上，只有小孩子才会这么大胆，没有顾忌。\n“爷爷，我回来啦！”\n“噢，回来得好快呀。”\n说着，《八犬传》作者那布满皱纹的脸上，顿时笑逐颜开，就像换了个人似的。\n十四 起坐间里很热闹，听得见老伴儿阿百的尖嗓子，还有儿媳妇阿路羞怯的声音。不时还夹带着男人的粗嗓门儿，好像儿子宗伯这时也赶巧回来了。太郎骑在爷爷腿上，故意装出一本正经的神气，望着天花板，像是侧耳聆听大人说话。小脸蛋儿给外面的凉气吹得红扑扑的，小小的鼻翼，随着呼吸一翕一翕的。\n“我说呀，爷爷。”\n穿着土红色出门衣裳的太郎，忽然开口道。孩子在极力想什么，又要拼命忍住笑，小酒窝儿一会儿露出来，一会儿又没了。那神情引得马琴直笑。\n“每天要好好儿地。”\n“嗯，每天要好好儿地？”\n“用功啊！”\n马琴扑哧笑了出来。一边笑一边接过话儿问道：“还有呢？”\n“还有……嗯……还说不要发脾气。”\n“哦，哦，就这些吗？”\n“还有呢。”\n太郎说完，仰起梳着一绺髻的小脑袋，自己也笑了起来。他一笑，眼睛就眯成一条缝，露出白白的小牙，还有一对小酒窝儿。看他这小模样，怎么也想象不出，将来长大会变得像世人一样可怜。马琴虽然沉浸在天伦之乐当中，心里却又这么嘀咕着。不过，却更忍不住想要逗他。\n“还有什么？”\n“还有哇，还有好多好多呢。”\n“好多什么？”\n“嗯——爷爷呀，以后会变得更了不起，所以……”\n“变得更了不起，所以？”\n“所以说呀，您要好好儿忍耐。”\n“是在忍耐呀。”马琴不由得严肃起来，答道。\n“说是还得好好儿、好好儿忍耐。”\n“是谁这么说的？”\n“是……”太郎调皮地瞅了爷爷一眼，笑了起来，“谁呀？”\n“对了。你今儿个朝香去了。是听庙里老和尚说的吧？”\n“不对。”\n太郎马上摇摇头，从马琴腿上欠起半个身子，略微扬起下巴说：“是……”\n“谁？”\n“浅草寺的观音菩萨这么说的。”\n说着就快活地笑了起来，声音大得全家都听得见，大概怕给马琴逮住，赶紧跳到一旁。没费劲儿便让爷爷上了他的当，开心得直拍手，一溜烟朝起坐间逃去。\n可是也恰在这一刻，马琴心里闪过一个再严肃不过的念头。他嘴上微微笑着，好不幸福。不知不觉，眼里噙满了泪水。这笑言，是太郎自己想出来的，还是他娘教的？他不想问。这节骨眼儿上，能从孙子口中听到这样的话，马琴觉得不可思议。\n“是观音菩萨这么说的？用功吧！别发脾气！而且要好好儿忍耐！”\n六十开外的老艺术家，含泪笑着，孩子气地点了点头。\n十五 当天夜里。\n座灯上罩着圆纸罩，光线不大亮，马琴在灯下开始续写《八犬传》。他写作时，家人谁都不得进书房。屋子里静悄悄的，只有灯芯儿的吸油声和着蟋蟀的鸣叫，枉然絮叨着漫漫长夜的寂寥。\n刚下笔的时候，他的脑子里隐隐闪过一道光。等写过十几行，这光竟一点儿一点儿亮了起来。凭经验，马琴知道那是什么，便小心翼翼提笔往下写。灵感之来，与生火一个道理。不懂得笼火，即使着了一下，马上又会熄掉……\n“别急！尽量想得深一点儿！”\n马琴几次提醒自己，不能由着一支笔，像脱缰的野马似的。方才脑子里那点儿光亮，微末如星，现在竟势同潮水，奔流直下。而且势头越来越猛，不容分说地把他推向前去。\n不知什么时候，已不闻蟋蟀声。这会儿，圆座灯的光线虽不大亮，眼睛倒也不觉得吃力。提起笔来，气势如虹，纵横纸上。那提笔疾书的架势，像同神明较劲儿似的。\n脑子里的洪流，恰像横空的银河，不知从什么地方滚滚而来。来势之猛，让他害怕。万一体力不胜怎么办？他紧捏笔杆，一再对自己说：“只要有口气，就一直写下去。要写的东西，此刻不写，怕就永远写不出了。”\n那股洪流像道朦胧的光，速度丝毫没有减缓，奔腾飞跃，让他应接不暇，淹没一切，汹汹然直袭而来。他完全给击垮了，把一切都抛诸脑后，顺着那股洪流，纵笔挥洒，势同狂风骤雨。\n这时，他那有如帝王般威严的眼睛里，既不是利害得失，也非爱恨情仇，更看不到一丝一毫为毁誉所苦的心怀，而是充满不可思议的喜悦之情。或者说，那是一种感激之情，悲壮得让人神往。不懂得这种感激之情，怎么能咂摸到戏作三昧的甘美呢？又怎么能理解戏作家庄严的灵魂呢？这不正是“人生”吗？洗尽了一切残渣污秽之后，仿佛一块崭新的矿石，光辉夺目地呈现在作者面前……\n这时，起坐间里，阿百和阿路婆媳俩正对着灯，在做针线活儿。大概已经让太郎睡下了。身子瘦弱的宗伯，坐在一边，一直忙着搓药丸。\n“你爹还没睡吧？”\n阿百婆把针在油乎乎的头发上蹭了蹭，不大满意地嘟哝着。\n“准是只顾写书，什么都忘了。”\n媳妇阿路眼睛仍盯着针，低头答道。\n“真拿他没办法。又赚不了多少钱。”\n阿百婆说着，看了看儿子和媳妇。宗伯装作没听见，不言语。阿路也一声不响，继续飞针走线。不论这儿还是书房里，倒都听得见蟋蟀的啾唧，叫得秋意越发地浓了。\n大正六年（1917）十一月\n注释 戏作，系日本江户中期流行的一种俗文学，特指小说一类作品，分读本、黄表纸、洒落本、滑稽本、人情本等类。多反映市井小民的喜怒哀乐，世态人情。本篇主人公曲亭马琴（1767—1848），本名泷泽兴邦，系戏作代表作家，其主要作品有《椿说弓张月》《八犬传》等。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n式亭三马（1776—1822），戏作家之一，其代表作为《浮世澡堂》。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n明治维新前，日本男子梳发髻。下文的“本多髻”“大银杏髻”“由兵卫髻”等，均为不同类型的发髻。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n船虫及下面出现的小文吾、庄介等，均为《八犬传》中的人物。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n即山东京传（1761—1816），江户后期的戏作家，所著的“读本”“洒落本”自成一家。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n阿染与久松，实有其人，因双双情死，成为江户时代歌舞伎、木偶净琉璃脚本的题材。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n《松染情史秋七草》（1808），系马琴根据阿染和久松情死事件改编的小说。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n即十返舍一九（1765—1831），江户后期的戏作家，以《东海道徒步游记》等滑稽小说而知名。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n马琴的别号。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n此处芥川用的是英文“Philippics”一词的日文外来语，借雅典Demos⁃thenes抨击腓力王演说一事。喻指“小银杏髻”对马琴的批评。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n日本明治维新前，各地的封建诸侯称为“大名”。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n柳亭种彦（1783—1842），江户后期的戏作家。《伪紫田舍源氏》为其代表作。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n为永春水（1790—1843），江户后期的戏作小说家，以人情本小说《春色梅儿誉美》著称。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n坪为日本常用的土地或建筑面积单位，1坪约合3.3平方米。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n植于房屋或大门两侧的矮篱，谓之“袖篱”。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n华山渡边登（1793—1841），江户后期的学者、画家，并精通汉学、兰学。因著书谴责幕府闭关自守政策，被迫自杀。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n寒山、拾得，唐朝著名诗僧，隐居于天台山，相传是文殊菩萨与普贤菩萨的化身。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n王维，唐朝著名诗人、画家，字摩诘，号摩诘居士。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n出自王维诗《过乘如禅师萧居士嵩丘兰若》。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n典出《后汉书·朱浮传》：“往时辽东有豕，生子白头，异而献之。行至河东，见群豕皆白，怀惭而还。”以喻少见多怪，自以为高。\u0026#160;\u0026#x21a9;\u0026#xfe0e;\n","date":"2024-12-25T22:45:44+08:00","image":"https://blog.errant.top/post//gesakuzanmai/101027764_p0__hu_3b802615cc6d59d6.jpg","permalink":"https://blog.errant.top/post//gesakuzanmai/","title":"戏作三昧"},{"content":"网上教程大多繁杂，且干扰性强\n实际上看官方教程就这几步 [OpenWrt Wiki] NAT examples\nEnable IPv6 masquerading aka NAT66 on the WAN zone.\n1 2 3 uci set firewall.@zone[1].masq6=\u0026#34;1\u0026#34; uci commit firewall service firewall restart Announce IPv6 default route for the ULA prefix.\n1 2 3 uci set dhcp.lan.ra_default=\u0026#34;1\u0026#34; uci commit dhcp service odhcpd restart Disable IPv6 source filter on the upstream interface.\n1 2 3 uci set network.wan6.sourcefilter=\u0026#34;0\u0026#34; uci commit network service network restart ","date":"2024-09-11T17:31:27+08:00","image":"https://blog.errant.top/post/openwrt-ipv6-nat/OpenWrt_Logo.svg","permalink":"https://blog.errant.top/post//openwrt-ipv6-nat/","title":"OpenWRT IPv6 配置 NAT 实现上网"},{"content":"因为我的临场写作能力不太行，但是我总觉得有点写这篇文章的必要，所以这篇文章我是从 12 月份初就开始动笔来写了，平时有想法就当场动手写下来。\n我做了什么 拥抱 Linux 从去年 12 月末，我算是第一次成功在我的笔记本电脑上安装并运行带有正常网卡驱动的 Linux。由于笔记本硬件型号很新，此前我使用过的 Linux 发行版都不能很好地适配我的硬件。\n直到那天我在上海虹桥站等车，无所事事时，我在惠普论坛上看到有人发帖说，Arch Linux 能在与我相同型号的笔记本上正常工作，并且网卡没有异常。于是我在高铁上兴奋了一路，回到家中就直接开始折腾怎么安装了。\n由于此前折腾 Android 的经验，我对分区、引导这些概念已经有所了解，折腾了两天，总算是安装上了。后来我也几乎就定居在了 Arch Linux，告别了 Windows 那抽象的资源占用、异常的显示画面和一睡就醒不来的休眠。\n拥有自己的服务器和域名 出于自己对更多服务的需求，我在双 11 期间购买了一台 VPS，黑色星期五期间购买了一个域名，前前后后搭建了不少自用的服务，比如说 RSS 订阅服务器、Alist 等等。\n我看到了什么 最初的最初，我只是对折腾 Android 感兴趣，也没学过编程，但是以此为机缘，接触并了解了许多开源项目（Magisk, LSPosed, KernelSU），也认识了很多优秀的开发者（单向认识），其中给我影响最大的是 canyie。\n两年前，大概也是这个时候，我读了她写的年终小结，17 岁中专在读的她便能一人写出 pine 这样的项目，成为众多优秀开源项目的 Contributor，她的优秀给我留下了巨大的震撼。她让我意识到，成为一名优秀的开发者并不是遥不可及的。\n半年以后，我参加了高考，来了这所大学，又过了一年，分流进入计算机学院，即使做好了心理准备，等到自己亲眼见识了，我还是挺失望的，不是因为学院条件，而是因为其他因素。\n这里缺少与我兴趣相投的人，从技术爱好，到艺术品味，我发现我总是与周围的人格格不入，这种感觉在高中以来就有，但是那时还有学习这个共同话题可以缓解。而到了大学，这种感受就变得尤为明显。每一次你做了一件你认为很有成就感或者很有意思的事情时，抬头却发现无人能与你分享快乐，你笑着笑着，自己的心却凉了。我自己也有一部分原因，所以还有一部分失望，是对我自己的。我的情商并不是很高，并不擅长与别人沟通，除非对方讨论的话题正好是我了解或者感兴趣的。所以我和很多人只是能交谈，但是不能交心。\n但是这并不意味着我没有在学校里看到优秀的同学，恰恰相反，我认识了很多优秀的人，他们用行动刷新我那狭隘的认识，告诉我大学生涯是还可以这样过的，校训里的“自强不息”是这样做的。我们学院这样优秀的人并不少，他们或许是低调，也有可能只是在学院的评价指标眼里，他们的取得的优秀成果不如互联网+吧。\n过去的一年里，我还读过很多人的博客，透过博客，我看到的不仅仅是他们分享的技术，还有他们的思想与人格魅力。我至今也忘不了读完某人博客感慨良久的那个深夜。\n迷茫 但是别人的终究的是别人的，与我自己又有何关系？\n我也不是一个脱离低俗趣味的人，更不是一个所谓“纯粹”的人。我好像做不到像其他人找到一件自己发自内心喜欢的工作，就好像我以前做过的所有的事当中，哪怕有快乐的，那也是哭中作乐，因此我并没有发现自己存在的价值。所以我很羡慕那些有理想，更有意志，有规划，有能力去一步一步实现的人。在别人寻找答案的时候，我却还在思考我该用我的生命去回答什么问题。\n你说我活着是为了生存，那倒也不至于，但是我能说我活着是为了追求吗？我已经迷茫了18年，难道还要接着迷茫下去吗？\n高考结束以前，我过的是简单的线性人生，可光是这样简单的人生，最后的结果也是不尽人意。那高考结束后的人生呢？我意识到我已经不在是一位学生了，而是一个人，因此除了学业上的问题，我还得思考并解决我作为一个人的问题。但这些问题本来应该从小开始思考，因为在成为一名学生之前，我首先是一个人。我也依稀记得小时候自己也的确对这些问题作出过思考，但最后想不出，不了了之，然后问题被遗忘，最终被淹没在作业中。\n而这个问题持续到了现在，并且接下来的一年里，我还得接着去寻找问题的答案。这个问题拖得越久，由迷茫转换而来的焦虑就越严重，并且无法逃避，只能接受，某种程度上给我带来了不小的精神影响。\n不过迷茫也只是思想上的，这并不妨碍我学习并获取知识，但是自己终究会有一天要亲自面对这个问题，只有找到这个问题的答案，我才有动力去找到并实现我的人生，我才能认为我接下来走的每一步是自己想走的并且是自己能走的路，而不是盲目从众、被家人指点或者被社会逼迫走上的路。\n感想 学习 知识可以轻易获得，但是思想与经验需要时间的积淀。面对成体系的知识，除了系统的学习，还需要陈年累月的实践经验来提高自己对知识的理解掌握和应用能力。\n相比于大学教材的纷繁琐碎、杂乱无章，人民教育出版社的高中物理教材，我认为是我至今见过的所有国内教材中最优秀的，语言描述清晰，内容通俗易懂，甚至展现物理在人文方面的魅力，真的做到了引导学生培养物理思维。等到我高三回头翻阅这本书的时候，经常感叹编者的智慧，书中编者的很多经典的话，我至今也忘不了。我反对那些说学物理对以后工作没用帮助的观点，物理作为一门基础学科，除了满足高考筛选人才的需要，更多地其实是用来培养一个人的科学思维模式，教会一个人如何科学严谨地思考、推导并解决问题，而物理本身只是作为教学过程选用的载体罢了。到了大学，教材里就再也找不到那种亲切和善谦逊而又严谨的感觉了。\n比较可悲的是，当下的教育中并没有人强调这一点，大家似乎只是关心如何拿高分、如何让老师和家长满意、如何通过考试、如何去一个好大学、如何获得高绩点。他们在这样的学习过程中，丢失了原本学习的目的、学习的乐趣和学习的意义。现如今的大家似乎功利性都比较重，但是我觉得如果只是为了在社会上生存而盯着这些，是十分荒谬的一件事。人如果只是为了生存而存在于这个世界上，和其他动物有什么区别，那样活着有什么意思，等着当韭菜别被别人割吗？\n信息 我认为我们其实生活在一个信息相对越来越匮乏的时代。随着信息技术的爆炸式发展，世界上生产并存储下来的信息越来越多，看起来好像我们可获取的信息越来越多了，生活学习越来越方便了，但是事实并不是这样。\n由于信息垄断的存在，我们所能获得的有价值的信息占这个世界生产的中信息比例越来越小了。我们获取信息的确越来越多，但是不论是信息量还是信息质量，与那些被限制访问的信息相比，我们普通人能获取的信息都差得太多了。而这种信息差的存在拉开了人与人之间距离，影响的已经不仅仅是所谓的见识，更是思想。\n而信息量大还导致我们寻找到正确信息变得越来越困难，增加了寻找正确信息的难度和时间（说的就是你 CSDN）。此外由于信息整体质量的下滑，习惯网络娱乐文化的我们接受高质量信息的能力也开始下降，许多人现在甚至无法静下心来读一本书。\n信息爆炸并没有带来福音，更别提还有简中互联网这种东西的存在。\n生活 “人生不如一句波特莱尔。”芥川的这句话道尽了他在人间的万般感受。\n过去一年也算经历了一些事，但我不论抱着怎样的想法和感受，总会和这句话产生共鸣，就把这句话当作年终小结的标题好了。\n目标与愿望 新的一年最好还是给自己列几个目标，这里列一个 To-Do List 等到 2024 年终小结时过来结算\n小目标 读三本名著 不当夜猫子（可选） 按时起床 自我积淀，锻炼出扎实的计算机学科内功 大目标 养成用代码解决日常生活中问题的习惯 养成专注的习惯 结识更多的同好，如果能找到另一半就更好了 拥有能拿得出手的小开源项目（哪怕是个玩具也行啊，可选） 享受实现上述目标过程中的每一步 愿望 学习生活过得充实、快乐、优雅 成为一个更加完善的人 ","date":"2023-12-31T23:54:24+08:00","image":"https://blog.errant.top/post//2023-end-of-year-summary/after%20a%20bath-65204496-0_hu_b009563f7e139ac5.png","permalink":"https://blog.errant.top/post//2023-end-of-year-summary/","title":"人生不如一句波特莱尔 - 2023 年终小结"},{"content":" 在我阅读过的文学作品中，我尤其钟爱芥川的短篇小说，芥川的一篇小说往往禁得住数十次的阅读。而在《罗生门》的众多译本中，我尤其钟爱高慧勤老师的译本，读起来有股质朴之感。本文《竹林中》还是黑泽明导演的惊世伟作电影《罗生门》的原作，感兴趣的同学也可以去找电影看看。\n以下文段引自《罗生门》（高慧勤译）译者序：\n芥川舍弃了原作《今昔物语》中抽象的说教，能匠心独运，推陈出新，从中抉发古今人类天性中缺憾的一面，写成一篇寓意深刻的哲理短章。在表现这一类主题的作品中，如以内容的丰富、寓意的深刻、手法的别致、技巧的完美而论，当推《竹林中》一篇：\n竹林中发生一起凶杀案，有个年轻武士被杀，美貌的妻子遭到大盗的凌辱。可是大盗与妻子各执一词，都自供是凶手。而死者亡灵借灵媒之口却说是自杀身亡。那么究竟谁是凶手呢？小说没有结论。整篇作品由七人的口供组成，从各自的角度提供不同的说法，案情扑朔迷离，疑团重重，悬念始终未予解决。七段口供，以三个当事人的最为关键，其中必有人将真情隐去，补以谎话，或每人的话里都有真有假，真假参半。那么，何以要说谎呢？可见，每人心里都有不可告人的隐衷。\n作者的用意似乎想说明：人常要用谎言来文过饰非，真相常被歪曲隐没，以致事物真相不可认识。芥川在小说中，暗喻人心微妙，难以捉摸，表现一种怀疑主义情绪，他自称“一向是个怀疑派”。（《河童》十五）小说故意留下空白，耐人寻味。写的虽是一桩情杀案，却不是通俗的破案小说，而是通过这个没有结论的案子，引导读者去探求人性的弱点，深意自见。芥川在探讨人生、考察人性的过程中，发现了人世间的丑恶。“周围尽是丑恶。自己也丑恶……面对周围的丑恶，活着就是一种痛苦的事。”（一九一五年二月二十八日致恒藤恭）所以，他不能不感到失望。\n樵夫供词 是呀，发现那具尸体的，正是小的。今儿个早上，小的像往常一样，去后山砍柴，结果在山后的竹林里，看到那具尸体。老爷问在哪儿吗？那地方离山科大路约莫一里来地，是片竹子和小杉树的杂树林，很少有人迹。\n尸身穿一件浅蓝色绸子褂，头上戴了一顶城里人的细纱帽，仰天躺在地上。虽说只挨了一刀，可正好扎在心口，尸体旁的竹叶子全给染红了。不，血已经不流了。伤口好像也干了。而且有只大马蝇死死叮在上面，连我走近都不理会。\n没看见刀子什么的吗？没有，什么都没看见。就是旁边杉树根上，留下一条绳子。后来……对了，除了绳子，还有一把梳子。尸体旁边没别的，就这两样东西。不过，有一片地里，荒草和竹叶给踩得很乱，看样子那男子被杀之前，有过一场恶斗。\n怎么，没有马？——那地方，马压根儿进不去。能走马的路，在竹林外面哪。\n行脚僧供词 贫僧昨日确曾遇见死者。昨天……大约是晌午时分吧。地点是从关山快到山科的路上。他与一个骑马女子同去关山。女子竹笠上遮着面纱，所以贫僧不曾得见她的容貌。只看见那身紫色绸夹衫。马是桃花马……马鬃剃得光光的，不会记错。个头有多高吗？总有四尺多吧……贫僧乃出家之人，这些事情不甚了然。那男子……不，佩着刀，还带着弓箭。特别是黑漆箭筒里，插了二十多支箭，要说这点，贫僧至今还历历在目。\n做梦也想不到，那男子会有如此结局。真可谓人生如朝露，性命似电光。呜呼哀哉，贫僧实无话可说。\n捕快供词 大人问小人捉到的那家伙吗？他确确实实是臭名远扬的大盗多襄丸。小人去抓的时候，他正在粟田石桥上哼呀叫痛，大概是从马上摔下来的缘故。什么时辰吗？是昨晚初更时分。上次逮他的时候，穿的也是这件藏青褂子，佩着这把雕花大刀。不过，这一回，如大人所见，除了刀，还带着弓箭。是吗？被害人也带着刀箭……那么，行凶杀人的，必是多襄丸无疑。皮弓，黑漆箭筒，十七支鹰羽箭矢……这些想必都是被害人的。是的，正如大人所说，马是秃鬃桃花马。那畜生摔他下来，是他报应。马拖着长长的缰绳，在石桥前面不远的地方，啃着路旁的青草。\n这个叫多襄丸的家伙，在出没京畿一带的强盗中，最是好色之徒。去年秋天，鸟部寺宾头卢后山，有个像是去进香的妇人连同丫鬟一起被杀，据说就是这家伙犯的案。这回，这男的若又是他下的毒手，那骑桃花马的小女子，究竟给弄到什么地方去了，把她怎么样了，就不得而知了。也许小人多嘴，还望大人明察。\n老妪供词 是的，死者正是小女的丈夫。他并非京都人士。是若狭国府的武士，名叫金泽武弘，二十六岁。不，他性情温和，不可能惹祸招事的。\n小女吗？闺名真砂，年方十九。倒是刚强好胜，不亚于男子。除了武弘以外，没跟别的男人相好。小小的瓜子脸，肤色微黑，左眼角上有颗痣。\n武弘昨天是同小女一起动身去若狭的。没料到竟出了这样的事，真是造孽哟！女婿死了，认倒霉吧，可小女究竟怎样了？老身实在担心得很。恳求青天大老爷，不论好歹，务必找到小女的下落才好。说来说去，最可恨的便是那个叫什么多襄丸的狗强盗，不但杀了我女婿，连小女也……（余下之词，泣不成声）。\n多襄丸供词 杀那男的，是我；可女的，我没杀。那她去哪儿啦？——我怎么知道！且慢，大老爷。不管再怎么拷问，不知道的事也还是招不出来呀。再说，咱家既然落到这一步，好汉做事好汉当，决不隐瞒什么。\n我是昨天过午，遇见那小两口的。正巧一阵风吹过，掀起竹笠上的面纱，一眼瞟见那小娘儿们的姿容。可一眨眼——就再无缘得见了。八成是这个缘故吧，觉得她美得好似天仙，顿时打定主意，即使要开杀戒，除去她男人，老子也非把她弄到手不可。\n什么？杀个把人，压根儿不像你们想的，算不得一回事。反正得把女人抢到手，那男的就非杀不可。只不过我杀人用的是腰上的大刀，可你们杀人，不用刀，用权，用钱，有时甚至是几句假仁假义的话，就能要人的命。不错，杀人不见血，人也活得挺风光，可总归是凶手哟。要讲罪孽，到底谁个坏，是你们？还是我？鬼才知道！（挖苦地一笑）\n当然，只要能把那小娘儿们抢到手，不杀她男人也没什么。说老实话，按我当时的心思，只想把她弄到手，能不杀那男的，就尽量不杀。可是，在山科大道上，这种事，没法动手。于是，就想法子，把那小两口诱进山里。\n这倒不是什么难事。我跟他们一搭上伴，就瞎编了一套话，说对面山里有座古墓，掘出来一看，竟有许多古镜和宝刀，我不想让人知道，就偷偷埋在后山的竹林里。若是有人要，随便哪件，打算便宜出手。——不知不觉间，男的对我这套话渐渐动了心。这后来嘛——你说怎么着？人的贪心真叫可怕！不出半个时辰，小两口竟掉转马头，跟我上山了。\n到了竹林前，我推说，宝物就埋在里边，进去瞧瞧吧。男的财迷心窍，自然答应。可女的，连马也不肯下，说：我就在这儿等。那竹林子密密匝匝，也难怪她要说这话。老实说，这倒正中咱家下怀。于是便让那小娘儿们留下，我跟她男人一起钻进了林子。\n开头林子里尽是竹子，过去十多丈地，才是一片稀疏的杉树林。—要下手，那地方再合适不过了。我一面拨开竹丛，一面煞有介事地骗他说：宝物就埋在杉树下面。男的信以为真，就朝看得见杉树的地方拼命赶去。不大会儿工夫，便来到竹子稀疏，但有几棵杉树的地方。—说时迟那时快，我一下便把他撂倒在地。还真不愧是个佩刀的武士，力气像是蛮大的哩。可是不意着了我的道儿，他也没辙。我当即把他绑在一棵杉树根上。绳子吗？这正是干我们这行的法宝，说不准什么时候要翻墙越户，随时拴在腰上。当然啦，我用竹叶塞了他一嘴，叫他出不了声。这样，就不用怕什么了。\n对付过男的，回头去找那小娘儿们，谎报她男人好像得了急症，叫她快去看看。不用说，她也中了圈套。便摘下竹笠，由我拽着她的手，拉进竹林深处。到了那里，她一眼就看见了—丈夫给绑在杉树根上。霎时间，她从怀里掏出一把明晃晃的匕首来。老子从来没见过那么烈性的女人。当时要是一个不小心，没准肚子上就会挨一刀。虽说我闪开了身子，可她豁出命来，一阵乱刺，保不住哪儿得挂点彩。不过，老子是多襄丸，何须拔刀，结果还不是将她的匕首打落在地。一个女子再烈性，没了家伙，也就傻了眼了。我终于称心如意，用不着杀那男人，也能把他小媳妇儿弄到手。\n用不着杀她男人—不错，我本来就没打算杀。可是，当我撇下趴在地上嘤嘤啜泣的小娘儿们，正想从竹林里溜之大吉，不料她一把抓住我胳膊，发疯似的缠上身来。只听她断断续续嚷道：不是你强盗死，便是我丈夫亡，你们两个总得死一个。让两个男人看我出丑，比死还难受。接着，她又气喘吁吁地说：你们两个，谁活我就跟谁去。这时，我才对她男人萌生杀机。（阴郁的兴奋）\n听我这么说来，你们必定把我看得比你们还残忍。那是因为你们没看到她的脸庞，尤其没看到那一瞬间，她那对火烧火燎的眼珠子。我盯着她的眼看，心想，就是天打雷劈，也要娶她为妻。我心里只转着这个念头。我绝非你们大人先生所想的，什么无耻下流，淫邪色欲。如果当时仅止于色欲，而无一点向往，我早一脚踢开她，逃之夭夭了，我的刀也不会沾上她男人的血。可是，在幽暗的竹林里，我凝目望着她的脸庞，刹那间，主意已定：不杀她男人，誓不离开此地。\n不过，即便开杀戒，也不愿用卑鄙手段。我松开绑，叫他拿刀跟我一决生死（杉树脚下的绳子，就是那时随手一扔，忘在那里的）。他脸色惨白，拔出那把大刀。一声不吭，一腔怒火，猛地一刀朝我劈来。——决斗的结果，也不必再说了。到第二十三回合，我一刀刺穿他的胸膛。请注意——是第二十三回合！只有这一点，我对他至今还十分佩服。因为跟我交手，能打到二十回合的，普天之下也只他一人啊！\n男人一倒下，我提着鲜血淋漓的大刀，回头去找那小娘儿们。谁知，哪儿都没有。逃到什么地方去啦？我在杉树林里找来找去。地上的竹叶，连一点踪迹都没留下。侧耳听听，只听见她男人临终前在噎气。\n说不定我们打得难分难解之际，她早就溜出竹林搬救兵去了。为自己想，这可是性命攸关的事。当即捡起大刀和弓箭，又回到原来的山路。小娘儿们的马还在那里静静地吃草。后来的事，也就不必多说了。只是进京之前，那把刀，给我卖掉了。——我要招的，便是这些。横竖我脑袋总有一天会悬在狱门前示众的，尽管处我极刑好啦（态度昂然）！\n女人在清水寺忏悔 那个穿藏青褂子的汉子把我糟蹋够了，瞧着我那给捆在一旁的丈夫，又是讥讽又是嘲笑，我丈夫心里该多难受啊。不论他怎么挣扎，绳子却只有越勒越紧的份儿。我不由得连滚带爬，跑到丈夫身边去。不，我是想要跑过去。但是，那汉子却冷不防把我踢倒在地。就在那一刹那，我看见丈夫眼里，闪着无法形容的光芒。我不知该怎样形容好，至今一想起来，都禁不住要打战。他嘴里说不出话，可是他的心思，全在那一瞥的眼神里表达了出来。他那灼灼的目光，既不是愤怒，也不是悲哀——只有对我的轻蔑，真个是冰寒雪冷呀！挨那汉子一脚不算什么，可丈夫的目光，却叫我万万受不了。我不由得惨叫一声，昏了过去。\n过了一会儿，才恢复神志，穿藏青褂子的汉子已不知去向。只留下我丈夫还捆在杉树根上。我从洒满竹叶的地上抬起身子，凝目望着丈夫的面孔。他的眼神同方才一样，丝毫没有改变。依然是那么冰寒雪冷的，轻蔑之中又加上憎恶的神色。那时我的心呀，又羞愧，又悲哀，又气愤，简直不知怎么说才好。我晃晃悠悠地站了起来，走到丈夫跟前。\n“官人！事情已然如此，我是没法再跟你一起过了。狠狠心，还是死了干净。可是……可是你也得给我死掉！你亲眼看我出丑，我就不能让你再活下去。”\n我好不费劲才说出这番话来。但是我丈夫仍是不胜憎恶地瞪着我。我的心都快碎了。我克制住自己，去找他的刀。也许叫那强盗拿走了，竹林里不仅没大刀，连弓箭也找不见。幸好那把匕首还在我脚边。我挥动匕首，最后对他说：\n“那么，就把命交给我吧。为妻的随后就来陪你。”\n听了这话，我丈夫动了动嘴。嘴里塞满了落叶，当然听不见一点声音。可我一看，立即明白他的意思。他对我依然不胜轻蔑，只说了一句：杀吧！我丈夫穿的是浅蓝色的绸褂，我懵懵懂懂，朝他胸口猛一刀扎了下去。\n这时，我大概又晕了过去。等到回过气来，向四处望了望，丈夫还绑在那里，早已断了气。一缕夕阳，透过杉竹的隙缝，射在他惨白的脸上。我忍气吞声，松开尸身上的绳子。接下来——接下来，怎么样呢？我真没勇气说出口来。要死，我已没了那份勇气！我想过种种办法，拿匕首往脖子上抹，在山脚下投湖，试试都没死成。这么苟活人世，实在没脸见人。（惨然一笑。）我这不争气的女人，恐怕连大慈大悲的观音菩萨都不肯度化的。我这个杀夫的女人呀，我这个强盗糟蹋过的女人呀，究竟怎么办才好啊！我究竟，我……（突然痛哭不已）。\n亡灵借巫女之口所作供词强盗 将我妻子凌辱过后，坐在那里花言巧语，对她百般宽慰。我自然没法开口，身子还绑在杉树根上。可是，我一再向妻子以目示意：“千万别听他的，他说的全是谎话。”可她只管失神落魄，坐在落叶上望着膝头，一动也不动。那样子，分明对强盗的话，听得入了迷。我不禁妒火中烧。而强盗还在甜言蜜语，滔滔不绝：“你既失了身，和你丈夫，恐怕破镜就难圆了。与其跟他过那种日子，不如索性当我老婆，怎么样？咱家真正是爱煞你这俏冤家，才胆大包天，做出这种荒唐事儿。”——这狗强盗居然连这种话都不怕说出口。\n听强盗这样一说，我妻子抬起她那张神迷意荡的面孔！我从来没见过妻有这样美丽。然而，我这娇美的妻子当着我——她那给人五花大绑的丈夫的面，是怎样回答强盗的呢？尽管我现在已魂归幽冥，可是一想起她的答话，仍不禁怒火中烧。她确是这样说的：“好吧，随你带我去哪儿都成。”（沉默有顷）\n妻的罪孽何止于此。否则在这幽冥界，我也不至于这样痛苦了。她如梦如痴，让强盗拉着她手，正要走出竹林，猛一变脸，指着杉树下的我，说：“把他杀掉！有他活着，我就不能跟你。”她发狂似的连连喊着：“杀掉他！”这话好似一阵狂风，即便此刻也能将我一头刮进黑暗的深渊。这样可憎的话，有谁说得出？这样可诅咒的要求，又有谁听到过？哪怕就一次……（突然冷笑起来）连那个强盗听了，也不免大惊失色。妻拉住强盗的胳膊，一面喊着：“杀掉他！”强盗一声不响，望着她，没有说杀，也没有说不杀……就在这一念之间，他一脚将妻踢倒在落叶上。（又是一阵冷笑）抱着胳膊，镇静地望着我，说道：“这贱货，你打算怎么办？杀掉吗？还是放过她？回答呀，你只管点点头就行。杀掉？”—就凭这一句话，我已愿意饶恕强盗的罪孽。（又沉默良久）\n趁我还在游移之际，妻大叫一声，随即逃向竹林深处。强盗立刻追了过去，似乎连她衣袖都没抓着。我像做梦似的，望着这一情景。妻逃走后，强盗捡起大刀和弓箭，将我身上的绳子割了一刀。“这回该咱家溜之大吉了。”——记得他的身影隐没在竹林外时，这样自语。然后，四周是一片沉寂。不时有一阵呜咽之声。我一面松开绳子，一面侧耳谛听。原来呜呜咽咽的，竟是我自家呀。（第三次长久沉默）\n我疲惫不堪，好不容易才从杉树下站起身子。在我面前，妻掉下的那把匕首，正闪闪发亮。我捡起来，一刀刺进了胸膛，嘴里涌进一股血腥味，可是没有一丝儿痛苦。胸口渐渐发凉，四周也越发沉寂。啊，好静呀！山林的上空，连只小鸟都不肯飞来鸣啭。那杉竹的梢头，唯有一抹寂寂的夕阳。可是，夕阳也慢慢黯淡了下来。看不见杉，也看不见竹。我倒在地上，沉沉的静寂将我紧紧地包围。\n这时，有人蹑足悄悄走近我身旁，我想看看是谁。然而，周围已暝色四合。是谁……谁的一只我看不见的手，轻轻拔去我胸口上的匕首。同时，我嘴里又是一阵血潮喷涌。从此，我永远沉沦在黑暗幽冥之中……\n大正十年（1921）十二月\n","date":"2023-08-18T22:44:41+08:00","image":"https://blog.errant.top/post//in-a-grove/Rashomon_hu_3468c8ca07c2d22e.png","permalink":"https://blog.errant.top/post//in-a-grove/","title":"竹林中"},{"content":"本文为 Hugo 官方文档中 configuration 部分的翻译，翻译时间为 2023/8/4，此时 Hugo 最新的 Release 版本为 v0.116.1，请注意文档的时效性。\n关于配置文件 Hugo 使用 hugo.toml, hugo.yaml，或者是 hugo.json（如果在根目录下被发现的话）作为默认的站点配置文件。\n用户可以选择使用命令行选项--config用一个或多个站点配置文件覆盖该默认值。\n例如：\n1 2 hugo --config debugconfig.toml hugo --config a.toml,b.toml,c.toml 多个站点配置文件可以作为逗号分隔的字符串指定给 --config 选项。\nhugo.toml vs config.toml 在 Hugo 0.110.0 版本中，我们将默认的配置基本文件名更改为hugo，例如hugo.toml。我们仍然会查找config.toml等文件，但我们建议您最终将其重命名（但如果您想支持旧版本的 Hugo，则需要等待）。我们这样做的主要原因是让代码编辑器和构建工具更容易识别它作为 Hugo 配置文件和项目的标识。\n配置目录 除了使用单个站点配置文件外，您还可以使用configDir目录（默认为config/）来更轻松地组织和管理环境特定的设置。\n每个文件代表一个配置的根对象，例如params.toml用于[Params]，menu(s).toml用于[Menu]，languages.toml用于[Languages]等等\u0026hellip;\n每个文件的内容必须是顶级的，例如：\nhugo.yaml:\n1 2 Params: foo: bar params.yaml:\n1 foo: bar 每个目录保存了一组文件，其中包含特定于某个环境的设置。\n文件可以进行本地化，以便成为特定语言的配置文件。\n1 2 3 4 5 6 7 8 9 10 11 12 13 ├── config │ ├── _default │ │ ├── hugo.toml │ │ ├── languages.toml │ │ ├── menus.en.toml │ │ ├── menus.zh.toml │ │ └── params.toml │ ├── production │ │ ├── hugo.toml │ │ └── params.toml │ └── staging │ ├── hugo.toml │ └── params.toml 考虑上面的结构，在运行hugo --environment staging命令时，Hugo 会使用config/_default目录下的所有设置，并将staging目录的设置合并在其之上。\n我们通过一个例子来更好地理解。假设您正在为您的网站使用 Google Analytics。这需要在hugo.toml文件中指定googleAnalytics = \u0026quot;G-XXXXXXXX\u0026quot;。现在考虑以下情况：\n您不希望在开发环境，即localhost中加载 Analytics 代码。 您想要为生产和演示环境使用不同的 Google Analytics ID，例如： 生产环境使用G-PPPPPPPP 演示环境使用G-SSSSSSSS 根据上述情况，您需要配置您的hugo.toml文件如下：\n在_default/hugo.toml中，您根本不需要提及googleAnalytics参数。这确保在开发服务器上运行hugo server时不会加载任何 Google Analytics 代码。这有效是因为，默认情况下，当您运行hugo server时，Hugo 会将Environment=development，这将使用_default文件夹中的配置文件。\n在production/hugo.toml中，您只需要一行：\ngoogleAnalytics = \u0026quot;G-PPPPPPPP\u0026quot;\n您无需在此配置文件中再次提及所有其他参数，如title、baseURL、theme等等。您只需要提及与生产环境不同或新的参数。这是因为 Hugo 将把这个配置与_default/hugo.toml进行合并。现在，当您运行hugo（构建命令）时，默认情况下 Hugo 会将Environment=production，因此生产网站中将包含G-PPPPPPPP的 Analytics 代码。\n类似地，在staging/hugo.toml中，您只需要一行：\ngoogleAnalytics = \u0026quot;G-SSSSSSSS\u0026quot;\n现在您需要告诉 Hugo 您正在使用演示环境。因此，您的构建命令应为hugo --environment staging，这将在您的演示网站中加载G-SSSSSSSS的Analytics代码。\n当使用hugo server时，默认环境为development，当使用hugo命令时，默认环境为production。\n合并主题配置 _merge配置项可以有以下值：\nnone\n不进行合并。\nshallow\n只添加新键的值。\ndeep\n添加新键的值，并合并现有的值。\n请注意，您不需要像下面的默认设置那样冗长；如果未设置，较高层级的_merge值将被继承。\nhugo.yaml：\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 build: _merge: none caches: _merge: none cascade: _merge: none frontmatter: _merge: none imaging: _merge: none languages: _merge: none en: _merge: none menus: _merge: shallow params: _merge: deep markup: _merge: none mediatypes: _merge: shallow menus: _merge: shallow minify: _merge: none module: _merge: none outputformats: _merge: shallow params: _merge: deep permalinks: _merge: none privacy: _merge: none related: _merge: none security: _merge: none sitemap: _merge: none taxonomies: _merge: none 所有的配置项设置 以下是Hugo定义的变量的完整列表。用户可以选择覆盖其站点配置文件中的这些值。\narchetypeDir 默认值： \u0026ldquo;archetypes\u0026rdquo;\nHugo 查找原型文件（内容模板）的目录。还可以参考模块挂载配置，以另一种方式配置这个目录（从 Hugo 0.56 版本开始）。\nassetDir 默认值： \u0026ldquo;assets\u0026rdquo;\nHugo 查找用于Hugo Pipes 的资源文件的目录。还可以参考模块挂载配置，以另一种方式配置这个目录（从 Hugo 0.56 版本开始）。\nbaseURL 您发布的站点的绝对 URL（包括协议、主机、路径和斜杠），例如 https://www.example.org/docs/。\nbuild 参见配置构建。\nbuildDrafts (false) 默认值： false\n构建时是否包含草稿。\nbuildExpired 默认值： false\n是否包含已过期的内容。\nbuildFuture 默认值： false\n是否包含发布日期在未来的内容。\ncaches 参见配置文件缓存。\ncascade 将默认配置值（前置元数据）传递给内容树中的页面。站点配置中的选项与页面前置元数据中的选项相同，请参阅前置元数据级联。\ncanonifyURLs 默认值： false\n启用后，将相对 URL 转换为绝对 URL。\ncleanDestinationDir 默认值： false\n构建时，删除目标中在静态目录中找不到的文件。\ncontentDir 默认值： \u0026ldquo;content\u0026rdquo;\nHugo 读取内容文件的目录。还可以参考模块挂载配置，以另一种方式配置这个目录（从 Hugo 0.56 版本开始）。\ncopyright 默认值： \u0026quot;\u0026quot;\n版权声明，通常显示在网站的页脚。\ndataDir 默认值： \u0026ldquo;data\u0026rdquo;\nHugo 读取数据文件的目录。还可以参考模块挂载配置，以另一种方式配置这个目录（从 Hugo 0.56 版本开始）。\ndefaultContentLanguage 默认值： \u0026ldquo;en\u0026rdquo;\n没有语言标识的内容将默认使用此语言。\ndefaultContentLanguageInSubdir 默认值： false\n在子目录中呈现默认内容语言，例如 content/en/。网站根目录 / 将重定向到 /en/。\ndisableAliases 默认值： false\n禁用别名重定向的生成。请注意，即使设置了 disableAliases，别名本身仍将保留在页面中。使用此选项可以在 .htaccess、Netlify 的 _redirects 文件或类似的情况下生成 301 重定向。\ndisableHugoGeneratorInject 默认值： false\nHugo 默认情况下会在首页的 HTML 头部插入生成器元标签。您可以关闭它，但我们真的希望您不要这样做，因为这是观察 Hugo 的受欢迎程度的好方法。\ndisableKinds 默认值： []\n启用对指定的 Kinds 的所有页面进行禁用。允许在此列表中使用的值有：\u0026ldquo;page\u0026rdquo;、\u0026ldquo;home\u0026rdquo;、\u0026ldquo;section\u0026rdquo;、\u0026ldquo;taxonomy\u0026rdquo;、\u0026ldquo;term\u0026rdquo;、\u0026ldquo;RSS\u0026rdquo;、\u0026ldquo;sitemap\u0026rdquo;、\u0026ldquo;robotsTXT\u0026rdquo;、\u0026ldquo;404\u0026rdquo;。\ndisableLiveReload 默认值： false\n禁用浏览器窗口的自动实时重新加载。\ndisablePathToLower 默认值： false\n不要将 URL/路径转换为小写。\nenableEmoji 默认值： false\n为页面内容启用 Emoji 表情符号支持；参见Emoji 表情符号秘笈。\nenableGitInfo 默认值： false\n为每个页面启用 .GitInfo 对象（如果 Hugo 站点已通过 Git 进行版本控制）。这将使用内容文件的最后一次 git 提交日期更新每个页面的 Lastmod 参数。\nenableInlineShortcodes 默认值： false\n启用行内短代码支持。参见行内短代码。\nenableMissingTranslationPlaceholders 默认值： false\n如果翻译缺失，显示一个占位符，而不是默认值或空字符串。\nenableRobotsTXT 默认值： false\n启用 robots.txt 文件的生成。\nfrontmatter 参见前置元数据配置。\ngoogleAnalytics 默认值： \u0026quot;\u0026quot;\nGoogle Analytics 跟踪 ID。\nhasCJKLanguage 默认值： false\n如果为 true，则自动检测内容中的中文/日文/韩文语言。这将使 .Summary 和 .WordCount 对于 CJK 语言正确地工作。\nimaging 参见图像处理配置。\nlanguageCode 默认值： \u0026quot;\u0026quot;\n由RFC 5646 定义的语言标签。此值用于填充：\n内部RSS 模板 中的 \u0026lt;language\u0026gt; 元素。 内部别名模板 中 \u0026lt;html\u0026gt; 元素的 lang 属性。 languages 参见配置语言。\ndisableLanguages 参见禁用语言。\nmarkup 参见配置标记。\nmediaTypes 参见配置媒体类型。\nmenus 参见菜单。\nminify 参见配置压缩。\nmodule 模块配置参见模块配置。\nnewContentEditor 默认值： \u0026quot;\u0026quot;\n创建新内容时使用的编辑器。\nnoChmod 默认值： false\n不同步文件的权限模式。\nnoTimes 默认值： false\n不同步文件的修改时间。\noutputFormats 参见配置输出格式。\npaginate 默认值： 10\n默认的分页每页元素数目，参见分页。\npaginatePath 默认值： \u0026ldquo;page\u0026rdquo;\n用于分页的路径元素（https://example.com/page/2）。\npermalinks 参见内容管理。\npluralizeListTitles 默认值： true\n在列表中使用复数形式的标题。\npublishDir 默认值： \u0026ldquo;public\u0026rdquo;\nHugo 将写入最终静态站点的目录（包含 HTML 文件等）。\nrelated 参见相关内容。\nrelativeURLs 默认值： false\n启用后，所有相对 URL 将相对于内容根目录。请注意，这不影响绝对 URL。\nrefLinksErrorLevel 默认值： \u0026ldquo;ERROR\u0026rdquo;\n使用 ref 或 relref 解析页面链接时，如果无法解析链接，将使用此日志级别记录。有效值为 ERROR（默认值）或 WARNING。任何 ERROR 都会导致构建失败（exit -1）。\nrefLinksNotFoundURL 用于在 ref 或 relref 中找不到页面引用时使用的占位符 URL。使用原样。\nremovePathAccents 默认值： false\n从内容路径中的组合字符中删除非间隔标记。\n1 content/post/hügó.md --\u0026gt; https://example.org/post/hugo/ rssLimit 默认值： -1（无限制）\nRSS 订阅中的最大项数。\nsectionPagesMenu 参见菜单。\nsecurity 参见安全策略。\nsitemap 默认的站点地图配置。\nsummaryLength 默认值： 70\n.Summary 中显示的文本长度（按照单词计算），用于自动摘要拆分。\ntaxonomies 参见配置分类法。\ntheme 参见模块配置 如何导入主题。\nthemesDir 默认值： \u0026ldquo;themes\u0026rdquo;\nHugo 从中读取主题的目录。\ntimeout 默认值： \u0026ldquo;30s\u0026rdquo;\n生成页面内容的超时时间，以持续时间 或秒为单位指定。注意： 这用于递归内容生成的退出。如果您的页面生成缓慢（例如因为它们需要大型图像处理或依赖于远程内容），则可能需要增加此限制。\ntimeZone 时区（或地理位置），例如 Europe/Oslo，用于解析没有此类信息的前置元数据日期和time函数。有效值列表可能与系统相关，但应包括 UTC、Local 和IANA 时区数据库 中的任何位置。\ntitle 站点标题。\ntitleCaseStyle 默认值： \u0026ldquo;ap\u0026rdquo;\n参见配置标题大小写。\nuglyURLs 默认值： false\n启用后，URL 将采用 /filename.html 的形式，而不是 /filename/。\nwatch 默认值： false\n监视文件系统的更改，并根据需要重新创建。\n如果您在 *nix 系统上开发您的网站，则以下命令行快捷方式很有用，可以找到配置选项：\n1 2 cd ~/sites/yourhugosite hugo config | grep emoji 输出示例：\n1 enableemoji: true 配置构建 build 配置部分包含全局构建相关的配置选项。\nhugo.yaml:\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 build: buildStats: disableClasses: false disableIDs: false disableTags: false enable: false cachebusters: - source: assets/.*\\.(js|ts|jsx|tsx) target: (js|scripts|javascript) - source: assets/.*\\.(css|sass|scss)$ target: (css|styles|scss|sass) - source: (postcss|tailwind)\\.config\\.js target: (css|styles|scss|sass) - source: assets/.*\\.(.*)$ target: $1 noJSConfigInAssets: false useResourceCacheWhen: fallback buildStats 自v0.115.1新增\n当启用时，在项目根目录下创建一个 hugo_stats.json 文件。该文件包含发布站点中每个HTML元素的 class 属性、id 属性和标签的数组。在从您的站点中删除未使用的CSS时，可以使用此文件作为数据源。这个过程也称为剪枝（pruning）、清理（purging）或摇树（tree shaking）。\n通过 disableClasses、disableIDs 和 disableTags 键从 hugo_stats.json 中排除 class 属性、id 属性或标签。\n在v0.115.0及更早版本中，通过将 writeStats 设置为 true 来启用此功能。虽然仍然可用，但 writeStats 键将在将来的版本中被弃用。\n由于CSS清理通常仅限于生产构建，因此将 buildStats 对象放在 config/production 之后。\n为了提高速度，解析发布站点时可能会出现“误报”（例如，不是HTML元素的HTML元素）。这些“误报”很少且无关紧要。\n由于部分服务器构建的性质，新的HTML实体在服务器运行时添加，但旧值在您重新启动服务器或运行常规 hugo 构建之前不会被删除。\ncachebusters 参见配置缓存破坏\nnoJSConfigInAssets 关闭将 jsconfig.json 写入 /assets 文件夹的功能，并映射从运行的 js.Build 导入的内容。此文件旨在帮助代码编辑器（如VS Code）中的智能感知/导航。请注意，如果您不使用 js.Build，则不会写入任何文件。\nuseResourceCacheWhen 何时使用 /resources/_gen 中缓存的资源进行 PostCSS 和 ToCSS。有效值为 never、always 和 fallback。最后一个值意味着如果 PostCSS/扩展版本不可用，则尝试使用缓存。\n配置缓存破坏 自 v0.112.0 版新增\n添加了 build.cachebusters 配置选项，以支持使用 Tailwind 3.x 的 JIT 编译器进行开发，其中 build 配置可能如下所示：\nhugo.yaml:\n1 2 3 4 5 6 7 8 9 10 11 12 build: buildStats: enable: true cachebusters: - source: assets/watching/hugo_stats\\.json target: styles\\.css - source: (postcss|tailwind)\\.config\\.js target: css - source: assets/.*\\.(js|ts|jsx|tsx) target: js - source: assets/.*\\.(.*)$ target: $1 上面的示例中的一些关键点是 writeStats = true，它会在每次构建时将一个 hugo_stats.json 文件与渲染输出中使用的 HTML 类等写入。对此文件的更改将触发 styles.css 文件的重建。您还需要将 hugo_stats.json 添加到 Hugo 的服务器监视器中。有关运行示例，请参见 Hugo Starter Tailwind Basic。\nsource 一个匹配与 Hugo 中的一个虚拟组件目录（通常是 assets/...）相关联的文件的正则表达式。\ntarget 一个匹配资源缓存中应在 source 更改时过期的键的正则表达式。您可以在表达式中使用来自 source 的匹配正则表达式组，例如 $1。\n配置服务器 这仅在运行 hugo server 时相关，它允许在开发过程中设置 HTTP 标头，以便您可以测试内容安全策略等。配置格式与 Netlify 相匹配，但带有稍微更强大的 Glob 匹配：\nhugo.yaml:\n1 2 3 4 5 6 7 8 9 server: headers: - for: /** values: Content-Security-Policy: script-src localhost:1313 Referrer-Policy: strict-origin-when-cross-origin X-Content-Type-Options: nosniff X-Frame-Options: DENY X-XSS-Protection: 1; mode=block 由于这仅适用于“开发”，因此将其放在 development 环境下可能是有意义的：\nconfig/development/server.yaml:\n1 2 3 4 5 6 7 8 headers: - for: /** values: Content-Security-Policy: script-src localhost:1313 Referrer-Policy: strict-origin-when-cross-origin X-Content-Type-Options: nosniff X-Frame-Options: DENY X-XSS-Protection: 1; mode=block 您还可以为服务器指定简单的重定向规则。语法与 Netlify 类似。\n请注意，status 为 200 的情况会触发 URL 重写，这在 SPA（单页面应用程序）情况下是您想要的，例如：\nconfig/development/server.yaml:\n1 2 3 4 5 redirects: - force: false from: /myspa/** status: 200 to: /myspa/ 将 force=true 设置为 true 将使重定向即使路径中存在现有内容也会生效。请注意，在 Hugo 0.76 之前，force 是默认行为，但与 Netlify 的做法保持一致。\n404 服务器错误页面 自 v0.103.0 版新增\n默认情况下，当运行 hugo server 时，Hugo 将使用 404.html 模板渲染所有 404 错误。请注意，如果您已经将一个或多个重定向添加到服务器配置，您需要显式添加 404 重定向，例如：\nconfig/development/server.yaml:\n1 2 3 4 redirects: - from: /** status: 404 to: /404.html 配置标题大小写 将 titleCaseStyle 设置为指定 title 模板函数和 Hugo 中自动生成的章节标题使用的标题样式。\n可以是以下之一：\nap（默认），美联社 (AP) 样式指南中的大写规则。 chicago，芝加哥手册中的规则。 go，Go 语言中的每个单词都大写。 firstupper，将第一个单词的首字母大写。 none，不使用大写。 配置环境变量 HUGO_NUMWORKERMULTIPLIER 可以设置此变量以增加或减少在 Hugo 中并行处理中使用的工作程序数量。如果未设置，将使用逻辑 CPU 的数量。\n配置查找顺序 类似于模板的查找顺序，Hugo 在网站源代码目录的根目录中有一组默认规则来搜索配置文件作为默认行为：\n./hugo.toml ./hugo.yaml ./hugo.json 在配置文件中，您可以指示 Hugo 如何渲染您的网站，控制网站的菜单，并任意定义特定于项目的全局参数。\n示例配置 以下是配置文件的典型示例。嵌套在 params: 下的值将填充 .Site.Params 变量，供模板使用：\nhugo.yaml:\n1 2 3 4 5 6 7 8 9 10 11 12 baseURL: https://yoursite.example.com/ params: AuthorName: Jon Doe GitHubUser: spf13 ListOfFoo: - foo1 - foo2 SidebarRecentLimit: 5 Subtitle: Hugo is Absurdly Fast! permalinks: posts: /:year/:month/:title/ title: My Hugo Site 使用环境变量进行配置 除了上述3个配置选项外，还可以通过操作系统环境变量定义配置键值对。\n例如，以下命令将在类 Unix 系统上有效地设置网站的标题：\n1 $ env HUGO_TITLE=\u0026#34;Some Title\u0026#34; hugo 如果您使用类似 Netlify 的服务部署站点，这非常有用。可以查看 Hugo 文档的 Netlify 配置文件 获取示例。\n名称必须以 HUGO_ 为前缀，并且在设置操作系统环境变量时，配置键必须使用大写。\n要设置配置参数，请将名称以 HUGO_PARAMS_ 为前缀\n如果使用的是蛇形命名法的变量名，则上述方法将不起作用。Hugo通过 HUGO 后的第一个字符来确定分隔符的使用方式。这允许您使用任何允许的分隔符在环境变量中定义变量，例如 HUGOxPARAMSxAPI_KEY=abcdefgh。\nIgnore content and data files when rendering Note: This works, but we recommend you use the newer and more powerful includeFiles and excludeFiles mount options.\nTo exclude specific files from the content, data, and i18n directories when rendering your site, set ignoreFiles to one or more regular expressions to match against the absolute file path.\nTo ignore files ending with .foo or .boo:\nhugo.yaml:\n1 2 3 ignoreFiles: - \\.foo$ - \\.boo$ To ignore a file using the absolute file path:\nhugo.yaml:\n1 2 ignoreFiles: - ^/home/user/project/content/test\\.md$ 配置前置元数据 配置日期 日期在 Hugo 中非常重要，您可以通过向 hugo.toml 添加 frontmatter 部分来配置 Hugo 如何为您的内容页面分配日期。\n默认配置如下：\nhugo.yaml:\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 frontmatter: date: - date - publishDate - lastmod expiryDate: - expiryDate lastmod: - :git - lastmod - date - publishDate publishDate: - publishDate - date 例如，如果您的某些内容中有非标准的日期参数，您可以覆盖 date 的设置：\nhugo.yaml:\n1 2 3 4 frontmatter: date: - myDate - :default 其中 :default 是默认设置的快捷方式。上述配置将将 .Date 设置为 myDate 中的日期值（如果存在），如果不存在，则会查找 date、publishDate、lastmod，并选择第一个有效日期。\n在右侧的列表中，以“:”开头的值是具有特殊含义的日期处理程序（见下文）。其他值只是您前置元数据配置中的日期参数的名称（不区分大小写）。还请注意，Hugo 对上述内容有一些内置别名：lastmod =\u0026gt; modified，publishDate =\u0026gt; pubdate，published 和 expiryDate =\u0026gt; unpublishdate。例如，使用 pubDate 作为前置元数据中的日期，在默认情况下，将分配给 .PublishDate。\n特殊的日期处理程序有：\n:fileModTime\n从内容文件的最后修改时间戳中提取日期。\n例如：\nhugo.yaml:\n1 2 3 4 5 frontmatter: lastmod: - lastmod - :fileModTime - :default 上面的配置首先尝试从 lastmod 前置元数据参数中提取 .Lastmod 的值，然后从内容文件的修改时间戳中提取日期。最后，:default 在这里可能不需要，但 Hugo 最终将在 :git、date 和 publishDate 中查找有效日期。\n:filename\n从内容文件的文件名中提取日期。例如，2018-02-22-mypage.md 将提取日期 2018-02-22。另外，如果未设置 slug，将使用 mypage 作为 .Slug 的值。\n例如：\nhugo.yaml:\n1 2 3 4 frontmatter: date: - :filename - :default 上面的配置首先尝试从文件名中提取 .Date 的值，然后将查找前置元数据参数 date、publishDate 和最后是 lastmod。\n:git\n这是该内容文件的最后一次修订的 Git 作者日期。只有在设置了 --enableGitInfo 或在站点配置中设置 enableGitInfo = true 时才会设置这个值。\n配置额外的输出格式 Hugo v0.20 引入了将内容渲染为多种输出格式（例如 JSON、AMP html 或 CSV）的能力。有关如何将这些值添加到 Hugo 项目的配置文件的信息，请参阅输出格式。\n配置压缩 默认配置如下：\nhugo.yaml:\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 minify: disableCSS: false disableHTML: false disableJS: false disableJSON: false disableSVG: false disableXML: false minifyOutput: false tdewolff: css: keepCSS2: true precision: 0 html: keepComments: false keepConditionalComments: true keepDefaultAttrVals: true keepDocumentTags: true keepEndTags: true keepQuotes: false keepWhitespace: false js: keepVarNames: false precision: 0 version: 2022 json: keepNumbers: false precision: 0 svg: keepComments: false precision: 0 xml: keepWhitespace: false 配置文件缓存 自 Hugo 0.52 版本开始，您可以配置更多内容，而不仅仅是 cacheDir。以下是默认配置：\nhugo.yaml:\n1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 caches: assets: dir: :resourceDir/_gen maxAge: -1 getcsv: dir: :cacheDir/:project maxAge: -1 getjson: dir: :cacheDir/:project maxAge: -1 getresource: dir: :cacheDir/:project maxAge: -1 images: dir: :resourceDir/_gen maxAge: -1 modules: dir: :cacheDir/modules maxAge: -1 您可以在自己的 hugo.yaml 中覆盖任何这些缓存设置。\n关键词解释 :cacheDir\n请参阅配置 cacheDir。\n:project\n当前 Hugo 项目的基本目录名称。这意味着，默认情况下，每个项目都有单独的文件缓存，这意味着当您运行 hugo --gc 时，不会触及其他运行在同一台计算机上的 Hugo 项目相关的文件。\n:resourceDir\n这是 resourceDir 配置选项的值。\nmaxAge\n这是在缓存条目被驱逐之前的持续时间，-1 表示永久保存，0 有效地关闭了特定的缓存。使用 Go 的 time.Duration，所以有效的值是 \u0026quot;10s\u0026quot;（10 秒），\u0026quot;10m\u0026quot;（10 分钟）和 \u0026quot;10h\u0026quot;（10 小时）。\ndir\n缓存文件将存储在其中的绝对路径。允许的起始占位符是 :cacheDir 和 :resourceDir（参见上文）。\n配置格式规范 TOML 规范 YAML 规范 JSON 规范 配置 cacheDir 这是 Hugo 默认存储文件缓存的目录。详见 配置文件缓存。\n可以使用 cacheDir 配置选项或通过操作系统环境变量 HUGO_CACHEDIR 来设置它。\n如果未设置该选项，Hugo 将按以下优先顺序使用：\n如果在 Netlify 上运行：/opt/build/cache/hugo_cache/。这意味着如果您在 Netlify 上运行构建，所有配置为 :cacheDir 的缓存将在下次构建时保存和恢复。对于其他 CI 供应商，请阅读其文档。有关 CircleCI 的示例，请参见 此配置。 在操作系统用户缓存目录下的 hugo_cache 目录，由 Go 的 os.UserCacheDir 定义。在 Unix 系统上，这是 $XDG_CACHE_HOME，由 basedir-spec-latest 指定，如果非空，则为 $HOME/.cache。在 macOS 上，这是 $HOME/Library/Caches。在 Windows 上，这是 %LocalAppData%。在 Plan 9 上，这是 $home/lib/cache。Hugo v0.116.0 中新增 在操作系统临时目录下的 hugo_cache_$USER 目录。 如果想知道当前的 cacheDir 值，可以运行 hugo config，例如：hugo config | grep cachedir。\n另请参阅 数据模板 Front matter（前置元数据） 配置标记 在 GitLab Pages 上托管 Hugo 和《通用数据保护条例》 ","date":"2023-08-04T21:11:59+08:00","image":"https://blog.errant.top/post/configure-your-hugo/hugo-original-wordmark.svg","permalink":"https://blog.errant.top/post//configure-your-hugo/","title":"配置你的 Hugo"}]