【问题标题】:Lines of Code in Eclipse PyDev ProjectsEclipse PyDev 项目中的代码行
【发布时间】:2011-03-13 22:57:37
【问题描述】:

我想知道是否有人在使用 Eclipse Metrics 插件和非 Java 项目(特别是我正在尝试为几个 PyDev 项目生成代码指标)时有运气。我已经阅读了 Metrics 项目的演练,但它表明在访问我的项目的属性之前我应该​​在 Java 透视图中,并且我应该找到一个 Metrics 部分。无论我打开哪个 Perspective,我的 PyDev 项目都没有。任何建议或建议都会很棒。

【问题讨论】:

    标签: python eclipse plugins metrics pydev


    【解决方案1】:

    我不知道让插件与 pydev 项目一起工作是否可行,但如果它只是您所追求的 lines-of-code 指标,您可以在项目的根目录中运行这个 sn-p:

    # prints recursive count of lines of python source code from current directory
    # includes an ignore_list. also prints total sloc
    
    import os
    cur_path = os.getcwd()
    ignore_set = set(["__init__.py", "count_sourcelines.py"])
    
    loclist = []
    
    for pydir, _, pyfiles in os.walk(cur_path):
        for pyfile in pyfiles:
            if pyfile.endswith(".py") and pyfile not in ignore_set:
                totalpath = os.path.join(pydir, pyfile)
                loclist.append( ( len(open(totalpath, "r").read().splitlines()),
                                   totalpath.split(cur_path)[1]) )
    
    for linenumbercount, filename in loclist: 
        print "%05d lines in %s" % (linenumbercount, filename)
    
    print "\nTotal: %s lines (%s)" %(sum([x[0] for x in loclist]), cur_path)
    

    【讨论】:

    • 这正是我所需要的。谢谢!
    【解决方案2】:

    如果你在 Linux 中...

    你看过cloc吗?

    它产生非常完整的输出,并接受几个选项:

    borrajax@borrajax-linux:~/Documents/Projects/myProject$ cloc .
        1840 text files.
        1566 unique files.                                          
        9362 files ignored.
    
    http://cloc.sourceforge.net v 1.53  T=3.0 s (454.3 files/s, 81397.0 lines/s)
    --------------------------------------------------------------------------------
    Language                      files          blank        comment           code
    --------------------------------------------------------------------------------
    Javascript                      709          19190          17283          93862
    Python                          333           6278           3399          38398
    C                                86           3244           2303          17755
    CSS                             122           1786           1592          16856
    HTML                             55            784             51           8072
    Bourne Shell                     14            651            280           6641
    C/C++ Header                      6            301            293           1259
    XML                               9              5              0           1153
    PHP                               2             88            211            585
    SQL                              19            200            127            576
    Bourne Again Shell                2             57             15            494
    make                              5             41             19            187
    DOS Batch                         1             21              1            133
    --------------------------------------------------------------------------------
    SUM:                           1363          32646          25574         185971
    --------------------------------------------------------------------------------
    

    它也可以在 Ubuntu 存储库中使用。

    【讨论】:

      【解决方案3】:

      在 Unix 上,您可以从终端运行以下命令:

      find . -name '*.py' | xargs cat | egrep "[a-zA-Z0-9_{}]" | wc -l
      

      如果你不想计算cmets,你需要一个更好的正则表达式......

      【讨论】:

        猜你喜欢
        • 2012-09-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-05
        • 1970-01-01
        • 2014-11-21
        相关资源
        最近更新 更多