OLD | NEW |
| (Empty) |
1 #!/usr/bin/env python | |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | |
3 # Use of this source code is governed by a BSD-style license that can be | |
4 # found in the LICENSE file. | |
5 | |
6 '''A CustomType for filenames.''' | |
7 | |
8 from grit import clique | |
9 from grit import lazy_re | |
10 | |
11 | |
12 class WindowsFilename(clique.CustomType): | |
13 '''Validates that messages can be used as Windows filenames, and strips | |
14 illegal characters out of translations. | |
15 ''' | |
16 | |
17 BANNED = lazy_re.compile('\+|:|\/|\\\\|\*|\?|\"|\<|\>|\|') | |
18 | |
19 def Validate(self, message): | |
20 return not self.BANNED.search(message.GetPresentableContent()) | |
21 | |
22 def ValidateAndModify(self, lang, translation): | |
23 is_ok = self.Validate(translation) | |
24 self.ModifyEachTextPart(lang, translation) | |
25 return is_ok | |
26 | |
27 def ModifyTextPart(self, lang, text): | |
28 return self.BANNED.sub(' ', text) | |
OLD | NEW |