usercss: don't relint on save; mode is an object once initialized

This commit is contained in:
tophf 2017-11-30 20:42:52 +03:00
parent a61ee5f093
commit 71f3dfbffd
2 changed files with 8 additions and 4 deletions

View File

@ -32,10 +32,8 @@ var linterConfig = {
getName() {
// some dirty hacks to override editor.linter getting from prefs
const linter = prefs.get('editor.linter');
if (linter && editors[0] && editors[0].getOption('mode') !== 'css') {
return 'stylelint';
}
return linter;
const mode = linter && editors[0] && editors[0].doc.mode;
return mode && mode !== 'css' && mode.name !== 'css' ? 'stylelint' : linter;
},
getCurrent(linter = linterConfig.getName()) {

View File

@ -59,10 +59,16 @@ function createSourceEditor(style) {
function initLinterSwitch() {
const linterEl = $('#editor.linter');
let prevMode = NaN;
cm.on('optionChange', (cm, option) => {
if (option !== 'mode') {
return;
}
const mode = cm.doc.mode;
if (mode === prevMode || mode && mode.name === prevMode) {
return;
}
prevMode = mode;
updateLinter();
update();
});