一个通用的“diff”补丁解析库。

parsedifflib的Python项目详细描述


parsedifflib包将任何类型的diff补丁解析为 修补程序指令的事件流。这些说明可以是 应用、着色、重新格式化、解剖、分析等。

警告

2013/12/09:目前只有svnlook格式和面向流 支持事件输出。最终,所有支持的格式 colordiff既要支持结构化输出,也要支持。

用法

importparsedifflib,subprocessdata=subprocess.check_output('svnlook diff /path/to/repos',shell=True)forevent,targetinparsedifflib.parse_svnlook(data,{'lineNumbers':True}):ifeventin(parsedifflib.Event.PATCH_START,parsedifflib.Event.PATCH_END,parsedifflib.Event.ENTRY_END,parsedifflib.Event.LINE_LOC,parsedifflib.Event.LINE_SAME,parsedifflib.Event.LINE_NOTE,parsedifflib.Event.PROPENTRY,):continueelifevent==parsedifflib.Event.ENTRY_START:printtarget.commentelifevent==parsedifflib.Event.LINE_DELETE:print'  - deleted line %d: %s'%(target.oldnum,target.line)elifevent==parsedifflib.Event.LINE_DELETE:print'  + added line %d: %s'%(target.newnum,target.line)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
如何解决Java泛型通配符/抽象歧义问题?   javacom。苹果eawt我到底应该安装什么   在屏幕旋转后,java片段的目标不在片段管理器中   java测试数据库连接超时   java当子类构造函数的超类具有较少的参数时,如何向其添加更多参数?   部署为jetty中部署为服务的两个应用程序设置不同的java系统属性   发送带有唯一附件的批量电子邮件(服务、java或api)   java如何在Android上使用AlarmManager在所需日期显示Toast   java有没有办法在eclipse中过滤工作区引用(Ctrl+Shift+G),这样就不会看到“潜在匹配”?   java设置textview数组的上下文   java为什么滚动页面时不使用鼠标滚动光标轨迹?   java在运行时更改拓扑属性   java自管理单调递增密钥或系统的时间戳   直接向扬声器发送音频