Aug 24, 2009
(Visual Studio 2008) fatal error LNK1104: cannot open file 'P-A-T-H\Visual.obj'
VS is choking on a space in the path. When you add your lib to the linker options, make sure you put the full path and file name in quotes.
-----------
this solution is from: MSDN Visual C++ forum
May 27, 2009
Remove "Computer", "Home", "Trash" icons from Debian 5 desktop, gnome
Go to "apps->nautilus->desktop", uncheck the "computer_icon_visible", "home_icon_visible", "trash_icon_visible" checkboxes.
That's it.
May 9, 2009
debian中fcitx在en_US locale下自动启动
不过有个问题挺让人苦恼的。系统默认locale是中文-中国的时候,scim会随着我登录系统而自动启动;而我用en_US的locale登录的时候,scim就不会自动出来。这是个问题,因为我习惯英文的系统,而又要用到中文输入法!
原本在fcitx官网看到最新版本是3.6,可是下载下来compile时用“./configure”总是出来个“no such file or directory”,搞不懂怎么回事,我也就不麻烦了,直接在新力得装了个早一点的版本,3.4.
不过,fcitx还是有和scim同样的问题,在en_US下它不会自动启动。转了一圈我又回到了起点了呵呵。不过,这次运气比较不错,在这篇博文找到了解决方案。
首先在/etc/X11/xinit/xinput.d/下新建一个文件en_US,内容如下:
XMODIFIERS="@im=fcitx"
XIM=fcitx
XIM_PROGRAM=/usr/bin/fcitx
XIM_ARGS=""
GTK_IM_MODULE=XIM
QT_IM_MODULE=XIM
DEPENDS="fcitx"
然后编辑/usr/lib/gtk-2.0/2.10.0/immodule-files.d/libgtk2.0-0.immodules文件,找到"xim" "X Input Method" "gtk20" "/usr/share/locale" "ko:ja:th:zh",将之改成"xim" "X Input Method" "gtk20" "/usr/share/locale" "en:ko:ja:th:zh"。
通过上面两步,成了。现在locale是en_US情况下fcitx照样可以自动启动。下面是screenshot.
May 8, 2009
Western Digital Essential Edition 1 TB External Hard Drive in Debian 5.0
The "My Book" name did show at the left tree panel of the file browser. But when I clicked on it, a dialog window prompted up showing that the mounting failed because of invalid parameter.
The external drive's lights were on. But as they were not blinking, I knew that Debian was not reading the external disk. Whatever, I was not sure about the reason of the failure. At first I thought maybe debian didn't support external usb disk as large as 1 TB. Then I searched on line, but got little userful information. Thinking the guide came with the disk may help a little, I took out the disk's package box. To my surprise, I found "Compatibility: Windows Vista/XP/2000; Mac OS X 10.3+" on the box. Debian was not supported, and I never noticed this before!
However, there is always hope. When I just was hesitating whether to switch back to Windows or not, I found this post "Mounting an NTFS drive in Debian". Following the instruction I installed two packages libfuse2 and ntfs-3g with the following commands executed in the terminal.
apt-get install libfuse2
apt-get install ntfs-3g
Guess what, it worked. Now "My Book" was mounted successfully. After all, the problem lied on the two packages.
May 5, 2009
《南京!南京!》—一场混入无头苍蝇的视听盛宴
此文为转帖,来源是国学数典论坛,是名为“hanziyu”的网友所写。
+++++++++++++++++++++++
自从媒体如铺天盖地般宣传的《南京!南京!》开始上映后,我就一直想到影院去看一次,但由于工作太忙,一直未能如愿。好在迎来了五一假期,我终于有时间和妻子一起来到影院,看完了这部期待已久的电影。黑白色调的片子让人看着极其压抑,而大量不作修饰的逼真镜头也让人深受震撼,我先后三次泪流满面。然而片子越到后来,我胸中越觉得憋闷,不是被影片所感染而引起的憋闷,而是被影片表现手法及其表现主题所导致的憋闷,甚至可以说是一种愤懑。影片结束后,我跑到洗手间,把脸上的泪痕冲洗干净,然后走出影院。看着外面的蓝天,我试图舒一口长气,然而胸中的那股气堵在那儿,怎么也舒不出来。妻子看到我面色凝重,眼睛则布满红色血丝,问我怎么了。我告诉她心里不舒服,她说看了这种片子心里当然会不舒服,我直白地告诉她我是对陆川拙劣导演手法的不舒服。妻子似乎不太认可我的说法,但也没说什么,我也就没再说下去。在回家的公交车上,我和妻子均一言不发,直到下车。从车站到家还有一段路,我走在回家的路上,胸中堵得厉害,脑子则乱得厉害,整个人的感觉,如同到餐厅点了一顿看似色香味俱全的丰盛大餐,并且刚开始吃的时候还觉得很有滋味,然而越吃却越觉得不对劲,直到快吃完时才发现盘子里有一只无头的苍蝇,然后胸中一阵翻腾,不得不把已经吃下去的全部吐了出来。。。
回家后边郁闷边思考,大体上把思路理顺了,决定把自己的一些想法写下来,与大家分享一下:
1、影片试图以普世价值来取悦更多的观众,尤其是日本观众和国际观众,却因此丧失了此类题材影片应该具有的精神内核,那就是在真正意义上而不是虚拟意义上的对战争罪行和人类本性的拷问。
陆川拍摄这部电影,显然有想用普世价值来打动世界而不仅是中国一国的观众的雄心,电影的受众在他看来不仅包括中国人,更包括日本人,乃至整个世界,这也是他豪言要将此片打入日本市场的信心来源。因此片子从开头便独具匠心地选择从一个血战入城的日本军官的视角入手,来表现异常惨烈的夺城之战,此后虽然角度有所切换,但日军军官角川毫无疑义仍是贯穿始终的本片的第一男主角,而在影片海报上排名第一的刘烨所扮演的陆剑雄充其量只是一个配角,一个在影片开始不久便在日军枪口前倒下的“永不瞑目”的国军军官。
角川显然是新一代导演陆川梦想中的一个理想的日本人,他有着几分善良、几分纯真、几分懦弱、几分温柔、几分哀愁、几分悲悯甚至几分俊美,而且从头至尾几乎都是一个从空中俯视南京这一人间地狱的“第三人”,一个超脱于屠杀者与被屠杀者生命体验的第三人。由于他的懦弱和温柔,角川并不是一个“高、大、全”的形象,但本片所赋予他的其他特质却足以使他成为“真、善、美”的化身。即使他在激烈巷战中“有意”杀死了几个中国军人,或在教堂内“失手”杀死了几个中国平民,都无损于他这一遗世独立的形象,因为前者是他作为军人的本能和职责,后者完全是他的疏忽,一个令他自己都深深忏悔的疏忽,甚至可以这么说,角川不是南京大屠杀的参与者,而是一个旁观者。他身处兽军之中,却鹤立鸡群,绝不同流合污:当他的同辈们仅从慰安妇那里寻求淫欲的发泄时,他却想寻求真挚的爱情;当他发现沦为慰安妇的妓女小江是中国人时,他放弃了侵犯她的机会,而以孩子般纯洁的眼神惊恐地看着另一个鬼子兵在小江身上蠕动;当他得知慰安妇百合子已死的讯息后,他心死如灰,并请人将百合子以他妻子的身份安葬;当他发觉姜淑云在不断乔装打扮以求拯救更多难民时,他沉默不语,默认她的瞒天过海。所有这些,都足以说明他是一个好人,一个不同于一般鬼子的人。但导演绝不满足于此,在影片接下来的演绎中,他让角川用一系列行为完成了其从旁观者到救赎者的“超人”历程:当被识破并被逮捕的姜淑云请求角川开枪打死自己时,他虽经长时间的沉默和心理斗争,但终于射出了那精准的一枪,使姜淑云避免遭受更悲惨的命运折磨。如果说,杀死姜淑云还是角川“被迫”成为救赎者的话,那么他下令放走原本将被屠杀的顺子和小豆子的举动,则是他作为救赎者的主动行为。而此后角川的举枪自杀,则更蕴含着以一己之死亡,来救赎其千万同辈所犯下滔天罪行的极大寓意。影片中,角川在开满鲜花和蒲公英的初春的原野上完成的翻滚式自杀表演,几乎可以用“唯美”和“惊艳”来形容,而他那不是用武士刀而是用符合“普世价值”的手枪来实施的“行为艺术”,也将他推上了人性与道德的高峰。
角川的形象在中国本土电影史上堪称空前,我甚至认为,如果脱离南京大屠杀的史实真相,陆川对角川形象的塑造几乎可以说是极其成功的,而日本演员的表演更是丝丝入扣,观众简直不能不喜欢他。这个接受过教会教育的、带着书卷气甚至些许童真的青年人,仿佛只想生活在自己的浪漫世界中,却被迫在异国他乡完成了自己从生理到心理上的血腥成人礼。然而,成人的长成意味着童真的终结,在他目睹了慰安妇百合子、妓女小江、唐小妹、姜淑云等一个又一个如樱花般美丽的女子飘然而逝后,他产生了强烈的人生虚无感,意识到残酷现实和他向往的浪漫世界间的强烈反差,所以他选择离开这个世界,投向终极然而仍是浪漫的归宿。
而另一个几乎也称得上是主角的杀人狂伊田,对他的心灵世界却几乎没有像样的刻画,只是一再反映他如何杀人,如何强奸,以及如何把中国难民的生死操弄在股掌之间。在唐先生死后,影片把镜头指向伊田的沉默的背影,时间长得惊人,似乎是在暗示伊田可能正在进行的反思,然而又令观众难以捉摸伊田是在反思自己的罪行,还是在欣赏自己的杰作。在影片快结束时,那一段角川自杀后伊田在澡盆中洗澡的镜头,似乎是在告诉观众:对伊田而言,这仍然只是平常的一天。总而言之,在这个禽兽般的人物身上,你看不到一丝善性的闪光,或者对恶行的反思。此外,在影片的最后,通过编造出来的“老照片”,导演暗示观众,伊田战后没有受到惩罚,而是回到日本安度了晚年。但导演到底想告诉我们什么呢?是人世间没有所谓善有善报、恶有恶报的轮回规律?还是天地不仁,以万物为刍狗?
影片试图通过对战争罪行的反思,来追问人性,并刻意运用大量的历史细节,来反映人性的善与恶以及善与恶的转化。但可惜的是,这些历史细节,要么似真实假,要么似假实真,且被搅成一缸混水,让人无法分辨清浊,最后只好据此得出一个似是而非的结论:日本人和中国人一样,既有恶人,也有善人,而日本人在南京所施暴行的根源,是人性中普遍存在的恶,这种恶是中国人、日本人或者世界上每个人都可能犯下的,因此不具备国别和民族属性。这样的结论,给日本人找到绝妙的逃避责任的借口,也陷入了历史虚无主义和道德虚无主义的泥潭。在陆川根据自己的梦境而杜撰出的日军公祭仪式上(陆川原话是——“那场仪式是我梦到的,我那时候看了很多日本片子,看了很多关于南京大屠杀的资料。然后我就梦到了这场戏。”见《三联生活周刊》2009年第14期对陆川的专访——陆川:我是行动着的知识分子,http://blog.sina.com.cn/s/blog_470bf2570100cd2m.html?tj=1),全体日本军人所表现出的痴迷和癫狂,也对日军从人变兽的过程进行了合理化解释:日本军国主义的灌输以及与神道仪式的糅合已经彻底从精神上征服了日本军人,使得他们呈现出“集体无意识”的迷狂状态,在这种状态下做出的杀人、强奸以及一切反人类的恶行都可以得到解释。但是,真正敢于追问的后来者会说:难道“集体无意识”或者说被洗脑后的人对自己所亲手犯下的恶行就没有责任吗?难道一个真正独立的、自尊的人就不应该对自己为何被诓骗、被劫持、被施咒而进行任何的追问和反思?但遗憾的是,在《南京!南京!》中,我们看不到这样的问号,角川的莫名其妙的死去和伊田的若无其事的活着都不足以构成这样的追问和反思。
最可怕的是,这种以普遍人性为借口对“集体无意识”的施恶者的解脱,恰恰给了古今中外在类似情境下施恶的罪人以绝妙的借口。还记得40多年前的文革吗,那令人沉醉的天安门广场上的红色海洋,那无数手持红宝书高呼“万岁”的红小兵,和占领南京后的高呼“万岁”的日军的神态是多么的相似!那铺天盖地、无处不在的大字报和招展红旗,多像日军公祭时打出的招魂幡;还有那姿势怪异的“忠字舞”,多像那日军的公祭仪式上的张牙舞爪的招魂舞。在魔咒之下,那些迷失了自我的革命小将和革命干将们可以背叛一切伦常,包括告发自己的亲友、爱人、父母,他们可以鞭打自己的师长,甚至一片片割下“阶级敌人”的肉,加以烹调,然后大快朵颐。。。但本片所表现的主题却似乎告诉我们——他们不用为这些罪行负责,因为他们是“集体无意识”的一份子,他们是被下了蛊施了咒的一群人,不用对历史、对社会和自己承担责任。这样对集体暴行的合理解释,实在让人觉得背脊发凉。
我在网上看到,一些自以为看懂了并理解了陆川的人,一旦看到谴责这部影片历史观的言论,马上就贴上“愤青”的标签,似乎只有他们才有思想、有文化、有意识,没有被洗脑。然而他们自己不知道,真正被洗脑了的,是他们,他们被宣扬历史虚无主义的主流媒体和作为“新一代导演”代表的陆导对历史的精妙演绎洗了脑。他们的逻辑是这样的:日本人也是人,而人在特定环境下是会犯罪的,日本人对中国人做过的事,中国人也对中国人做过,甚至规模更大、程度更深,所以我们不能由于他们是日本人而不是中国人,就不对他们施加在中国人身上的罪行加以宽恕和理解。也就是说,在我们本民族没有进行反思,没有充分谴责自己暴行的前提下,我们就没有资格谴责日本人。
但是,我想大声对他们断喝一声:你们错了!你们的逻辑完全混乱和倒错了!中国人没有彻底清算自己的历史罪行,绝不等于中国人就不能追讨日本人的历史罪行。事实上,如果中国人主动放弃追讨日本人的历史罪行,反而更不能对自身的历史罪行进行清算,从而增加再度陷入可怕的历史轮回的可能性。因为如果连日本兽军对中国百姓的兽行都可以予以“人性”的理解和体谅,都可以宽恕,那么历史上的中国兽军、兽民对中国百姓的兽行就更容易原谅了,毕竟,兄弟相残给民族心理带来的伤痕,总归比不上敌我相残。因此,历史上一切中国人加诸自身的罪行,包括2000多年前白起对四十万赵军、项羽对二十万秦兵的坑杀;包括300多年前清军八旗兵和明朝降兵对明朝平民实施的嘉定三屠、扬州十日,包括明朝末年张献忠对四川人民实施的灭绝性大屠杀,包括太平天国起义14年中清军和太平军对上亿平民的屠杀和戕害,都可以被轻而易举地原谅和遗忘,你们可以说,不能用现在的道德标准去套用历史人物的行为,因为这些历史人物受到了落后时代的束缚和古代“弱肉强食”的王朝生存法则的制约。你们甚至可以进而原谅半世纪前导致数千万人饿死的“三年大饥荒”的一系列荒谬政策的始作俑者和参与者,包括文革前和文革中践踏他人生命和人格尊严的所有人,以及一切一切在中国近现代史上实施过反人类罪行的人,因为“集体无意识”五字,足以给予这些罪行一个合理的解释。。。
如此这般,你们似乎可以顺利完成对民族心理伤痕的医治,并使自己的灵魂得以安定了,但是那些被你们再次侮辱了的至今仍在历史的天空中飘荡的亿万冤魂,他们将到何处安定呢?你们又如何保证,今后的中国,不会再出现“集体无意识”下的暴行呢?
2、影片从商业利益出发,并出于取悦日本观众的考虑,刻意回避南京大屠杀中的核心历史事实,而将兽军的暴行加以“艺术化”和“唯美化”,并凭空杜撰出一个善良太君的角色,以换取廉价的宽容。
说到这儿,我想提一下在《南京!南京!》之后公映的德国导演拍摄的《拉贝日记》,据媒体报道,该片已在日本被禁,原因之一是反映了裕仁天皇的叔父朝香宫鸠彦亲王*(注1)在南京大屠杀中所起的主谋作用,连扮演朝香宫的日本著名影星香川照之都受到了国内舆论的谴责(见星岛环球网,http://www.singtaonet.com/reveal/200903/t20090331_1006544.html),我在网上检索了一下朝香宫的生平,发现这个下达了“杀掉全部战俘”的命令、为南京大屠杀第一号直接责任者的日本皇族成员,不仅战后没有被起诉,而且还活到了94岁的天年!如果陆川把这样的真实历史人物搬上银幕,并揭示他战后不仅毫发无损,而且还逍遥自在地渡过了漫长晚年(据说其晚年的主业是打高尔夫球),这样的历史细节或许会发人深省。然而陆川没有这样做,片中的日军军官用的全是虚构的名字,“角川”、“伊田”之流在片中的表演,以及片尾伪造的历史细节--写着主人公姓名和生卒年份的伪劣的发黄照片,向我们展示的是导演对待如此重大历史题材的虚伪和轻佻!
此外,《拉贝日记》还通过拉贝的视角,展示了当年日本兽兵的“百人斩”竞赛*(注2),而《南京!南京!》根本没有触及这一历史真相。事实上,以日本市场为目标的陆川根本不敢在本片中反映这样的核心历史事实,他呼之欲出的取悦日本观众的功利心*(注3)使他宁愿挑战多数中国人的心理底线(即南京大屠杀中的血腥杀戮体现了日军的兽性,而不是人类普遍存在的恶性),也不愿意挑战多数日本人的心理底线(即不相信“百人斩”这类灭绝人性事实的存在,也不承认天皇家族的战争责任)。也许中国人的心理底线未必是正确的,血腥杀戮是每一个不受法律和道德约束的人在特定情境中都做得出的事,但陆川在充分照顾日本人心理底线的同时,不仅毫不留情的击穿了中国人的心理底线,还进一步塑造出一个横空出世、子虚乌有的天使般的角川形象,并且尽最大可能让中国观众相信这样一个人存在的可能,以消解中国人被南京大屠杀这一事件所激起的强烈民族仇恨,并转而原谅或宽恕日本兽军:他们也是人嘛,是和我们一样有血有肉有喜怒哀乐的人,而且他们中甚至还有像天使一般的好人,对于这样的群体做出的陈年旧事,我们有什么必要萦萦于怀70多年而不止?
本片最令人震撼的地方,不是伊田的恶,而是角川的善,而前者才是历史的真相,一种不需要陆川来表现每个中国人也都能铭记于心的真相。事实上,陆川在这部影片中表现的杀戮和强暴镜头,远远没有我们能在网上随意搜寻到的无数真实的历史照片所能反映的那么血腥和残酷,他甚至在很大程度上美化和弱化了日军暴行的残酷(见下一段的分析)。因此,陆川这部以善良的角川为主角的电影,带给观众最大的震撼,也就是向观众传递的最主要信息,绝不是日本兽军中作为主体存在的恶,而是他们中作为个体存在的善,一个角川所代表的人物,一个像你我一样的甚至比你我更多愁善感、更慈悲为怀的善人。然而,需要点破的是,背负这个主要信息的这个主角是虚构的,围绕这个主角的所有细节更完全是虚构的。也许有人会为陆川辩解:角川这个角色并不完全是虚构的,因为他身上的每一点善性,日军的某个个体成员都可能具备,陆川只不过是把这些散落在无数个日军个体中的善性碎片组合成了一个完整的、丰满的饱含善性的整体而已。然而,我想告诉这些人和陆川的是:把真实而却零散的100个1%叠加成一个完整的100%,这就是彻头彻尾的虚构,因为虚构的本质,就是对零散真实的组装——人类所能想象出来的事物,有哪一个不是建基于现实中的真实存在呢?好比中国人的终极图腾--龙,就是骆头、蛇脖、鹿角、龟眼、鱼鳞、虎掌、鹰爪和牛耳等的组合。但即使龙的这些组合成分中每一样都是真实存在的,你能说龙本身是真的吗?你能说龙不是100%的虚构吗?将角川这么一个完全虚构的事物(我甚至不能说他是人物,因为这样的人物根本不存在)置于一个完全真实的历史背景下,完成一系列超越当时日本军国主义道德体系所能孕育和允许的行为,包括对姜淑云的终极拯救,对自己同胞杀人恶行的终极忏悔,这都是彻头彻尾的荒谬的谎言。
如果陆川要靠这样荒谬无根的虚构人物和历史细节,来促使中华民族完成对中日民族仇恨心理的跨越的话,那么这样的跨越也是荒谬和无根的,因为它不是基于对历史真相和人类恶性的反思,而是基于被篡改了的、被故意选择和堆砌的历史真相和被拔高了的、被故意虚构和夸大的人类善性的轻信。况且,就算中国人被陆导成功“感化”而不再纠缠于过去的历史*(注4),那么日本人如何能被这样的片子“感化”呢?陆川对角川这个人物的成功塑造以及受“天启”后创造出来的日军公祭仪式,对日本人起到的作用,与其说是对灵魂的追问,不如说是对心灵的抚慰,他们也许会真诚地感动于角川和百合子之间无果的爱情,以及日本官兵对阵亡将士的忘我招魂,但几乎不可能去反思日本普通民众直至天皇家族对战争的不可推卸的责任,而这才是对侵略战争的真正意义上的反思。
而陆川对于日军暴行的一些艺术化的处理,诸如片中一再出现的死去中国女性的肥白到几乎丰腴的躯体(借用一位网友的话:“真实的暴行受害者不是这个样子的,黑白画面与光线的精心运用,增强了肌肤柔白莹洁的对比度,提高了美感,但却是脱离真实性的美感。这美感唤起的的确不是对加害者的仇恨,对加害者的仇恨,而是对受害者的悼念、对女性的歌颂,或是对美的耽溺等某种自怜的情绪,与南京惨剧所应该唤起的情感是不相称的”, 见http://www.mtime.com/group/14065/discussion/488831/),以及日军骑在中国女性身上疯狂蹂躏时床榻的咯吱摇动声,不仅不能给人以灵魂上的真诚震撼,反而给人带来恐怖然而莫可名状的感官刺激,如同一些廉价恐怖片或者三级片带给人的那种刺激。他刻意营造的那些艳尸画面,与《辛德勒的名单》中那瘦骨嶙峋的犹太人的尸体堆积如山的场面,形成强烈的反差,更远远不能引发后者所引发的那种震撼人心的感受。我不知道我产生的这种想法,是因为我自己原本的猥琐和恶毒,还是因为这正是导演和投资方想要达到的市场推广效果,但至少有很多影院和媒体确实在有意无意的宣扬*(注5):本片的一大卖点,即是对日军当年强暴行为的突破以往尺度的大胆表现*(注6)。陆川甚至自己都承认:“当时我们对慰安妇结局的场面有两种设定,一种是身体上布满伤疤和血污,写实展现这些女子受辱之后的凄惨、污秽,极其触目惊心;一种是现在影片中这样子——尸体清洁、洁白,用长镜头和油画式画面来呈现。我实在不忍心第一种样子,就选择了第二种方式,体现出一种‘残酷的诗意’。”(见http://www.gzfashion.org/gzdetail_44394.html,时尚网——〖南京!南京!〗港版宣传画慰安妇成主体)在这样残酷惨烈的暴行中,陆川竟然还能发掘出“诗意”并决意去表现这种“诗意”,哪怕这违背历史的真相,我不得不佩服他强悍的心理素质和对艺术的“执着”追求。
*注1:朝香宫鸠彦:日本皇族。1887年生。亲王。毕业于陆军士官学校第20期,后进入陆军大学深造,曾游历法国,1933年8月任近卫师团长,1935年12 月任军事参议官,1937年7月中日战争全面爆发,12月2日任上海派遣军司令官,下达了“杀掉全部战俘”的命令,为南京大屠杀第一号直接责任者。因是皇族,战后未被起诉。1981年4月死去。(见http://blog.sina.com.cn/s/blog_4b8c85170100cuof.html?tj=1,新浪博客:《南京!南京!》最大亮点及大屠杀日军指挥层名单)
*注2:“如果说日本对侵华战争还承认甚至有一点儿忏悔的话,那么日本对南京大屠杀事件基本上采取了回避乃至不予承认的态度。比如在电影《拉贝日记》中,有一段根据一张著名的照片改编的剧情——两个日本军官比赛杀人。影片通过拉贝的眼睛真实的再现了当时的场景,而这对视南京 为敏感词汇的日本众多国民来说,无疑是不能接受的——甚至参与“百人斩杀人比赛”的向井敏明少尉的女儿至今还在为他的父亲翻案,胡说那是记者的夸张报道。对此,南京大屠杀纪念馆馆长朱成山表示 “百人斩”本就是当年确切发生,并出现在日本战时报纸上的,这是不可否认的。”(见http://news.cnwest.com/content/2009-04/29/content_2011632.htm,《拉贝日记》日本遭禁的五大原因—新闻频道—陕西新闻网)
*注3:据媒体报道,陆川曾表示:拍摄这部电影的最大目标就是要在日本上映,“如果你觉得我拍这个有野心的话,我想说我最大的野心就是把这电影放到日本。”(http://movie.ifensi.com/article-189115.html,粉丝网--陆川:要让日本人成群结队来中国道歉)。至于这部电影是商业片还是艺术片,陆川说得更直接:“如果在这个社会把艺术和商业对立起来,其实是一种虚伪的做法,要么是自己没想明白,要么是装糊涂,或者是商业还没有看中他。我从根儿上觉得电影就是商品,这从电影的发明就可以看出来,它是一个需要付费的消遣, 这就是电影的本质。”他接着说:“如果要说艺术和商业之间的坐标,我觉得自己的电影会在中间位置,它既不那么商业,也不那么纯艺术,在手段上比较自由,它是跨界的。拍特别商业的东西我觉得会受约束,拍纯高端的、特别艺术的我又觉得特假。我的目的是要影响大众。”(http://www.zgyswhw.com/Html/MovieInfo/2009/04/info_22610.html,京华日报:《南京》22日亮相 陆川:极力争取在日本上映)
*注4:这是日本某媒体对本片的一段介绍,原文和译文都是在网上找到的——
“主人公の若い日本兵を上官の命令で虐殺を強要された「軍国主義の被害者」と描くなど、反日一辺倒ではないストーリーに仕立てた。この日本兵が最後に中国人を逃して自殺するシーンがあり、映画を見たOLの陳維蔚さん(29)は涙をふきながら、「日本人の人間としての一面も見て印象が変わった」と話した。
译文:影片刻画了一个被迫遵照上级军官命令屠杀平民的年轻日本兵的形象,将他描绘成“军国主义的受害者”,故事情节并不完全是反日一边倒。影片中有一幕描写了日本兵最后放走中国人后自杀的场面。看完电影的陈維蔚女士一边擦试眼泪一边说:“电影展现了日本人人性的一面,让我改变了对日本人的印象。”(见http://sankei.jp.msn.com/world/china/090422/chn0904221907002-n1.htm,该注脚是看到一位网友对本文的回帖后补加的,因为是从日本人的角度来报导,很说明问题,所以把它放入文中。)
*注5:“《南京!南京!》公映首日,导演陆川爆料,“高圆圆曾拒拍强奸戏”,来吸引眼球,堂堂一部8000万级别,反思历史的主旋律大片,一位被寄托中国电影新希望的导演,在这个时候,还在借一场可拍可不拍的强奸戏搞噱头。”(见http://www.chinanews.com.cn/yl/kong/news/2009/04-29/1669744.shtml,北京晚报:《南京!南京!》让我们看什么)
*注6:“慰安妇的情节在该片中占了很大比例,陆川表示,这些情节都是他经过大量的历史考证而设定的。慰安妇之一的扮演者江一燕表示,拍慰安妇死亡被扔上车那场戏的群众演员,大多是来自高校的女学生,实拍的时候,就知道自己不仅要全裸出镜,甚至连一个正面镜头都没有,但出于对“南京大屠杀”的历史情怀和对陆川导演的信任,她毫不犹豫地走到了镜头前。”(见http://yule.sohu.com/20090417/n263452638.shtml,搜狐娱乐版——陆川:演慰安妇大学生豁出去 日本演员边演边哭)
3、影片对西方大片进行了刻意的模仿,却不得其骨,只得其皮。为了“政治正确”而牺牲“历史正确”,因而无法实现对过去脸谱化国产片的超越。
影片中有太多地方让人想起了西方二战大片,包括从日本人的视角反映二战(硫磺岛家书),片子开头激烈而震撼的巷战(拯救大兵瑞恩),用黑白片的方式来拍摄,以及片中整车拉走的慰安妇堆积在一起的死尸等镜头(辛德勒的名单),诸如此类,不一而足。但陆川似乎不明白,反映宏大主题的西方“巨片”,是一定能反映人类个体生命对罪恶的抗争,人类主体尊严的不屈与永存,以及“罪恶终将被严惩、人类终将有未来”的沉重主题的。而在他的影片中,不抗争且无耻的“当官的”一早就跑掉了,效仿他们的不抗争且无尊严的大批中国守军则踩着同胞的身体逃出城外了,抗争失败而丧失尊严的大部分中国降兵被集体屠戮了,不抗争更没有尊严的大部分中国平民也被或集体或零散地屠杀了,没有尊严但最后良心发现的唐先生被单独射杀了,有尊严然而老迈无力的拉贝跑了,有尊严然而单薄无力的魏特林在凶残的鬼子面前跪下了,极少数有尊严且奋力抗争的人(降兵首领陆剑雄、魏特林助手姜淑云以及以妓女小江为首的100名挺身而出用自己的肉体换回难民营安全的中国“慰安妇”)也都失败了,要么被枪杀,要么被奸杀,要么被侮辱后放弃反抗了。仅有的苟活下来的人,是小豆子、顺子和唐太太,以及躲在难民营中的那些大气都不敢出一声的老弱病残。但他们的苟活,偏偏不是因为自己的抗争(抗争的人,包括陆剑雄、姜淑云等早就被打死了),而是因为作为日军代表的角川的一念之仁和伊田的一念之差,从这样的片子中,你如何能看到希望,看到人类不灭的尊严?
我们可以对比一下《南京!南京!》和《辛德勒的名单》的结尾。在《辛德勒的名单》的结尾,每一个被辛德勒拯救过的家庭的幸存者,在辛德勒的墓前放下一枚小石头,来放石头的人排成的长队望不到边,象征着整个世界。但我们要记住,这些排队的人,每一个都是真实的存在,有真名实姓的真实的存在。而我们看到的《南京!南京!》的结尾,却是“顺子”和“小豆子”这两个看似真实实则虚构的存在。前者的结尾是厚重、真实的,而后者的结尾则是轻佻、虚假乃至产生一定喜剧般反效果的(脸上带着蠢猪般表情的顺子在角川自杀的枪声响起后的哆嗦,以及发现自己没死后的释然,竟然引发了我身后观众的窃笑!)。更可悲的是,顺子和小豆子在确认自己活着之后无比畅快的大笑,以及满头插花、乱吹蒲公英的嬉戏的时代背景,是1938年初春,是南京城内作为他们亲友的数十万难民仍随时面临死亡威胁的时刻,是他们的祖国即将大部落入日军魔爪的屈辱历史刚刚开始的日子。
片尾用虚构的“老照片”来表现“伊田”已“死去”而“小豆子”还“活着”的虚拟现实,则更是一种典型的“阿Q”般的中国式意淫—精神胜利法:虽然“伊田”逃过了惩罚而在战后活了下来,但毕竟逃不过无情岁月的追讨;而真正活到当下、甚至可能就坐在电影院里和大家一起“欣赏”本片的“小豆子”,则如同千年王八万年龟般,依然鲜蹦活跳地活在你我中间,甚至可能就在你的旁边,也嗑着瓜子、喝着可乐欣赏这最后一幕美丽的春原呢。。。看吧,日本人民和世界人民,这就是我们泱泱大国之所以千年不灭的缘由,因为我们国家的人多得杀不完,因为我们的幸存者的寿命长得能熬过刽子手,所以胜利者是我们,未来也一定属于我们,二十一世纪,必将是中国的世纪。。。
《南京!南京!》在揭示和反思人性方面,无论是力度上的孱弱,还是深度上的失败,都是令人遗憾的。我们可以把它和另一部刚上映不久的也是反映二战罪行的西方大片《生死朗读》做对比。《生死朗读》的主人公,二战中的施恶者汉娜(凯特温丝莱特扮演并以此角色获得奥斯卡最佳女主角奖),和角川一样,最后都选择了自杀。但汉娜的自杀不是在二战之中,也不是在其被判处终身监禁之时,而是在其坐牢18年之后,以垂暮之年被特赦之时。汉娜的觉醒,不是类似于角川的“天使”般的超人自觉,也不是类似于唐先生在生死关头“灵光一闪”般的幡然醒悟,而是经过了漫长铁窗岁月的磨砺,在对自己灵魂进行无数次拷问后才最终实现的艰难而痛苦的转变。从其缓慢的识字过程开始,汉娜通过长期的对知识的汲取,对作为人类文明结晶的经典文本的阅读,获得了对人性和人道的再认识,才意识到自己罪行的深重,因此她在即将出狱的前夜,决然放弃自己的生命,对自己当时在“集体无意识”下对犹太人犯下的罪行做了最后的忏悔和补偿。这样的死,是真正震撼人心的,然而却不让人感到突兀,也不让人感到绝望,而是“向死求生”,揭示了为何人类得以从两次大战的废墟中重新崛起、重新创造未来的原因:那就是,为恶者或会遭到人间公正法律的严惩,或会遭到自身良心的谴责。如果说,其他把罪过推给汉娜而逃避了惩罚的女看守们或许终生都没有受到社会和良心的严惩,但她们绝对不是本片的主角,电影的主角,是汉娜,一个醒悟了的当年的施恶者,从而揭示了电影的主题:人类的善性,虽一时会被蒙蔽,但在知识和文明的滋养下,终将重新闪光。
这正是西方主流文艺片或战争片能够真正打动人心的地方,它并不排斥“政治正确”(正义终将战胜邪恶),但这种“政治正确”,有着强大的人道主义的支撑,而绝不通过对邪恶的淡化和对恶行的粉饰来达成。它对历史真相的尊重近乎虔诚,即使让观看者触目惊心,也要把它表现出来,看看《辛德勒的名单》对集中营暴行的呈现,我们就能明白这一点。而我们一些媒体所宣扬的“政治正确”是什么呢?是和谐,不管这种和谐是通过何种手段达到的,因此我们在反映抗日战争尤其是南京大屠杀的题材时,总是不敢去追究每一个日本人作为军国主义巨大战争机器的一颗螺丝钉的责任,而只会轻佻地宣扬所谓的“日本人民也是战争的受害者”的神话。而为了佐证这个神话,大约从上世纪80年代开始,每一部反映抗日战争或者南京屠杀的“大片”,往往都会有一个善良的太君(需要强调的是,这么做的一般是“大片”,“小片”由于成本太低,有时就顾不上对太君形象的塑造了),这个善良的太君,往往都是年轻英俊的日本军官,而且往往很会怜香惜玉,包括但不限于:爱上一个美丽的中国女性,或亲眼目睹一个/数个美丽的中国女性被摧残或杀死,然后痛不欲生,饱受良心的煎熬。。。《南京!南京!》在塑造善良太君上的成功,则让前面所有的国产“大片”都相形见绌,因为它干脆直接让这个善良太君成为影片的第一男主角,用他的眼睛对侵华战争进行第一手的诗意的审读和反思,这样的创意和胆略,实在让所有国产大片的导演都瞠乎其后,足以申请国内专利了!
《南京!南京!》用虚无的历史迷药对不明就里的观众实施了一次成功的诱奸,当他们在迷药的作用下被奸淫时,甚至能体会到些许的快感。它对社会心理所起到的作用则恰似罂粟,外表美丽如花,内里却能麻醉人的神经,甚至还能给人带来超越时空的美妙快感。而这样的影片,也非常符合河蟹精神的需要,因为它实现的,与其说是对民族历史和人类罪行的反思,不如说是对侵略罪行的解构,以及在此基础上对与侵略者同为人类的其他群体所犯罪行的解构,所以有助于社会大众宽容一切历史和现实中的罪恶和不公,而满足于现实的歌舞升平的世界。它是极其符合现实政治需要的对现实世界的精美化妆,是宣传中日亲善、人类和谐、世界大同的精美花瓶。因此,我也就能理解为何网上论坛对它骂声一片、而主流媒体却对其谀词潮涌的原因了。更绝妙的一点,它塑造了一个不仅思想上信奉基督而且行为上也类似基督的角川的形象,一个如同耶稣般担负并洗清人类所有罪行的形象,使施恶者个人/群体无需再去承担忏悔和弥补罪行的责任。但它的导演却忘了关键的一点,那就是:根据基督的教义,作为基督化身的耶稣是能复活的,被耶稣救赎的信徒们,也仍有基督信仰的支撑;而作为基督徒的角川却不可能复活,而那些似乎被他从心灵上救赎的中国人或者日本人中的大部,则分别只有非基督的阿Q精神和神道信仰的支撑。因此,如果他们再次沉沦,陷入彼此的苦战,就几乎无药可救或者说无人可救了。那么,中日两个民族化解仇恨、永不再战的出路在哪里呢?大家一起皈依基督吗?
此外,影片试图摆脱以往抗日影片脸谱式表演的尝试,看似成功,却造就了另一种失败:以对历史的精心粉饰、对个别侵略者心路历程的细腻刻画来取代对历史和人物的粗暴简化,是从一个极端走到另一个极端。从平面的无限丑化的猥琐“鬼子”群体到立体的无限拔高的善良“太君”个体的形象塑造,归根到底,都是对历史的嘲弄,对历史的不尊重。陆川也许没有意识到:本片对人物的刻画,看似摆脱了《地道战》、《小兵张噶》式的对侵略者和抵抗者两个阵营的简单黑白二分,实则却构造了新的分属两个阵营的黑白二分,即侵略者阵营中伊田与角川的黑白二分,以及抵抗者阵营中逃兵团队与陆剑雄团队的黑白二分,还有唐先生前后行径的黑白二分。而且,唐先生从无耻汉奸到舍身英雄的大黑变大白的华丽转身,让人觉得太过突兀和生硬,乃至于无法相信其真实性。至于角川这个人的存在,则正如我在前面段落中已经阐明的那样,属于彻头彻尾的虚构,用这样大规模的虚构(之所以说大规模,不是指虚构的人数,而是指角川和唐先生作为本片戏份最重的两大主角,竟是彻头彻尾的虚构人物)来反映一个中国历史上的极重大事件,也是中华民族心头最深的一道伤痕(中国的首都被敌国占领,首都军民被大规模屠杀、首都妇女被大规模强奸,长达三月之久,这绝对称得上中国的国耻之最了),这种对观众智商、情商的极端蔑视和对自身审美、历史观的极端自信,实在令人心惊胆寒。
4、怎样的历史观才能让我们走出黑暗和蒙昧,我们如何才能真正走出历史的轮回
平心而论,尽管陆川自己承认《南京!南京!》是一部商业片,但在保证广告和市场效应之外,他也确实在努力构造一个能打动所有人的“宏大叙事”,因此,他竭力表现并宣传自己的历史观有高于其他导演和日本人的地方。在接受凤凰卫视采访时,他说,“我觉得咱们应该站得比他高。你看我拍这片吧,不跟他掰扯有没有屠杀这事,也不跟他掰扯数字,没意义,我觉得卡在这个点上,使得全世界不能接受这个事实,这是一个,我觉得一个不明智的做法。”(http://phtv.ifeng.com/program/mrmdm/200904/0421_1597_1118344_3.shtml,陆川:把日本侵略比作魔鬼是为其罪行开脱——凤凰卫视《名人面对面》)。在他眼中,他拍这部片子,并不想向日本人证明南京大屠杀的存在,或者告诉他们南京大屠杀的死者人数是多少万,这些都“不明智”,而明智的作法是什么呢?他没细说,但我们确实看到了,那就是——你日本人不是不承认、不忏悔吗?那好,我们中国人通过这部电影替你承认、替你忏悔!为此,他特意创造出了角川这个通篇都在忏悔的人物,从误杀难民时的忏悔,到杀死姜淑云之后的忏悔,再到最后自绝于人世的终极忏悔。他希望以这样的手法,不仅让中国观众相信日本军人中的优秀代表对自己的罪恶是一直在忏悔的(不是在战后而是在战时就已经忏悔乃至赎罪了),而且让日本人找不到拒绝让影片在日本公映的理由——毕竟,我的影片已经在最大程度上考虑了日本人民的感情,没有触及日本天皇家族对南京大屠杀的责任,而且回避了南京大屠杀中最骇人听闻的“百人斩”竞赛,我甚至还虚构出一个“真、善、美”的太君形象为你们增光添彩,你们还有什么可说的?但上述逻辑存在一个巨大的漏洞:你如果自己都不希图向日本人证明南京大屠杀的存在,你还能指望他们承认南京大屠杀的存在吗?你在影片中替他们承认和忏悔,就真的迫使他们承认和忏悔了吗?你以为你可以在电影中虚构一个当年的“角川”,就可以在当今日本社会发掘出几个今天的“角川”吗?你这不是意淫,又是什么?
更可悲的是,为了践行自己“不跟他掰扯有没有屠杀这事,也不跟他掰扯数字”的想法,陆川干脆放弃了写实,除了在屠杀场面上还多少参照一些历史照片外,他对片中主角的塑造大多采取了戏说的手法,角川和伊田就不必说了,就连真实的历史人物拉贝和魏特林,也被他从形象上做了篡改,史实上做了歪曲——原本高大威武的拉贝变成了一个垂垂老者,而原本矮胖的魏特林也变成了一个又瘦又高的女士,而两人在拯救数十万难民的过程中发挥的作用也被轻描淡写乃至贬低,此外,陆川还在片中各自给他们安排了一场子虚乌有的下跪戏,即拉贝临走前对难民的下跪,以及魏特林被日本人逼迫的下跪;更有甚者,拉贝先生的秘书韩湘琳,由史实中拯救难民的英雄变成了影片中出卖同胞的汉奸“唐先生”(而且这个虚构的汉奸居然是影片里中国人中的第一男主角)!这样对历史人物的篡改和污蔑,不仅激怒了有良知的历史学者(据媒体报道,拉贝纪念馆馆长汤道銮在观看《南京!南京!》时愤然离席)*(注7),更侮辱了当年艰难维持和平区,拯救了数十万难民的中外英雄的在天之灵!而他在片尾伪造出的众多虚构人物的“老照片”上,居然还煞有介事地编上了生卒年份,以伪造一种虚拟的真实,殊不知这是弄巧成拙,不仅不伦不类,更给了日本人否认南京大屠杀的口实——日本人原本就不断质疑南京大屠杀的具体人数和死难者的姓名,现在你自己反而大规模篡改这段历史,乃至不惜颠倒黑白,那你凭什么让日本人去相信这段历史?
事实上,就算以目前《南京!南京!》在国内上映的版本,我也很难相信日本方面会允许它在日本公映,毕竟日本的政界主流至今连二战中的慰安妇是被迫卖淫这一事实都不愿承认(见http://news.qq.com/a/20070302/000228.htm,安倍:没有证据证明曾强迫亚洲妇女充当慰安妇——腾讯网),更何况是南京大屠杀这样的滔天罪行?
当然,凡事都有例外,如果日本人能够体会陆导的苦心,或者出于“日中友好”的需要,允许《南京!南京!》在日本上映,那也不是完全没有可能的事,但就算这样,我也不相信日本主流社会在看了这部电影之后,会改变自己的历史观,进而反思日军当年的罪行。别忘了,南京大屠杀的主谋松井石根的牌位,至今仍摆在靖国神社,接受千万日本国民的膜拜呢!而就在今年4月21日,也就是《南京!南京!》在国内正式公映的前一天,即将访华的日本首相麻生太郎还以“内阁总理大臣”的名义向靖国神社献上了祭品(见http://world.huanqiu.com/roll/2009-04/439429.html,麻生以“内阁总理大臣”名义向靖国神社奉献供品——环球网)。
可以这么说,指望以这样一部影片让日本主流社会来相信并接受南京大屠杀的真相,并进而进行真诚的忏悔,原本就是一项荒诞的任务。因为,你向对方提供的所谓真相,根本就不是历史的真相,历史的真相,比你经过艺术加工和编造的真相要残酷、血腥得多得多!而即便是已经被你粉饰和扭曲后的真相,对方都未必能够接受!
《南京!南京!》公映以来,以我在网上所看到的评论,就算不少观众赞赏这部影片的立意,但也没有几个认为这部电影真实反映了南京大屠杀的历史。而这部片子万一被允许在日本公映,陆导估计又免不了会对这部本已相当“艺术化”的影片操刀弄剪,以使其更加“艺术化”了。在这种情况下,日本观众能够看到的屠杀真相,已经不知缩水了几分,而他们能够接受的真相,更不知又缩水了几分。最后,中国人对南京大屠杀的理解,和日本人对南京大屠杀的理解,可能会大相径庭,前者看到的是无恶不作的伊田,后者看到的是无善不为的角川,这两种理解,彼此间有多大的交集?这难道就是陆导想促成的中日民族和解吗?再者,要求被害者(及其后代)通过对战争的反思,对施恶者从人性角度上的理解来实现对其罪行的宽恕,而不是要求施恶者本身(及其后代)直面真实的历史,并对此进行任何起码的反思,不仅是对被害者的凉薄,更是对施恶者的纵容。在双方对话条件如此不平等的情况下,你用什么来弥平伤痕、跨越鸿沟,实现两个民族的真正理解和沟通呢?
当然,这样一部“艺术化”的影片,如果真能在日本公映,也许确实会有助于增加日本人对中国人的好感,毕竟,中国导演能塑造出角川这么优雅的形象,且中国当局能允许让一个优雅的日本人成为本国国庆献礼片的主角(见http://news.chinafilm.com/200904/1553157.html,中宣广电推十大国庆献礼片 《南京!南京!》领衔——中国电影网),肯定是怀着对日本人民的深厚感情的。然而,如果日本民众了解到中国民众对这部影片的真实反映,尤其是陆导被无数网友斥为“汉奸”的事实,他们对中国人民可能增加的好感,还能保留几分?这样的片子,充其量也就能暂时造就一些“前事不忘、后事之师”以及“中日友好”的假象,而一旦中日两国的主流民意真的直面彼此,那么这个假象马上就会烟消云散。
我不想用话语的暴力来简单把这部影片贬低为“垃圾”,更不想跟随那无往而不胜的民族主义网民大军,简单地把陆川定义为“汉奸”并口诛笔伐之,我想说的其实很简单,那就是:这一段历史太过厚重,太过残酷,以至于不能被艺术化,更不能被篡改,哪怕是自以为善意的篡改!否则就是对死难者的不尊重,和对我们民族最深伤痕的又一次撒盐!
中国导演要超越日本,跻身世界,首先要形成尊重历史的习惯,在自己尚且不能尊重历史的情况下,就想要去纠正他国的历史观,只能贻笑于天下。那么,什么是正确的历史观呢?我也不知道,我不是历史学家,但以我微薄的学识,我觉得,正确的历史观至少可以这样形成——尽量发掘历史的真相,并直面这些真相,哪怕它违背你的本能甚或让你反感,也绝不篡改、歪曲甚至伪造真相,同时也绝不为证明一个观点而只选择有利的真相而隐匿不利的真相。在此基础上,对这些真相进行进一步的梳理和分析,努力寻找导致历史性成功的因素和导致历史性错误的因素,并对其做批判的继承和扬弃,以尽量避免重蹈覆辙,以期走出历史的盛衰轮回,创造更美好的未来。而这些,都是《南京!南京!》没有做到的,这正是我写下此文的原因。
*注7:“面对南京大屠杀题材,选择淡化拉贝是绝对不正确的。就南京大屠杀来讲,正面塑造拉贝才是宣扬了国际人道主义精神。还有《南京!南京! 》中的唐先生是以拉 贝的秘书韩湘琳为人物原型的,历史上韩湘琳不仅没有为了保护家人做汉奸,相反还协助拉贝救了不少人。所以像《南京!南京! 》中这么描述拉贝是不应该的, 会引导观众产生误区,否定拉贝的贡献,就会导致我们变成不知感恩的人,这对拉贝和历史都是不公正的。”(见http://yule.sohu.com/20090424/n263596149.shtml,《南京》淡化约翰拉贝 拉贝纪念馆馆长愤然离席——搜狐网)
May 3, 2009
河蟹和蜘蛛
一只河蟹在路上走,抬头一看,一只蜘蛛正在墙角织网。
河蟹:你这网备案了吗?
蜘蛛:啥,我织个网还要备案啊?
河蟹:当然要备案了,将来要是出个啥事,也能查到这是谁的网啊!
蜘蛛:……
河蟹:赶紧停下去备案,没有备案你的网就不能织,织好我也得给你剪断。
河蟹晃了晃他的两个大钳子,蜘蛛慌了神,赶紧屁颠屁颠跑去备案。蜘蛛还是第一次去这个部门,他发现该部门是一群蜗牛在负责。
好多天过去了,蜘蛛的备案还没拿到,去蜗牛那里问了好几次,都说正在处理。蜘蛛太饿了,于是偷偷织好了自己的网。
有一天早上起来,蜘蛛伸了个懒腰,去吃早餐,结果发现自己的网不见了。邻居们告诉他,河蟹二话不说,直接就把网给剪了。
蜘蛛很生气,真想找河蟹去拼命,可是想想河蟹的大钳子,还是作罢了。
好心的草泥ma偷偷告诉蜘蛛,墙外边织网是不需要备案的。蜘蛛很高兴,虽然墙很高很高,他还是努力爬了过去。果然,墙外风和日丽,景色无限,重要的是没有可恶的河蟹来烦人。
可是时间长了,蜘蛛又开始有点怀念了,墙里面有些虫子美味又弱智,想起来就流口水。可惜这墙太高了,这些弱智的虫子不知道怎么飞出来。
于是蜘蛛翻过墙回来,果然不出他所料,蜗牛们已经审议通过了他的备案。蜘蛛迅速在老地方织了一张新网,墙内的虫子们真是又傻又美味啊!
有一天中午,蜘蛛突然感觉到他的网剧烈颤动,睁眼一看,一对正在xxoo的苍蝇不小心撞到了网上。蜘蛛已经吃饱了,正好正午骄阳似火烤得受不了,他笑着骂了一声“傻X”,就躲回洞里睡午觉去了。
迷糊中突然听见有人喊,蜘蛛揉着眼出来一看,原来是河蟹。
河蟹在下面指着那一对苍蝇,歇斯底里地朝他嚷:“你看看,你看看!多低俗!多色情!你有没有社会公德心啊?!你这多损害青少年身心健康你知道吗?”
说完,河蟹挥动自己的钳子,把蜘蛛的网剪了个粉碎。
蜘蛛心疼地看着被剪碎的网,心想:“我纳税养着你,你怎么能这么没人性呢。”可是他又对河蟹无可奈何,一番思索之后,他和草泥ma依依惜别,爬到了墙外。
蜘蛛从此过上了幸福的生活。
====
来源:星月轮转博客
对潘金莲的所有权和使用权
某日,武大郎卖完炊饼回屋,见潘金莲和西门庆在床上巫山云雨,大怒。
武大郎说:西门小儿,潘金莲是我老婆,我有结婚证书为凭! 你上她干甚?
西门庆回应:潘金莲是我老婆,否则她怎么会在床上被我上?
武大郎抄起擀面棍:TMD,今我算遇上无赖了!
西门庆抽出杀猪刀:我操,大爷我今看上潘金莲了,你能奈我何?
双方僵持了一段时间…… 武大郎整整衣着,讪讪说道:西门兄,我们不要为个女人争来争去了。兄弟如手足,老婆如衣服嘛。我有个提议,您看这样好不好:美女是稀缺资源。对潘金莲这女人,今后我们就“搁置争议、共同开发”吧。
西门庆说:就是就是,大郎兄你总算想明白了。老婆算什么?共用,共用。今后我们可以“两家亲善,世代友好”了。
武大郎说:西门兄啊,我要强调一点,共用归共用,但对外面要说潘金莲的“所有权”和“主权”还是我的,请照顾一下俺的面子啦,呵呵,名义上,她还是我老婆,你只是参股,至于你用的多点都是无所谓的嘛。
西门庆说:没问题,怎么说随你便。反正我要的是“使用权”和“开发权”。
事件传开以后,武松和运哥儿这些愤青对协议强烈不满,王婆之流力劝武松等众愤青,说:尔等不知你大郎哥哥的高明,他是在下一盘很大很大的棋... ..
=====
来源:cnBeta一篇文章的回复。
——这个讲的是南海油气田的问题吗?
Apr 15, 2009
Change Blogspot Title for SEO
Background
What is SEO? It is short for “Search engine optimization”. It’s the process of improving the volume or quality of traffic to a web site from search engines via “natural” (“organic” or “algorithmic”) search results.
Typically, the earlier a site appears in the search results list, the more visitors it will receive from the search engine. As I place Google Ads in my site, of course I wish it appear earlier from Google’s search results. Changing Blogspot posts’ titles is a trick to achieve this.
Blogspot Title
The default title of Blogspot post title is “Blog name” followed by “Post name”. As the search engines crawl the pages from left to right, and our keywords of our posts are usually the post names, the rankings of our blogs will decrease with the default settings. My post “墙东柳: 展喜犒师” appeared in the FIFTH page of Google search results. OMG!!
What to do?
Before modifying the title:
After modifying the title:
How to do?
From your blog Dashboard > Click on "Layout"> Click on "Edit HTML">, and find the following code:
<title><data:blog.pageTitle/></title>
and replace it with this code:
<b:if cond='data:blog.pageType == "item"'>
<title><data:blog.pageName/> - <data:blog.title/></title>
<b:else/>
<title><data:blog.pageTitle/></title>
</b:if>
You are done! And now your post titles will be like this:
“Post name” - “Blog name”
Apr 5, 2009
C++ Program Development Phases [note on C++ How to Program - 02]
C++ programs typically go through six phases: edit, preprocess, compile, link, load and execute. |
Preprocessing and compiling
The formats of preprocessor directives are described as above. There are several kinds of preprocessor directives, like the #include preprocessor directive and the #define preprocessor directive.
Linking
Comments
Every program should begin with a comment that describes the purpose of the program, author, date and time. |
Besides the normal comments dedicated to the methods, variables, or certain lines of codes, we should also add comments at the top of the source code describing the purpose, author, date of the program. Without these, you may totally donot know what the program is about when you revisit it after a long time. I ever experienced this embrassing scenarios, so I will keep this in mind from now on.
C++ How to Program (5th edition) notes - 1
I've been unsatisfactory with my coding skills (esp. C++) for long. Being lazy, and having no assignment on C++ projects, I have been live without C++ programming since about 2 years ago. This life need to come to end. And I'm gonna read the book C++ How to Program (fifth edition) to restore my C++ knowledge. The cover of this book is shown as below.
As I am not a totally newbie to C++, I will not read this book chapter line by line. Similar, in this notes I will only keep down the parts that I am currently not familiar with, and those that I think is valuable enough.
This book has more than 1000 pages. So, it will be a long-term project to go through it. I will just try to check it out whether I am able to finish it or not. It's the journey's starting point today, 2009-04-05.
BTW, if anyone need the ebook, just leave me a message. I will upload it to a free hosting site so you can get it too. :)
Mar 30, 2009
展喜犒师
齐孝公伐我北鄙,公使展喜犒师,使受命于展禽。
齐侯未入竟,展喜从之,曰:“寡君闻君亲举玉趾,将辱于敝邑,使下臣犒执事。”齐侯曰:“鲁人恐乎?”对曰:“小人恐矣,君子则否。”齐侯曰:“室如县罄,野无青草,何恃而不恐?”对曰:“恃先王之命。昔周公、大公股肱周室,夹辅成王。成王劳之,而赐之盟,曰‘世世子孙无相害也’!载在盟府,太师职之。桓公是以纠命诸侯,而谋其不协,弥缝其阙,而匡救其灾,昭旧职也。及君即位,诸侯之望曰:‘其率桓之功!’我敝邑用不敢保聚,曰:‘岂其嗣世九年,而弃命废职?其若先君何?君必不然。’恃此以不恐。”
齐侯乃还。
一直觉得春秋是个很神奇的时代。其神奇之处,在《古文观止》选自《左传》的这篇文章中就有体现。
齐孝公要侵伐鲁国,还没有到边境,就碰见了前来“犒师”的鲁国大夫展喜。对于齐孝公所谋,两方面都是心知肚明的。齐孝公做事也够光棍,劈头就是一句“我要打你国,你国人害怕不?”展喜倒也从容,“小人恐矣,君子则否”。齐孝公就纳闷了,你鲁国又贫又弱,地里连根草都不长,你凭什么不害怕?展喜就说,君子们不害怕的原因不是我国国立很强,而是你我两国关系好啊,老早就是睦邻友好关系了;而且,您爹是个大好人呀,您肯定也是好人,好人怎么会打别人呢?齐孝公一听,“嗯,说的不错,在理。我不能打你,还是回去好了。”齐侯乃还。
战争是游戏吗?不是啊。它关系着国家与人民的命运,是需要严肃认真对待,一点也轻忽不得的。可是,明明已经征伐途中,就要到开战了,却因为听到敌方的几句奉承话就要取消行动,打道回府?!难道发兵前不需要庭前商议、没有对战争将会带来的后果通盘考虑吗?唉,战争就是儿戏,君主的一念可以兴兵,一念可以弥祸。
那么让齐孝公在意的到底是什么?名。或者说义?那么,义到底是什么?在我看来,就是面子。礼义廉耻,都是如此。大概是没有经历之后2000年时间的磨砺吧,他们看不清战争的真正面目——利益,不知道利益攸关、当仁不让的道理。现如今流行“没有永远的朋友,只有永远的利益”这种利益至上观也似乎不被认同。唉,想想看,归根到底,想占有大义、想他人守礼、想成就霸主,这些只是想想就会得到的吗?不是啊。强大的实力才是这一切的坚实后盾!而鲁国正值饥荒,这时候去侵略他正是增强自己实力的好机会。都已经要这么做了,却又半途而废,还真不是霸主的料啊!
P.S.:上面的“展禽”就是大名鼎鼎的坐怀不乱柳下惠啊!
Mar 26, 2009
swapping two variables without using a temp var
Mar 20, 2009
Blogging with Windows Live Writer (WLW) from Ubuntu
Now the problem is solved (nothing is difficult if you take serious of it! :)). I came across this post "How to install Windows Live Writer in Ubuntu(Linux)" when google-ing for the solution. It is easy to deal with the problem. As the blog owner Harihara Kumar put it, what I need to do is just follow the precedure "VirtualBox -> Windows -> WLW". And now it's time to starting blogging locally with WLW!
Following is a screen shot of WLW in Windows in VirutalBox in Ubuntu. hahah!
===============
Don't know what is VirutalBox? "VirtualBox is a general-purpose full virtualizer for x86 hardware. Targeted at server, desktop and embedded use, it is now the only professional-quality virtualization solution that is also Open Source Software. " Want more? No problem. Take a look at its official site: Here.
Mar 19, 2009
linux下c语言socket programming的timeout
cpe416 distributed systems课上的作业要求写一个简单的socket(UDP) program - facility booking system,用client-server的模式写。其中有一个timeout的要求,意思是:client给server发送一个请求,过了一段时间(譬如5秒)之后(timeout了)如果没有收到server的回复,client要再次给server发送请求。
我们group是在linux下用C写这个的,到了timeout这个地方的时候,在网上找到了一个例子。但是原本的code显示timeout功能不怎么明了,我把它改了一点,如下:
#include <STDIO.H>
#include <SYS/time.h>
#include <SIGNAL.H>
#include <STDLIB.H>
void catch_alarm(int);
void aaa();
int main(){
// install signal hander catch_alarm
// to handle the signal SIGALRM
signal(SIGALRM, catch_alarm);
// to start the timer
alarm(5);
aaa();
return EXIT_SUCCESS;
}
// this is the handler called by kernal
// when timer counts to 0
void catch_alarm(int sig){
printf("Alarm Occurred.\n");
}
// pause at the scanf() line to demonstrate
// the timeout function
void aaa(){
int x;
printf("Please enter an integer: ");
// pause at this line
// after catch_alarm() handles the SIGALRM
// signal, this method continues from here
scanf("%d", &x);
printf("You entered %d.\n", x);
}
上面的signal和alarm两个function是这个timeout的重点了。signal这个function的作用呢,正如comments上面些的那样,它会install一个signal handler给SIGALRM这个signal。然后呢,等这个signal到了的时候“signal handler function for a signal is called ’catching the signal‘.”那么,什么时候这个signal来到?这要看alarm()中写了什么。alarm的定义为:
unsigned int alarm(unsigned int seconds);
alarm()的作用就是会让系统在seconds秒之后generate一个SIGALRM的信号来,这个时候signal handler也就是catch_alarm()这个么method就会被调用来处理这个signal了。
signal被处理以后这个程序是怎么往下走的呢,这就是上面的例子所要演示的了。当程序print出来“Please enter an integer:“的时候现不要输东西,等到五秒过后,屏幕上会出来“Alarm Occurred.”字样,这说明signal已经来了,而catch_alarm被调用了。这时候再随便打一个数字,按enter,屏幕上又会有“You entered .”字样。这说明signal来的时候,主程序暂停,handler被调用。而handle过了以后,主程序从哪里停的,它便会从哪里继续下去。
Mar 7, 2009
用程序模拟键盘按键
小众软件的文章“Win7 Appinn Desktop - 模拟 Windows 7 的盲按显示桌面效果”介绍了一个把鼠标移到屏幕左上角或者右下角点一下就可以做到“Win+D”效果的小程序。
这是个挺不错的应用,但是尽管原程序只有几百KB,运行以后它要用到5-6MB。我觉得程序中或许有冗余的东西,不过原程序是用AutoHotkey写的,我对AHK不是很熟悉——确切的说,我也不是很喜欢AHK这类语言。or程序?所以我想要自己写个类似的东西。不过,说实话我的能力实在不是很强。幸好还有Google大婶在。
首先我要做的是实现——用程序模拟键盘按键。
先看一下下面的乱七八糟的C++ code。
// CPP_SimulateWinD.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <windows.h>
/***********
int _tmain(int argc, _TCHAR* argv[])
{
printf("Program Started...\n\n");
LASTINPUTINFO myInfo;
myInfo.cbSize = sizeof(myInfo);
BOOL myResult = GetLastInputInfo(&myInfo);
if(myResult) printf("Get info successfully...");
printf("...Program Completed\n\n");
system("PAUSE");
return 0;
}
*******************/
INPUT *key;
INPUT *key2;
INPUT Inputs[2];
void _SendInput(char ch);
void _SendInput();
void _SendInputV2();
void main(){
char end;
HWND windowHandle = FindWindow(0, "*new 1 - Notepad++");
//INPUT *key;
if(windowHandle == NULL)
printf("Notepad++ window not found.");
SetForegroundWindow(windowHandle);
Sleep(1000);
key = new INPUT;
key2 = new INPUT;
//for(int i='A'; i<'Z'; i++){
// _SendInput(i);
//}
//_SendInput();
_SendInputV2();
printf("Key inputted.");
system("PAUSE");
}
void _SendInput(char ch){
key->type = INPUT_KEYBOARD;
key->ki.wVk = ch;
//key->ki.wVk = VK_LWIN;
key->ki.dwFlags = 0;
key->ki.time = 0;
key->ki.wScan = 0;
key->ki.dwExtraInfo = KEYEVENTF_KEYUP;
SendInput(1, key, sizeof(INPUT));
//key->ki.dwExtraInfo = KEYEVENTF_KEYUP;
//SendInput(1, key, sizeof(INPUT));
Sleep(500);
}
void _SendInput(){
key->type = INPUT_KEYBOARD;
//key->ki.wVk = 'D';
key->ki.wVk = VK_LWIN;
key->ki.dwFlags = 0;
key->ki.time = 0;
key->ki.wScan = 0;
//key->ki.dwExtraInfo = KEYEVENTF_KEYUP;
key->ki.dwExtraInfo = 0;
SendInput(1, key, sizeof(INPUT));
key2->type = INPUT_KEYBOARD;
key2->ki.wVk = 'D';
//key2->ki.wVk = VK_LWIN;
key2->ki.dwFlags = 0;
key2->ki.time = 0;
key2->ki.wScan = 0;
//key2->ki.dwExtraInfo = KEYEVENTF_KEYUP;
key2->ki.dwExtraInfo = 0;
SendInput(1, key2, sizeof(INPUT));
key->ki.dwExtraInfo = KEYEVENTF_KEYUP;
SendInput(1, key, sizeof(INPUT));
key2->ki.dwExtraInfo = KEYEVENTF_KEYUP;
SendInput(1, key2, sizeof(INPUT));
//key->ki.dwExtraInfo = KEYEVENTF_KEYUP;
//SendInput(1, key, sizeof(INPUT));
Sleep(500);
}
void _SendInputV2(){
memset(Inputs, 0, sizeof(INPUT));
Inputs[0].type = INPUT_KEYBOARD;
//Inputs[0].ki.wVk = VK_LWIN;
Inputs[0].ki.wVk = 'F';
Inputs[1] = Inputs[0];
Inputs[1].ki.wVk = 'D';
SendInput(2, Inputs, sizeof(INPUT));
//Release WinKey + D
Inputs[0].ki.dwFlags = KEYEVENTF_KEYUP;
Inputs[1].ki.dwFlags = KEYEVENTF_KEYUP;
SendInput(2, Inputs, sizeof(INPUT));
}
如上面code中所示,三个methods分别用来做:
void _SendInput(char ch):接受一个character,并把它发送给当前in focus的窗口,相当于按了一下相对应的键。
void _SendInput():我是想要做出Win+D的show desktop的效果的,这个method和下一个都是这个目的。不过,这个里面,WInKey和D是分别定义的,当然在SendInput() method也是被call了两次。结果是这样子不行,所以有了下面的Version。
void _SendInputV2():这个里面WinKey和D定义在一个INPUT array里面,而SendInput()同样只调用了一次,pass给它的是那个array。这个成功了。
有一点需要注意的是,在SendInput()模拟过Win+D之后要set两个INPUT structure的ki.dwFlags成KEYEVENTF_KEYUP再调用一下这个SendInput(),这样子就release了WinKey+D键了——因为第一次SendInput()时,两个按键是被按着(press)并没有放开(release)的,而改过上面所说的flag后,再一次SendInput()就相当于松开了两个按键。
另外,code中用到的几个function,在MSDN中都有相应的条目。
SendInput Function
FindWindow Function
INPUT Structure
KEYBDINPUT Structure
另外一篇中文的文章“用应用程序模拟键盘和鼠标按键”提到了用Keybd_event和mouse_event这两个function来做同样的事情。这两个function连同上面我用到的几个都是MSDN Library中的,等有时间了我再研究一下它们的异同吧。
Feb 28, 2009
Windows Live Writer Error 501 Permission denied
前几次想要在Windows Live Writer里设置字体的时候,点了Font就会蹦出一个错误dialog出来。如下:
Google一下,在WindowsKB这个网站找到了解决的办法。如下:
Error 501 Permission denied selecting font
- In Internet Explorer: Tools, Internet Options, Security for Internet
and Trusted Zones select Custom Level set "Navigate sub-frames across
different domains" to Enable.
- You can also select Prompt instead of Enable. This makes IE a little
more secure (although this isn't a major security risk) with the minor
annoyance of having to click Yes when prompted for the error.
吕思勉《中国史》笔记
鸦片的由来:
鸦片是从唐代就由阿剌伯人输入的。但只是做药用。到了明代,烟草从南洋输入,中国人开始吸食,其和以鸦片同熬的,则称为鸦片烟,才成为嗜好品。当时鸦片由葡萄牙人输入,每年不过二百箱。而吸食鸦片烟,则当一七二九年之时,已有禁例。自英国东印度公司,垄断在中国的贸易后,在印度地方,广加栽种,而输入遂多。乾隆末年,粤督奏请禁止入口。嘉庆初年,又经申明禁令。鸦片自此遂成为无税的私运品,输入转见激增。海关每年,漏银至数千万两之巨。(P184)
则徐既至粤,强迫英商,交出鸦片二万零二百八十三箱,悉数把他焚毁。(P185)
朝堂上的大官们真是想得轻松,他们动动嘴皮子说了几个“不”字,以为自己的命令就被完完整整地执行了。可惜,就算下面的官儿认识他,英国走私船不认识他;下面的官儿就算认识他,却更认识英国走私船上送出的银子;而以后就算那些兵(如果他们还可以成为兵)不认识那些走私船,兵们确实更加不认识走私船背后的军舰利炮的。
当时广东按察使王廷兰,写给人家的信,说:“各处调到的兵,纷扰喧呶,毫无纪律。互斗杀人,教场中死尸,不知凡几。”甚而至于“夷兵抢夺十三洋行,官兵杂入其中,肩挑担负,千百成群,竟行遁去。点兵册中,从不闻清查一二”。又说:从林则徐查办烟案以来,“兵怨之,夷怨之,私贩怨之,莠民亦怨之,反恐逆夷不胜,则前辙不能复蹈”。而刘韵珂给人家的信,亦说:“除寻常受雇,持刀放火各犯外,其为逆主谋,以及荷戈相从者,何止万人?”人必自侮而后人侮之,这真可使人悚然警惧了。(P186)
难道林则徐也只是个热血书生吗?只看到了别人往自己身上泼脏水,却不知道自己原本已经是烂疮满身了;只知道要禁绝了这害人的鸦片,却没有考虑禁烟带来的后果?
当然,哪个中国人敢说不应该禁烟他X的就不算个人了。但是,好比一个重病患者,你给他一剂猛药他是会跳一下,但是马上他就被猛药振得灵魂出窍了。如果看得清楚当时全国上下内外的情形的话,林则徐禁烟就应该有个章程,徐徐图之,而不是那种一棍子伤害了周围所有人的利益,而又抵不住他们的反扑,搞得情形更加严重。
事情已经过去快两百年了,我也是站着说话不嫌腰疼,放放马后炮而已。
Feb 27, 2009
吕思勉《中国史》摘记
“人必自侮,而后人侮之”,以中国之大,岂区区东北一个小部落所能吞并?金朝的兵力,不算不强,然而始终不能吞并南宋,便是一个证据。然则明朝的灭亡,并非清之能灭明,还只是明朝人的自己亡罢了。(P163)
世宗死后,高宗继之。高宗在表面上,是专摹效圣祖的,但他没有圣祖的勤恳,又没有世宗的明察,而且他的天性是奢侈的,正合着从前人一句话,“内多欲而外施仁义”。在位时六次南巡,供帐之费无艺。对外用兵,所费亦属不赀。凡事专文饰表面,虚伪和奢侈之风养成了。而中年后,更任用和珅,其贪黩为古今所无。内外官吏,都不得不用贿赂去奉承他。于是上官贪取于下属,下属诛求于小民,至其末年,内乱就一发而不可遏了。(P172)
“国于天地,必有与立。”清朝历代的君主,对于种族的成见,是很深的。他们对于汉人,则提倡尚文。一面表章程、朱,提倡理学,利用君臣的名分,以箝束臣下。一面开博学鸿词科,屡次编纂巨籍,以牢笼海内士大夫。但一面又大兴文字之狱,以摧挫士气。乾隆时,开四库馆,征求天下的藏书,写成六部,除北京和奉天、热河的行宫外,还分置于江、浙两省。看似旷古未有的盛举,然又大搜其所谓禁书,从事焚毁。据当时礼部的奏报,被焚的计有五百三十八种,一万三千八百六十二卷之多。(P173)
===========
圣祖是康熙,世宗是雍正,高宗是乾隆。
无艺:①没有准则、法度:用人~。
②没有限度:贪贿~。
===========
《中国史》——吕思勉著——上海古籍出版社,2006,7
Feb 24, 2009
3ds Max failed to initialize properly
真是烦呢!
上次也遇到一个类似的问题而打不开Max,但是那个好像是Comodo防火墙的问题,我卸了Comodo问题也就解决了。这次,……
Google了一下这个问题,好多相同遭遇者啊!回答问题的人却很少~
有很多人说是Windows的问题,建议重装系统!(竟然这样建议~)。也有人提到了visual studio 2005.我昨天刚刚把VS2005卸掉的啊——因为我把XNA升级到了3.0,电脑中已有VS2008,所以我觉得2005是多余的了,就把它卸掉了。没成想……
但是,到底是什么原因导致如此,我还不清楚。现在先玩玩XNA,有空了再搞Max吧。
Feb 18, 2009
用syntaxhighlighter在Blogger语法高亮
网上有现成的工具,我google了一下,用的是Google Code中alex.gorbatchev的syntaxhighlighter,按照Abhishek Sanoujam的这篇blog设置的。
1.从syntaxhighlighter的project home下载它。解压缩后可以看到文件夹、文件如下:
+---ScriptsUncompressed这个文件夹何用我不清楚,我用到的是另外两个。从Scripts文件夹里可以看出,syntaxhighlighter支持的语言包括C++、C#、Java、PHP等12种(不错,够我用的啦)。
¦ clipboard.swf
¦ shBrushCpp.js
¦ shBrushCSharp.js
¦ shBrushCss.js
¦ shBrushDelphi.js
¦ shBrushJava.js
¦ shBrushJScript.js
¦ shBrushPhp.js
¦ shBrushPython.js
¦ shBrushRuby.js
¦ shBrushSql.js
¦ shBrushVb.js
¦ shBrushXml.js
¦ shCore.js
¦
+---Styles
¦ SyntaxHighlighter.css
¦
+---Uncompressed
¦ clipboard.swf
¦ shBrushCpp.js
¦ shBrushCSharp.js
¦ shBrushCss.js
¦ shBrushDelphi.js
¦ shBrushJava.js
¦ shBrushJScript.js
¦ shBrushPhp.js
¦ shBrushPython.js
¦ shBrushRuby.js
¦ shBrushSql.js
¦ shBrushVb.js
¦ shBrushXml.js
¦ shCore.js
2.上传文件夹Scripts和Styles里的共15个文件到网上,Google Pages不能用了,所以我用的是yahoo的GeoCities。(Notes:其实也用不到所有的文件,Scripts文件夹中除了clipboard.swf和shCore.js,其他的文件根据各自需要上传就行了,像我不做关于Ruby、Delphi、Python方面的东西,相应的三个文件shBrushRuby.js、shBrushDelphi.js和shBrushPython.js我就没有上传。)
3.修改Blogger的模板,这个在Blogger的“布局->修改HTML”中完成。
首先,在<head>这个tag后面添加如下:
上面的%Path%应该是相应的你上传的各个文件的地址。
然后,在</body>这个tag之前加入一下几行代码:
保存模板。
4.现在可以开始编辑新blog了。在你的codes前后加上<pre>或者<textarea>tag,设置它的name为code,class为相应的语言就行了。如下:
(Notes:Java, C++ or C#的时候用<pre>tag;xml和html的时候最好用<textarea>,因为这个时候有<和>。)
测试 syntaxhighlighter
import java.math.BigInteger;
import java.security.SecureRandom;
public class Rsa {
private BigInteger n, d, e;
public Rsa(int bitlen)
{
SecureRandom r = new SecureRandom();
BigInteger p = new BigInteger(bitlen/2, 100, r);
BigInteger q = new BigInteger(bitlen/2, 100, r);
n = p.multiply(q);
BigInteger m = (p.subtract(BigInteger.ONE )).multiply(q.subtract(BigInteger.ONE ));
e = new BigInteger("3");
while(m.gcd(e).intValue()>1)
e = e.add(new BigInteger("2"));
d = e.modInverse(m);
System.out.println("P: "+p);
System.out.println("q: "+q);
System.out.println("m: "+m);
System.out.println("n: "+n);
System.out.println("d: "+d);
System.out.println("e: "+e);
}
public BigInteger encrypt(BigInteger message)
{
return message.modPow(e, n);
}
public BigInteger decrypt(BigInteger message)
{
return message.modPow(d, n);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
BigInteger message = new BigInteger("1234567890");
//BigInteger ciphertext;
//System.out.println(message.intValue());
Rsa rsa = new Rsa(100);
System.out.println(rsa.encrypt(message)+"\n");
System.out.println(rsa.decrypt(rsa.encrypt(message)).intValue());
}
}