mirror of
https://github.com/pcvolkmer/osc-variant.git
synced 2025-04-19 19:56:50 +00:00
Strip content that is included in system library
This commit is contained in:
parent
7d6a6ee9b3
commit
af4ec8898a
@ -74,6 +74,12 @@ nach Namen zu sortieren.
|
|||||||
Dies erlaubt eine konsistente Reihenfolge der Einträge, wodurch ein direkter Vergleich mit Vorversionen ermöglicht wird.
|
Dies erlaubt eine konsistente Reihenfolge der Einträge, wodurch ein direkter Vergleich mit Vorversionen ermöglicht wird.
|
||||||
ACHTUNG: Es kann sein, dass dadurch ein Import der resultierenden OSC-Datei nicht mehr möglich ist, da das genaue Verhalten des Imports aktuell noch nicht bekannt ist.
|
ACHTUNG: Es kann sein, dass dadurch ein Import der resultierenden OSC-Datei nicht mehr möglich ist, da das genaue Verhalten des Imports aktuell noch nicht bekannt ist.
|
||||||
|
|
||||||
|
#### Entfernen von Inhalten der Systembibliothek bei Modifikation
|
||||||
|
|
||||||
|
über die experimentelle Option `--x-strip` ist es möglich, die in der OSC-Datei enthaltenen und beim Import nicht genutzten Inhalte aus der Systembibliothek zu entfernen.
|
||||||
|
|
||||||
|
Hierbei werden alle Inhalte entfernt, die im Ordner "ONKOSTAR Bibliothek" enthalten sind, beim Import jedoch ignoriert werden.
|
||||||
|
|
||||||
## Profile
|
## Profile
|
||||||
|
|
||||||
Zum Erstellen von Varianten einer OSC-Datei wird eine Profildatei im YAML-Format verwendet.
|
Zum Erstellen von Varianten einer OSC-Datei wird eine Profildatei im YAML-Format verwendet.
|
||||||
|
@ -66,6 +66,11 @@ pub enum Command {
|
|||||||
help = "EXPERIMENTELL: Sortiere Kataloge und Formulare nach Name (Optional).\nKann negative Auswirkungen auf den ordnungsgemäßen Import haben."
|
help = "EXPERIMENTELL: Sortiere Kataloge und Formulare nach Name (Optional).\nKann negative Auswirkungen auf den ordnungsgemäßen Import haben."
|
||||||
)]
|
)]
|
||||||
sorted: bool,
|
sorted: bool,
|
||||||
|
#[arg(
|
||||||
|
long = "x-strip",
|
||||||
|
help = "EXPERIMENTELL: Entferne Einträge aus der Systembibliothek die nicht importiert werden (Optional).\nKann negative Auswirkungen auf den ordnungsgemäßen Import haben."
|
||||||
|
)]
|
||||||
|
strip: bool,
|
||||||
},
|
},
|
||||||
#[command(about = "Vergleiche zwei Dateien anhand der Revision der enthaltenen Inhalte")]
|
#[command(about = "Vergleiche zwei Dateien anhand der Revision der enthaltenen Inhalte")]
|
||||||
Diff {
|
Diff {
|
||||||
|
@ -130,6 +130,7 @@ fn main() -> Result<(), Box<dyn Error>> {
|
|||||||
outputfile,
|
outputfile,
|
||||||
compact,
|
compact,
|
||||||
sorted,
|
sorted,
|
||||||
|
strip,
|
||||||
} => {
|
} => {
|
||||||
let data = &mut read_inputfile(inputfile)?;
|
let data = &mut read_inputfile(inputfile)?;
|
||||||
|
|
||||||
@ -144,6 +145,10 @@ fn main() -> Result<(), Box<dyn Error>> {
|
|||||||
data.sorted();
|
data.sorted();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if strip {
|
||||||
|
data.strip_system_library_content();
|
||||||
|
}
|
||||||
|
|
||||||
let mut buf = String::new();
|
let mut buf = String::new();
|
||||||
|
|
||||||
let mut serializer = Serializer::new(&mut buf);
|
let mut serializer = Serializer::new(&mut buf);
|
||||||
|
@ -172,6 +172,24 @@ impl OnkostarEditor {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn strip_system_library_content(&mut self) {
|
||||||
|
self.editor
|
||||||
|
.property_catalogue
|
||||||
|
.retain(|e| !e.is_system_library_content());
|
||||||
|
|
||||||
|
self.editor
|
||||||
|
.data_catalogue
|
||||||
|
.retain(|e| !e.is_system_library_content());
|
||||||
|
|
||||||
|
self.editor
|
||||||
|
.data_form
|
||||||
|
.retain(|e| !e.is_system_library_content());
|
||||||
|
|
||||||
|
self.editor
|
||||||
|
.unterformular
|
||||||
|
.retain(|e| !e.is_system_library_content());
|
||||||
|
}
|
||||||
|
|
||||||
pub fn print_diff(&mut self, other: &mut Self, strict: bool) {
|
pub fn print_diff(&mut self, other: &mut Self, strict: bool) {
|
||||||
println!();
|
println!();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user