0day和PT站扫盲贴

0day及高清PT站扫盲帖(转)作者: 刘晓光

  1. 0DAY泛指所有在官方发布某作品之前或者当天,由网络上的爱好者破解发布的版本。主要涵盖了影视、软件、游戏、音乐、资料等诸多方面。

  2. 0DAY的主要目的是交换和分享。完全非商业化、非盈利、志愿的行为。市场上的盗版光盘,其来源可能来自于0DAY,但那非0DAY的本意。

  3. 0DAY的核心传播途径是FTP。不是PT,也不是任何形式的P2P(电驴、BT、磁力链接等),更不是迅雷、网盘、QQ中转站等。迅雷、电驴之类的玩意儿,说白了都是靠0DAY养活的。虽然不可否认绝大多数下载者是通过迅雷和电驴获取0DAY资源的。但他们要比走FTP的人获取的时间要晚上三天甚至更多,因为他们是无法进入0DAY的FTP服务器的。

  4. 0DAY的FTP服务器的更新速度也又千差万别,一方面是由于其本身所处的层次不高,另一方面其带宽有限。最高级别的0DAY FTP服务器,叫做topsite.几乎所有的专业资源的源头都是这些topsite.

  5. 世界上有很多破解爱好者,他们组成一个个小组,成为0DAY的主力军。一般来说,MovieZ(包括TV)是0DAY最大的主力军,其次是MusicZ和GameZ。

  6. 各大破解小组中,一部分制作水品较高、发布速度较快的小组,被获许进入topsite,也就是说将他们的作品上传到topsite的0DAY FTP服务器上,这些小组便通过这些topsite相互交换了自己的作品。除了为数极少的topsite,还会有很多层次低一些的site,这些site 无时无刻不从topsite上下载资源,然后会有人从这些数量较多的FTP上下载作品,发布到各大PT、电驴还有迅雷等媒介上。这样,一部0DAY作品便完成了从制作到流传到大众的全过程。so,大量优秀的作品便通过一个个topsite传到了世界各地。

  7. 全球ODAY组织没有一个中央集权的统一领导,一个完整的ODAY单体组织称为topsite,领导者称为op。topsite由IRC(一种聊天程序)和FTP组成,IRC负责交流,FTP负责发布作品。进入topsite需要极严格的审查程序,包括对申请者的技术、资源甚至是人品。topsite 下属若干由admin领导的group(团队,简称grp),他们负责制作“产品”并最终汇总到topsite中进行统一发布。 topsite中,有负责提供片源的supplier、负责制作的ripper、负责在站点间传输的racer等等。

  8. 其实软件漏洞的破解是0DAY的鼻祖,也是狭义上的0DAY,但由于专业度太高,受众较小,受关注度也较小。

结合国内目前现实的影视制作分布状况,简单介绍一下目前国内影视和获取影视资源的手段及途径。

高清电影(HD Movie)

1.高清电影有两个主要来源,一个是0DAY,另一个是PT。

0DAY发布

0DAY小组通过topsite FTP发布作品,虽然各大PT都有0DAY组作品的发布,但这并不是他们的原创作品,只是对0DAY作品的转载(ZZ)。想要获取第一手的0DAY高清电影,必须拥有0DAY FTP账号,并且级别越高越好,账号速度越快越好。在0DAY的FTP中,通常在目录“x264”中更新HD高清电影。高清电影中比较有名的0DAY release group有:CBGB、aAF、CTU、DIMENSION、REFiNED、REVEiLLE、SEPTiC、SiNNERS、TERRA、 AVS720、LCHD、HUBRIS、BestHD、AMIABLE、、SSF、aBD、METiS等

PT发布

高清电影由于其庞大的体积,FTP传播方式并不是十分理想,因此PT(Private Tracker)应运而生。可以说PT为高清而生,因而越来越多的PT活跃在因特网上,很多PT都是做高清起家的。这些小组通常会选择一个PT为自己的首发地,这些小组也就成了该PT的所谓“工作组”。比较有名的PT及其工作组简介如下。

###【HDB】

全称HDBits,地址:http://hdbits.org

拥有的工作组:ESiR,CtrlHD,EbP,DON(四大“TOP组”,ESiR已经不再HDB发片,但tracker上仍有众多ESiR的种子)

简介:瑞典人开的高清PT站,也是全球最大的高清PT综合站,号称“全球第一PT“。其工作组ESiR、CtrlHD、EbP、DON也被广大高清爱好者奉为“TOP组”,压制质量非常高,收藏之首选,因为压制极为精细,故出片较慢。同时HDB也是世界上上最大的原盘基地,几乎所有站的原盘都会往HDB 发。HDB上面充斥着全球的大水管,资源丰富,几G的资源几分钟到十几分钟就可以出种,生存极难。而且从08年开始禁中国用户,只有08年以前的老账号才可以用。

###【HD-Torrent】

地址:http://hd-torrents.org

拥有的工作组:HiDt,EuReKA

简介:一个高清站点,不允许上传非高清资源,拥有自己优秀的压片小组,及很好的优惠政策,内部小组所压制的作品都会有银币标记(银币种子为50%下载及 100%上传);当然也有很多其他的黄金种子(freeleach)。此站不仅有很丰富的高品质影视,视频资源,同时也允许上传一些高品质的音乐资源。此站有连坐制度:1,如果你邀请的人试图作弊,你将被T;2,你所邀请的人曾经拥有过帐号,那么连带你在内的及你所邀请的每一个人都会失去邀请资格,而且你本人也有可能被BAN;3,如果你所邀请的人试图交易帐号或者邀请,那么连带你在内的你所邀请的所有人都会失去邀请资格,同时你也有可能被BAN.

以上是两个比较好的国外PT站点,下面介绍国内的几个PT站点及其工作组。

###【HDC】

全称HDChina,地址:http://hdchina.org

拥有的工作组:SiHD

简介:前“中国高清第一站”,著名的高清组WiKi在2010年4月之前的首发站。当年称霸一方,在国际上也有直追HDB的势头。依靠国内诸多大水管以及 WiKi的优质作品而飞黄腾达,多年雄霸“中国第一高清站”宝座。2010年4月WiKi小组出走,投奔TTG的怀抱,HDC一蹶不振。不过瘦死的骆驼比马大,HDC仍然是中国目前综合规模前两位的PT站,但其工作组SiHD在国内认可度仍然很低,国际上几乎没有知名度。HDC的前景并不看好。

###【CHD】

全称CHDBits,地址:http://chdbits.org

拥有的工作组:CHD

简介:CHD是国内最早做高清的小组,早期作品质量不敢恭维,随着时间的推移,CHD小组的作品早已是国内一流,世界知名。早期和思路、WiKi三足鼎立。后来思路分裂并且逐渐式微,CHD一度为HDC及其工作组WiKi压制。随着WiKi出走TTG,CHD趁机座上了中国第一高清站的宝座。目前,CHDBits出产的原盘无论在数量上还是速度上都可以说是国内第一,微微领先于WiKi。

###【TTG】

全称:TorrenTGUI,地址:http://torrentgui.com

拥有的工作组:WiKi

简介:TTG的前身是游戏PT站GameGui,后来在GG老大MeGUI的“策动”下,WiKi及HDC很多发原盘的元老集体出走TTG,致使HDC元气大伤。由于获得了HDC的绝大多数精华,TTG一举成名。由于其本身丰富的游戏资源,TTG正大步迈向中国最大的综合PT站。TTG也是目前中国最具生命力的PT,也是目前唯一一个有希望挑战CHD的PT。

WiKi小组是近年来中国最成功的高清压制组,其作品流传甚广,制作标准严格,码率丰厚,出片速度足够快。早年依托HDC,现常驻于TTG,目前和CHD争霸于国内的高清重编码战场上。

###【HDR】和【HDS】

全称:HDRoad、HDStar

地址:http://hdroad.org http://www.HDStar.org

拥有的工作组:MySiLU、SILUHD

简介:这两家PT的前生都是思路高清,后来思路分裂,各自仍自称“思路”,但小组名为一个叫SiLUHD,一个叫“MySiLU”。两家PT目前人气都不怎么样,无论种子数目还是下载速度。分裂前思路早期的重编码作品在质量上是要优于老对手CHD的,但后来分家后,两家思路无论在出片速度还是压制质量上都落后于CHD。看来,窝里斗还是中国人的几百年不变的劣根所在啊。这也告诉我们,肢解敌人的最好办法就是挑起他们内部的“窝里斗”。开个玩笑,哇咔咔~ 不过不得不提HDR的源盘质量确实是首屈一指的!

综上所述,想获取第一手的HD资源,要么混0DAY,要么混PT。永远不要考虑电驴啦,迅雷啦,更不要考虑网盘啦,QQ啦。。。那些东西不仅下载慢,发布就比别人慢几天。两者相叠。。自己算吧

