File: android-deltas-sync/_etc/__sloc__.py
#!/usr/bin/python3 """ A simple limited-scope source-code line count (a.k.a. sloc) script. See ../_README.html for license, attribution, and other logistics. """ import os, sys from glob import glob tally = count = 0 os.chdir('..') # main code scripts = glob('*.py') # main scripts + configs: Python # bash original scripts += glob('_etc/bash-version/*.sh') # main scripts: Bash scripts += glob('_etc/bash-version/config*.txt') # configs (really Bash) # miscellany scripts += glob('_etc/termux-widget-shims/*.py') # shims for android widget scripts += ['../_publish.sh'] # build scripts count too scripts += ['_etc/screenshots/_generate.sh'] # so do gallery builds scripts += ['_etc/gadgetpics/_generate.sh'] scripts += ['_etc/convertunicode.py'] # a mid-release addition [1.1] scripts += ['_etc/find-all-symlinks.py'] # a utility script [1.2] # 5 new widget install scripts [1.2] scripts += ['_etc/termux-widget-shims/_INSTALL-ALL.sh'] scripts += ['_etc/termux-widget-shims/_config-widget.sh'] scripts += ['_etc/termux-widget-shims/_install-shims.sh'] scripts += glob('_etc/termux-widget-shims/icons/_install-icons-*.sh') for fname in sorted(scripts): # files in this system if not fname.startswith(('__sloc',)): # skip self (if ever moved) fobj = open(fname) lcnt = len(fobj.readlines()) tally += lcnt count += 1 print(fname, '=>', lcnt) print('Total sloc in %d files: %s' % (count, tally)) if sys.platform.startswith('win'): input('Press Enter') # if clicked """ ================================================================================ Example output (and current counts/manifest): ../_publish.sh => 164 _etc/bash-version/common.sh => 138 _etc/bash-version/config-pc.txt => 31 _etc/bash-version/config-phone.txt => 37 _etc/bash-version/initial-copy-part1-pc.sh => 105 _etc/bash-version/initial-copy-part2-phone.sh => 77 _etc/bash-version/sync-changes-part1-pc.sh => 109 _etc/bash-version/sync-changes-part2-phone.sh => 84 _etc/bash-version/z-postcopy-hook-phone.sh => 49 _etc/convertunicode.py => 236 _etc/find-all-symlinks.py => 108 _etc/gadgetpics/_generate.sh => 34 _etc/screenshots/_generate.sh => 48 _etc/termux-widget-shims/_INSTALL-ALL.sh => 23 _etc/termux-widget-shims/_config-widget.sh => 27 _etc/termux-widget-shims/_install-shims.sh => 22 _etc/termux-widget-shims/export-phone.py => 37 _etc/termux-widget-shims/icons/_install-icons-alts.sh => 23 _etc/termux-widget-shims/icons/_install-icons-same.sh => 23 _etc/termux-widget-shims/initial-copy.py => 48 _etc/termux-widget-shims/sync-changes.py => 34 _etc/termux-widget-shims/verify-phone.py => 34 common.py => 809 config_pc.py => 110 config_phone.py => 136 initial-copy-part1-pc.py => 150 initial-copy-part2-phone.py => 130 sync-changes-part1-pc.py => 177 sync-changes-part2-phone.py => 145 x-export-phone-part1-phone.py => 142 x-export-phone-part2-pc.py => 213 x-verify-phone-part1-phone.py => 149 x-verify-phone-part2-pc.py => 194 z_postcopy_hook_phone.py => 75 Total sloc in 34 files: 3921 ================================================================================ """