Ответ 1
Это несовместимость между плагином JSLint для Notepad ++ и последними версиями Notepad ++. Плагин JSLint для Notepad ++ должен быть исправлен для правильной работы с новыми типами файлов в Notepad ++.
Если вы проверите плагин JSLint для исходного кода Notepad ++:
if (type != L_JS && type != L_HTML && type != L_CSS) {
::MessageBox(
g_nppData._nppHandle,
TEXT("JSLint can operate only on JavaScript, HTML or CSS files."),
TEXT("JSLint"),
MB_OK | MB_ICONINFORMATION
);
return;
}
Вы также можете увидеть в файле Notepad_plus_msgs.h
список типов файлов, включенный в плагин:
enum LangType {L_TXT, L_PHP , L_C, L_CPP, L_CS, L_OBJC, L_JAVA, L_RC,\
L_HTML, L_XML, L_MAKEFILE, L_PASCAL, L_BATCH, L_INI, L_NFO, L_USER,\
L_ASP, L_SQL, L_VB, L_JS, L_CSS, L_PERL, L_PYTHON, L_LUA,\
L_TEX, L_FORTRAN, L_BASH, L_FLASH, L_NSIS, L_TCL, L_LISP, L_SCHEME,\
L_ASM, L_DIFF, L_PROPS, L_PS, L_RUBY, L_SMALLTALK, L_VHDL, L_KIX, L_AU3,\
L_CAML, L_ADA, L_VERILOG, L_MATLAB, L_HASKELL, L_INNO, L_SEARCHRESULT,\
L_CMAKE, L_YAML,\
// The end of enumated language type, so it should be always at the end
L_EXTERNAL};
Плагин пытается убедиться, что файл является одним из поддерживаемых типов файлов, что было до сих пор.
Но последние версии Notepad ++ включают эти изменения, которые добавляют пару новых "типов файлов" (L_JSON
и L_JAVASCRIPT
), связанных с этой проблемой, Теперь список типов файлов в последних версиях Notepad ++:
enum LangType {L_TEXT, L_PHP , L_C, L_CPP, L_CS, L_OBJC, L_JAVA, L_RC,\
L_HTML, L_XML, L_MAKEFILE, L_PASCAL, L_BATCH, L_INI, L_ASCII, L_USER,\
L_ASP, L_SQL, L_VB, L_JS, L_CSS, L_PERL, L_PYTHON, L_LUA,\
L_TEX, L_FORTRAN, L_BASH, L_FLASH, L_NSIS, L_TCL, L_LISP, L_SCHEME,\
L_ASM, L_DIFF, L_PROPS, L_PS, L_RUBY, L_SMALLTALK, L_VHDL, L_KIX, L_AU3,\
L_CAML, L_ADA, L_VERILOG, L_MATLAB, L_HASKELL, L_INNO, L_SEARCHRESULT,\
L_CMAKE, L_YAML, L_COBOL, L_GUI4CLI, L_D, L_POWERSHELL, L_R, L_JSP,\
L_COFFEESCRIPT, L_JSON, L_JAVASCRIPT,\
// The end of enumated language type, so it should be always at the end
L_EXTERNAL};
В целом, JSLint Plugin для Notepad ++ необходимо изменить, чтобы правильно определить файлы javascript/json. Если это активный проект, правильный способ решить это должен быть открыть проблему, я думаю. Я полагаю, что вы попытались присвоить язык непосредственно из меню в качестве обходного пути, но это не сработало.