mirror of
https://github.com/ejwa/gitinspector.git
synced 2024-09-30 03:11:29 +02:00
Modified the comment module to properly detect comments mixed in with code.
This commit is contained in:
parent
4fb37bf914
commit
842ca6b87c
4
blame.py
4
blame.py
@ -48,13 +48,13 @@ class Blame:
|
|||||||
if self.blames.get(author, None) == None:
|
if self.blames.get(author, None) == None:
|
||||||
self.blames[author] = BlameEntry()
|
self.blames[author] = BlameEntry()
|
||||||
|
|
||||||
if comment.is_comment_begining(FileDiff.get_extension(i), content):
|
if comment.has_comment_begining(FileDiff.get_extension(i), content):
|
||||||
is_inside_comment = True
|
is_inside_comment = True
|
||||||
|
|
||||||
if comment.is_comment(FileDiff.get_extension(i), content) or is_inside_comment:
|
if comment.is_comment(FileDiff.get_extension(i), content) or is_inside_comment:
|
||||||
self.blames[author].comments += 1
|
self.blames[author].comments += 1
|
||||||
|
|
||||||
if comment.is_comment_end(FileDiff.get_extension(i), content):
|
if comment.has_comment_end(FileDiff.get_extension(i), content):
|
||||||
is_inside_comment = False
|
is_inside_comment = False
|
||||||
|
|
||||||
self.blames[author].rows += 1
|
self.blames[author].rows += 1
|
||||||
|
32
comment.py
32
comment.py
@ -26,20 +26,24 @@ __comment_end__ = {"java": "*/", "c": "*/", "cpp": "*/", "h": "*/", "hpp": "*/",
|
|||||||
__comment__ = {"java": "//", "c": "//", "cpp": "//", "h": "//", "hpp": "//", "py": "#", "glsl": "//",
|
__comment__ = {"java": "//", "c": "//", "cpp": "//", "h": "//", "hpp": "//", "py": "#", "glsl": "//",
|
||||||
"rb": "#", "js": "//", "sql": "--"}
|
"rb": "#", "js": "//", "sql": "--"}
|
||||||
|
|
||||||
def is_comment_begining(extension, string):
|
|
||||||
if __comment_begining__.get(extension, None) != None:
|
|
||||||
return string.strip().startswith(__comment_begining__[extension])
|
|
||||||
else:
|
|
||||||
return False
|
|
||||||
|
|
||||||
def is_comment_end(extension, string):
|
|
||||||
if __comment_end__.get(extension, None) != None:
|
|
||||||
return string.strip().endswith(__comment_end__[extension])
|
|
||||||
else:
|
|
||||||
return False
|
|
||||||
|
|
||||||
def is_comment(extension, string):
|
def is_comment(extension, string):
|
||||||
if __comment__.get(extension, None) != None:
|
if __comment_begining__.get(extension, None) != None and string.strip().startswith(__comment__[extension]):
|
||||||
return string.strip().startswith(__comment__[extension])
|
return True
|
||||||
|
if __comment_end__.get(extension, None) != None and string.strip().endswith(__comment__[extension]):
|
||||||
|
return True
|
||||||
|
if __comment__.get(extension, None) != None and string.strip().startswith(__comment__[extension]):
|
||||||
|
return True
|
||||||
|
|
||||||
|
return False
|
||||||
|
|
||||||
|
def has_comment_begining(extension, string):
|
||||||
|
if __comment_begining__.get(extension, None) != None:
|
||||||
|
return string.find(__comment_begining__[extension]) != -1
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
|
||||||
|
def has_comment_end(extension, string):
|
||||||
|
if __comment_end__.get(extension, None) != None:
|
||||||
|
return string.find(__comment_end__[extension]) != -1
|
||||||
else:
|
else:
|
||||||
return False
|
return False
|
||||||
|
@ -46,13 +46,13 @@ class Metrics:
|
|||||||
eloc_counter = 0
|
eloc_counter = 0
|
||||||
|
|
||||||
for j in file_r.readlines():
|
for j in file_r.readlines():
|
||||||
if comment.is_comment_begining(extension, j):
|
if comment.has_comment_begining(extension, j):
|
||||||
is_inside_comment = True
|
is_inside_comment = True
|
||||||
|
|
||||||
if not comment.is_comment(extension, j) and not is_inside_comment:
|
if not comment.is_comment(extension, j) and not is_inside_comment:
|
||||||
eloc_counter += 1
|
eloc_counter += 1
|
||||||
|
|
||||||
if comment.is_comment_end(extension, j):
|
if comment.has_comment_end(extension, j):
|
||||||
is_inside_comment = False
|
is_inside_comment = False
|
||||||
|
|
||||||
return eloc_counter
|
return eloc_counter
|
||||||
|
Loading…
Reference in New Issue
Block a user