###【TLF影视论坛】

【地址链接】 http://www1.eastgame.org:8088/ 旧版论坛:http://pw.eastgame.org:8088/ (老资源帖仍可以访问,但无更新)

【主打格式】 MiniSD、MiniHD、TLF-iNT

【论坛综述】 1.TLF论坛是大陆老牌资源论坛,这些年虽然有些落寞,但其核心产品仍然很具有竞争力,论坛目前可以注册。 2.TLF目前主推的视频媒介为MiniSD,MiniSD定位于“桌面高清”,即小高清。横向分辨率800-864,体积平均每部800M,片源多数采用BD720p,少数采用BD1080p、DVD9,或者HDTV片源,压制规范、精益求精。TLF期望用RMVB的体积,获取超过DVD,逼近高清的 “桌面高清”效果。事实证明,TLF制作的MiniSD流传甚广,的确做到了“小体积,高画质”的典范。 3.MiniHD是定位于MiniSD之上,720P之下的一种BDRip,横向分辨率1280,体积平均1.9G。MiniHD片源至少采用重编码 BD1080p,少数优秀影片用原盘压制。MiniHD定位“低码720p”,即“准高清”,画质已经非常接近BluRay 720p的效果,而体积只有720p的1/3-1/2。非常适合希望欣赏高清画质又不想下载4-6G体积高清片的朋友。 4.TLF-iNT是TLF数年来雷打不动的核心产品,片源一律采用BD/HDDVD原盘,并用极限参数压制,试图在有限的码率下将画质提升到最高。 TLF-iNT的体积一般为1.37GB或者2.05GB,平均每部1.7GB左右。由于iNT压制组人员缺乏,TLF-iNT最近产量持续下降,但对于一些经典片,TLF-iNT不失为一种高性价比的收藏媒介。

【下载攻略】 1.MiniSD的发布方式一般为115网盘、RayFile网盘、QQ中转站/QQ公共邮箱。除了RayFile网盘速度比较2,QQ和115都是非常适合BIT网络的网盘分享途径。 2.MiniHD的发布方式基本为115网盘,偶尔会有RF(RayFile)的分流。 3.iNT主要通过FTP发布,通过RF网盘分流。但想要第一时间获取TLF-iNT,必须前往FTP服务器下载。【TLF论坛】初级会员/活跃会员都可以找到合适的FTP服务器下载iNT,速度100k. 4.IPV6 PT上也有不少TLF的作品,有条件的可以去淘一淘。

【推荐指数】 ★ ★ ★ ★ ★

###【XTM影视论坛】

【地址链接】 http://xtmhd.com 【花花世界】:http://www.playmov.com/ (此站位XTM的马甲站,专门用来放广告和逃避风险用)

【主打格式】 HALFCD2、XTM-480p、0DAY-DVDRip

【论坛综述】 1.XTM源自TLF,这一切都起因于2年前的一场动荡,导致TLF相当一部分主力军独自成了XTM。此话不多谈。 2.所谓的HALFCD2,其实就是HALFCD,XTM在后面加了个2,无非就是想把自己和老TLF划清界限却又舍不得放HALFCD而已。 HALFCD2是一种体极小,画质尚可的视频媒介,mkv封装,分辨率一般640线以下,体积品均每部350M左右。HALFCD可以用移动传媒播放,用显示器播放HALFCD确实够呛,更不用说高清电视了。 3.XTM-480p,发布有一阵没一阵的,更新很不规律,压制质量也很一般,不过管理员要是闲着,出片速度还是很快的,一般比蓝光片源晚1、2天出。一般体积在1.5G左右。 4.毫无疑问,XTM的核心产品非0DAY-DVDRip莫属。目前cn(大陆)地区最强悍的0DAY小组非XTM莫属了,事实上整个cn除了XTM再也早不到第二家像样的0DAY小组。因此6区DVD基本也被XTM通吃。基本上所有大陆发行的新碟,XTM会第一时间放出0DAY rls. 5.XTM人称“小太妹”,或者“洗头妹”,这点作为cn地区的0DAY常识是必须牢记在心的。 6.XTM及其马甲站广告之多,前无古人,后无来者。。。

【下载攻略】

1.HALFCD2和480p最前会在【花花视界】中以【快车下载链接】的形式放出。注意允许IE“运行当前加载项”,否则无法弹出快车链接。现在HALFCD2基本靠这一种方式分流,北理校园网并不是很方便。

2.XTM有非常强大的FTP服务中心,拥有国内更新速度极其快捷的site,还有自称“200TB+”的FTP仓库(我没进去看过,不可考证),如果你能混进XTM的工作组,那你将拥有在各大PT首发所有0DAY rls的能力。不过XTM的0DAY site不是那么好进的,需要努力为之干活才行。

3.当然了,不出意外,国内所有的0DAY site都会有XTM的0DAY rls更新,只不过更新速度好坏不等。能够进任何一个site,你都能获取第一手的XTM 0DAY rls,时间也就差半个小时到两个小时左右。不过能不能在各大PT抢到首发,就看你的运气了。

【推荐指数】 ★ ★ ★ ★ ★

###【人人影视YYeTs】

【地址链接】 http://yyets.net

【主打格式】 HR-HDTV、RMVB

【论坛综述】

1.国内目前几个比较好的字幕组之一,不仅字幕做的不错。FTP中心也很强大。能够混进YYeTs的0DAY site,你将有跟XTM的人抢首发的能力。

2.HR-HDTV是目前出片量比较大也是比较快的一种Rip,下载途径也比较多,一般有磁力下载、电驴、快车、BT发布等。出快车外校园网用迅雷都会有一些速度,如果你有米,迅雷离线将是非常适合【人人影视YYeTs】的下载的。迅雷离线可以迅速的将资源下载到迅雷的服务器上,然后你再从从迅雷服务器下载到本机。

3.HR-HDTV片源采用720P,压出的片子为mkv封装,x264+AC3编码,分辨率固定为1024*576,体积平均1.7G左右,画质良好。

4.HR-HDTV使用YYeTs字幕组原创字幕,翻译质量优秀,但压制的时候将字幕压进了视频中,无法消除,称“硬字幕”。字幕双语双排,占用比较大的画面,不MiniSD/MiniHD方便。

5.人人影视发布的RMVB可以说是缩小版的HR-HDTV,除了压制方案改为了RMVB+AAC,是目前网上比较优秀的RMVB。

【下载攻略】

1.快车发布的影片,可以尝试“快车+搜狗浏览器代理”的方案。利用搜狗浏览器的代理进程,快车可以得到很理想的速度(此方案经常会抽风,不过仅靠正常的外网下快车速度绝对是零)。

2.磁力链接/电驴/BT发布的影片,推荐用迅雷离线。迅雷的下载服务器之强大不必多余,由于在教育网有分流节点,当你从迅雷服务器往本地下载的时候会有相当满意的速度。QQ中转站发布的资源可以直接高速HTTP下载。

3.IPV6 PT上也有不少人人影视的作品,有条件的可以去淘一淘。

【推荐指数】 ★ ★ ★ ★

###【圣城家园】

【地址链接】 http://bbs.cnscg.com/

【主打格式】 低码720p(其实更应该叫伪720P)MKV、720p RMVB、高码率MKV

【论坛综述】

1.圣城家园的字幕组还是相当不错的。

2.伪720P是圣城最拿手的活,不过对于这种拿重编码RERiP的720P的行为实在不敢恭维。标准720P片源压制480P左右分辨率差不多,720P压制720P实在是有点。。。急功近利了。虽然对外圣城官方宣称是拿1080P做片源压制720P,不过根据实际出片时间判断,其实是拿 720P压的720P。

3.另外,圣城把字幕弄进mkv文件中,虽然这样做无可厚非,但把字幕弄成那么个特效确实有点让人难受。虽然可能很多人觉得看着还挺习惯。

4.将2.35:1的片子认为放大到16:9添加黑边着实是一种及其浪费码率的愚蠢行为。

5.虽然片子本身质量不高,但圣城的发布速度和分流途径却非常棒。只要是已经有了的HD高清电影,圣城一定会在第二天推出相应的720p RERIP rls.

6.圣城家园的所谓“高码率MKV”虽说在片源和码率上达到了标准720P的水准,但由于依靠外部原盘片源,跟新速度很慢,只能做老片,很少有更新新片。并且片子做的也很不专业。至于圣城的720P分辨率的RMVB,在业界还是有一定地位的。

【下载攻略】

1.圣城家园的分流方式主要BT、QQ、迅雷、快车。QQ和迅雷可以直接用校园网获取高速,BT则可以利用迅雷离线下载,快车可以利用搜狗代理。

