c语言git代码注释风格,git代码空行、注释分析与统计

def get_commit_diff_comment_rows(filepath,diff):

endfix = filepath.split("/")[-1].split('.')[-1]

diff_rows = diff.split("n")

if len(diff_rows) < 3:

return {}

luanges={

'py':{

'single':'#',

'multi_start':["'''",'"""'],

'multi_end':["'''",'"""']

},

'java':{

'single':'//',

'multi_start':["/*"],

'multi_end':["*/"],

},

'js':{

'single':'//',

'multi_start':["/*"],

'multi_end':["*/"],

},

'vue':{

'single':'//',

'multi_start':["","*/"],

},

'html':{

'single':'//',

'multi_start':["","*/"],

},

'jsx':{

'multi_start':["/*","{/*"],

'multi_end':["*/","*/}"],

},

'less':{

'single':'//',

'multi_start':["/*"],

'multi_end':["*/"],

},

'rb':{

'single':'#',

'multi_start':["=begin"],

'multi_end':["=end"],

},

'yml':{

'single':'#',

},

'xml':{

'multi_start':[""],

},

'sql':{

'single':'--',

'multi_start':["/*"],

'multi_end':["*/"],

},

'sh':{

'single':'#',

},

'css':{

'multi_start':["/*"],

'multi_end':["*/"],

},

}

luange = luanges.get(endfix)

if not luange:

return {}

single_start = luange.get("single")

multi_start = luange.get("multi_start")

multi_end = luange.get("multi_end")

comment_add = 0

comment_del = 0

empty_add = 0

empty_del = 0

block_comment_flag=False #块注释默认为空

for row in diff_rows:

if row.startswith("---") or row.startswith("+++") or row.startswith("@@"):

continue

if row.startswith("+"):

node_type = '+'

elif row.startswith("-"):

node_type = '-'

else:

continue

row = row[1:].strip()

if row == '':

if node_type == '+':

empty_add += 1

elif node_type == '-':

empty_del += 1

else:

add_number = 0

if single_start:

if row.startswith(single_start):

add_number = 1

if multi_start:

for i in multi_start:

if row.startswith(i):

add_number = 1

block_comment_flag=True

if multi_end:

for i in multi_end:

if row.endswith(i):

add_number = 1

block_comment_flag=False

if block_comment_flag:

add_number = 1

if node_type == '+':

comment_add += add_number

elif node_type == '-':

comment_del += add_number

return {"comment_add":comment_add,

"comment_del":comment_del,

"empty_add":empty_add,

"empty_del":empty_del

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值