view rust/hg-core/src/operations/mod.rs @ 52969:874c64e041b5

rhg-annotate: support whitespace options This adds support to rhg annotate for all the whitespace options: -w, --ignore-all-space -b, --ignore-space-change -B, --ignore-blank-lines -Z, --ignore-space-at-eol Note that --ignore-blank-lines has no effect on annotate so it is ignored. You can see this in dagop.py _annotepair which only checks if blocks are '=' or not, whereas the effect of --ignore-blank-lines is to change some '!' into '~'. When the other 3 are combined, we use the strongest option since -w implies -b and -b implies -Z. This is not explicit in the Python implementation, but I have verified that's how it behaves.
author Mitchell Kember <mkember@janestreet.com>
date Fri, 07 Feb 2025 17:42:43 -0500
parents 6183949219b2
children
line wrap: on
line source

//! A distinction is made between operations and commands.
//! An operation is what can be done whereas a command is what is exposed by
//! the cli. A single command can use several operations to achieve its goal.

mod annotate;
mod cat;
mod debugdata;
mod list_tracked_files;
mod status_rev_rev;
pub use annotate::{
    annotate, AnnotateOptions, AnnotateOutput, ChangesetAnnotation,
};
pub use cat::{cat, CatOutput};
pub use debugdata::debug_data;
pub use list_tracked_files::{
    list_rev_tracked_files, list_revset_tracked_files, ExpandedManifestEntry,
    FilesForRev,
};
pub use status_rev_rev::{
    status_change, status_rev_rev_no_copies, DiffStatus, ListCopies,
    StatusRevRev,
};