2.IPV6 PT上圣城的伪720P成堆。。不过不推荐大量转载。

【推荐指数】 ★ ★ ★

###【CHD 480p】

【地址链接】 http://www.chdtv.net

【主打格式】 480p(这里不提及CHD的高清)

【论坛综述】

1.CHD的480p格式及命名方式传承高清的标准,不愧高清站点风范。体积上采用的0DAY规范,以CD的整数倍出现,一般1.4BG(2CD)2.1GB(3CD)。

2.480p永远分辨率只有两种:848352、848480,分辨率和720p、1080p一样规范。

3.CHD 480p的片源为自家产的CHD 720p,事实上这个分辨率用720p做片源已经基本够了,虽然少数TLF fan依然坚定地认为CHD 480p属于垃圾rls,理由是不像TLF-iNT那样采用原盘做片源压制(其实我就是其中一个 - -)。个人偏好可以理解,但客观事实也不可否认:CHD 480p的压制质量总体良好。

4.视频码率一般在1200k-2000k,音频基本上是整齐的384k AC3。

5.两个主要的分流途径:RayFile网盘、VeryCD。

【下载攻略】

1.对于RayFile网盘,速度极其不稳定是他的最大弱点,并且事实证明CHD的480p在RF上的保留时间并不长,RF保源好的优点被无视了。VC上表情电影基本上已近被CHD所独霸,VC速度相当客观,BIT的同学二可以尝试用迅雷连接emule任务。迅雷离线在此同样可以大发淫威。

2.IPV6 PT上有相当数量的CHD 480p资源。

【推荐指数】 ★ ★ ★ ★

单纯地从0DAY影视(0DAY MovieZ)专业名词角度了解一下0DAY的细节。

##常见0DAY名词解释

DVDRip:由DVD压制而来,最常见的影片来源。  
CAM:来源于摄影机拍摄影院银幕和录制音频,往往带有影院杂声。  
TS/Telesync:来源于摄影机拍摄影院银幕,音频从影院放映机直接接线输出。CAM和TS中国统称枪版。
TC/Telecine:胶片版,直接从电影胶片转制  
DVDScr/DVDSCREENER:来自于用于观摩或展示的DVD   
SCR/SCREENER:来自于用于观摩或展示录影带 上面两个在美国通常用于促销目的,一般会带有一些额外的标记之类,在制作时只好用黑斑遮掉。  
WP/WORKPRINT:来自于工作录影带 有时是导演最终剪接版,有时是未完成版本,留有一些额外镜头。
R5:几大电影制片厂都先在俄罗斯发布DVD零售版。他们以此防范盗版TC(此现象过去相当普遍)的传播。此后,市面上就很少有真正的TC版,所见的TC 版大多数实际上是R5(5区)的零售版。R5是由制片厂制作的,为了和盗版竞争,在画面加工中并不十分清晰。所以,与盗版TC相比,R5的主要区别就是,它是由专业人士在专业制作室内使用专业设备完成的。R5的质量几乎可以媲美DVDScr。
PROPER:完美版 强调优于早期另一个 Group 出的版本。
R-RATE:有删节  
UNRATE:未删节 通常也用于强调,与 R-RATE 对比。
Director.Cut/DC:导演剪接版 一般正式上映版还要通过审查剪辑,哪个国家都有这个程序。
WITH.EXTRAS:带花絮  
WITH.OST:带原声音乐CD  
REPACK:修正版本  
RECODE:对另一个Group已经发布的版本进行修正的版本 较少见,因为 MovieZ一般鼓励自己寻找片源,有时候也写成REPACK。
Dual.Audio/Dual-Audio:双语版  
Tri-Audio:三语版  
WS:Wide Screen:16:9宽屏幕版本的影片,推荐WS版本,因为FS是从WS中截下来的。
FS:Full Screen:4:3 全屏幕版本的影片 有些影片DVD同时有WS和FS两种版本,DVDRip也会有两种)。  
SUBBED:画面内有不能消去的字幕  
UNSUBBED:没有内嵌字幕 与 SUBBED 对比
DVDR:由DVD直接复制而来,没有经过压缩,保留原始 MPEG2 视频编码。  
DivX:视频编码为DivX 3.11 alpha DivX 4/5为利用法律漏洞在自由软件 DivX 3.11 alpha 基础上发行的商业软件,被 TDX 抛弃。  
XviD:XviD是一个开放源码的MPEG-4 多媒体解码器,它是基于OpenDivX而编写的。XviD是由一群原OpenDivX义务开发者在OpenDivX于2001年7月停止开发后自行开发的。XviD支持多种编码模式,量化 (Quantization) 方式和范围控,运动侦测 (Motion Search) 和曲线平衡分配 (Curve),动态关键帧距 (I-frame interval),心理视觉亮度修正,演职员表选项,外部自定义控制,运动向量加速 (Hinted Me) 编码,画面优化解码等众多编码技术,对用户来说功能十分强大。这也是目前被Riper使用最为广泛的编码技术。
SVCD:视频编码为MPEG2,且帧率和长宽比符合 SVCD 标准 SVCD刻录到普通 CD 光盘介质上可以用家用 SVCD 或 DVD 播放机播放。
AC3:音频编码为AC3 默认音频编码为MP3
DTS: DTS为Digital Theatre System 的缩写,即数码影院系统。它是1996年底推出的一种源自剧院模式开发的数码环绕声系统。DTS系统不仅具有AC3相似功能,更加强了其纵深定位交叉效果。DTS芯片容量为 1536kbps,压缩传输比为 4:1;而 AC3 芯片容量为 448kbps,压缩比为 10:1。正是由于DTS信息容量的增加,音色更加优美,不但可以聆听Hi-Fi音乐,同时也可以欣赏爆棚影视软件。
X264:X264是一个基于h.264的免费开源的视频Codec,属于后起之秀,已经受到众多Riper的青睐,但是与Xvid相比,其在解码时对硬件的要求更高。
H.264:H.264是由国际电信联盟(ITU-T)所制定的新一代的视频压缩格式。H.264最具价值的部分无疑是更高的数据压缩比。在同等的图像质量条件下,H.264的数据压缩比能比当前DVD系统中使用的 MPEG-2高2-3倍,比MPEG-4高1.5-2倍。正因为如此,经过H.264压缩的视频数据,在网络传输过程中所需要的带宽更少,也更加经济。在 MPEG-2需要6Mbps的传输速率匹配时,H.264只需要1Mbps-2Mbps的传输速率。
HDRIP:HDRip是HDTVRip的缩写,是用DivX/XviD/x264等MPEG4压缩技术对HDTV的视频图像进行高质量压缩,然后将视频、音频部分封装成一个.avi或.mkv文件,最后再加上外挂的字幕文件而形成的视频格式。实际上是对HDTV的2次压缩,将原来的MPEG2编码重编码为MPEG4编码。制作的HDRIP遵循严格的制作标准,尽力在文件大小和画质之间取得最佳平衡点(通常控制在一部电影4.2GB左右,正好相当于一张 DVD-R的容量,以便保存)。
HALFCD:HALFCD是TLF论坛提出的一种新的视频封装方法的名称,也可缩写为HFCD。 一部通常的电影的文件总大小约为350M,即半张CD的容量,所以称为HALFCD. 视频采用先进的X264编码技术,音频采用先进的HE-AAC+PS编码技术,某些较长的影片如超过2小时,会采用500M容量;超过3小时,采用 700M容量,以保证画面质量。 在极低的码率下可以得到非常优秀的画面。
BDRIP:BD是Blue Disk的简称,翻译成中文是“蓝光影碟”的意思。DVD的激光头现在用的是橙红色,兰光的波长更小,也就是在碟片上的聚焦点更小,这样就能把更多的数据储存在同样大小的碟片上,这就是蓝光的基本原理了,一张碟片好像是能储存50G的内容。

NUKED:画质太差或有其他严重问题,被Top Site FTP管理员废除掉 别人加的标记,但有可能是发行Group主动要求的
Bad IVTC:帧率错误,画面有不可去除的拉丝。  
BAD A/R/Bad Aspt:画面比例不正常  
INTERLACED:隔行(可看见横的扫描线)

注:所有没有英语配音而在后期使用英语配音来同步的R5零售版将被标记为R5.LINE。过去这类版本曾被标记为TC。

2015-05-17 pt , 0day , download

Linux notes

ssh keys

An SSH key allows you to establish a secure connection between your computer and server

ssh-keygen -t rsa -C "example@gmail.com"

show the public key

cat ~/.ssh/id_rsa.pub

Copy the key

Windows:

clip < ~/.ssh/id_rsa.pub

Mac:

pbcopy < ~/.ssh/id_rsa.pub

GNU/Linux(requires xclip)

