Sublime Forum

Settings.set and Casting

#1

view.settings().set(“font_face”, “30”) will fail silently. view.settings().set(“font_face”, float(“30”)) will work.

In v1, Options.set would do the parsing and casting itself. The new behavior seems to be due to JSON having types, but it’s inconvenient if you’re setting settings at runtime.

I’m doing this now:

for setter, name, value in genModelineOpts(view): try: setter(name, float(value)) except ValueError: setter(name, value)

Whereas before I’d just say:

for setter, name, value in genModelineOpts(view): setter(name, value)

I think it’d be better to have the conversion handled transparently.

0 Likes