markmv - v1.26.2
    Preparing search index...

    Class FileOperations

    Core class for performing markdown file operations with intelligent link refactoring.

    This class provides the main functionality for moving, splitting, joining, and merging markdown files while maintaining the integrity of cross-references and links.

    Basic file move

    const fileOps = new FileOperations();
    const result = await fileOps.moveFile('old.md', 'new.md');

    if (result.success) {
    console.log(`Successfully moved file and updated ${result.modifiedFiles.length} references`);
    } else {
    console.error('Move failed:', result.errors);
    }

    Dry run with verbose output

    const fileOps = new FileOperations();
    const result = await fileOps.moveFile('docs/guide.md', 'tutorials/guide.md', {
    dryRun: true,
    verbose: true
    });

    // Preview changes without actually modifying files
    result.changes.forEach(change => {
    console.log(`${change.type}: ${change.filePath} - ${change.description}`);
    });
    Index

    Constructors

    Methods

    • Move a markdown file and update all links that reference it.

      This method performs an intelligent move operation that:

      1. Validates the source and destination paths
      2. Discovers all files that link to the source file
      3. Updates all cross-references to maintain link integrity
      4. Optionally performs a dry run to preview changes

      Parameters

      • sourcePath: string

        The current path of the markdown file to move

      • destinationPath: string

        The target path (can be a directory)

      • options: MoveOperationOptions = {}

        Configuration options for the move operation

      Returns Promise<OperationResult>

      Promise resolving to detailed operation results

        const fileOps = new FileOperations();

      // Simple move
      await fileOps.moveFile('docs/old.md', 'docs/new.md');

      // Move to directory (filename preserved)
      await fileOps.moveFile('guide.md', './docs/');

      // Dry run with verbose output
      const result = await fileOps.moveFile('api.md', 'reference/api.md', {
      dryRun: true,
      verbose: true
      });
    • Validate the integrity of links after an operation

      Parameters

      Returns Promise<{ valid: boolean; brokenLinks: number; errors: string[] }>