本文整理汇总了TypeScript中vscode-languageserver.IConnection.onSignatureHelp方法的典型用法代码示例。如果您正苦于以下问题:TypeScript IConnection.onSignatureHelp方法的具体用法?TypeScript IConnection.onSignatureHelp怎么用?TypeScript IConnection.onSignatureHelp使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类vscode-languageserver.IConnection
的用法示例。
在下文中一共展示了IConnection.onSignatureHelp方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: format
return [];
});
connection.onReferences(referenceParams => {
let document = documents.get(referenceParams.textDocument.uri);
let mode = languageModes.getModeAtPosition(document, referenceParams.position);
if (mode && mode.findReferences) {
return mode.findReferences(document, referenceParams.position);
}
return [];
});
connection.onSignatureHelp(signatureHelpParms => {
let document = documents.get(signatureHelpParms.textDocument.uri);
let mode = languageModes.getModeAtPosition(document, signatureHelpParms.position);
if (mode && mode.doSignatureHelp) {
return mode.doSignatureHelp(document, signatureHelpParms.position);
}
return null;
});
connection.onDocumentRangeFormatting(async formatParams => {
let document = documents.get(formatParams.textDocument.uri);
let settings = await getDocumentSettings(document, () => true);
if (!settings) {
settings = globalSettings;
}
let unformattedTags: string = settings && settings.html && settings.html.format && settings.html.format.unformatted || '';
let enabledModes = { css: !unformattedTags.match(/\bstyle\b/), javascript: !unformattedTags.match(/\bscript\b/) };
return format(languageModes, document, formatParams.range, formatParams.options, settings, enabledModes);
});
示例2: initStylableLanguageService
//.........这里部分代码省略.........
async (params): Promise<Definition> => {
const doc = fs.loadTextFileSync(params.textDocument.uri);
const pos = params.position;
const res = await provider
.getDefinitionLocation(doc, {
line: pos.line,
character: pos.character
}, fromVscodePath(params.textDocument.uri), fs);
return res.map(loc => Location.create(toVscodePath(loc.uri), loc.range));
}
);
connection.onHover(
(params: TextDocumentPositionParams): Hover | null => {
return newCssService.doHover(fs.get(params.textDocument.uri), params.position);
}
);
connection.onReferences(
(params: ReferenceParams): Location[] => {
const refs = getRefs(params, fs, services.styl);
if (refs.length) {
return dedupeRefs(refs);
} else {
return dedupeRefs(newCssService.findReferences(fs.get(params.textDocument.uri), params.position));
}
}
);
connection.onDocumentFormatting(() => {
return null;
});
connection.onDocumentColor((params: DocumentColorParams) => {
const document = fs.get(params.textDocument.uri);
return resolveDocumentColors(services.styl, newCssService, document);
});
connection.onColorPresentation((params: ColorPresentationParams) => {
const document = fs.get(params.textDocument.uri);
return getColorPresentation(newCssService, document, params);
});
connection.onRenameRequest(
(params): WorkspaceEdit => {
const edit: WorkspaceEdit = { changes: {} };
getRenameRefs(
{
context: { includeDeclaration: true },
position: params.position,
textDocument: params.textDocument
},
fs,
services.styl
).forEach(ref => {
if (edit.changes![ref.uri]) {
edit.changes![ref.uri].push({ range: ref.range, newText: params.newName });
} else {
edit.changes![ref.uri] = [{ range: ref.range, newText: params.newName }];
}
});
return edit;
}
);
connection.onSignatureHelp(
(params): Thenable<SignatureHelp> => {
const doc: string = fs.loadTextFileSync(params.textDocument.uri);
const sig = provider.getSignatureHelp(
doc,
params.position,
params.textDocument.uri,
fs,
ParameterInformation
);
return Promise.resolve(sig!);
}
);
function dedupeRefs(refs: Location[]): Location[] {
const res: Location[] = [];
refs.forEach(ref => {
if (
!res.find(
r =>
r.range.start.line === ref.range.start.line &&
r.range.start.character === ref.range.start.character &&
r.uri === ref.uri
)
) {
res.push(ref);
}
});
return res;
}
}