Metadata-Version: 1.0
Name: ScopeFormatter
Version: 1.0.3
Summary: Format a string using names in the current scope.
Home-page: http://pypi.python.org/pypi/ScopeFormatter
Author: Luke Stebbing
Author-email: luke@lukestebbing.com
License: MIT
Description: ScopeFormatter allows Python's string formatting to be used with names
        drawn from the current scope, similar to the variable interpolation
        found in languages such as Ruby and Perl.
        
        
        .. contents::
        
        
        Examples
        --------
        >>> from scopeformatter import F
        >>> greeting = 'Hello'
        >>> def greet(name):
        ...     return F('{greeting}, {name}!')
        >>> greet('world')
        'Hello, world!'
        
        Positional and keyword arguments are accepted:
        
        >>> F('{greeting} {0} times, {name}!', len(greeting), name='world')
        'Hello 5 times, world!'
        
        
        Requirements
        ------------
        The stack inspection requires a Python VM that provides
        ``sys._getframe()``, such as CPython.
        
        
        Limitations
        -----------
        Non-global names from enclosing scopes will not be found unless
        they are referenced in the local scope.
        
        >>> def outer():
        ...     non_local = 'non-local'
        ...     def inner():
        ...         return F('{non_local} is not referenced locally')
        ...     return inner()
        >>> outer()
        Traceback (most recent call last):
        ...
        KeyError: 'non_local'
        
        >>> def outer():
        ...     non_local = 'non-local'
        ...     def inner():
        ...         non_local
        ...         return F('{non_local} is referenced locally')
        ...     return inner()
        >>> outer()
        'non-local is referenced locally'
        
        
        History
        -------
        
        
        1.0.3 -- 2009 Oct 22
        ====================
        - Added history to the project page.
        - Added additional documentation files.
        
        
        1.0.2 -- 2009 Oct 22
        ====================
        - Reorganized metadata.
        - Removed dependencies on setuptools and nose.
        
        
        1.0.1 -- 2009 Oct 3
        ===================
        - Made minor additions to metadata.
        
        
        1.0 -- 2009 Sept 25
        ===================
        - Initial release.
        
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
