Struct jj_cli::merge_tools::ExternalMergeTool
source · pub struct ExternalMergeTool {
pub program: String,
pub diff_args: Vec<String>,
pub edit_args: Vec<String>,
pub merge_args: Vec<String>,
pub merge_tool_edits_conflict_markers: bool,
}Expand description
Merge/diff tool loaded from the settings.
Fields§
§program: StringProgram to execute. Must be defined; defaults to the tool name if not specified in the config.
diff_args: Vec<String>Arguments to pass to the program when generating diffs.
$left and $right are replaced with the corresponding directories.
edit_args: Vec<String>Arguments to pass to the program when editing diffs.
$left and $right are replaced with the corresponding directories.
merge_args: Vec<String>Arguments to pass to the program when resolving 3-way conflicts.
$left, $right, $base, and $output are replaced with
paths to the corresponding files.
merge_tool_edits_conflict_markers: boolIf false (default), the $output file starts out empty and is accepted
as a full conflict resolution as-is by jj after the merge tool is
done with it. If true, the $output file starts out with the
contents of the conflict, with JJ’s conflict markers. After the
merge tool is done, any remaining conflict markers in the
file parsed and taken to mean that the conflict was only partially
resolved.
Implementations§
source§impl ExternalMergeTool
impl ExternalMergeTool
pub fn with_program(program: impl Into<String>) -> Self
pub fn with_diff_args(command_args: &CommandNameAndArgs) -> Self
pub fn with_edit_args(command_args: &CommandNameAndArgs) -> Self
pub fn with_merge_args(command_args: &CommandNameAndArgs) -> Self
Trait Implementations§
source§impl Clone for ExternalMergeTool
impl Clone for ExternalMergeTool
source§fn clone(&self) -> ExternalMergeTool
fn clone(&self) -> ExternalMergeTool
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for ExternalMergeTool
impl Debug for ExternalMergeTool
source§impl Default for ExternalMergeTool
impl Default for ExternalMergeTool
source§impl<'de> Deserialize<'de> for ExternalMergeToolwhere
ExternalMergeTool: Default,
impl<'de> Deserialize<'de> for ExternalMergeToolwhere
ExternalMergeTool: Default,
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl PartialEq for ExternalMergeTool
impl PartialEq for ExternalMergeTool
source§fn eq(&self, other: &ExternalMergeTool) -> bool
fn eq(&self, other: &ExternalMergeTool) -> bool
self and other values to be equal, and is used
by ==.impl Eq for ExternalMergeTool
impl StructuralPartialEq for ExternalMergeTool
Auto Trait Implementations§
impl Freeze for ExternalMergeTool
impl RefUnwindSafe for ExternalMergeTool
impl Send for ExternalMergeTool
impl Sync for ExternalMergeTool
impl Unpin for ExternalMergeTool
impl UnwindSafe for ExternalMergeTool
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more