Skip to content
This repository was archived by the owner on May 21, 2019. It is now read-only.

Commit 457a466

Browse files
committed
Return PartialSuggestion from AutocompletionProviders.
1 parent fd23890 commit 457a466

File tree

5 files changed

+9
-14
lines changed

5 files changed

+9
-14
lines changed

src/Interfaces.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import {Stats} from "fs";
33
import {ReactElement} from "react";
44
import {Job} from "./shell/Job";
55
import {Session} from "./shell/Session";
6-
import {Suggestion} from "./plugins/autocompletion_utils/Common";
6+
import {PartialSuggestion} from "./plugins/autocompletion_utils/Common";
77
import {ScreenBuffer} from "./ScreenBuffer";
88
import {Environment} from "./shell/Environment";
99
import {OrderedSet} from "./utils/OrderedSet";
@@ -34,7 +34,7 @@ export interface AutocompletionContext extends PreliminaryAutocompletionContext
3434
readonly argument: Argument;
3535
}
3636

37-
export type AutocompletionProvider = (context: AutocompletionContext) => Promise<Suggestion[]>;
37+
export type AutocompletionProvider = (context: AutocompletionContext) => Promise<PartialSuggestion[]>;
3838

3939
export interface FileInfo {
4040
name: string;

src/plugins/autocompletion_providers/Ps.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import {PluginManager} from "../../PluginManager";
22
import {
3-
shortFlag, mapSuggestions, Suggestion, styles, provide,
3+
shortFlag, mapSuggestions, Suggestion, styles, provide, PartialSuggestion,
44
}
55
from "../autocompletion_utils/Common";
66
import combine from "../autocompletion_utils/Combine";
@@ -169,7 +169,7 @@ const longOptions: LongFlagItem[] = [
169169
];
170170

171171
const longFlagSuggestions = provide(async context => {
172-
let suggestions: Suggestion[] = [];
172+
let suggestions: PartialSuggestion[] = [];
173173
const token: string = context.argument.value;
174174
for (let i of longOptions) {
175175
const flag = "--" + i.flag;
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import * as _ from "lodash";
22
import {AutocompletionContext, AutocompletionProvider} from "../../Interfaces";
3-
import {Suggestion} from "./Common";
3+
import {PartialSuggestion} from "./Common";
44

55
export default (providers: AutocompletionProvider[]): AutocompletionProvider => {
6-
return async(context: AutocompletionContext): Promise<Suggestion[]> => {
6+
return async(context: AutocompletionContext): Promise<PartialSuggestion[]> => {
77
return _.flatten(await Promise.all(providers.map(provider => provider(context))));
88
};
99
};

src/plugins/autocompletion_utils/Common.ts

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -100,11 +100,6 @@ export class Suggestion {
100100
return this;
101101
}
102102

103-
withSpace(): this {
104-
this.attributes.space = true;
105-
return this;
106-
}
107-
108103
private get truncatedDescription(): string {
109104
return _.truncate(this.description, {length: 50, separator: " "});
110105
}
@@ -388,7 +383,7 @@ export const combineShortFlags = (suggestionsProvider: AutocompletionProvider) =
388383
return suggestions
389384
.filter(s =>
390385
reShortFlag.test(s.value) && !token.includes(s.value.slice(1))
391-
&& s.withSpace)
386+
&& s.space)
392387
.map(s =>
393388
new Suggestion({value: token + s.value.slice(1),
394389
displayValue: s.displayValue, description: s.description,

src/shell/Parser.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ import {
1313
styles,
1414
anyFilesSuggestions,
1515
environmentVariableSuggestions,
16-
executableFilesSuggestions,
16+
executableFilesSuggestions, PartialSuggestion,
1717
} from "../plugins/autocompletion_utils/Common";
1818

1919

@@ -362,7 +362,7 @@ export class Argument extends LeafNode {
362362
this.position = position;
363363
}
364364

365-
async suggestions(context: PreliminaryAutocompletionContext): Promise<Suggestion[]> {
365+
async suggestions(context: PreliminaryAutocompletionContext): Promise<PartialSuggestion[]> {
366366
const argument = argumentOfExpandedAST(this, context.aliases);
367367
const provider = combine([
368368
environmentVariableSuggestions,

0 commit comments

Comments
 (0)