@opensumi/ide-editor 3.3.4-next-1727343192.0 → 3.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/doc-model/editor-document-model-service.d.ts.map +1 -1
- package/lib/browser/doc-model/editor-document-model-service.js +2 -2
- package/lib/browser/doc-model/editor-document-model-service.js.map +1 -1
- package/lib/browser/fs-resource/fs-editor-doc.d.ts +3 -0
- package/lib/browser/fs-resource/fs-editor-doc.d.ts.map +1 -1
- package/lib/browser/fs-resource/fs-editor-doc.js +45 -5
- package/lib/browser/fs-resource/fs-editor-doc.js.map +1 -1
- package/package.json +14 -14
- package/src/browser/doc-model/editor-document-model-service.ts +3 -2
- package/src/browser/fs-resource/fs-editor-doc.ts +51 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-document-model-service.d.ts","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-model-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAEL,WAAW,EACX,qBAAqB,EACrB,8BAA8B,EAC9B,OAAO,EACP,IAAI,EAGJ,iBAAiB,EAIjB,eAAe,EACf,GAAG,EACH,YAAY,EAIb,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,mDAAmD,CAAC;AAExE,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAEL,6CAA6C,EAC7C,mCAAmC,EACnC,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,6BAA6B,EAAE,GAA4D,CAAC;AAEzG,eAAO,MAAM,2BAA2B,oBAAoB,CAAC;AAE7D,qBACa,8BAA+B,SAAQ,YAAa,YAAW,2BAA2B;IAErG,eAAe,EAAE,mCAAmC,CAAC;IAGrD,QAAQ,EAAE,QAAQ,CAAC;IAGnB,UAAU,EAAE,eAAe,CAAC;IAG5B,MAAM,EAAE,OAAO,CAAC;IAGhB,iBAAiB,EAAE,iBAAiB,CAAC;IAGrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAG7D,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAElD,OAAO,CAAC,OAAO,CAAW;IAE1B,OAAO,CAAC,eAAe,CAA0C;IAEjE,OAAO,CAAC,oBAAoB,CAAmD;IAE/E,OAAO,CAAC,sBAAsB,CAAwC;IAEtE,OAAO,CAAC,gBAAgB,CAAqB;IAE7C,OAAO,CAAC,qBAAqB,CAA6C;IAE1E,OAAO,CAAC,MAAM,CAAgD;IAE9D,OAAO,CAAC,4BAA4B,CAAgD;;IAwCpF,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW;IAItE,OAAO,CAAC,OAAO;IAqBf,OAAO,CAAC,SAAS;IAWX,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,sBAAsB;IA0BlE,wBAAwB;IAKlB,UAAU;IAaV,oBAAoB,CAAC,CAAC,EAAE,6CAA6C;IA2B3E,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAIhG,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAI3F,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI;IAwBjF,YAAY,IAAI,oBAAoB,EAAE;IAItC,WAAW,CAAC,UAAU,KAAA;IAIhB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAOpF,OAAO,KAAK,SAAS,GAGpB;IAED,OAAO,CAAC,WAAW;YAkBL,aAAa;
|
|
1
|
+
{"version":3,"file":"editor-document-model-service.d.ts","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-model-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyC,QAAQ,EAAE,MAAM,cAAc,CAAC;AAC/E,OAAO,EAEL,WAAW,EACX,qBAAqB,EACrB,8BAA8B,EAC9B,OAAO,EACP,IAAI,EAGJ,iBAAiB,EAIjB,eAAe,EACf,GAAG,EACH,YAAY,EAIb,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,mDAAmD,CAAC;AAExE,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAEL,6CAA6C,EAC7C,mCAAmC,EACnC,2BAA2B,EAC3B,sBAAsB,EACvB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,6BAA6B,EAAE,GAA4D,CAAC;AAEzG,eAAO,MAAM,2BAA2B,oBAAoB,CAAC;AAE7D,qBACa,8BAA+B,SAAQ,YAAa,YAAW,2BAA2B;IAErG,eAAe,EAAE,mCAAmC,CAAC;IAGrD,QAAQ,EAAE,QAAQ,CAAC;IAGnB,UAAU,EAAE,eAAe,CAAC;IAG5B,MAAM,EAAE,OAAO,CAAC;IAGhB,iBAAiB,EAAE,iBAAiB,CAAC;IAGrC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAwB;IAG7D,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAElD,OAAO,CAAC,OAAO,CAAW;IAE1B,OAAO,CAAC,eAAe,CAA0C;IAEjE,OAAO,CAAC,oBAAoB,CAAmD;IAE/E,OAAO,CAAC,sBAAsB,CAAwC;IAEtE,OAAO,CAAC,gBAAgB,CAAqB;IAE7C,OAAO,CAAC,qBAAqB,CAA6C;IAE1E,OAAO,CAAC,MAAM,CAAgD;IAE9D,OAAO,CAAC,4BAA4B,CAAgD;;IAwCpF,sBAAsB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW;IAItE,OAAO,CAAC,OAAO;IAqBf,OAAO,CAAC,SAAS;IAWX,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,sBAAsB;IA0BlE,wBAAwB;IAKlB,UAAU;IAaV,oBAAoB,CAAC,CAAC,EAAE,6CAA6C;IA2B3E,oBAAoB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAIhG,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,IAAI;IAI3F,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,0BAA0B,GAAG,IAAI;IAwBjF,YAAY,IAAI,oBAAoB,EAAE;IAItC,WAAW,CAAC,UAAU,KAAA;IAIhB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAOpF,OAAO,KAAK,SAAS,GAGpB;IAED,OAAO,CAAC,WAAW;YAkBL,aAAa;IAqErB,uBAAuB,CAC3B,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,qBAAqB,EAAE,EAChC,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,OAAO,EACpB,GAAG,CAAC,EAAE,GAAG,GACR,OAAO,CAAC,8BAA8B,CAAC;IAc1C,OAAO;CAMR"}
|
|
@@ -218,11 +218,10 @@ let EditorDocumentModelServiceImpl = class EditorDocumentModelServiceImpl extend
|
|
|
218
218
|
if (!provider) {
|
|
219
219
|
throw new Error(`No document provider found for ${uri.toString()}`);
|
|
220
220
|
}
|
|
221
|
-
const [content, readonly, languageId,
|
|
221
|
+
const [content, readonly, languageId, alwaysDirty, closeAutoSave, disposeEvenDirty] = await Promise.all([
|
|
222
222
|
provider.provideEditorDocumentModelContent(uri, encoding),
|
|
223
223
|
provider.isReadonly ? provider.isReadonly(uri) : undefined,
|
|
224
224
|
provider.preferLanguageForUri ? provider.preferLanguageForUri(uri) : undefined,
|
|
225
|
-
provider.provideEOL ? provider.provideEOL(uri) : undefined,
|
|
226
225
|
provider.isAlwaysDirty ? provider.isAlwaysDirty(uri) : false,
|
|
227
226
|
provider.closeAutoSave ? provider.closeAutoSave(uri) : false,
|
|
228
227
|
provider.disposeEvenDirty ? provider.disposeEvenDirty(uri) : false,
|
|
@@ -231,6 +230,7 @@ let EditorDocumentModelServiceImpl = class EditorDocumentModelServiceImpl extend
|
|
|
231
230
|
if (!encoding && provider.provideEncoding) {
|
|
232
231
|
encoding = await provider.provideEncoding(uri);
|
|
233
232
|
}
|
|
233
|
+
const eol = provider.provideEOL ? await provider.provideEOL(uri) : "\n" /* EOL.LF */;
|
|
234
234
|
const savable = !!provider.saveDocumentModel;
|
|
235
235
|
const model = this.injector.get(editor_document_model_1.EditorDocumentModel, [
|
|
236
236
|
uri,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"editor-document-model-service.js","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-model-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"editor-document-model-service.js","sourceRoot":"","sources":["../../../src/browser/doc-model/editor-document-model-service.ts"],"names":[],"mappings":";;;;AAAA,qCAA+E;AAC/E,iEAmBoC;AACpC,gGAAoG;AACpG,iEAAgE;AAKhE,mEAA8D;AAC9D,mCAMiB;AAEJ,QAAA,6BAA6B,GAAQ,IAAI,sBAAG,CAAC,YAAY,CAAC,CAAC,UAAU,CAAC,iCAAc,CAAC,KAAK,CAAC,CAAC;AAE5F,QAAA,2BAA2B,GAAG,iBAAiB,CAAC;AAGtD,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,+BAAY;IAsC9D;QACE,KAAK,EAAE,CAAC;QAfF,oBAAe,GAAG,IAAI,GAAG,EAA+B,CAAC;QAEzD,yBAAoB,GAAG,IAAI,GAAG,EAAwC,CAAC;QAIvE,qBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;QAErC,0BAAqB,GAAG,IAAI,GAAG,EAAkC,CAAC;QAElE,WAAM,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,6BAAU,EAAQ,CAAC,CAAC;QAEtD,iCAA4B,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,6BAAU,EAAQ,CAAC,CAAC;QAIlF,IAAI,CAAC,sBAAsB,GAAG,IAAI,mCAAgB,CAAsB,CAAC,GAAW,EAAE,EAAE;YACtF,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAClC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;aACnC;YACD,qDAAqD;YACrD,wCAAwC;YACxC,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,CAAC,CAAC,GAAW,EAAE,EAAE;YACjE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC,KAAK,EAAE,EAAE;YACtD,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChB,IAAI,wCAAgC,CAAC;gBACnC,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,SAAS,EAAE,KAAK,CAAC,cAAc,EAAE,CAAC,YAAY,EAAE;aACjD,CAAC,CACH,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,UAAU,CACb,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,EAAE;YAC/C,IAAI,CAAC,CAAC,cAAc,KAAK,0BAA0B,EAAE;gBACnD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;oBACjC,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;aACJ;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,GAAW,EAAE,QAAoB;QACtD,OAAO,IAAI,CAAC,4BAA4B,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAEO,OAAO,CAAC,GAAiB;QAC/B,MAAM,wBAAwB,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAS,yBAAyB,EAAE,IAAI,CAAC,CAAC;QACrG,WAAW;QACX,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC1C,IAAI,KAAK,GAAkB,IAAI,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC;YAC/B,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,KAAK,EAAE;oBACT,YAAY,CAAC,KAAK,CAAC,CAAC;iBACrB;YACH,CAAC;SACF,CAAC,CAAC;QACH,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE;YAC7B,QAAQ,CAAC,OAAO,EAAE,CAAC;YACnB,KAAK,GAAG,IAAI,CAAC;YACb,IAAI,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE;gBAC7C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;aAChC;QACH,CAAC,EAAE,wBAAwB,CAAC,CAAC;IAC/B,CAAC;IAEO,SAAS,CAAC,GAAW;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1C,6BAA6B;QAC7B,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,gBAAgB,CAAC,EAAE;YAC/C,GAAG,CAAC,OAAO,EAAE,CAAC;YACd,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjC,OAAO,GAAG,CAAC;SACZ;QACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,GAAQ,EAAE,OAA+B;QAChE,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;YACzB,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE;gBAClD,OAAO,mCACF,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAC9C,OAAO,CACX,CAAC;aACH;YACD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,MAAM,EAAE;gBACV,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE;oBACrE,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBAClD;gBACD,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,KAAK,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE;oBAC3E,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;iBACjD;gBACD,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,KAAK,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE;oBACtD,MAAM,CAAC,QAAQ,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;iBACnC;gBACD,MAAM,CAAC,OAAO,EAAE,CAAC;aAClB;YACD,OAAO,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,wBAAwB;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mCAA2B,EAAE,IAAI,CAAC,SAAS,CAAC,IAAA,oCAAiB,EAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IACtH,CAAC;IAGK,AAAN,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,qCAA6B,CAAC,CAAC;QACpE,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mCAA2B,CAAC,EAAE;YACjD,IAAI;gBACF,IAAI,CAAC,qBAAqB,GAAG,IAAA,oCAAiB,EAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,mCAA2B,CAAE,CAAC,CAAC,CAAC;aAC5G;YAAC,OAAO,CAAC,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACtB;SACF;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IACtB,CAAC;IAGK,AAAN,KAAK,CAAC,oBAAoB,CAAC,CAAgD;QACzE,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE;YAC1C,MAAM,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,CAAC;SAC9C;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3D,IAAI,GAAG,EAAE;YACP,IAAI,GAAG,CAAC,KAAK,EAAE;gBACb,aAAa;aACd;iBAAM;gBACL,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACjE,IAAI,QAAQ,EAAE;oBACZ,IAAI,QAAQ,CAAC,oCAAoC,EAAE;wBACjD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,oCAAoC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;wBAC3F,IAAI,OAAO,KAAK,GAAG,CAAC,iBAAiB,EAAE,EAAE;4BACvC,GAAG,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;yBACxG;qBACF;yBAAM;wBACL,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;wBACnF,IAAI,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,iBAAiB,EAAE,EAAE;4BAC5E,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;yBAC7C;qBACF;iBACF;aACF;SACF;IACH,CAAC;IAED,oBAAoB,CAAC,GAAQ,EAAE,MAA2B;QACxD,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED,iBAAiB,CAAC,GAAQ,EAAE,MAA2B;QACrD,OAAO,IAAI,CAAC,sBAAsB,CAAC,yBAAyB,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,MAAM,CAAC,CAAC;IACvF,CAAC;IAED,mBAAmB,CAAC,GAAQ,EAAE,MAAe;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,EAAE;YACR,OAAO,IAAI,CAAC;SACb;QAED,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,OAAO,GAAG;YACd,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;YAC3C,GAAG,EAAE,QAAQ,CAAC,GAAG;YACjB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,GAAG,EAAE,QAAQ,CAAC,GAAG;YACjB,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC1B,CAAC;QACF,GAAG,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,YAAY;QACV,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,WAAW,CAAC,UAAU;QACpB,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,GAAW,EAAE,QAAiB;QACnD,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;SACvC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,IAAY,SAAS;QACnB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEO,WAAW,CAAC,GAAW,EAAE,QAAiB;QAChD,WAAW;QACX,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,IAAI,CACpD,CAAC,KAAK,EAAE,EAAE;gBACR,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtC,OAAO,KAAK,CAAC;YACf,CAAC,EACD,CAAC,CAAC,EAAE,EAAE;gBACJ,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACtC,MAAM,CAAC,CAAC;YACV,CAAC,CACF,CAAC;YACF,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;SAC7C;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,QAAiB;QAC9D,MAAM,GAAG,GAAG,IAAI,sBAAG,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAE3D,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC3E,IAAI,aAAa,EAAE;gBACjB,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;aACxD;SACF;QAED,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SACrE;QAED,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,gBAAgB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YACtG,QAAQ,CAAC,iCAAiC,CAAC,GAAG,EAAE,QAAQ,CAAC;YACzD,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YAC1D,QAAQ,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS;YAC9E,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK;YAC5D,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK;YAC5D,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK;SAC1D,CAAC,CAAC;QAEZ,gDAAgD;QAChD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,eAAe,EAAE;YACzC,QAAQ,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;SAChD;QAED,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,kBAAO,CAAC;QAE1E,MAAM,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAE7C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,2CAAmB,EAAE;YACnD,GAAG;YACH,OAAO;YACP;gBACE,QAAQ;gBACR,UAAU;gBACV,OAAO;gBACP,GAAG;gBACH,QAAQ;gBACR,WAAW;gBACX,aAAa;gBACb,gBAAgB;aACjB;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;YAClB,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE;gBAClD,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACvE,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,QAAQ,EAAE;oBAC7B,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;iBAChD;gBAED,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,GAAG,EAAE;oBACxB,KAAK,CAAC,GAAG,GAAG,eAAe,CAAC,GAAG,CAAC;iBACjC;gBAED,IAAI,eAAe,aAAf,eAAe,uBAAf,eAAe,CAAE,UAAU,EAAE;oBAC/B,KAAK,CAAC,UAAU,GAAG,eAAe,CAAC,UAAU,CAAC;iBAC/C;aACF;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,GAAQ,EACR,OAAe,EACf,WAAmB,EACnB,OAAgC,EAChC,QAAiB,EACjB,UAAoB,EACpB,GAAS;QAET,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAE7D,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;SACrE;QACD,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,QAAQ,EAAE,8BAA8B,CAAC,CAAC;SAC3F;QAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;QAC/G,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO;QACL,KAAK,CAAC,OAAO,EAAE,CAAC;QAChB,IAAI,CAAC,YAAY,EAAE,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACpC,KAAK,CAAC,cAAc,EAAE,CAAC,OAAO,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC;CACF,CAAA;AA7VC;IAAC,IAAA,cAAS,EAAC,2CAAmC,CAAC;;uEACM;AAErD;IAAC,IAAA,cAAS,EAAC,mBAAc,CAAC;sCAChB,aAAQ;gEAAC;AAEnB;IAAC,IAAA,cAAS,EAAC,kCAAe,CAAC;;kEACC;AAE5B;IAAC,IAAA,cAAS,EAAC,0BAAO,CAAC;;8DACH;AAEhB;IAAC,IAAA,cAAS,EAAC,oCAAiB,CAAC;;yEACQ;AAErC;IAAC,IAAA,cAAS,EAAC,sCAAqB,CAAC;;4EAC4B;AAE7D;IAAC,IAAA,cAAS,EAAC,qCAAkB,CAAC;;kEACoB;AA2H5C;IADL,0BAAO;;;;gEAWP;AAGK;IADL,IAAA,0BAAO,EAAC,qDAA6C,CAAC;;6CACzB,qDAA6C;;0EAyB1E;AArLU,8BAA8B;IAD1C,IAAA,eAAU,GAAE;;GACA,8BAA8B,CA8V1C;AA9VY,wEAA8B"}
|
|
@@ -23,6 +23,7 @@ export declare class BaseFileSystemEditorDocumentProvider implements IEditorDocu
|
|
|
23
23
|
onDidChangeContent: Event<URI>;
|
|
24
24
|
protected _fileContentMd5OnBrowserFs: Set<string>;
|
|
25
25
|
private _detectedEncodingMap;
|
|
26
|
+
private _detectedEolMap;
|
|
26
27
|
protected readonly fileServiceClient: IFileServiceClient;
|
|
27
28
|
protected readonly editorPreferences: EditorPreferences;
|
|
28
29
|
protected readonly applicationService: IApplicationService;
|
|
@@ -35,7 +36,9 @@ export declare class BaseFileSystemEditorDocumentProvider implements IEditorDocu
|
|
|
35
36
|
read(uri: URI, options: ReadEncodingOptions): Promise<{
|
|
36
37
|
encoding: string;
|
|
37
38
|
content: string;
|
|
39
|
+
eol: EOL;
|
|
38
40
|
}>;
|
|
41
|
+
private getEol;
|
|
39
42
|
provideEditorDocumentModelContent(uri: URI, encoding: string): Promise<string>;
|
|
40
43
|
isReadonly(uri: URI): Promise<boolean>;
|
|
41
44
|
saveDocumentModel(uri: URI, content: string, baseContent: string, changes: IEditorDocumentChange[], encoding: string, ignoreDiff?: boolean): Promise<IEditorDocumentModelSaveResult>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs-editor-doc.d.ts","sourceRoot":"","sources":["../../../src/browser/fs-resource/fs-editor-doc.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,KAAK,EAEL,mBAAmB,EACnB,qBAAqB,EACrB,8BAA8B,EAE9B,iBAAiB,EAEjB,GAAG,EAKJ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,mDAAmD,CAAC;AAExE,OAAO,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,qBACa,oCAAqC,YAAW,mCAAmC;IAC9F,SAAS,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAiB;IAErD,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAkC;IAEvE,SAAS,CAAC,0BAA0B,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAE9D,OAAO,CAAC,oBAAoB,CAA6B;
|
|
1
|
+
{"version":3,"file":"fs-editor-doc.d.ts","sourceRoot":"","sources":["../../../src/browser/fs-resource/fs-editor-doc.ts"],"names":[],"mappings":"AACA,OAAO,EACL,OAAO,EACP,gBAAgB,EAChB,KAAK,EAEL,mBAAmB,EACnB,qBAAqB,EACrB,8BAA8B,EAE9B,iBAAiB,EAEjB,GAAG,EAKJ,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,mDAAmD,CAAC;AAExE,OAAO,EAAE,mCAAmC,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;;GAGG;AACH,qBACa,oCAAqC,YAAW,mCAAmC;IAC9F,SAAS,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAG,CAAC,CAAiB;IAErD,kBAAkB,EAAE,KAAK,CAAC,GAAG,CAAC,CAAkC;IAEvE,SAAS,CAAC,0BAA0B,EAAE,GAAG,CAAC,MAAM,CAAC,CAAa;IAE9D,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,eAAe,CAA0B;IAGjD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IAGzD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAG3D,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,gBAAgB,EAAE,gBAAgB,CAAC;;IAcnC,aAAa,CAAC,MAAM,EAAE,MAAM;IAI5B,eAAe,CAAC,GAAG,EAAE,GAAG;IAIlB,UAAU,CAAC,GAAG,EAAE,GAAG;IASnB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,GAAG,CAAA;KAAE,CAAC;YAmC9F,MAAM;IAyCd,iCAAiC,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM;IAQ5D,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBtC,iBAAiB,CACrB,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,qBAAqB,EAAE,EAChC,QAAQ,EAAE,MAAM,EAChB,UAAU,UAAQ,GACjB,OAAO,CAAC,8BAA8B,CAAC;IAoB1C,iBAAiB,CAAC,GAAG,EAAE,GAAG;IAIpB,aAAa,CAAC,GAAG,EAAE,GAAG;IAI5B,SAAS,CAAC,eAAe,CACvB,QAAQ,EAAE,GAAG,EACb,OAAO,EAAE,mBAAmB,GAAG,SAAS,EACxC,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAC9B,OAAO,CAAC,MAAM,CAAC;cAiBF,sBAAsB,CAAC,QAAQ,EAAE,GAAG,EAAE,iBAAiB,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAGnG"}
|
|
@@ -16,6 +16,7 @@ let BaseFileSystemEditorDocumentProvider = class BaseFileSystemEditorDocumentPro
|
|
|
16
16
|
this.onDidChangeContent = this._onDidChangeContent.event;
|
|
17
17
|
this._fileContentMd5OnBrowserFs = new Set();
|
|
18
18
|
this._detectedEncodingMap = new Map();
|
|
19
|
+
this._detectedEolMap = new Map();
|
|
19
20
|
this.fileServiceClient.onFilesChanged((changes) => {
|
|
20
21
|
changes.forEach((change) => {
|
|
21
22
|
if (this._fileContentMd5OnBrowserFs.has(change.uri)) {
|
|
@@ -33,11 +34,11 @@ let BaseFileSystemEditorDocumentProvider = class BaseFileSystemEditorDocumentPro
|
|
|
33
34
|
return this._detectedEncodingMap.get(uri.toString()) || ide_core_browser_1.UTF8;
|
|
34
35
|
}
|
|
35
36
|
async provideEOL(uri) {
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
return eol;
|
|
37
|
+
const cache = this._detectedEolMap.get(uri.toString());
|
|
38
|
+
if (cache) {
|
|
39
|
+
return cache;
|
|
40
40
|
}
|
|
41
|
+
const backendOS = await this.applicationService.getBackendOS();
|
|
41
42
|
return backendOS === ide_core_browser_1.OperatingSystem.Windows ? "\r\n" /* EOL.CRLF */ : "\n" /* EOL.LF */;
|
|
42
43
|
}
|
|
43
44
|
async read(uri, options) {
|
|
@@ -48,15 +49,54 @@ let BaseFileSystemEditorDocumentProvider = class BaseFileSystemEditorDocumentPro
|
|
|
48
49
|
const detected = await (0, ide_core_browser_1.detectEncodingFromBuffer)(buffer, guessEncoding);
|
|
49
50
|
detected.encoding = await this.getReadEncoding(uri, options, detected.encoding);
|
|
50
51
|
const content = buffer.toString(detected.encoding);
|
|
52
|
+
const eol = await this.getEol(uri, content);
|
|
51
53
|
const uriString = uri.toString();
|
|
52
54
|
this._detectedEncodingMap.set(uriString, detected.encoding);
|
|
53
|
-
|
|
55
|
+
this._detectedEolMap.set(uriString, eol);
|
|
56
|
+
// 记录表示这个文档被引用了
|
|
54
57
|
this._fileContentMd5OnBrowserFs.add(uriString);
|
|
55
58
|
return {
|
|
56
59
|
encoding: detected.encoding || ide_core_browser_1.UTF8,
|
|
57
60
|
content,
|
|
61
|
+
eol,
|
|
58
62
|
};
|
|
59
63
|
}
|
|
64
|
+
async getEol(uri, content) {
|
|
65
|
+
const MAX_DETECT_LENGTH = 2000;
|
|
66
|
+
let cr = 0;
|
|
67
|
+
let lf = 0;
|
|
68
|
+
let crlf = 0;
|
|
69
|
+
const len = Math.min(MAX_DETECT_LENGTH, content.length);
|
|
70
|
+
for (let i = 0; i < len; i++) {
|
|
71
|
+
if (content[i] === '\r') {
|
|
72
|
+
if (content[i + 1] === '\n') {
|
|
73
|
+
crlf++;
|
|
74
|
+
// 跳过后续 \n
|
|
75
|
+
i++;
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
cr++;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
else if (content[i] === '\n') {
|
|
82
|
+
lf++;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
const totalEOLCount = cr + lf + crlf;
|
|
86
|
+
const totalCRCount = cr + crlf;
|
|
87
|
+
const eol = this.preferenceService.get('files.eol', 'auto', uri.toString(), (0, ide_core_browser_1.getLanguageIdFromMonaco)(uri));
|
|
88
|
+
if (eol !== 'auto') {
|
|
89
|
+
return eol;
|
|
90
|
+
}
|
|
91
|
+
const defaultEOL = await this.provideEOL(uri);
|
|
92
|
+
if (totalEOLCount === 0) {
|
|
93
|
+
return defaultEOL;
|
|
94
|
+
}
|
|
95
|
+
if (totalCRCount > totalEOLCount / 2) {
|
|
96
|
+
return "\r\n" /* EOL.CRLF */;
|
|
97
|
+
}
|
|
98
|
+
return "\n" /* EOL.LF */;
|
|
99
|
+
}
|
|
60
100
|
async provideEditorDocumentModelContent(uri, encoding) {
|
|
61
101
|
// TODO: 这部分要优化成buffer获取(长期来看是stream获取,encoding在哪一层做?)
|
|
62
102
|
// 暂时还是使用 resolveContent 内提供的 decode 功能
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fs-editor-doc.js","sourceRoot":"","sources":["../../../src/browser/fs-resource/fs-editor-doc.ts"],"names":[],"mappings":";;;;AAAA,qCAAqD;AACrD,iEAgBoC;AACpC,iEAAgE;AAIhE,iDAAyD;AAezD;;;GAGG;AAEI,IAAM,oCAAoC,GAA1C,MAAM,oCAAoC;
|
|
1
|
+
{"version":3,"file":"fs-editor-doc.js","sourceRoot":"","sources":["../../../src/browser/fs-resource/fs-editor-doc.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@opensumi/ide-editor",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.0",
|
|
4
4
|
"files": [
|
|
5
5
|
"lib",
|
|
6
6
|
"src"
|
|
@@ -17,21 +17,21 @@
|
|
|
17
17
|
"url": "git@github.com:opensumi/core.git"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@opensumi/ide-core-common": "3.
|
|
21
|
-
"@opensumi/ide-core-node": "3.
|
|
22
|
-
"@opensumi/ide-file-service": "3.
|
|
23
|
-
"@opensumi/ide-monaco": "3.
|
|
24
|
-
"@opensumi/ide-utils": "3.
|
|
20
|
+
"@opensumi/ide-core-common": "3.4.0",
|
|
21
|
+
"@opensumi/ide-core-node": "3.4.0",
|
|
22
|
+
"@opensumi/ide-file-service": "3.4.0",
|
|
23
|
+
"@opensumi/ide-monaco": "3.4.0",
|
|
24
|
+
"@opensumi/ide-utils": "3.4.0",
|
|
25
25
|
"vscode-oniguruma": "1.5.1"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
|
-
"@opensumi/ide-components": "3.
|
|
29
|
-
"@opensumi/ide-core-browser": "3.
|
|
30
|
-
"@opensumi/ide-dev-tool": "3.
|
|
31
|
-
"@opensumi/ide-overlay": "3.
|
|
32
|
-
"@opensumi/ide-quick-open": "3.
|
|
33
|
-
"@opensumi/ide-theme": "3.
|
|
34
|
-
"@opensumi/ide-workspace": "3.
|
|
28
|
+
"@opensumi/ide-components": "3.4.0",
|
|
29
|
+
"@opensumi/ide-core-browser": "3.4.0",
|
|
30
|
+
"@opensumi/ide-dev-tool": "3.4.0",
|
|
31
|
+
"@opensumi/ide-overlay": "3.4.0",
|
|
32
|
+
"@opensumi/ide-quick-open": "3.4.0",
|
|
33
|
+
"@opensumi/ide-theme": "3.4.0",
|
|
34
|
+
"@opensumi/ide-workspace": "3.4.0"
|
|
35
35
|
},
|
|
36
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "1596a2b1b547d2b99c880afe14f91f16f76bb9d5"
|
|
37
37
|
}
|
|
@@ -307,11 +307,10 @@ export class EditorDocumentModelServiceImpl extends WithEventBus implements IEdi
|
|
|
307
307
|
throw new Error(`No document provider found for ${uri.toString()}`);
|
|
308
308
|
}
|
|
309
309
|
|
|
310
|
-
const [content, readonly, languageId,
|
|
310
|
+
const [content, readonly, languageId, alwaysDirty, closeAutoSave, disposeEvenDirty] = await Promise.all([
|
|
311
311
|
provider.provideEditorDocumentModelContent(uri, encoding),
|
|
312
312
|
provider.isReadonly ? provider.isReadonly(uri) : undefined,
|
|
313
313
|
provider.preferLanguageForUri ? provider.preferLanguageForUri(uri) : undefined,
|
|
314
|
-
provider.provideEOL ? provider.provideEOL(uri) : undefined,
|
|
315
314
|
provider.isAlwaysDirty ? provider.isAlwaysDirty(uri) : false,
|
|
316
315
|
provider.closeAutoSave ? provider.closeAutoSave(uri) : false,
|
|
317
316
|
provider.disposeEvenDirty ? provider.disposeEvenDirty(uri) : false,
|
|
@@ -322,6 +321,8 @@ export class EditorDocumentModelServiceImpl extends WithEventBus implements IEdi
|
|
|
322
321
|
encoding = await provider.provideEncoding(uri);
|
|
323
322
|
}
|
|
324
323
|
|
|
324
|
+
const eol = provider.provideEOL ? await provider.provideEOL(uri) : EOL.LF;
|
|
325
|
+
|
|
325
326
|
const savable = !!provider.saveDocumentModel;
|
|
326
327
|
|
|
327
328
|
const model = this.injector.get(EditorDocumentModel, [
|
|
@@ -48,6 +48,7 @@ export class BaseFileSystemEditorDocumentProvider implements IEditorDocumentMode
|
|
|
48
48
|
protected _fileContentMd5OnBrowserFs: Set<string> = new Set();
|
|
49
49
|
|
|
50
50
|
private _detectedEncodingMap = new Map<string, string>();
|
|
51
|
+
private _detectedEolMap = new Map<string, EOL>();
|
|
51
52
|
|
|
52
53
|
@Autowired(IFileServiceClient)
|
|
53
54
|
protected readonly fileServiceClient: IFileServiceClient;
|
|
@@ -85,21 +86,15 @@ export class BaseFileSystemEditorDocumentProvider implements IEditorDocumentMode
|
|
|
85
86
|
}
|
|
86
87
|
|
|
87
88
|
async provideEOL(uri: URI) {
|
|
88
|
-
const
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
'auto',
|
|
92
|
-
uri.toString(),
|
|
93
|
-
getLanguageIdFromMonaco(uri)!,
|
|
94
|
-
)!;
|
|
95
|
-
|
|
96
|
-
if (eol !== 'auto') {
|
|
97
|
-
return eol;
|
|
89
|
+
const cache = this._detectedEolMap.get(uri.toString());
|
|
90
|
+
if (cache) {
|
|
91
|
+
return cache;
|
|
98
92
|
}
|
|
93
|
+
const backendOS = await this.applicationService.getBackendOS();
|
|
99
94
|
return backendOS === OperatingSystem.Windows ? EOL.CRLF : EOL.LF;
|
|
100
95
|
}
|
|
101
96
|
|
|
102
|
-
async read(uri: URI, options: ReadEncodingOptions): Promise<{ encoding: string; content: string }> {
|
|
97
|
+
async read(uri: URI, options: ReadEncodingOptions): Promise<{ encoding: string; content: string; eol: EOL }> {
|
|
103
98
|
const { content: buffer } = await this.fileServiceClient.readFile(uri.toString());
|
|
104
99
|
|
|
105
100
|
const guessEncoding =
|
|
@@ -118,19 +113,63 @@ export class BaseFileSystemEditorDocumentProvider implements IEditorDocumentMode
|
|
|
118
113
|
|
|
119
114
|
const content = buffer.toString(detected.encoding);
|
|
120
115
|
|
|
116
|
+
const eol = await this.getEol(uri, content);
|
|
121
117
|
const uriString = uri.toString();
|
|
122
118
|
|
|
123
119
|
this._detectedEncodingMap.set(uriString, detected.encoding);
|
|
120
|
+
this._detectedEolMap.set(uriString, eol);
|
|
124
121
|
|
|
125
|
-
//
|
|
122
|
+
// 记录表示这个文档被引用了
|
|
126
123
|
this._fileContentMd5OnBrowserFs.add(uriString);
|
|
127
124
|
|
|
128
125
|
return {
|
|
129
126
|
encoding: detected.encoding || UTF8,
|
|
130
127
|
content,
|
|
128
|
+
eol,
|
|
131
129
|
};
|
|
132
130
|
}
|
|
133
131
|
|
|
132
|
+
private async getEol(uri: URI, content: string) {
|
|
133
|
+
const MAX_DETECT_LENGTH = 2000;
|
|
134
|
+
let cr = 0;
|
|
135
|
+
let lf = 0;
|
|
136
|
+
let crlf = 0;
|
|
137
|
+
const len = Math.min(MAX_DETECT_LENGTH, content.length);
|
|
138
|
+
for (let i = 0; i < len; i++) {
|
|
139
|
+
if (content[i] === '\r') {
|
|
140
|
+
if (content[i + 1] === '\n') {
|
|
141
|
+
crlf++;
|
|
142
|
+
// 跳过后续 \n
|
|
143
|
+
i++;
|
|
144
|
+
} else {
|
|
145
|
+
cr++;
|
|
146
|
+
}
|
|
147
|
+
} else if (content[i] === '\n') {
|
|
148
|
+
lf++;
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
const totalEOLCount = cr + lf + crlf;
|
|
153
|
+
const totalCRCount = cr + crlf;
|
|
154
|
+
const eol = this.preferenceService.get<EOL | 'auto'>(
|
|
155
|
+
'files.eol',
|
|
156
|
+
'auto',
|
|
157
|
+
uri.toString(),
|
|
158
|
+
getLanguageIdFromMonaco(uri)!,
|
|
159
|
+
)!;
|
|
160
|
+
if (eol !== 'auto') {
|
|
161
|
+
return eol;
|
|
162
|
+
}
|
|
163
|
+
const defaultEOL = await this.provideEOL(uri);
|
|
164
|
+
if (totalEOLCount === 0) {
|
|
165
|
+
return defaultEOL;
|
|
166
|
+
}
|
|
167
|
+
if (totalCRCount > totalEOLCount / 2) {
|
|
168
|
+
return EOL.CRLF;
|
|
169
|
+
}
|
|
170
|
+
return EOL.LF;
|
|
171
|
+
}
|
|
172
|
+
|
|
134
173
|
async provideEditorDocumentModelContent(uri: URI, encoding: string) {
|
|
135
174
|
// TODO: 这部分要优化成buffer获取(长期来看是stream获取,encoding在哪一层做?)
|
|
136
175
|
// 暂时还是使用 resolveContent 内提供的 decode 功能
|