@@ -223,6 +223,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
223
223
}
224
224
if ( completions . resourceRequestConfig ) {
225
225
const resourceCompletions = await this . resolveResources ( completions . resourceRequestConfig , promptValue , cursorPosition , `core:path:ext:${ provider . id } ` , capabilities , shellType ) ;
226
+ this . _logService . trace ( `TerminalCompletionService#_collectCompletions dedupe` ) ;
226
227
if ( resourceCompletions ) {
227
228
for ( const item of resourceCompletions ) {
228
229
const labels = new Set ( completionItems . map ( c => c . label ) ) ;
@@ -232,11 +233,13 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
232
233
}
233
234
}
234
235
}
236
+ this . _logService . trace ( `TerminalCompletionService#_collectCompletions dedupe done` ) ;
235
237
}
236
238
return completionItems ;
237
239
} ) ;
238
240
239
241
const results = await Promise . all ( completionPromises ) ;
242
+ this . _logService . trace ( 'TerminalCompletionService#_collectCompletions done' ) ;
240
243
return results . filter ( result => ! ! result ) . flat ( ) ;
241
244
}
242
245
@@ -367,6 +370,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
367
370
// - (absolute) `/src/|` -> `/src/`
368
371
// - (tilde) `~/|` -> `~/`
369
372
// - (tilde) `~/src/|` -> `~/src/`
373
+ this . _logService . trace ( `TerminalCompletionService#resolveResources cwd` ) ;
370
374
if ( foldersRequested ) {
371
375
let label : string ;
372
376
switch ( type ) {
@@ -401,6 +405,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
401
405
// - (relative) `cd ./src/` -> `cd ./src/folder1/`, ...
402
406
// - (absolute) `cd c:/src/` -> `cd c:/src/folder1/`, ...
403
407
// - (tilde) `cd ~/src/` -> `cd ~/src/folder1/`, ...
408
+ this . _logService . trace ( `TerminalCompletionService#resolveResources direct children` ) ;
404
409
for ( const child of stat . children ) {
405
410
let kind : TerminalCompletionItemKind | undefined ;
406
411
let detail : string | undefined = undefined ;
@@ -467,6 +472,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
467
472
// Support $CDPATH specially for the `cd` command only
468
473
//
469
474
// - (relative) `|` -> `/foo/vscode` (CDPATH has /foo which contains vscode folder)
475
+ this . _logService . trace ( `TerminalCompletionService#resolveResources CDPATH` ) ;
470
476
if ( type === 'relative' && foldersRequested ) {
471
477
if ( promptValue . startsWith ( 'cd ' ) ) {
472
478
const config = this . _configurationService . getValue ( TerminalSuggestSettingId . CdPath ) ;
@@ -507,6 +513,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
507
513
//
508
514
// - (relative) `|` -> `../`
509
515
// - (relative) `./src/|` -> `./src/../`
516
+ this . _logService . trace ( `TerminalCompletionService#resolveResources parent dir` ) ;
510
517
if ( type === 'relative' && foldersRequested ) {
511
518
let label = `..${ resourceRequestConfig . pathSeparator } ` ;
512
519
if ( lastWordFolder . length > 0 ) {
@@ -527,6 +534,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
527
534
// input.
528
535
//
529
536
// - (relative) `|` -> `~`
537
+ this . _logService . trace ( `TerminalCompletionService#resolveResources tilde` ) ;
530
538
if ( type === 'relative' && ! lastWordFolder . match ( / [ \\ \/ ] / ) ) {
531
539
let homeResource : URI | string | undefined ;
532
540
const home = this . _getHomeDir ( useWindowsStylePath , capabilities ) ;
@@ -548,6 +556,7 @@ export class TerminalCompletionService extends Disposable implements ITerminalCo
548
556
} ) ;
549
557
}
550
558
559
+ this . _logService . trace ( `TerminalCompletionService#resolveResources done` ) ;
551
560
return resourceCompletions ;
552
561
}
553
562
0 commit comments