本文整理汇总了Python中exe.engine.path.Path.dirs方法的典型用法代码示例。如果您正苦于以下问题:Python Path.dirs方法的具体用法?Python Path.dirs怎么用?Python Path.dirs使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类exe.engine.path.Path
的用法示例。
在下文中一共展示了Path.dirs方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: main
# 需要导入模块: from exe.engine.path import Path [as 别名]
# 或者: from exe.engine.path.Path import dirs [as 别名]
def main():
usage = "usage: %prog [options]"
parser = OptionParser(usage)
parser.add_option("-n", "--new",
action="store_true", dest="preserve_new", default=False,
help="create new .mo files for languages that are not yet in SVN")
(options, args) = parser.parse_args()
# Move to the right dir
curdir = Path('.').abspath()
if curdir.basename() == 'exe':
if 'locale' in [p.relpath() for p in curdir.dirs()]:
(curdir/'..').chdir()
elif curdir.basename() == 'locale':
(curdir/'..'/'..').chdir()
print 'Running from: %s' % Path('.').abspath()
# make sure any old build is not around to be scanned for strings
shutil.rmtree('build', ignore_errors=True)
shutil.rmtree('debian/python2.4-exe', ignore_errors=True)
shutil.rmtree('debian/python2.5-exe', ignore_errors=True)
shutil.rmtree('debian/python-exe', ignore_errors=True)
try:
os.remove('debian')
except OSError:
pass
# Fill out the options
option = {}
option['forceEnglish'] = 0
option['mo'] = 0
option['po'] = 0
option['verbose'] = 1
option['domain'] = None
option['moTarget'] = Path('exe/locale').abspath()
option['domain'] = 'exe'
if option['verbose']:
print "Application domain used is: '%s'" % option['domain']
print 'Generating file list: app.fil'
# Generate the list of files to use
generateAppFil()
# Make the .po files
try:
makePO(Path('.'),option['domain'],option['verbose'])
except IOError, e:
printUsage(e[1] + '\n You must write a file app.fil that contains the list of all files to parse.')
示例2: OptionParser
# 需要导入模块: from exe.engine.path import Path [as 别名]
# 或者: from exe.engine.path.Path import dirs [as 别名]
# S c r i p t e x e c u t i o n -- Runs when invoked from the command line --
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
#
if __name__ == "__main__":
usage = "usage: %prog [options]"
parser = OptionParser(usage)
parser.add_option("-n", "--new",
action="store_true", dest="preserve_new", default=False,
help="create new .mo files for languages that are not yet in SVN")
(options, args) = parser.parse_args()
# Move to the right dir
curdir = Path('.').abspath()
if curdir.basename() == 'exe':
if 'locale' in [p.relpath() for p in curdir.dirs()]:
(curdir/'..').chdir()
elif curdir.basename() == 'locale':
(curdir/'..'/'..').chdir()
print 'Running from: %s' % Path('.').abspath()
# make sure any old build is not around to be scanned for strings
shutil.rmtree('build', ignore_errors=True)
shutil.rmtree('debian/python2.4-exe', ignore_errors=True)
shutil.rmtree('debian/python2.5-exe', ignore_errors=True)
shutil.rmtree('debian/python-exe', ignore_errors=True)
try:
os.remove('debian')
except OSError:
pass
# Fill out the options
option = {}
示例3: __init__
# 需要导入模块: from exe.engine.path import Path [as 别名]
# 或者: from exe.engine.path.Path import dirs [as 别名]
class Config:
"""
The Config class contains the configuration information for eXe.
"""
optionNames = {
"system": ("webDir", "xulDir", "port", "dataDir", "configDir", "localeDir", "browserPath"),
"user": ("locale",),
}
def __init__(self):
"""
Initialise
"""
self.configPath = None
self.configParser = ConfigParser()
self.exePath = Path(sys.argv[0]).abspath()
self.webDir = self.exePath.dirname()
self.xulDir = self.exePath.dirname()
self.localeDir = self.exePath.dirname() / "locale"
self.port = 51235
self.dataDir = Path(".")
self.configDir = Path(".")
self.browserPath = Path("firefox")
self.locale = chooseDefaultLocale(self.localeDir)
self.styles = []
self._overrideDefaultVals()
self.webDir = Path(self.webDir)
if not (self.webDir / "scripts").isdir() and (self.webDir / "webui").isdir():
self.webDir /= "webui"
self.xulDir = Path(self.xulDir)
if not (self.xulDir / "scripts").isdir() and (self.xulDir / "xului").isdir():
self.xulDir /= "xului"
self.__setConfigPath()
self._writeDefaultConfigFile()
self.loadSettings()
self.setupLogging()
self.loadStyles()
self.loadLocales()
def _overrideDefaultVals(self):
"""
Override this to override the
default config values
"""
def _getConfigPathOptions(self):
"""
Override this to give a list of
possible config filenames
in order of preference
"""
return ["exe.conf"]
def _writeDefaultConfigFile(self):
"""
[Over]writes 'self.configPath' with a default config file
(auto write is on so we don't need to write the file at the end)
"""
for sectionName, optionNames in self.optionNames.items():
for optionName in optionNames:
defaultVal = getattr(self, optionName)
self.configParser.setdefault(sectionName, optionName, defaultVal)
self.configParser.setdefault("logging", "root", "INFO")
def __setConfigPath(self):
"""
sets self.configPath to the filename of the config file that we'll
use.
In descendant classes set self.configFileOptions to a list
of directories where the configDir should be in order of preference.
If no config files can be found in these dirs, it will
force creation of the config file in the top dir
"""
self.configPath = None
configFileOptions = map(Path, self._getConfigPathOptions())
if "EXECONF" in os.environ:
envconf = Path(os.environ["EXECONF"])
if envconf.isfile():
self.configPath = os.environ["EXECONF"]
if self.configPath is None:
for confPath in configFileOptions:
if confPath.isfile():
self.configPath = confPath
break
else:
self.configPath = configFileOptions[0]
folder = self.configPath.abspath().dirname()
if not folder.exists():
folder.makedirs()
self.configPath.touch()
self.configParser.read(self.configPath)
self.configParser.autoWrite = True
def upgradeFile(self):
"""
Called before loading the config file,
removes or upgrades any old settings.
"""
if self.configParser.has_section("system"):
#.........这里部分代码省略.........
示例4: render
# 需要导入模块: from exe.engine.path import Path [as 别名]
# 或者: from exe.engine.path.Path import dirs [as 别名]
def render(self, request):
if "sendWhat" in request.args:
if request.args['sendWhat'][0] == 'dirs':
pathdir = Path(unquote(request.args['node'][0].decode('utf-8')))
l = []
if pathdir == '/' and sys.platform[:3] == "win":
for d in get_drives():
try:
if is_readable(Path(d)):
icon = None
else:
icon = '../jsui/extjs/resources/themes/images/gray/grid/hmenu-lock.gif'
l.append({"realtext": d, "text": d, "id": d + '\\', "icon": icon})
except:
pass
else:
for d in pathdir.dirs():
try:
if not d.name.startswith('.') or sys.platform[:3] == "win":
if not iswinlink(d.abspath()):
if is_readable(d):
icon = None
else:
icon = '../jsui/extjs/resources/themes/images/gray/grid/hmenu-lock.gif'
l.append({"realtext": d.name, "text": getname(d), "id": d.abspath(), "icon": icon})
except:
pass
elif request.args['sendWhat'][0] == 'both':
pathdir = Path(unquote(request.args['dir'][0].decode('utf-8')))
items = []
if pathdir == '/' and sys.platform[:3] == "win":
for drive in get_drives():
d = Path(drive + '\\')
items.append({"name": drive, "realname": drive + '\\', "size": 0, "type": 'directory', "modified": 0,
"is_readable": is_readable(d),
"is_writable": is_writable(d)})
else:
parent = pathdir.parent
if (parent == pathdir):
realname = '/'
else:
realname = parent.abspath()
items.append({"name": '.', "realname": pathdir.abspath(), "size": pathdir.size, "type": "directory", "modified": int(pathdir.mtime),
"is_readable": is_readable(pathdir),
"is_writable": is_writable(pathdir)})
items.append({"name": '..', "realname": realname, "size": parent.size, "type": "directory", "modified": int(parent.mtime),
"is_readable": is_readable(parent),
"is_writable": is_writable(parent)})
try:
for d in pathdir.listdir():
try:
if not d.name.startswith('.') or sys.platform[:3] == "win":
if not iswinlink(d.abspath()):
if d.isdir():
pathtype = "directory"
elif d.isfile():
if is_readable(d):
pathtype = repr(mimetypes.guess_type(d.name, False)[0])
else:
pathtype = "file"
elif d.islink():
pathtype = "link"
else:
pathtype = "None"
items.append({"name": getname(d), "realname": d.abspath(), "size": d.size, "type": pathtype, "modified": int(d.mtime),
"is_readable": is_readable(d),
"is_writable": is_writable(d)})
except:
pass
G.application.config.lastDir = pathdir
except:
pass
l = {"totalCount": len(items), 'results': len(items), 'items': items}
return json.dumps(l).encode('utf-8')
elif "query" in request.args:
query = request.args['query'][0]
pathdir = Path(unquote(request.args['dir'][0].decode('utf-8')))
items = []
if pathdir == '/' and sys.platform[:3] == "win":
for d in get_drives():
items.append({"name": d, "realname": d + '\\', "size": 0, "type": 'directory', "modified": 0})
else:
parent = pathdir.parent
if (parent == pathdir):
realname = '/'
else:
realname = parent.abspath()
for d in pathdir.listdir():
try:
if d.isdir():
pathtype = "directory"
elif d.isfile():
if is_readable(d):
pathtype = repr(mimetypes.guess_type(d.name, False)[0])
else:
pathtype = "file"
elif d.islink():
pathtype = "link"
else:
pathtype = "None"
#.........这里部分代码省略.........
示例5: render
# 需要导入模块: from exe.engine.path import Path [as 别名]
# 或者: from exe.engine.path.Path import dirs [as 别名]
def render(self, request):
if "sendWhat" in request.args:
if request.args['sendWhat'][0] == 'dirs':
#Because this might be absolute and mess up...
path_dir_str = unquote(request.args['node'][0].decode('utf-8'))
path_dir_str = self.get_dirpath_for_request(
request, path_dir_str)
pathdir = Path(path_dir_str)
l = []
if pathdir == '/' and sys.platform[:3] == "win":
for d in get_drives():
try:
if is_readable(Path(d)):
icon = None
else:
icon = '../jsui/extjs/resources/themes/images/gray/grid/hmenu-lock.gif'
l.append({"realtext": d, "text": d, "id": d + '\\', "icon": icon})
except:
pass
else:
for d in pathdir.dirs():
try:
if not d.name.startswith('.') or sys.platform[:3] == "win":
if not iswinlink(d.abspath()):
if is_readable(d):
icon = None
else:
icon = '../jsui/extjs/resources/themes/images/gray/grid/hmenu-lock.gif'
l.append({"realtext": d.name, "text": getname(d), "id": self.abs_to_user_path(d.abspath(), request), "icon": icon})
except:
pass
elif request.args['sendWhat'][0] == 'both':
req_pathdir_str = unquote(request.args['dir'][0].decode('utf-8'))
pathdir_str = self.get_dirpath_for_request(
request, req_pathdir_str)
pathdir = Path(pathdir_str)
items = []
if pathdir == '/' and sys.platform[:3] == "win":
for drive in get_drives():
d = Path(drive + '\\')
items.append({"name": drive, "realname": drive + '\\', "size": 0, "type": 'directory', "modified": 0,
"is_readable": is_readable(d),
"is_writable": is_writable(d)})
else:
parent = pathdir.parent
if (parent == pathdir):
realname = '/'
else:
realname = self.abs_to_user_path(parent.abspath(), request)
items.append({"name": '.', "realname": self.abs_to_user_path(pathdir.abspath(), request), "size": pathdir.size, "type": "directory", "modified": int(pathdir.mtime),
"is_readable": is_readable(pathdir),
"is_writable": is_writable(pathdir)})
items.append({"name": '..', "realname": realname, "size": parent.size, "type": "directory", "modified": int(parent.mtime),
"is_readable": is_readable(parent),
"is_writable": is_writable(parent)})
try:
for d in pathdir.listdir():
try:
if not d.name.startswith('.') or sys.platform[:3] == "win":
if not iswinlink(d.abspath()):
if d.isdir():
pathtype = "directory"
elif d.isfile():
if is_readable(d):
pathtype = repr(mimetypes.guess_type(d.name, False)[0])
else:
pathtype = "file"
elif d.islink():
pathtype = "link"
else:
pathtype = "None"
items.append({"name": getname(d), "realname": self.abs_to_user_path(d.abspath(), request), "size": d.size, "type": pathtype, "modified": int(d.mtime),
"is_readable": is_readable(d),
"is_writable": is_writable(d)})
except:
pass
#this was before just pathdir - check this
if G.application.config.appMode != Config.MODE_WEBAPP:
G.application.config.lastDir = pathdir
else:
self.session.webservice_config.lastDir = req_pathdir_str
except:
pass
l = {"totalCount": len(items), 'results': len(items), 'items': items}
return json.dumps(l).encode('utf-8')
elif "query" in request.args:
query = request.args['query'][0]
path_dir_str = unquote(request.args['dir'][0].decode('utf-8'))
path_dir_str = self.get_dirpath_for_request(request,path_dir_str)
pathdir = Path(path_dir_str)
items = []
if pathdir == '/' and sys.platform[:3] == "win":
for d in get_drives():
items.append({"name": d, "realname": d + '\\', "size": 0, "type": 'directory', "modified": 0})
else:
parent = pathdir.parent
#.........这里部分代码省略.........
示例6: __init__
# 需要导入模块: from exe.engine.path import Path [as 别名]
# 或者: from exe.engine.path.Path import dirs [as 别名]
#.........这里部分代码省略.........
defaultVal = getattr(self, optionName)
self.configParser.setdefault(sectionName,
optionName,
defaultVal)
# Logging can't really be changed from inside the program at the moment...
self.configParser.setdefault('logging', 'root', 'INFO')
def _getWinFolder(self, code):
"""
Gets one of the windows famous directorys
depending on 'code'
Possible values can be found at:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/shell/reference/enums/csidl.asp#CSIDL_WINDOWS
"""
from ctypes import WinDLL, create_unicode_buffer
dll = WinDLL('shell32')
# The '5' and the '0' from the below call come from
# google: "ShellSpecialConstants site:msdn.microsoft.com"
result = create_unicode_buffer(260)
resource = dll.SHGetFolderPathW(None, code, None, 0, result)
if resource != 0:
return Path('')
else:
return Path(result.value)
def __setConfigPath(self):
"""
sets self.configPath to the filename of the config file that we'll
use.
In descendant classes set self.configFileOptions to a list
of directories where the configDir should be in order of preference.
If no config files can be found in these dirs, it will
force creation of the config file in the top dir
"""
# If there's an EXECONF environment variable, use it
self.configPath = None
configFileOptions = map(Path, self._getConfigPathOptions())
if "EXECONF" in os.environ:
envconf = Path(os.environ["EXECONF"])
if envconf.isfile():
self.configPath = os.environ["EXECONF"]
# Otherwise find the most appropriate existing file
if self.configPath is None:
for confPath in configFileOptions:
if confPath.isfile():
self.configPath = confPath
break
else:
# If no config files exist, create and use the
# first one on the list
self.configPath = configFileOptions[0]
folder = self.configPath.abspath().dirname()
if not folder.exists():
folder.makedirs()
self.configPath.touch()
# Now make our configParser
self.configParser.read(self.configPath)
self.configParser.autoWrite = True
def upgradeFile(self):
"""
Called before loading the config file,
removes or upgrades any old settings.
示例7: execfile
# 需要导入模块: from exe.engine.path import Path [as 别名]
# 或者: from exe.engine.path.Path import dirs [as 别名]
try:
# Try to get templates' strings
execfile(application.config.templatesDir / 'strings.py')
print(u'Re-adding HTML to template translations')
# Load all locale catalogs
locale_catalogs = {}
for name, locale in application.config.locales.iteritems():
current_locale = {}
current_locale['locale'] = locale
locale_catalogs[name] = current_locale
# Load the catalogs from the temp directory
for sub_dir in locale_path.dirs():
if (sub_dir / 'LC_MESSAGES' / 'exe.po').exists() and os.path.basename(sub_dir) in locale_catalogs:
catalog_stream = open(sub_dir / 'LC_MESSAGES' / 'exe.po', 'r')
catalog_string = catalog_stream.read()
catalog_stream.close()
locale_catalogs[os.path.basename(sub_dir)]['catalog'] = read_po(StringIO(catalog_string))
locale_catalogs[os.path.basename(sub_dir)]['path'] = sub_dir / 'LC_MESSAGES' / 'exe.po'
# Go through all the templates, nodes, idevices and fields
for path, template in templates.iteritems():
for node in template['nodes']:
for idevice in node['idevices']:
for field in idevice['fields']:
# For each locale
for name, locale in locale_catalogs.iteritems():