我这篇里面所说的,是读《水浒传》的人,向来所忽略的一件事。而《水浒传》一个最大的缺点,就在这里。是什么?就是地理。
《水浒传》上所引的地名,有许多还和现在的地名相同,这是我们不必费考证的工夫,可以看得出来的。就是地名现在或有不用的,也很容易证得所在。我现在先把梁山泊老巢考证一下。在《水浒传》第十回上,柴进对林冲说出梁山所在。他说:
一是山东济州管下,一个水乡,地名梁山泊······
由此,我们知道作者以为梁山在山东济州了。我们再考一考济州:
东晋,在荏平西南,立城。后魏,设济州。隋,废济州。唐,在卢县设济州,河水冲废。五代周,复设济州,在现在巨野县。宋,沿用周制。
据上面的沿革看来,我们知道那个时候的济州,就是巨野,决不是荏平,也不是金以后的济宁。这个地方不是平陆吗?何以周围有数百里的水泊呢?原来汶、济二水,从前在郸城以北,会合成湖,宋朝黄河决口,水又流入,所以成了很大一个湖泊。它的界限,南是郸城,北是寿张,东是东平。寿张的南方,有一个小山,名叫良山,后改为梁山。湖水大了,将山围在中间,所以名梁山泊。后来黄河淤塞了,济、汶二水,也改了道,就成为平陆。现在的雷夏泽、蜀山湖,就是它的遗迹。
梁山泊的地方,既然如此,似乎不是宋济州附近。书上大书特书济州,无论是巨野还是荏平,都不对的。我们在这里,还可以找个有力的证据:
《宋史目》:宋江起为盗,以三十六人,横行河朔,转掠十郡,官军莫敢撄其锋,知亳州侯蒙上书,言江才有大过人处,不若赦之,使讨方腊以自赎。帝命蒙知东平府,未赴而卒。
据此,可以知道要招抚梁山,用得着东平府。东平在济州北,当然梁山在济州北了。可是《水浒传》第十四回,吴用说阮氏三雄云:
这三人是弟兄三个,在济州梁山泊边石碣村住。
又晁盖说:
石碣村离这里,只百十里以下路程。
按晁盖所住,在郸城县东门外东溪村,郸城在巨野之西北,靠近东平,何以晁盖要到梁山泊下边,转向南跑到百里路程的济州去呢?
《宋史》上曾说道:
宋江起为盗,以三十六人,横行河朔,转掠十郡,官军莫敢撄其锋。
这样说来,也不过是在黄河以北,很为猖獗。转掠十郡,也不过鲁、豫、幽、燕各处,离着梁山泊不远的地方,决不能像天兵一样,可以在半空中来,不论远近地干。但是《水浒传》所载梁山军所到的地方,就神妙莫测,在全国都如入无人之境。现在以梁山为中心,把四围用兵的地方,统计于下:
梁山以北
大名府今为大名县(河北省) 高唐州今为高唐县(山东省) 祝家庄由蓟州到梁山之路上(山东省) 东昌府今为聊城县(山东省)
梁山以东
青州今为益都县(山东省)
曾头市在青州(山东省)
东平府今为东平县(山东省)
梁山以西
华州今为华县(陕西省)
少华山华州境内(陕西省)
梁山以南
江州今为九江县(江西省)
芒碣山今沛县境(江苏省)
无为军今无为县(安徽省)
以上各地,除了东北两部分而外,西南两处,是万说不过去的(三山聚义打青州,亦极荒谬,后详言之)。我们先说华州一战。
华州属陕西省,在潼关以内。若是由梁山去打华山,正是自东而西,非穿过河南不可。梁山军马起程,必是在水泊西岸登陆,由寿张之南,经过观域、濮阳、卫辉、孟津、洛阳、潼关等地。那个时候,宋都开封,开封叫作东京,洛阳叫作西京。梁山军马若走卫辉,直抚东京之背。宋朝决不会让他们过去。况且那个时候,金兵年年南犯,河北是东京的门户,自然有重兵守着。梁山军入陕,正好穿过东京—河北这一条军事直线。纵然瞒着过去,在打破华州之后,东京必然知道消息。马上传令河北各处,用兵断其去路。梁山兵孤军深入,插翅也难飞吧?况且洛阳是西京,又有虎牢、潼关之险,来去都不容易的。
就以华州而论,《水浒传》也有绝大的漏洞。《水浒传》八十五回说:
且说一行人等离了山寨,径到河口下船而行。不去报与华州太守。一径奔西岳庙来。戴宗先去报知云台观主,并庙里职事人等,直至船边,迎接上岸。
这几句话,可以总结本回地理之糟。
按华山在华阴县之南,少华山在华州之南,渭河在华阴、华州之北。用不着到华州去,华阴却在华州之东。由东京到华岳庙进香,过了潼关,就可在华阴以北停船。和少华山正是一个东北,一个西南。梁山军自少华山来劫使船,必定穿过关中大道(华州、华阴之间)。那个时候,华州固然是开了城,华阴却没有提到。梁山军把进香官劫上山,回头又上船到华岳庙去,来来往往共有四次。最后入庙进香,是非经过华阴不可的。华阴官军一点不知道吗?再说华岳庙在华阴西门外五里。灵台在岳庙南十里,在岳庙厮杀,绝无华阴县官军不闻不问之理。参观《水浒传》原书,是以为渭河在华阴之南,少华山又在渭河之南,因之本回如此作法。
而且以为渭河直通华山与少华山脚下,到华州城边。所以第五十八回,又有如下几句:
宋江急叫收了御桥吊挂下船,都赶到华州……众人离了华州,船回到少华山。
这一条渭河,如随身法宝一般,书上爱放在哪里就在哪里,无怪船是无处不可到了。然而华阴人看了,必定纳闷。