UNPKG

claude-code-emacs-mcp-server

Version:

MCP server for Claude Code Emacs integration

68 lines 2.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.handleGetCurrentSelection = handleGetCurrentSelection; async function handleGetCurrentSelection(bridge, args) { if (!bridge.isConnected()) { return { content: [ { type: 'text', text: 'Error: Emacs is not connected' } ], isError: true }; } try { const result = await bridge.request('getCurrentSelection', args); if (!result.text) { return { content: [ { type: 'text', text: 'No text is currently selected' } ], // Return empty structured data when no selection selection: undefined, file: undefined, start: undefined, end: undefined }; } const lineInfo = result.startLine === result.endLine ? `Line ${result.startLine}` : `Lines ${result.startLine}-${result.endLine}`; return { content: [ { type: 'text', text: `Selected text from ${result.fileName}:\n${lineInfo}, columns ${result.startChar}-${result.endChar}\n\n\`\`\`\n${result.text}\n\`\`\`` } ], // Include structured data matching the schema selection: result.text, file: result.fileName, start: { line: result.startLine, column: result.startChar }, end: { line: result.endLine, column: result.endChar } }; } catch (error) { return { content: [ { type: 'text', text: `Error getting current selection: ${error instanceof Error ? error.message : 'Unknown error'}` } ], isError: true }; } } //# sourceMappingURL=selection-tools.js.map