xclip -sel clip < ~/.ssh/id_rsa.pub

参考:https://gitlab.com/help/ssh/README

screen

常用命令

screen -S name    启动
screen -ls        查看screen列表
screen -r name    恢复
  • GNU’s Screen 官方站点:http://www.gnu.org/software/screen/
  • 更多内容参考:http://www.cnblogs.com/mchina/archive/2013/01/30/2880680.html

命令参数

screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]
参数说明
-A  将所有的视窗都调整为目前终端机的大小。
-d <作业名称>  将指定的screen作业离线。
-h <行数>  指定视窗的缓冲区行数。
-m  即使目前已在作业中的screen作业,仍强制建立新的screen作业。
-r <作业名称>  恢复离线的screen作业。
-R  先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。
-s  指定建立新视窗时,所要执行的shell。
-S <作业名称>  指定screen作业的名称。
-v  显示版本信息。
-x  恢复之前离线的screen作业。
-ls或--list  显示目前所有的screen作业。
-wipe  检查目前所有的screen作业,并删除已经无法使用的screen作业。

一些网站

开源世界旅行手册


2015-05-17 linux , notes

ASCII Unicode GBK UTF-8字符编码的区别与联系

很久很久以前,有一群人,他们决定用8个可以开合的晶体管来组合成不同的状态,以表示世界上的万物。他们看到8个开关状态是好的,于是他们把这称为”字节“。再后来,他们又做了一些可以处理这些字节的机器,机器开动了,可以用字节来组合出很多状态,状态开始变来变去。他们看到这样是好的,于是它们就这机器称为”计算机“。

开始计算机只在美国用。八位的字节一共可以组合出256(2的8次方)种不同的状态。 他们把其中的编号从0开始的32种状态分别规定了特殊的用途,一但终端、打印机遇上约定好的这些字节被传过来时,就要做一些约定的动作。遇上0×10, 终端就换行,遇上0×07, 终端就向人们嘟嘟叫,例好遇上0x1b, 打印机就打印反白的字,或者终端就用彩色显示字母。他们看到这样很好,于是就把这些0×20以下的字节状态称为”控制码”。他们又把所有的空 格、标点符号、数字、大小写字母分别用连续的字节状态表示,一直编到了第127号,这样计算机就可以用不同字节来存储英语的文字了。大家看到这样,都感觉 很好,于是大家都把这个方案叫做 ANSI 的”Ascii”编码(American Standard Code for Information Interchange,美国信息互换标准代码)。当时世界上所有的计算机都用同样的ASCII方案来保存英文文字。

后来,就像建造巴比伦塔一样,世界各地的都开始使用计算机,但是很多国家用的不是英文,他们的字母里有许多是ASCII里没有的,为了可以在计算机保存他们的文字,他们决定采用 127号之后的空位来表示这些新的字母、符号,还加入了很多画表格时需要用下到的横线、竖线、交叉等形状,一直把序号编到了最后一个状态255。从128 到255这一页的字符集被称”扩展字符集“。从此之后,贪婪的人类再没有新的状态可以用了,美帝国主义可能没有想到还有第三世界国家的人们也希望可以用到计算机吧!

等中国人们得到计算机时,已经没有可以利用的字节状态来表示汉字,况且有6000多个常用汉字需要保存呢。但是这难不倒智慧的中国人民,我们不客气地把那些127号之后的奇异符号们直接取消掉, 规定:一个小于127的字符的意义与原来相同,但两个大于127的字符连在一起时,就表示一个汉字,前面的一个字节(他称之为高字节)从0xA1用到 0xF7,后面一个字节(低字节)从0xA1到0xFE,这样我们就可以组合出大约7000多个简体汉字了。在这些编码里,我们还把数学符号、罗马希腊的字母、日文的假名们都编进去了,连在 ASCII 里本来就有的数字、标点、字母都统统重新编了两个字节长的编码,这就是常说的”全角”字符,而原来在127号以下的那些就叫”半角”字符了。 中国人民看到这样很不错,于是就把这种汉字方案叫做 “GB2312“。GB2312 是对 ASCII 的中文扩展。

但是中国的汉字太多了,我们很快就就发现有许多人的人名没有办法在这里打出来,特别是某些很会麻烦别人的国家领导人。于是我们不得不继续把 GB2312 没有用到的码位找出来老实不客气地用上。 后来还是不够用,于是干脆不再要求低字节一定是127号之后的内码,只要第一个字节是大于127就固定表示这是一个汉字的开始,不管后面跟的是不是扩展字符集里的内容。结果扩展之后的编码方案被称为 GBK 标准,GBK包括了GB2312 的所有内容,同时又增加了近20000个新的汉字(包括繁体字)和符号。 后来少数民族也要用电脑了,于是我们再扩展,又加了几千个新的少数民族的字,GBK扩成了 GB18030。从此之后,中华民族的文化就可以在计算机时代中传承了。 中国的程序员们看到这一系列汉字编码的标准是好的,于是通称他们叫做 “DBCS“(Double Byte Charecter Set 双字节字符集)。在DBCS系列标准里,最大的特点是两字节长的汉字字符和一字节长的英文字符并存于同一套编码方案里,因此他们写的程序为了支持中文处理,必须要注意字串里的每一个字节的值,如果这个值是大于127的,那么就认为一个双字节字符集里的字符出现了。那时候凡是受过加持,会编程的计算机僧侣 们都要每天念下面这个咒语数百遍: “一个汉字算两个英文字符!一个汉字算两个英文字符……”

因为当时各个国家都像中国这样搞出一套自己的编码标准,结果互相之间谁也不懂谁的编码,谁也不支持别人的编码,连大陆和台湾这样只相隔了150海里,使用着同一种语言的兄弟地区,也分别采用了不同的 DBCS 编码方案——当时的中国人想让电脑显示汉字,就必须装上一个”汉字系统”,专门用来处理汉字的显示、输入的问题,但是那个台湾的愚昧封建人士写的算命程序就必须加装另一套支持 BIG5 编码的什么”倚天汉字系统”才可以用,装错了字符系统,显示就会乱了套!这怎么办?而且世界民族之林中还有那些一时用不上电脑的穷苦人民,他们的文字又怎么办? 真是计算机的巴比伦塔命题啊!

正在这时,大天使加百列及时出现了——一个叫 ISO (国际标谁化组织)的国际组织决定着手解决这个问题。他们采用的方法很简单:废了所有的地区性编码方案,重新搞一个包括了地球上所有文化、所有字母和符号 的编码!他们打算叫它”Universal Multiple-Octet Coded Character Set”,简称 UCS, 俗称 “unicode“。 unicode开始制订时,计算机的存储器容量极大地发展了,空间再也不成为问题了。于是 ISO 就直接规定必须用两个字节,也就是16位来统一表示所有的字符,对于ASCII里的那些“半角”字符,unicode包持其原编码不变,只是将其长度由原来的8位扩展为16位,而其他文化和语言的字符则全部重新统一编码。由于”半角”英文符号只需要用到低8位,所以其高8位永远是0,因此这种大气的方案在保存英文文本时会多浪费一倍的空间。

这时候,从旧社会里走过来的程序员开始发现一个奇怪的现象:他们的strlen函数靠不住了,一个汉字不再是相当于两个字符了,而是一个!是的,从unicode开始,无论是半角的英文字母,还是全角的汉字,它们都是统一的”一个字符“!同时,也都是统一的”两个字节“,请注意”字符”和”字节”两个术语的不同,“字节”是一个8位的物理存贮单元,而“字符”则是一个文化相关的符号。在unicode中,一个字符就是两个字节。一个汉字算两个英文字符的时代已经快过去了。

unicode同样也不完美,这里就有两个的问题,一个是,如何才能区别unicode和ascii?计算机怎么知道三个字节表示一个符号,而不是分别表示三个符号呢?第二个问题是,我们已经知道,英文字母只用一个字节表示就够了,如果unicode统一规定,每个符号用三个或四个字节表示,那么每个英文字母前都必然有二到三个字节是0,这对于存储空间来说是极大的浪费,文本文件的大小会因此大出二三倍,这是难以接受的。

unicode在很长一段时间内无法推广,直到互联网的出现,为解决unicode如何在网络上传输的问题,于是面向传输的众多 UTF(UCS Transfer Format)标准出现了,顾名思义,UTF-8就是每次8个位传输数据,而UTF-16就是每次16个位。UTF-8就是在互联网上使用最广的一种unicode的实现方式,这是为传输而设计的编码,并使编码无国界,这样就可以显示全世界上所有文化的字符了。

