2010-07-09 7 views
9

Je me demande si quelqu'un a eu de la chance en utilisant le plugin Eclipse Metrics avec des projets qui ne sont pas en Java (spécifiquement j'essaie de générer des métriques de code pour quelques projets PyDev). J'ai lu la procédure à suivre pour le projet Metrics, mais cela indique que je devrais être dans la perspective Java avant d'accéder aux propriétés de mon projet et que je devrais trouver une section Métriques. Je ne comprends pas cela pour mes projets PyDev, quelle que soit la perspective ouverte. Toute suggestion ou conseil serait génial.Lignes de code dans les projets PyDev Eclipse

Répondre

16

Je ne sais pas si c'est faisable pour obtenir le plugin pour travailler avec des projets PyDev, mais si c'est juste le vous après lines-of-code métrique, vous pouvez exécuter cet extrait dans le répertoire racine de votre projet:

# 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) 
+0

qui a fait ce que je devais à. Merci! –

2

Si vous êtes sous Linux ...

Avez-vous regardé cloc?

Il produit des sorties assez complètes, et accepte plusieurs options:

[email protected]:~/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 
-------------------------------------------------------------------------------- 

Il est disponible dans les dépôts Ubuntu, aussi bien.

0

Sur Unix, vous pouvez exécuter la commande suivante à partir du terminal:

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

Si vous voulez compter les commentaires, vous avez besoin d'une meilleure expression régulière ...

Questions connexes