Example #1
0
    def read_options(self):
        """Load options from the config file."""
        self.options = Engine.default_options.copy()

        if os.path.isfile('config'):
            with open('config') as f:
                yaml_config = yaml.load(f)

            if yaml_config:
                self.options.update(yaml_config)

        # Make authors a list, even only a single author was specified.
        authors = self.options.get('authors', self.options.get('author', None))
        if isinstance(authors, list):
            self.options['authors'] = [Author.parse(a) for a in authors]
        elif isinstance(authors, str):
            csv = authors.split(',')
            self.options['authors'] = [Author.parse(a) for a in csv]
            if len(self.options['authors']) > 1:
                logging.warn(
                    'Deprecation Warning: Use YAML lists instead of '
                    'CSV for multiple authors. i.e. ["John Doe", "Jane '
                    'Smith"] instead of "John Doe, Jane Smith". In config '
                    'file.')

        if '{type}' in self.options['url_pattern']:
            logging.warn(
                'Deprecation Warning: You should use {ext} instead '
                'of {type} in the url pattern specified in the config '
                'file.')
Example #2
0
    def read_options(self):
        """Load options from the config file."""
        self.options = Engine.default_options.copy()

        if os.path.isfile('config'):
            with open('config') as f:
                yaml_config = yaml.load(f)

            if yaml_config:
                self.options.update(yaml_config)

        # Make authors a list, even only a single author was specified.
        authors = self.options.get('authors', self.options.get('author', None))
        if isinstance(authors, list):
            self.options['authors'] = [Author.parse(a) for a in authors]
        elif isinstance(authors, str):
            csv = authors.split(',')
            self.options['authors'] = [Author.parse(a) for a in csv]
            if len(self.options['authors']) > 1:
                logging.warn('Deprecation Warning: Use YAML lists instead of '
                        'CSV for multiple authors. i.e. ["John Doe", "Jane '
                        'Smith"] instead of "John Doe, Jane Smith". In config '
                        'file.')

        if '{type}' in self.options['url_pattern']:
            logging.warn('Deprecation Warning: You should use {ext} instead '
                    'of {type} in the url pattern specified in the config '
                    'file.')
Example #3
0
File: test_page.py Project: 5y/wok
    def test_author(self):
        a = Author.parse('Bob Smith')
        self.assertEqual(a.raw, 'Bob Smith')
        self.assertEqual(a.name, 'Bob Smith')

        a = Author.parse('Bob Smith <*****@*****.**>')
        self.assertEqual(a.raw, 'Bob Smith <*****@*****.**>')
        self.assertEqual(a.name, 'Bob Smith')
        self.assertEqual(a.email, '*****@*****.**')

        a = Author.parse('<*****@*****.**>')
        self.assertEqual(a.raw, '<*****@*****.**>')
        self.assertEqual(a.email, '*****@*****.**')
Example #4
0
    def test_author(self):
        a = Author.parse('Bob Smith')
        self.assertEqual(a.raw, 'Bob Smith')
        self.assertEqual(a.name, 'Bob Smith')

        a = Author.parse('Bob Smith <*****@*****.**>')
        self.assertEqual(a.raw, 'Bob Smith <*****@*****.**>')
        self.assertEqual(a.name, 'Bob Smith')
        self.assertEqual(a.email, '*****@*****.**')

        a = Author.parse('<*****@*****.**>')
        self.assertEqual(a.raw, '<*****@*****.**>')
        self.assertEqual(a.email, '*****@*****.**')