UTF-8最大的一个特点,就是它是一种变长的编码方式。它可以使用1~4个字节表示一个符号,根据不同的符号而变化字节长度,当字符在ASCII码的范围时,就用一个字节表示,保留了ASCII字符一个字节的编码做为它的一部分,注意的是unicode一个中文字符占2个字节,而UTF-8一个中文字符占3个字节)。从unicode到uft-8并不是直接的对应,而是要过一些算法和规则来转换。

Unicode符号范围 UTF-8编码方式
(十六进制) (二进制)
——————————— ——————————————————
0000 0000-0000 007F 0xxxxxxx
0000 0080-0000 07FF 110xxxxx 10xxxxxx
0000 0800-0000 FFFF 1110xxxx 10xxxxxx 10xxxxxx
0001 0000-0010 FFFF 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

之前一直对字符编码很模糊,网查资料被忽悠地晕头转向,看完这篇风趣的文章,把之前模糊的知识点串联起来,并稍加总结,我和我的小伙伴们都明白了!

转载:http://dengo.org/archives/901

更多中文编码知识请看:中文编码


2015-05-17 encoding , 编码 , Unicode , UTF8 , ASCII

字库格式介绍

##Bitmap字库 点阵字库是最早被采用的一种数字化字库的格式,每个字形以黑白像素点阵矩阵组成。因随着字号变大,数据量会呈几何级数增长,所以不适于复杂的大字号中文字形显示。但它在描述小字号时有明显的优势,可以加入人工的笔画取舍、合并和变形,是字形尽可能地清楚表达。 随着显示设备分辨率和处理器性能的提高,点阵字已被曲线字所取代,或部分嵌入在曲线字中以提高小字的清晰度。它更多的应用是在低分辨率的设备上,例如手机、掌上电脑、仪器仪表、数码相机、收款机、银行或者邮局的票据打印机等。

##PostScript字库

PostScript 是美国 Adobe 公司发展的一种页面描述语言。所谓页面描述语言,实际上是一种专门的计算机语言用来描述和记录版面上的内容和结构。它以精确的坐标数据,精密的数学公式和规定的格式来定义页面上的各种元素,如文字、色彩、图形图像的位置、形状等等。 PostScript 字形描述技术是用美国 Adobe 公司的 PostScript 页面描述语言来描述字形的一种技术。 CID 字库是美国 Adobe 公司发表的最新字库格式,所有字形描述都采用 PostScript Type 1格式,他具有易扩充、速度快、兼容性好、简便、灵活等特点,这种标准格式保证了跨平台的高质量输出。

##OpenType字库

OpenType 字库是美国微软公司与 Adobe 公司联合开发的用来替换 TrueType 字型的数字化曲线轮廓字库格式。OpenType 字库采用 Unicode 编码,是 TrueType 格式的扩展延伸,扩展了 Adobe CID-Keyed font 技术。它在继承了 TrueType 格式的基础上增加了对 PostScript 字型数据的支持,所以 OpenType 字体中的字型轮廓数据既可以选择在‘glyf’表中 TrueType 格式轮廓,也可以选择在‘CFF’表中的CFF(压缩字体格式,Compact Font Format)格式轮廓。 OpenType 字库信息小,字形可以所以缩放、变形(旋转、倾斜、弯曲)而不失真,具有很强的兼容性及独特丰富的排版特性。

##CID字库

CID(character identifier)字符识别码,总字符集包括了一种特定语言中所有常用的字符,把这些字符排序,他们在总字符集中排列的次序号就是各个字符的CID标识码。CMap(character Map)字符映射文件,将字符的编码映射到字符的CID标识码,再用CID标识码从CIDFont 文件中取到字形信息。 CIDFont文件中不仅存储了字库中所有字符的描述,还包含了字体的提示(HINT)信息,它既能控制笔画的粗细,还能控制笔画之间空白,使解释器在字体比较小,设备分辨率低的情况下,得到细小清晰的笔画复杂的中日韩文字形。

##TrueType

TrueType 是由美国苹果公司和微软公司联合提出的一种用数学函数描述电脑字体轮廓的技术。TrueType 采用几何学中二次B样条曲线及直线来描述字体的外形轮廓,含有字形构造、颜色填充、数学描述函数、流程条件控制、栅格处理控制、附加提示控制等指令。 TrueType 字体的主要特点在于它所见即所得。由于 TrueType 字体是由指令对字形进行描述,因此它与分辨率无关,均以设备的分辨率输出,既可以屏幕显示,又可以打印输出,无论放大缩小,字符总是光滑的,不会有锯齿出现。但是相对 PostScript 字体来说,特别是在文字太小时,其表现质量要差一些。


2015-05-16 font

中文编码

##Unicode编码

Unicode 是基于国际标准化组织(International Organization for Standardization,简称ISO)所制定的 ISO/IEC 10646 ,即通用字符集(Universal Character Set,简称 UCS)的标准来发展,在1991年首次以书本的形式(The Unicode Standard)对外发布。 Unicode 的编码方式与 ISO 10646 的通用字符集(UCS)概念相对应,使用16位编码空间。16位Unicode字符构成基本多文种平面(Basic Multilingual Plane,简称BMP),最多可以表示65536个字符。基本满足各种语言的使用。最新的 Unicode 版本定义了16个辅助平面,两者合起来达到32位编码空间,可以涵盖一切语言所用的符号。目前辅助平面的工作主要集中在第二和第三平面的中日韩统一表意文字中。

##GB2312 编码

GB 2312-80 编码是中华人民共和国国家标准汉字信息交换用编码,全称《信息交换用汉字编码字符集基本集》标准号为GB 2312-80(GB是“国标”二字的汉语拼音缩写),由中华人民共和国国家标准总局发布,1981年5与1号发布,1981年10月1日实施。它是一个简化字汉字的编码,通行于中国大陆地区及海外使用简体中文的地区(如新加坡等)。 GB 2312-80 收录简化汉字及一般符号、序号、数字、拉丁字母、日文假名、希腊字母、俄文字母、汉语拼音符号、汉语注音字母、共7445个图形字符。其中汉字以外的图形字符682个,汉字6763个。 GB 2312-80 把收录的汉字分成两级。第一级汉字是常用汉字,计3755个,置于16~55区,按汉语拼音字母/笔形顺序排列;第二级汉字是次常用汉字,计3008个,置于56~87区,按部首/笔画顺序排列。字音以普通话审音委员会发表的《普通话异读词三次审音总表初稿》(1963年出版)为准,字形以中华人民共和国文化部、中国文字改革委员会公布的《印刷通用汉字字形标》(1964年出版)为准。

##GBK编码

GBK 编码标准,全称《汉字内码扩展规范》(GBK),英文名称 Chinese Internal Code Specification,中华人民共和国全国信息技术标准化技术委员会1995年12月1日制定,国家技术监督局标准化司、电子工业部科技与质量监督司1995年12月15日联合以技监标函[1995]229号文件的形式,将它确定为技术规范指导性文件,发布和实施。这一版的GBK规范为1.0版。GB即“国标”,K是“扩展”的汉语拼音第一个字母。 GBK向下与GB 2312编码兼容,向上支持 ISO 10646.1 国际标准,是前者向后者过度过程中的一个承上启下的标准。 GBK共收录21886个汉字和图形符号,其中汉字(包括部首和构件)21003个,图形符号883个。

##GB 18030编码

GB 18030有两个版本:GB 18030-2000和GB 18030-2005. GB 18030-2000是GBK的取代版本,它的主要特点是在GBK的基础上增加了CJK统一汉字扩充A的汉字,GB 18030-2005的主要特点是在GB 18030-2000基础上增加了CJK统一汉字扩充B的汉字。 GB 18030-2000,全称《信息技术 信息交换用汉字编码字符集 基本集的扩充》,中华人民共和国信息产业部电子工业标准化研究所起草,由国家质量技术监督局于2000年3月17号发布。GB 18030-2000共收录27533个汉字。 GB 18030,全称:国家标准 GB 18030-2005《信息技术 中文编码字符集》,是中华人民共和国现在最新的内码字符集,是GB 18030-2000的修订版。GB18030-2005 共收录汉字70244个。现行版本为国家质量监督检验总局和中国国家标准化管理委员会于2005年11月8日发布,2006年5月1日实施。此规格为在中国境内所有软件产品支持的强制规格。

##BIG 5字符集

BIG-5 码是通行于台湾、香港地区的一个繁体字编码方案,俗称“大五码”。 BIG-5 码收录13468个符号和汉字,符号408个,汉字13060个,分为常用字和次常用字两部分,各部分中的汉字按照笔画/部首排列。其中:常用字5401个,次常用字7659。

##GB/T 12345编码

