1
0
Fork 0

Improve tako config code quality

This commit is contained in:
Jeremy Kaplan 2017-09-24 22:02:39 -04:00 committed by Jeremy Kaplan
commit 275f2196a2

View file

@ -2,13 +2,13 @@ $TAKO_SETTINGS.show_traceback = True
$TAKO_SETTINGS.traceback_logfile = $HOME + '/tmp/tako.log' $TAKO_SETTINGS.traceback_logfile = $HOME + '/tmp/tako.log'
import re import re
from os import listdir import os
from os.path import isfile, join import os.path
def source_many(directory, predicate): def source_many(directory, predicate):
for filename in listdir(directory): for filename in os.listdir(directory):
if not predicate(filename): continue if not predicate(filename): continue
source @(join(directory, filename)) source @(os.path.join(directory, filename))
is_tako = (lambda re: lambda filename: re.match('^.*\.tako$', filename))(re) is_tako = (lambda re: lambda filename: re.match('^.*\.tako$', filename))(re)
source_many('/etc/profile.d', is_tako) source_many('/etc/profile.d', is_tako)
@ -40,8 +40,8 @@ def _workon(args, stdin=None):
'postactivate', 'postactivate',
] ]
for f in filter(isfile, [ for f in filter(os.path.isfile, [
join($WORKON_HOME, args[0], 'bin', '{}.tako'.format(name)) os.path.join($WORKON_HOME, args[0], 'bin', '{}.tako'.format(name))
for name in source_order for name in source_order
]): ]):
source @(f) source @(f)