Example #5
0
    def read_options(self):
        """Load options from the config file."""
        self.options = Engine.default_options.copy()

        if os.path.isfile('config'):
            with open('config') as f:
                yaml_config = yaml.load(f)

            if yaml_config:
                self.options.update(yaml_config)

        # Make authors a list, even only a single author was specified.
        authors = self.options.get('authors', self.options.get('author', None))
        if isinstance(authors, list):
            self.options['authors'] = [Author.parse(a) for a in authors]
        elif isinstance(authors, str):
            csv = authors.split(',')
            self.options['authors'] = [Author.parse(a) for a in csv]
            if len(self.options['authors']) > 1:
                logging.warn(
                    'Deprecation Warning: Use YAML lists instead of '
                    'CSV for multiple authors. i.e. ["John Doe", "Jane '
                    'Smith"] instead of "John Doe, Jane Smith". In config '
                    'file.')

        if '{type}' in self.options['url_pattern']:
            logging.warn(
                'Deprecation Warning: You should use {ext} instead '
                'of {type} in the url pattern specified in the config '
                'file.')

        # Set locale if needed
        wanted_locale = self.options.get('locale')
        if wanted_locale is not None:
            try:
                locale.setlocale(locale.LC_TIME, wanted_locale)
            except locale.Error as err:
                logging.warn('Unable to set locale to `%s`: %s', wanted_locale,
                             err)

        # add a subdir prefix to the output_dir, if present in the config
        self.options['server_root'] = self.options['output_dir']
        self.options['output_dir'] = os.path.join(
            self.options['output_dir'], self.options.get('url_subdir', ''))
Example #6
0
File: engine.py Project: jneves/wok
    def read_options(self):
        """Load options from the config file."""
        self.options = Engine.default_options.copy()

        if os.path.isfile('config'):
            with open('config') as f:
                yaml_config = yaml.load(f)

            if yaml_config:
                self.options.update(yaml_config)

        # Make authors a list, even only a single author was specified.
        authors = self.options.get('authors', self.options.get('author', None))
        if isinstance(authors, list):
            self.options['authors'] = [Author.parse(a) for a in authors]
        elif isinstance(authors, str):
            csv = authors.split(',')
            self.options['authors'] = [Author.parse(a) for a in csv]
            if len(self.options['authors']) > 1:
                logging.warn('Deprecation Warning: Use YAML lists instead of '
                        'CSV for multiple authors. i.e. ["John Doe", "Jane '
                        'Smith"] instead of "John Doe, Jane Smith". In config '
                        'file.')

        if '{type}' in self.options['url_pattern']:
            logging.warn('Deprecation Warning: You should use {ext} instead '
                    'of {type} in the url pattern specified in the config '
                    'file.')

        # Set locale if needed
        wanted_locale = self.options.get('locale')
        if wanted_locale is not None:
            try:
                locale.setlocale(locale.LC_TIME, wanted_locale)
            except locale.Error as err:
                logging.warn('Unable to set locale to `%s`: %s',
                    wanted_locale, err
                )

        # add a subdir prefix to the output_dir, if present in the config
        self.options['server_root'] = self.options['output_dir']
        self.options['output_dir'] = os.path.join(self.options['output_dir'], self.options.get('url_subdir', ''))
Example #7
0
    def read_options(self):
        """Load options from the config file."""
        self.options = Engine.default_options.copy()

        if os.path.isfile("config"):
            with open("config") as f:
                yaml_config = yaml.load(f)

            if yaml_config:
                self.options.update(yaml_config)

        # Make authors a list, even only a single author was specified.
        authors = self.options.get("authors", self.options.get("author", None))
        if isinstance(authors, list):
            self.options["authors"] = [Author.parse(a) for a in authors]
        elif isinstance(authors, str):
            csv = authors.split(",")
            self.options["authors"] = [Author.parse(a) for a in csv]
            if len(self.options["authors"]) > 1:
                logging.warn(
                    "Deprecation Warning: Use YAML lists instead of "
                    'CSV for multiple authors. i.e. ["John Doe", "Jane '
                    'Smith"] instead of "John Doe, Jane Smith". In config '
                    "file."
                )

        if "{type}" in self.options["url_pattern"]:
            logging.warn(
                "Deprecation Warning: You should use {ext} instead "
                "of {type} in the url pattern specified in the config "
                "file."
            )

        # add a subdir prefix to the output_dir, if present in the config
        self.options["server_root"] = self.options["output_dir"]
        self.options["output_dir"] = os.path.join(self.options["output_dir"], self.options.get("url_subdir", ""))