GB/T 12345-90 编码全称《信息交换用汉字编码字符集 辅助集》,标准号为GB/T 12345-90,1990年6月13日发布,1990年12月1日实施,是一个关于繁体字的编码标准。所谓“辅助集”,是与“基本集”(GB2312-80)相对应而言。即:GB/T 12345 是与GB2312相对应的图形字符集。原则上,本字符集是将GB2312中的简化字用相应的繁体字替换而成。因此,这些替代的繁体字具有与被替代的简化字相同的编码;未曾简化的汉字以及非汉字图形字符,仍是GB2312中的汉字和图形字符,并具有与之相同的编码。 GB/T 12345-90 共收录7583 个图形字符。汉字以外的图形字符716个,汉字6866个,其中一级汉字3755个,二级汉字3008个,增补汉字103个。 关于繁体字替换简化字的原则,GB/T 12345 注明:“本标准原则上按照《简化字总表》中所列繁体字与简化字的对应关系进行替换。”《简化字总表》由中国文字改革委员会1964年5月发表,后经国家语言文字工作委员会作个别修改,国务院1986年6月4号批准发表。

##748编码

748编码仅用于方正软件和系统,不做介绍


2015-05-15 encoding

msi笔记本型号对比

最近看笔记本,有一同学十分钟爱MSI的笔记本,于是乎就查阅了一下该笔记本的型号,顺手做一下笔记。以下就是MSI(微星)游戏笔记本常见型号,命名的解释。

##GE系列 入门级 体积与效能的平衡点 高端性价比

GE是主打影音系列,属于体积与效能的平衡点,体积并不会像GT或GX那样的庞大,不过仍有不错的效能。也可以说是入门级别的游戏本,主要是价格相对便宜。其中CPU可以自行更换,显卡为焊死在主板上的无法更换,单2.5寸硬盘位(SATA3接口)+单MSATA硬盘位(SATA3接口,主要用于MSATA接口的SSD升级)。相比GT和GX系列重量较轻,便携,因空间较小所以CPU和显卡及散热风扇为一体式设计,散热略差。 GE适合普通大学生用的,高端性价比选择,使用中端显卡,入门电竞规格,价格普遍便宜6000–9000左右。 GE可以上PCIE接口的SSD硬盘,不能再上另一块机械硬盘。但是GT本身是二个硬盘位,是可以上二块机械硬盘。GE散热是三根铜管,GT系列有五根散热导管。

##GS系列 超级本 GE基准的轻薄本 性能中高

GS 是以GE为基准再更加的轻薄,非常轻薄性能中高,配置和GE差不多,价格好像是13000左右,想要金属质感与薄型就买GS70。

##GT系列 发烧级游戏本 极致的规格、粗壮的体格加上高昂的价格

GT是主打游戏系列,纯种的高端发烧游戏本,档次从中到高都有,价格也相对贵些。简单来说就是极致的规格、粗壮的体格加上高昂的价格。其中CPU和显卡均可自行更换,升级性和扩张性好。 双2.5寸硬盘(SATA2+SATA3),支持RAID 0,同时支持微星独家的SUPER RAID技术,需通过微星独家的RAID卡实现,也因此牺牲了一个SATA3的硬盘位。相比GE系列重量较重,得益于大空间,散热为CPU独立散热+显卡独立散热+单风扇双风道设计,散热较好。特色功能有一键超频,另外丹纳音箱和赛睿的七彩背光键盘也很拉风。GT是一般都是目前顶级的显卡CPU,玩游戏最好,10000-30000W左右

##GX系列 中高级 AMD处理器 着重于GPU的效能

GX是主打单机游戏系列,奇葩的3A组合,显卡暴强而U爆弱,价格介于GE和GT之间。主要着重于GPU的效能(使用AMD的顶级显卡),CPU是使用中间的规格(像GX*40的Core i5,或是现在的AMD),所以价格又比GT系列来的更便宜。其中CPU和显卡均可自行更换,但是目前5750M已经是这台平台的最顶级U了,下代平台据说要更换新的接口了,7970M貌似可以升级8970M,有待验证。AMD的芯片组支持多SATA3,所以GX系列是双SATA3硬盘位+光驱位也是SATA3,同时也支持微星独家的SUPER RAID技术,需通过微星独家的RAID卡实现。GX系列外观和GT系列基本相同,内部构造则完全相同,得益于AMD平台的良好温控,散热是G系列里面最好的。GX是3A平台,虽然显卡是顶级的,但是CPU特差,玩一些网游和吃CPU的游戏直接跪,价格比GT便宜一些8000–10000。

##GP系列 以GE系列为基准将GPU降规来达到便宜的目的

GP最入门级的, GP系列以GE系列为基准将GPU降规来达到便宜的目的,纯粹是文书机,挂上G系列其实是来乱的。 如果你是土豪就用GT70 红龙吧,顶级CPU+780M顶规显卡,而且还可以上双显卡。优点是绝大部分游戏可Full HD特效全开且音质很棒,搭配多彩背光电竞键盘及杀手网卡与耳机强化输出。缺点是这机器至少3.5kg以上,此外变压器也很大颗,


2015-05-11 msi , laptop

Vim Tips

— layout: post title: “Vim小技巧” description: “Vim小技巧, tips” category: vim tags: [vim, tips] last_updated: 2015-09-10 —

批量缩进代码

如果使用VS,或者IDE的同学应该都知道,如果要批量缩进代码,在这些IDE中都能够选择+tab键实现,而Vim中则不太一样,之前困扰我很久,现在终于有了解决方案。在之前的文章中已经提到了Vim的模式,现在我们要用到其中的一种—-选择模式。

批量缩进代码的方式如下:

  • 按下 v , 进入选择模式
  • j/k 移动光标选择需要缩进行
  • 按一次> 缩进一次,按 < 回缩

如果是需要选中的行数比较多可以使用 数字num+j 方法移动num行,对于有括号 { } 的方法,例如

function functionName(){
// a lot of code
}

