sympy/sympy — pull request #2656 by MOBle (2013-12-07 15:22:45+00:00)
Title: Passing printer parameters

Following up on PR #2488 and google issue [4054](https://code.google.com/p/sympy/issues/detail?id=4054), this PR adds options to the latex and pretty printers to change the symbol modifier lists. In particular, to disable the symbol modifiers, either printer can be given an empty dictionary as the `symbol_modifiers` argument.

This also takes a stab at passing the options through `init_printing` and `init_session`, per google issue [3612](https://code.google.com/p/sympy/issues/detail?id=3612). For example, to disable symbol modifiers:
```python
from sympy import *
init_printing(symbol_modifiers={})
```
Or, to change the unicode printer to print `Symbol('xTilde')` as `x~` instead of `x̃`, you could initialize printing like this:
```python
from sympy import *
from sympy.printing.pretty.pretty_symbology import default_symbol_modifiers as new_symbol_modifiers
new_symbol_modifiers['tilde'] = lambda s: s+'~'
init_printing(symbol_modifiers=new_symbol_modifiers)
```
This passing through may not be done in the most future-friendly way, so I welcome any suggestions. In particular, I have no idea how to pass a printer as an option to either of those functions; I don't really understand the voodoo well enough. So this does not address google issue [4013](https://code.google.com/p/sympy/issues/detail?id=4013). Finally, I have no idea how I would test these initializations.