本文整理汇总了TypeScript中vs/editor/common/editorCommonExtensions.CommonEditorRegistry类的典型用法代码示例。如果您正苦于以下问题:TypeScript CommonEditorRegistry类的具体用法?TypeScript CommonEditorRegistry怎么用?TypeScript CommonEditorRegistry使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CommonEditorRegistry类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: registerClipboardAction
function registerClipboardAction(desc: IClipboardCommand, alias: string, weight: number) {
if (!browser.supportsExecCommand(desc.execCommand)) {
return;
}
CommonEditorRegistry.registerEditorAction(new EditorActionDescriptor(desc.ctor, desc.id, desc.label, {
handler: execCommandToHandler.bind(null, desc.id, desc.execCommand),
context: ContextKey.None,
primary: desc.primary,
secondary: desc.secondary,
win: desc.win,
linux: desc.linux,
mac: desc.mac,
kbExpr: KbExpr.has(editorCommon.KEYBINDING_CONTEXT_EDITOR_TEXT_FOCUS)
}, alias));
MenuRegistry.appendMenuItem(MenuId.EditorContext, {
command: {
id: desc.id,
title: desc.label
},
group: `9_cutcopypaste`,
order: weight,
when: desc.kbExpr
});
}
示例2: constructor
constructor() {
super({
id: 'closeBreakpointWidget',
precondition: CONTEXT_BREAKPOINT_WIDGET_VISIBLE,
kbOpts: {
weight: CommonEditorRegistry.commandWeight(8),
kbExpr: EditorContextKeys.Focus,
primary: KeyCode.Escape,
secondary: [KeyMod.Shift | KeyCode.Escape]
}
});
}
示例3: registerClipboardAction
function registerClipboardAction(desc:IClipboardCommand, alias:string) {
if (!browser.supportsExecCommand(desc.execCommand)) {
return;
}
CommonEditorRegistry.registerEditorAction(new EditorActionDescriptor(desc.ctor, desc.id, desc.label, {
handler: execCommandToHandler.bind(null, desc.id, desc.execCommand),
context: ContextKey.None,
primary: desc.primary,
secondary: desc.secondary,
win: desc.win,
linux: desc.linux,
mac: desc.mac
}, alias));
}
示例4: onUnexpectedExternalError
}).then(result => {
return result;
}, err => {
onUnexpectedExternalError(err);
});
});
return outputResults(promises);
}
export function getDefinitionsAtPosition(model: IReadOnlyModel, position: Position): TPromise<Location[]> {
return getDefinitions(model, position, DefinitionProviderRegistry, (provider, model, position, token) => {
return provider.provideDefinition(model, position, token);
});
}
export function getImplementationsAtPosition(model: IReadOnlyModel, position: Position): TPromise<Location[]> {
return getDefinitions(model, position, ImplementationProviderRegistry, (provider, model, position, token) => {
return provider.provideImplementation(model, position, token);
});
}
export function getTypeDefinitionsAtPosition(model: IReadOnlyModel, position: Position): TPromise<Location[]> {
return getDefinitions(model, position, TypeDefinitionProviderRegistry, (provider, model, position, token) => {
return provider.provideTypeDefinition(model, position, token);
});
}
CommonEditorRegistry.registerDefaultLanguageCommand('_executeDefinitionProvider', getDefinitionsAtPosition);
CommonEditorRegistry.registerDefaultLanguageCommand('_executeImplementationProvider', getImplementationsAtPosition);
CommonEditorRegistry.registerDefaultLanguageCommand('_executeTypeDefinitionProvider', getTypeDefinitionsAtPosition);
示例5: onUnexpectedError
}
for (let fix of result) {
quickFixes.push({
command: fix.command,
score: fix.score,
id: `quickfix_#${idPool++}`,
support
});
}
}, err => {
onUnexpectedError(err);
});
});
return TPromise.join(promises).then(() => quickFixes);
}
CommonEditorRegistry.registerLanguageCommand('_executeCodeActionProvider', function(accessor, args) {
const {resource, range} = args;
if (!(resource instanceof URI) || !Range.isIRange(range)) {
throw illegalArgument();
}
const model = accessor.get(IModelService).getModel(resource);
if (!model) {
throw illegalArgument();
}
return getQuickFixes(model, range);
});
示例6: constructor
class ExecCommandPasteAction extends ExecCommandAction {
constructor() {
super('paste', {
id: 'editor.action.clipboardPasteAction',
label: nls.localize('actions.clipboard.pasteLabel', "Paste"),
alias: 'Paste',
precondition: EditorContextKeys.Writable,
kbOpts: {
kbExpr: EditorContextKeys.TextFocus,
primary: KeyMod.CtrlCmd | KeyCode.KEY_V,
win: { primary: KeyMod.CtrlCmd | KeyCode.KEY_V, secondary: [KeyMod.Shift | KeyCode.Insert] }
},
menuOpts: {
group: CLIPBOARD_CONTEXT_MENU_GROUP,
order: 3
}
});
}
}
if (browser.supportsExecCommand('cut')) {
CommonEditorRegistry.registerEditorAction(new ExecCommandCutAction());
}
if (browser.supportsExecCommand('copy')) {
CommonEditorRegistry.registerEditorAction(new ExecCommandCopyAction());
}
if (browser.supportsExecCommand('paste')) {
CommonEditorRegistry.registerEditorAction(new ExecCommandPasteAction());
}
示例7: all
};
}
export function all(): IWorkspaceSymbolProvider[] {
return _supports.slice(0);
}
}
export function getWorkspaceSymbols(query: string): TPromise<[IWorkspaceSymbolProvider, IWorkspaceSymbol[]][]> {
const result: [IWorkspaceSymbolProvider, IWorkspaceSymbol[]][] = [];
const promises = WorkspaceSymbolProviderRegistry.all().map(support => {
return support.provideWorkspaceSymbols(query).then(value => {
if (Array.isArray(value)) {
result.push([support, value]);
}
}, onUnexpectedError);
});
return TPromise.join(promises).then(_ => result);
}
CommonEditorRegistry.registerLanguageCommand('_executeWorkspaceSymbolProvider', function (accessor, args: { query: string; }) {
let {query} = args;
if (typeof query !== 'string') {
throw illegalArgument();
}
return getWorkspaceSymbols(query);
});
示例8: run
'editor.action.blockComment',
nls.localize('comment.block', "Toggle Block Comment"),
'Toggle Block Comment',
true
);
this.kbOpts = {
kbExpr: KbExpr.and(EditorKbExpr.TextFocus, EditorKbExpr.Writable),
primary: KeyMod.Shift | KeyMod.Alt | KeyCode.KEY_A,
linux: { primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.KEY_A }
};
}
public run(accessor:ServicesAccessor, editor:ICommonCodeEditor): void {
var commands: ICommand[] = [];
var selections = editor.getSelections();
for (var i = 0; i < selections.length; i++) {
commands.push(new BlockCommentCommand(selections[i]));
}
editor.executeCommands(this.id, commands);
}
}
// register actions
CommonEditorRegistry.registerEditorAction2(new ToggleCommentLineAction());
CommonEditorRegistry.registerEditorAction2(new AddLineCommentAction());
CommonEditorRegistry.registerEditorAction2(new RemoveLineCommentAction());
CommonEditorRegistry.registerEditorAction2(new BlockCommentAction());
示例9: provideSignatureHelp
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
'use strict';
import {TPromise} from 'vs/base/common/winjs.base';
import {IModel, IEditorPosition} from 'vs/editor/common/editorCommon';
import {CommonEditorRegistry} from 'vs/editor/common/editorCommonExtensions';
import {SignatureHelp, SignatureHelpProviderRegistry} from 'vs/editor/common/modes';
import {CancellationToken} from 'vs/base/common/cancellation';
import {toThenable} from 'vs/base/common/async';
export function provideSignatureHelp(model:IModel, position:IEditorPosition, cancellationToken = CancellationToken.None): Thenable<SignatureHelp> {
let support = SignatureHelpProviderRegistry.ordered(model)[0];
if (!support) {
return TPromise.as(undefined);
}
return toThenable(support.provideSignatureHelp(model, position, cancellationToken));
}
CommonEditorRegistry.registerDefaultLanguageCommand('_executeSignatureHelpProvider', provideSignatureHelp);
示例10: KeyChord
// close the window when the last editor is closed by reusing the same keybinding
KeybindingsRegistry.registerCommandAndKeybindingRule({
id: 'workbench.action.closeWindow',
weight: KeybindingsRegistry.WEIGHT.workbenchContrib(),
when: NoEditorsVisibleContext,
primary: closeEditorOrWindowKeybindings.primary,
handler: accessor => {
const windowService = accessor.get(IWindowIPCService);
windowService.getWindow().close();
}
});
KeybindingsRegistry.registerCommandAndKeybindingRule({
id: 'workbench.action.exitZenMode',
weight: CommonEditorRegistry.commandWeight(-1000),
handler(accessor: ServicesAccessor, configurationOrName: any) {
const partService = accessor.get(IPartService);
partService.toggleZenMode();
},
when: InZenModeContext,
primary: KeyChord(KeyCode.Escape, KeyCode.Escape)
});
KeybindingsRegistry.registerCommandAndKeybindingRule({
id: 'workbench.action.quit',
weight: KeybindingsRegistry.WEIGHT.workbenchContrib(),
handler(accessor: ServicesAccessor) {
const windowsService = accessor.get(IWindowsService);
windowsService.quit();
},