则可以使用 % 进行括号匹配, 按下 v 进入选择模式,将光标移动到 { ,按下 % ,Vim自动找到匹配的括号并选择该函数,利用 > 即可缩进该函数。

那么,其实单行缩进就是两个大于号 >> , 回缩就是两个小于号 <<

不重启使vimrc文件生效

在学习阶段,我经常改动vimrc文件,而每一次改动就要重启一下Vim,甚是烦恼。偶然间看到Google Group中有人讨论一些无关紧要的问题,其中看到写了不重启使vimrc文件生效的代码,尝试一下确实可行,做一下记录:

在命令模式下运行
:so #MYVIMRC
去帮助查看so,其实so是source的缩写

当然你也可以在vimrc文件中加入

"编辑vimrc之后,重新加载
autocmd! bufwritepost _vimrc source $VIM/_vimr

这样每一次保存vimrc文件就自动加载vimrc文件,使之生效。而如果在vimrc文件中存在函数,可能会遇到vim警告“函数 已存在,请加!强制替换”,同样讨厌,虽然作为新手的我还不知道为什么出现这些警告,但总之解决方法就是把vimrc中的函数全部定义成 function! 这种形式。但其实那些警告不影响效果,不定义成 function! 也行,但是很烦人。

均匀插入空行

均匀的在行与行之间插入空行,原先的空行保留。

Vim 的 :g 命令就是为类似的任务设计的,给每一行运行单独的命令。使用如下命令完成目标:

:g/.\n\n\@!/norm o

正则匹配 /.\n\n\@!/ ,拆分成不同部分来解释:

  • . 匹配行中所有字符。(这个例子中用来排除空行)
  • \n 匹配行末尾
  • \n\@! 如果有连续两个换行则匹配失败

用命令 :h E59 查看 \@! 更多信息。我们使用 :g 命令正则匹配到符合规则的行之后,我们告诉Vim执行 norm o ,也就是 Normal Mode 下的 o 命令,也就是在当前行下插入空行。

总结来说,这行命令匹配所有下一行不是空行的行,然后在他们下面增加一行空行。通过这个例子,你也许想要查看一下vim的wiki Power of G 来学习一下 :g 命令,已经它的姐妹命令 :v

This note is taken from superuser

从 vim 中复制到粘贴板

使用 shift+v 选中几行内容之后,如果只使用y 无法复制到系统的粘贴板中,此时在选中的情况下输入 "+y , 即可将所选内容复制到粘贴板。注意需要输入的是:引号+加号+ 小写y。

而这样做需要输入三次,可以使用 map 绑定到喜欢的快捷键上,比如:

vmap <C-c> "+y

这一行配置的含义就是在可视模式下,Ctrl+c,就是将所选择内容复制到粘贴板。 但是需要注意的是如果运行 :echo has('clipboard') 返回的结果是0,那么这个方法就没用,因为该版本的 vim 在编译的时候没有将 +clipboard 加入。

同理,如果想要从系统粘贴板中粘贴内容到 vim 中,使用 "+y or "*y, 引号+加号+y,来从系统粘贴板中将内容粘贴到 vim 中。

NERDTree Tip

Vim 中极好用的文件管理插件,用了也有一些时间了,但是有些内容并没有仔细地看,今天突然有些需求就看了一下。常用的 NERDTree 命令有:

  • o 打开或关闭文件或目录
  • i 在水平分割的新窗口打开文件
  • s 在垂直分割的窗口中打开文件
  • t 在新标签页中打开文件
  • j/k 移动
  • J/K 到第一个或者最后一个节点
  • ? 帮助菜单

创建目录与文件

打开 NERDTree,在 NERDTree 中使用m 然后选择a,来创建文件或者文件夹,要创建文件夹只需要在输入的名字后面加上/

删除文件与目录

同理,在 NERDTree 中按下 m 会由很多选项可选,使用 d 就可以删除结点,也就是删除文件或者文件夹。

显示隐藏文件

在 NERDTree 中使用Shift+i 来显示隐藏文件。

vim 删除偶数行

使用命令:

:g/^/+d

:g 命令在所有匹配正则的行上执行

:g/LinesMatchThisRegex/ExecuteThisCommand

举例:

:g/hello/d

以上命令会删除所有包含 “hello” 的行

而与此同时 :%s 仅仅提供正则的搜索和替换,命令最后的 g 表示全局,整个文件中

:%s/hello/world/g

因此该命令会替换文中所有的 hello 为 world.

:%s 中的 s 表示替换 (substitute) , 而 % 表示整个 buffer. 因此 :%s 表示从整个文件 buffer 中替换, :%s 还可以指定行范围:

:10,15s/hello/world/g

搜索并替换10至15行中的 hello.

移动

在 vim 中移动 hjkl, 左下上右移动光标已经不用多说, wb,向后向前移动一个 word。

gg 移动到第一行, G 移动到最后一行,这是最基本的,也可以使用 nG 来移动到第 n 行。

翻页技能,使用 Ctrl D 向下移动半页, Ctrl U 向上移动半页

Ctrl B 向上翻页, Ctrl F 向下翻页

* 号用来向下查找整个单词

# 号用来将光标移动到上一个在光标下的字符,比如光标正在单词 String 上,使用 # 来向上查找上一个 String。

% 百分号用来在匹配的括号之间跳转。

fx 光标跳转到下一个 x 位置,可以用来快速跳转到下一个预期的字符 x

Fx 向前跳跃到字符 x 位置

tx til 下一个 x,光标在 x 前面

Tx 上一个 x

参考配置


2015-05-08

vim 学习笔记2

vim学习笔记进阶版,初级版可以参考这篇文章

combine command

.    (dot) will repeat the last command
n<commmand>    will repeat the command n times

for example:

2dd    will delete 2 lines
3p 	   will paste the text 3 times
40idesu [ESC] will write "desu " 40 times

move in one file

NG    go to line N, N is a number, like 23G means go to line 23
gg    shortcut for 1G - go to the start of the file
G     Go to last line

批量替换

在全文中用一个单词替换另外一个单词

:%s/想要被替换的字串/新字串/g g模式全局替换
  • ”%” 范围前缀表示在所有行中执行替换, 相当于:1,$s/,如果不加 % 则表示在当前行中
  • “g” 标记表示替换行中所有匹配点。

替换的语法为::[addr]s/源字符/目的字符/[option]

[addr] 表示检索范围, 省略表示当前行。

  • :n1,n2s/word1/word2/g 从 n1 行到 n2 行,替换 word1 为 word2 全局替换
  • :%s/ = :1,$s/
  • :.,$/word1/word2/g 从当前行到尾行

s: 表示替换操作

[option]表示操作类型

  • g 全局替换
  • c 确认,如果加上 c 选项,每次都需要确认 confirm
  • p 逐行显示结果

省略 option 时只对每一行的第一个匹配串进行替换

删除所有空行

:g/^$/d

删除所有空白行和空行

:g/^[ ][ ]*$/d

在每行开始插入两个空白

:%s/^/  /

在接下来5行末尾加入"

:.,5/$/"/

多窗口操作

新建与关闭窗口

在 Normal 模式下使用以下命令新建窗口

:split 			水平分割窗口,内容一样
:10split 		水平分割窗口,新窗口高度10行
:split filename 窗口中打开新文件
:new 			功能和split一样
:sp 			split 缩写
Ctrl-w s,v 		分割窗口的快捷方式,s水平分割,v垂直分割
:vsplit 		垂直分割窗口,简写 :vs
Ctrl-w c 		关闭当前窗口

窗口间移动

Ctrl-w h,j,k,l    Ctrl按下,按下w 松开,Ctrl松开,按hjkl 对应左下上右

移动窗口

Ctrl-w H,J,K,L    大写HJKL,移动窗口

窗口最大化

Ctrl-w o    让当前文件占据整个窗口

调整窗口大小

Ctrl-w < > 调整窗口宽度,<缩小当前窗口宽度,向左扩展一列,>增加当前窗口宽度,向右扩展一列。当然 Ctrl-w 之后可以使用 n+< 调整多列宽度 Ctrl-w - + 调整窗口高度

Tabs

Tab is different from the windows in vim. If your fimiliar with Firefox or Chrome, you can understand that a new tab contains a new website. While in vim, a tab can contain several windows and you can move the windows between tabs.

Create New tab

There are lots of ways to create a new tab, here I only intruduce some common commands.

:tabnew 	create a empty new tab
:tabedit {file} 	edit specified file in new tab

Manage tabs

Some ways to close tabs:

:tabclose 	close current tab
:tabclose {i} 	close i-th tab
:tabonly 	close all other tabs

Some ways to move tabs:

:tabm 0 	move current tab to first
:tabm 		move current tab to last
:tabm {i} 	move current tab to position i+1
:tabs 		list all tabs including their opening windows

Ways to move between tabs:

:tabn 		go to next tab
:tabp 		go to previous tab
:tabfirst 	go to first tab
:tablast 	go to last tab

While in normal mode, you can type:

gt 			go to next tab
gT 			go to previous tab
{i}gt 		go to tab in position i

更正

Insert模式下

<BS>  退格键,删除光标前
<Del> Delete键,删除光标后
<C-W> 删除一个单词
<C-U> 删除光标前的字符,保留光标之后的文本,保留行首的缩进,只删除第一个非空字符至光标位置之间的文本。

可视Visual mode

v 按字符选择,在Normal mode下按下v进入Visual mode
V 按行选择
Ctrl+Q 块选择,Windows下,其他平台下Ctrl+V

选择字符之后操作

d 剪切选择内容到剪贴板
y 拷贝选择内容到剪贴板
c 剪贴选择内容到剪贴板并进入Insert mode

命令模式

:! command 暂时离开 vi 到命令模式下执行 command

Other

:verbose set tabstop?    in Vim, it will tell you where the tapstop option value is coming from
:help + command  查看Vim命令的帮助,比如想要查看 c 命令的帮助直接使用 `:h c` 就能查到。
g <C-g>  单词统计

差不多看到这里就能够直接看文档了:http://vimcdoc.sourceforge.net/ 通过文档学习更多符合自己使用习惯的命令或者操作。

reference


2015-05-07 vim , command

Vim 学习笔记

If you don’t have time to watch this video, just take a look at this note. This note is taken from https://github.com/shawncplus/vim-classes with small modification.

https://github.com/shawncplus/dotfiles

this site let you make your own colorscheme

模式切换 Change between modes

Insert -> Normal : ESC/Ctrl-[
Insert -> Command : (Insert -> Normal) -> :

Normal -> Command : :
Normal -> Insert : iIsScCoO
Command -> Normal : Enter

插入模式

i Enter insert mode
I 行首非空字符前插入
s 删除光标下字符,并进入insert mode
S 删除光标所在一行,并进入insert mode行首
a 光标之后进入insert mode
A 光标移动到行尾并进入insert mode
o 在光标下一行插入一行,并进入insert mode
O 在光标上一行插入新行,并进入insert mode
C 删除光标后到行尾并进入insert mode

replace mode

按如下两个按键进入替换模式:

r replace the letter under cursor
R replace under cursor till you press Esc

advanced Move

在Vim中,Word有两种含义,开始我也没搞明白,过了很久才渐渐明白。广义的 WORD 可以是任何两个空格之间的内容,比如 this is a word ,就是四个“字”。侠义的 WORD ,英文单词、标点符号和非字母字符都被当成一个字。如$、%、^、&、*、(、)、-、+、{、}、[、]、~、|、\、<、>、/等,均被当成是一个字。

Vim中使用大写命令一般将字作为广义,小写命令就是作为侠义对待。命令都是成对出现,w 和 W,b 和 B,e 和 E:

w 词向后移动
W WORD is splited by space
b 词向前移动
B WORD向前移动
e 移下一个单词词末
ge 前一个单词词末
E 如果光标起始位置处于字内(即非字尾处),则该命令将把光标移到本字字尾;如果光标起始位置处于字尾,则该命令将把光标移动到下一个字的字尾。
0 Move to the zeroth character of the line
^ move to first non-blank character of the line
$ go to the end of line
g_ last character of the line

用了很多天Vim了移动最多用的还是hjkl,想不起来用这些零碎的命令啊~

以下命令可以用来翻页

Ctrl+f  下一页
Ctrl+b  上一页
Ctrl+d  下半页
Ctrl+u  上半页
H       Move to first letter on top of screen
M 		Move to first letter on middle of screen
L 		Move to first letter on bottom of screen

move inline

fx  向前查找本行中的字符x, 比如想要移动到下一个双引号时,可以使用 `f"` 来实现行内快速移动
F   向左查找

Copy/Paste

p   paste after current position
P   paste before the cursor
yy  copy the current line
y  - Yank. Example: yw (yank word) 光标停留到词第一个字母上 yw 复制单词
y0  copy the data from cursor to begining of the line
y$  copy the data from cursor to end of the line

删除 delete

x   删除光标下单个字符
X   向前删除一个字符,相当于 Backspace
dd  删除光标所在一行,并把该行复制
dw  删除光标所在词
d0  删除光标到该行最前
d$  删除光标到该行最后
J   删除光标所在行的换行符

删除x ,dd ,dw用的情况还挺多的。

撤销/重做 redo

u   撤销上一次编辑 undo
<C-r> Ctrl-R redo

搜索与替换 search replace

/pattern  - 正向搜索,从光标处开始向文件末搜索
?pattern  - 反向搜索,从光标处开始向文件首搜索
n  - 下一个,往下执行搜索命令
N  - 上一个
*  - Word under cursor - forward (bounded)
g* - Word under cursor - forward (unbounded)
#  - Word under cursor - backward (bounded)
g# - Word under cursor - backward (unbounded)
:s/p1/p2/g -将当前行中所有p1均用p2替代
:n1, n2s/p1/p2/g -将第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g -将文件中所有p1均用p2替换

Load/Save/Quit/Change File

:e <path/to/file> open file
:w save
:saveas <path/to/file> save to <path/to/file>
:x, ZZ or :wq save and quit (:x only save if necessary)
:q! quit without saving. :qa! to quit even if there are modified hidden buffers
:q! 放弃修改之后可用 :e! 恢复修改 :e! 为放弃为保存的修改

Other

gg 文件开头
G  文件末尾
Ctrl-]
Ctrl-O 跳转到上一个位置
Ctrl-T 标签退栈

参考:


2015-05-06 vim , command

Vim插件Vundle

简单介绍

Code Rush推荐,之后又陆陆续续看到很多在使用这款插件,所以在入门插件的时候就第一个安装了此插件,VIM如果不依靠插件来增强功能可谓鸡肋。而VIM提供的插件又很多,新手可能无从下手。幸好让我接触到了这个Vundle插件,Vundle用来安装,管理其他插件,这样以后安装插件卸载插件的问题就迎刃而解了。用Vundle管理插件有以下好处:

  • 自动下载安装插件
  • 自动更新插件
  • 只需要保存一份配置文件即可在新环境下安装所有插件
  • 自动清理没用的插件

安装

下载地址

https://github.com/gmarik/Vundle.vim

Mac和Linux安装

  1. 安装git客户端 Mac和Linux一般默认已经安装

  2. 下载并安装Vundle

     git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
    
  3. vimrc配置

    把以下的配置放到vimrc最前面

     set nocompatible              " be iMproved, required
     filetype off                  " required
    
     " set the runtime path to include Vundle and initialize
     set rtp+=~/.vim/bundle/Vundle.vim
     call vundle#begin()
     " alternatively, pass a path where Vundle should install plugins
     "call vundle#begin('~/some/path/here')
    
     " let Vundle manage Vundle, required
     Plugin 'gmarik/Vundle.vim'
    
     " The following are examples of different formats supported.
     " Keep Plugin commands between vundle#begin/end.
     " plugin on GitHub repo
     Plugin 'tpope/vim-fugitive'
     " plugin from http://vim-scripts.org/vim/scripts.html
     Plugin 'L9'
     " Git plugin not hosted on GitHub
     Plugin 'git://git.wincent.com/command-t.git'
     " git repos on your local machine (i.e. when working on your own plugin)
     Plugin 'file:///home/gmarik/path/to/plugin'
     " The sparkup vim script is in a subdirectory of this repo called vim.
     " Pass the path to set the runtimepath properly.
     Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
     " Avoid a name conflict with L9
     Plugin 'user/L9', {'name': 'newL9'}
    
     " All of your Plugins must be added before the following line
     call vundle#end()            " required
     filetype plugin indent on    " required
     " To ignore plugin indent changes, instead use:
     "filetype plugin on
     "
     " Brief help
     " :PluginList       - lists configured plugins
     " :PluginInstall    - installs plugins; append `!` to update or just :PluginUpdate
     " :PluginSearch foo - searches for foo; append `!` to refresh local cache
     " :PluginClean      - confirms removal of unused plugins; append `!` to auto-approve removal
     "
     " see :h vundle for more details or wiki for FAQ
     " Put your non-Plugin stuff after this line
    
  4. 安装插件

    启动vim,并运行:PluginInstall

Windows下安装

查看官方教程,官方的教程有点问题,完全按照所写配置并不能成功。

vim74     #主程序目录 对应变量 $VIMRUNTIME
vimfiles  #配置文件目录 对应变量 $VIM	
  1. 同样需要Git,并且需要Curl

  2. 下载安装msysgit,add Path to your environment.安装过程中选择Run git from Windows command prompt option安装完成之后在终端运行git --version,如果出现类似以下情况即可:

     C:\> git --version
     git version 1.7.4.msysgit.0
    
  3. 设置Curl

    以下内容保存成curl.cmd,并存到msysgit安装目录中C:\Program Files\Git\cmd\curl.cmd,在终端运行curl --version出现以下类似内容即可:

     C:\> curl --version
     curl 7.21.1 (i686-pc-mingw32) libcurl/7.21.1 OpenSSL/0.9.8k zlib/1.2.3
     Protocols: dict file ftp ftps http https imap imaps ldap ldaps pop3 pop3s rtsp smtp smtps telnet tftp
     Features: Largefile NTLM SSL SSPI libz
    
  4. 因为Windows下和mac,linux环境不同,vim的配置地址也不同,所以git clone到的目录如下:

     git clone https://github.com/gmarik/Vundle.vim.git vimfiles/bundle/Vundle.vim
    
  5. _vimrc

    需要将Mac和Linux中相应位置代码修改成如下代码:

     " 配置同Mac,只需要按照下面修改rtp的路径即可
     set rtp+=$VIM/vimfiles/bundle/Vundle.vim/
     let path='$VIM/vimfiles/bundle'
     call vundle#rc(path)
    

使用

使用方法很简单,只需3步使新插件生效即可

  1. 将目标插件配置进vimrc或vundle_vimrc
  2. 执行:PluginInstall
  3. 重启

常用命令

:PluginList       - 枚举已安装的插件列表
:PluginInstall    - 安装插件或者后面加上'!'更新
:PluginUpdate     - 更新插件 同 :PluginInstall!
:PluginSearch foo - 查找插件。例如查找名称为foo的插件。或者后面加'!'更新本地缓存
:PluginClean      - 清理无用插件或者后面加'!'自动清理

更多使用方法查看帮助 :h vundle

参考:


2015-05-04 vim , vim-plugin , vundle

Google+

最近文章

  • celery best practice 不要使用数据库作为 AMQP Broker 随着worker 的不断增多可能给数据库IO和连接造成很大压力。 Docker 上很多 相关的镜像。
  • Git 使用过程中遇到的小技巧 Git 使用过程中遇到的小技巧,平时没有 commit, merge, branch 用的那么勤快,但是需要时也需要查看一下,因此记录一下,以免忘记。
  • URL 短域名 逛博客看到别人在讨论短URL的设计实现,然后偶然间发现了 GitHub 曾经推出1过的短域名服务 Git.io https://github.com/blog/985-git-io-github-url-shortener ↩
  • 目录 /usr/local vs /opt 的区别 今天看 JDK 的路径突然发现我在两台机子上,一台装在了 /usr/local/ 目录下,而我自己的 Mint 装在了 /opt/ 目录下。感觉对 Linux 目录结构还需要增加了解,就Google了一下。
  • SQLAlchemy session 使用问题 在更改 SQLAlchemy Session 从每次请求都创建到共享同一个 Session 之后遇到了如下问题: