<p dir="auto">Issue Id: <b>37805625-bfb3-36ca-de37-e04bbd17e7b9</b><br><br><em>Versions</em> <br>- 0.10.8<br>-  <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/microsoft/vscode/commit/149e7a0debf3e32f95978a606e00d3c09bcac3d6/hovercard" href="https://github.com/microsoft/vscode/commit/149e7a0debf3e32f95978a606e00d3c09bcac3d6"><tt>149e7a0</tt></a><br>-  <a class="commit-link" data-hovercard-type="commit" data-hovercard-url="https://github.com/microsoft/vscode/commit/45d69357c9eb068dd8e624f5b0fe461cd2078d88/hovercard" href="https://github.com/microsoft/vscode/commit/45d69357c9eb068dd8e624f5b0fe461cd2078d88"><tt>45d6935</tt></a><br><em>Stack</em> <br>TypeError: e.text.substr is not a function<br>    at e. (out/vs/workbench/workbench.main.js:40:17379) <br>    at e.doElement (out/vs/workbench/workbench.main.js:38:18496) <br>    at e.li (out/vs/workbench/workbench.main.js:38:17765) <br>    at e.renderMessage (out/vs/workbench/workbench.main.js:40:16633) <br>    at out/vs/workbench/workbench.main.js:40:16382 <br>    at Array.forEach (native)<br>    at e. (out/vs/workbench/workbench.main.js:40:16358) <br>    at e.doElement (out/vs/workbench/workbench.main.js:38:18496) <br>    at e.ul (out/vs/workbench/workbench.main.js:38:17641) <br>    at e.renderMessages (out/vs/workbench/workbench.main.js:40:16223) <br></p>
<p dir="auto">The user should be able to make a permanent decision of associating a file extension to a mode. This could work as follows:</p>
<ul dir="auto">
<li>user selects clicks on language picker</li>
<li>user clicks on entry to "Permanently associate extension"</li>
<li>user gets asked for the language mode to store</li>
<li>user gets asked to store it in workspace or global settings</li>
<li>change is made and user is informed that settings have been updated and if he wants to review</li>
</ul>
<p dir="auto">For this we need a couple of things:</p>
<ul dir="auto">
<li>being able to write to workspace settings and not only global settings</li>
<li>finding out if the settings file is currently dirty (if that is true we either abort or update the buffer).</li>
</ul>
<p dir="auto">//cc <a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/aeschli/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/aeschli">@aeschli</a></p>