annotate piecrust/processing/sass.py @ 949:2d9b4c12579c

admin: Add proper link to touch icon. The icon is ugly for now but that's OK.
author Ludovic Chabant <ludovic@chabant.com>
date Thu, 05 Oct 2017 00:27:08 -0700
parents 4850f8c21b6e
children e00ff3dcb5ec
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
1 import os
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2 import os.path
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3 import json
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 import hashlib
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
5 import logging
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
6 import platform
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
7 import subprocess
852
4850f8c21b6e core: Start of the big refactor for PieCrust 3.0.
Ludovic Chabant <ludovic@chabant.com>
parents: 666
diff changeset
8 from piecrust.processing.base import SimpleFileProcessor, FORCE_BUILD
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
9
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
11 logger = logging.getLogger(__name__)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
12
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
14 class SassProcessor(SimpleFileProcessor):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
15 PROCESSOR_NAME = 'sass'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
16
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
17 def __init__(self):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
18 super(SassProcessor, self).__init__(
852
4850f8c21b6e core: Start of the big refactor for PieCrust 3.0.
Ludovic Chabant <ludovic@chabant.com>
parents: 666
diff changeset
19 extensions={'scss': 'css', 'sass': 'css'})
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
20 self._conf = None
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
21 self._map_dir = None
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
22
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
23 def initialize(self, app):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
24 super(SassProcessor, self).initialize(app)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
25
852
4850f8c21b6e core: Start of the big refactor for PieCrust 3.0.
Ludovic Chabant <ludovic@chabant.com>
parents: 666
diff changeset
26 def onPipelineStart(self, ctx):
4850f8c21b6e core: Start of the big refactor for PieCrust 3.0.
Ludovic Chabant <ludovic@chabant.com>
parents: 666
diff changeset
27 super(SassProcessor, self).onPipelineStart(ctx)
414
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
28
852
4850f8c21b6e core: Start of the big refactor for PieCrust 3.0.
Ludovic Chabant <ludovic@chabant.com>
parents: 666
diff changeset
29 self._map_dir = os.path.join(ctx.tmp_dir, 'sass')
4850f8c21b6e core: Start of the big refactor for PieCrust 3.0.
Ludovic Chabant <ludovic@chabant.com>
parents: 666
diff changeset
30 if ctx.is_main_process:
414
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
31 if not os.path.isdir(self._map_dir):
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
32 os.makedirs(self._map_dir)
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
33
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
34 # Ignore include-only Sass files.
852
4850f8c21b6e core: Start of the big refactor for PieCrust 3.0.
Ludovic Chabant <ludovic@chabant.com>
parents: 666
diff changeset
35 ctx.ignore_patterns += ['_*.scss', '_*.sass']
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
36
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
37 def getDependencies(self, path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
38 if _is_include_only(path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
39 raise Exception("Include only Sass files should be ignored!")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
40
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
41 map_path = self._getMapPath(path)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
42 try:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
43 with open(map_path, 'r') as f:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
44 dep_map = json.load(f)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
45 except IOError:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
46 # Map file not found... rebuild.
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
47 logger.debug("No map file found for Sass file '%s' at '%s'. "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
48 "Rebuilding." % (path, map_path))
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
49 return FORCE_BUILD
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
50
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
51 if dep_map.get('version') != 3:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
52 logger.warning("Unknown Sass map version. Rebuilding.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
53 return FORCE_BUILD
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
54
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
55 sources = dep_map.get('sources', [])
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
56 deps = list(map(_clean_scheme, sources))
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
57 return deps
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
58
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
59 def _doProcess(self, in_path, out_path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
60 self._ensureInitialized()
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
61
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
62 if _is_include_only(in_path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
63 raise Exception("Include only Sass files should be ignored!")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
64
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
65 sourcemap = 'none'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
66 if self.app.cache.enabled:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
67 sourcemap = 'file'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
68
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
69 args = [self._conf['bin'],
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
70 '--sourcemap=%s' % sourcemap,
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
71 '--style', self._conf['style']]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
72
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
73 cache_dir = self._conf['cache_dir']
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
74 if cache_dir:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
75 args += ['--cache-location', cache_dir]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
76 else:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
77 args += ['--no-cache']
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
78
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
79 for lp in self._conf['load_paths']:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
80 args += ['-I', lp]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
81
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
82 args += self._conf['options']
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
83 args += [in_path, out_path]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
84 logger.debug("Processing Sass file: %s" % args)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
85
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
86 # On Windows, we need to run the process in a shell environment
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
87 # otherwise it looks like `PATH` isn't taken into account.
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
88 shell = (platform.system() == 'Windows')
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
89 try:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
90 retcode = subprocess.call(args, shell=shell)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
91 except FileNotFoundError as ex:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
92 logger.error("Tried running Sass processor with command: %s" %
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
93 args)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
94 raise Exception("Error running Sass processor. "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
95 "Did you install it?") from ex
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
96
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
97 # The sourcemap is generated next to the CSS file... there doesn't
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
98 # seem to be any option to override that, sadly... so we need to move
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
99 # it to the cache directory.
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
100 if self.app.cache.enabled:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
101 src_map_file = out_path + '.map'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
102 dst_map_file = self._getMapPath(in_path)
499
a406b75c4bea sass: Overwrite the old map file with the new one always.
Ludovic Chabant <ludovic@chabant.com>
parents: 481
diff changeset
103 if os.path.exists(dst_map_file):
a406b75c4bea sass: Overwrite the old map file with the new one always.
Ludovic Chabant <ludovic@chabant.com>
parents: 481
diff changeset
104 os.remove(dst_map_file)
a406b75c4bea sass: Overwrite the old map file with the new one always.
Ludovic Chabant <ludovic@chabant.com>
parents: 481
diff changeset
105 os.rename(src_map_file, dst_map_file)
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
106
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
107 if retcode != 0:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
108 raise Exception("Error occured in Sass compiler. Please check "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
109 "log messages above for more information.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
110
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
111 return True
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
112
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
113 def _ensureInitialized(self):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
114 if self._conf is not None:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
115 return
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
116
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
117 self._conf = self.app.config.get('sass') or {}
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
118 self._conf.setdefault('bin', 'scss')
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
119 self._conf.setdefault('style', 'nested')
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
120 self._conf.setdefault('load_paths', [])
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
121 if not isinstance(self._conf['load_paths'], list):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
122 raise Exception("The `sass/load_paths` configuration setting "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
123 "must be an array of paths.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
124 self._conf.setdefault('options', [])
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
125 if not isinstance(self._conf['options'], list):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
126 raise Exception("The `sass/options` configuration setting "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
127 "must be an array of arguments.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
128
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
129 cache_dir = None
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
130 if self.app.cache.enabled:
666
81d9c3a3a0b5 internal: Get rid of the whole "sub cache" business.
Ludovic Chabant <ludovic@chabant.com>
parents: 499
diff changeset
131 cache_dir = os.path.join(self.app.cache_dir, 'sass')
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
132 self._conf.setdefault('cache_dir', cache_dir)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
133
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
134 def _getMapPath(self, path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
135 map_name = "%s_%s.map" % (
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
136 os.path.basename(path),
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
137 hashlib.md5(path.encode('utf8')).hexdigest())
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
138 map_path = os.path.join(self._map_dir, map_name)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
139 return map_path
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
140
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
141
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
142 def _clean_scheme(p):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
143 if p.startswith('file://'):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
144 return p[7:]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
145 return p
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
146
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
147
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
148 def _is_include_only(path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
149 name = os.path.basename(path)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
150 return len(name) > 0 and name[0] == '_'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
151