mirror of
https://github.com/odoo/owl.git
synced 2025-10-06 19:59:41 +07:00
[IMP] owl-vision: syntax scripts, single quotes attributes and slot props highlight and switch below command
This commit adds the following: - Syntax builder scripts to make syntaxes easier to read and edit - Syntax highlight in single quote attributes - Syntax highlight for slot props - Basic syntax highlight for xpaths - Added `Switch Below` command This commit fixes the following: - Using `Switch Besides` or `Switch Below` does not open a new panel if one was already open - Fixed missing space in component's snippet indentation
This commit is contained in:
committed by
Géry Debongnie
parent
398df543fe
commit
34489a2494
@@ -67,3 +67,38 @@ export function getClosestMatch(str: string, regex: RegExp, lineDelta = 0): stri
|
||||
|
||||
return closestMatch[1];
|
||||
}
|
||||
|
||||
export enum OpenDirection {
|
||||
Active,
|
||||
Besides,
|
||||
Below,
|
||||
}
|
||||
|
||||
export async function showResult(result: vscode.Location, openDirection: OpenDirection = OpenDirection.Active) {
|
||||
let editor = undefined;
|
||||
|
||||
if (openDirection == OpenDirection.Active) {
|
||||
editor = await vscode.window.showTextDocument(result.uri);
|
||||
} else {
|
||||
let targetColumn = vscode.ViewColumn.Beside;
|
||||
const existingDocument = vscode.workspace.textDocuments.find(t => t.uri.path === result.uri.path);
|
||||
if (existingDocument) {
|
||||
const currentColumn = vscode.window.activeTextEditor?.viewColumn;
|
||||
if (currentColumn == vscode.ViewColumn.One) {
|
||||
targetColumn = vscode.ViewColumn.Two;
|
||||
} else if (currentColumn == vscode.ViewColumn.Two) {
|
||||
targetColumn = vscode.ViewColumn.One;
|
||||
}
|
||||
editor = await vscode.window.showTextDocument(existingDocument, { viewColumn: targetColumn });
|
||||
} else {
|
||||
editor = await vscode.window.showTextDocument(result.uri, { viewColumn: targetColumn });
|
||||
}
|
||||
}
|
||||
|
||||
if (openDirection === OpenDirection.Below) {
|
||||
await vscode.commands.executeCommand('workbench.action.editorLayoutTwoRows');
|
||||
}
|
||||
|
||||
editor.revealRange(result.range);
|
||||
editor.selection = new vscode.Selection(result.range.start, result.range.end);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user