generators: Convert StaticGenerator to use the new read_file

This commit is contained in:
W. Trevor King 2013-01-05 07:21:47 -05:00
commit 1bc5b100ec

View file

@ -548,32 +548,29 @@ class StaticGenerator(Generator):
for static_path in self.settings['STATIC_PATHS']: for static_path in self.settings['STATIC_PATHS']:
for f in self.get_files( for f in self.get_files(
os.path.join(self.path, static_path), extensions=False): os.path.join(self.path, static_path), extensions=False):
f_rel = os.path.relpath(f, self.path) static = read_file(
content, metadata = read_file( base_path=self.path, path=f, content_class=Static,
f, fmt='static', settings=self.settings) fmt='static',
# TODO remove this hardcoded 'static' subdirectory settings=self.settings, context=self.context,
metadata['save_as'] = os.path.join('static', f_rel) preread_signal=signals.static_generator_preread,
metadata['url'] = pelican.utils.path_to_url(metadata['save_as']) preread_sender=self,
sc = Static( context_signal=signals.static_generator_context,
content=None, context_sender=self)
metadata=metadata, self.staticfiles.append(static)
settings=self.settings, self.add_source_path(static)
source_path=f_rel)
self.staticfiles.append(sc)
self.add_source_path(sc)
# same thing for FILES_TO_COPY # same thing for FILES_TO_COPY
for src, dest in self.settings['FILES_TO_COPY']: for src, dest in self.settings['FILES_TO_COPY']:
content, metadata = read_file( static = read_file(
src, fmt='static', settings=self.settings) base_path=self.path, path=f, content_class=Static,
metadata['save_as'] = dest fmt='static',
metadata['url'] = pelican.utils.path_to_url(metadata['save_as']) settings=self.settings, context=self.context,
sc = Static( preread_signal=signals.static_generator_preread,
content=None, preread_sender=self,
metadata={'save_as': dest}, context_signal=signals.static_generator_context,
settings=self.settings, context_sender=self)
source_path=src) self.staticfiles.append(static)
self.staticfiles.append(sc) self.add_source_path(static)
self.add_source_path(sc)
def generate_output(self, writer): def generate_output(self, writer):
self._copy_paths(self.settings['THEME_STATIC_PATHS'], self.theme, self._copy_paths(self.settings['THEME_STATIC_PATHS'], self.theme,