Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | 1x 7x 7x 2x 5x 7x 5x 7x | import * as vscode from 'vscode';
import { SparqlQueryExecutionState } from '@src/languages/sparql/services/sparql-query-state';
import { BindingsFormat, formatQueryResult } from '@src/languages/sparql/services/bindings-formatter';
import { getResultsCopyFormat, getResultsIriFormat } from '@src/languages/sparql/services/query-results-format';
export const copySparqlQueryResults = {
id: 'mentor.command.copySparqlQueryResults',
handler: async (context: SparqlQueryExecutionState | undefined, format?: BindingsFormat): Promise<void> => {
const result = context?.result;
if (result?.type !== 'bindings' && result?.type !== 'boolean') {
return;
}
const content = formatQueryResult(result, {
format: format ?? getResultsCopyFormat(),
iriForm: getResultsIriFormat()
});
await vscode.env.clipboard.writeText(content);
const rowCount = result.type === 'bindings' ? result.rows.length : 1;
vscode.window.setStatusBarMessage(`Copied ${rowCount} row(s) to the clipboard.`, 3000);
}
};
|