Fix: disable CSSLint option in stylus mode
This commit is contained in:
parent
95902388a3
commit
be4a896bc9
|
@ -456,6 +456,15 @@
|
||||||
"message": "(Set rule as: 0 = disabled; 1 = warning; 2 = error)",
|
"message": "(Set rule as: 0 = disabled; 1 = warning; 2 = error)",
|
||||||
"description": "CSSLint rule config values"
|
"description": "CSSLint rule config values"
|
||||||
},
|
},
|
||||||
|
"linterCSSLintIncompatible": {
|
||||||
|
"message": "CSSLint doesn't support $preprocessorname$ preprocessor",
|
||||||
|
"description": "The label to display when the preprocessor doesn't compatible with CSSLint",
|
||||||
|
"placeholders": {
|
||||||
|
"preprocessorname": {
|
||||||
|
"content": "$1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"linterInvalidConfigError": {
|
"linterInvalidConfigError": {
|
||||||
"message": "Not saved due to these invalid configuration settings:",
|
"message": "Not saved due to these invalid configuration settings:",
|
||||||
"description": "Invalid linter config will show a message followed by a list of invalid entries"
|
"description": "Invalid linter config will show a message followed by a list of invalid entries"
|
||||||
|
|
|
@ -55,27 +55,31 @@ function createSourceEditor(style) {
|
||||||
|
|
||||||
// setup linter
|
// setup linter
|
||||||
initLint();
|
initLint();
|
||||||
const linterEl = $('#editor.linter');
|
initLinterSwitch();
|
||||||
cm.on('optionChange', (cm, option) => {
|
|
||||||
if (option === 'mode' || option === 'lint') {
|
|
||||||
const lint = cm.getOption('lint');
|
|
||||||
const mode = cm.getOption('mode');
|
|
||||||
|
|
||||||
if (mode !== 'css' && linterConfig.getName(lint) === 'csslint') {
|
function initLinterSwitch() {
|
||||||
updateLinter({linter: 'stylelint'});
|
const linterEl = $('#editor.linter');
|
||||||
linterEl.value = 'stylelint';
|
cm.on('optionChange', (cm, option) => {
|
||||||
|
if (option !== 'mode') {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
updateLinter();
|
||||||
|
update();
|
||||||
|
});
|
||||||
|
linterEl.addEventListener('change', update);
|
||||||
|
|
||||||
|
function update() {
|
||||||
|
linterEl.value = linterConfig.getDefault();
|
||||||
|
|
||||||
|
const cssLintOption = linterEl.querySelector('[value="csslint"]');
|
||||||
|
if (cm.getOption('mode') !== 'css') {
|
||||||
|
cssLintOption.disabled = true;
|
||||||
|
cssLintOption.title = t('linterCSSLintIncompatible', cm.getOption('mode'));
|
||||||
|
} else {
|
||||||
|
cssLintOption.disabled = false;
|
||||||
|
cssLintOption.title = '';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
|
||||||
linterEl.addEventListener('change', () => {
|
|
||||||
if (cm.getOption('mode') !== 'css' && linterEl.value === 'csslint') {
|
|
||||||
setTimeout(() => {
|
|
||||||
linterEl.value = 'stylelint';
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
if (linterEl.value === 'csslint') {
|
|
||||||
linterEl.value = 'stylelint';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function setupNewStyle(style) {
|
function setupNewStyle(style) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user