/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/rules.py

  • Committer: Marius Kruger
  • Date: 2009-01-18 01:07:21 UTC
  • mto: (3946.1.1 ianc-integration)
  • mto: This revision was merged to the branch mainline in revision 3947.
  • Revision ID: amanic@gmail.com-20090118010721-2s62eobbgk51qqn9
actually support quoting the patterns as the docs suggest

Show diffs side-by-side

added added

removed removed

Lines of Context:
12
12
#
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
 
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
16
 
17
17
"""Rule-based definition of preferences for selected files in selected branches.
18
18
 
21
21
 
22
22
from bzrlib import (
23
23
    config,
24
 
    cmdline,
 
24
    commands,
25
25
    errors,
26
26
    globbing,
27
27
    osutils,
36
36
FILE_PREFS_PREFIX = 'name '
37
37
FILE_PREFS_PREFIX_LEN = len(FILE_PREFS_PREFIX)
38
38
 
39
 
# The object providing default rules
40
 
_per_user_searcher = None
41
 
 
42
39
 
43
40
class _RulesSearcher(object):
44
41
    """An object that provides rule-based preferences."""
77
74
        options = {'encoding': 'utf-8'}
78
75
        self._cfg = configobj.ConfigObj(inifile, options=options)
79
76
        sections = self._cfg.keys()
80
 
        patterns = []
 
77
        rule_section_count=0
 
78
        patterns=[]
81
79
        self.pattern_to_section = {}
82
80
        for s in sections:
83
81
            if s.startswith(FILE_PREFS_PREFIX):
84
 
                file_patterns = cmdline.split(s[FILE_PREFS_PREFIX_LEN:])
 
82
                rule_section_count += 1
 
83
                file_patterns = commands.shlex_split_unicode(
 
84
                    s[FILE_PREFS_PREFIX_LEN:])
85
85
                patterns.extend(file_patterns)
86
86
                for fp in file_patterns:
87
87
                    self.pattern_to_section[fp] = s
148
148
    return osutils.pathjoin(config.config_dir(), 'rules')
149
149
 
150
150
 
151
 
def reset_rules():
152
 
    global _per_user_searcher
153
 
    _per_user_searcher = _IniBasedRulesSearcher(rules_filename())
154
 
 
155
 
reset_rules()
 
151
# The object providing default rules
 
152
_per_user_searcher = _IniBasedRulesSearcher(rules_filename())