public void GetAnalyzeTaskSettings(FileBasedProject project) { #region "AnalysisTaskSettings" ISettingsBundle settings = project.GetSettings(); AnalysisTaskSettings analyseSettings = settings.GetSettingsGroup <AnalysisTaskSettings>(); #endregion #region "ReportCrossFileRepetitions" analyseSettings.ReportCrossFileRepetitions.Value = true; #endregion #region "ReportInternalFuzzyMatchLeverage" analyseSettings.ReportInternalFuzzyMatchLeverage.Value = true; #endregion #region "ExportFrequentSettings" analyseSettings.ExportFrequentSegments.Value = true; analyseSettings.FrequentSegmentsNoOfOccurrences.Value = 5; #endregion #region "ExportUnknownSegments" analyseSettings.ExportUnknownSegments.Value = true; analyseSettings.UnknownSegmentsMaximumMatchValue.Value = 50; #endregion #region "UpdateAnalyzeSettings" project.UpdateSettings(settings); #endregion }
/// <summary> /// Configures the analyze task file settings, i.e. in our implementation /// report cross-file repetitions and report the internal fuzzy match leverage. /// </summary> private void GetAnalyzeSettings( FileBasedProject project, string trgLocale, bool reportCrossFileRepetitions, bool reportInternalFuzzyMatchLeverage) #endregion { #region "trgLanguage" Language trgLanguage = new Language(CultureInfo.GetCultureInfo(trgLocale)); #endregion #region "ISettingsBundle" ISettingsBundle settings = project.GetSettings(trgLanguage); AnalysisTaskSettings analyzeSettings = settings.GetSettingsGroup <AnalysisTaskSettings>(); #endregion #region "ConfigureSettings" analyzeSettings.ReportCrossFileRepetitions.Value = reportCrossFileRepetitions; analyzeSettings.ReportInternalFuzzyMatchLeverage.Value = reportInternalFuzzyMatchLeverage; #endregion #region "UpdateSettings" project.UpdateSettings(trgLanguage, settings); #endregion }
/// <summary> /// Use project settings bundle to adapt specific project settings. For more details see Sdl.ProjectAutomation.Settings /// </summary> private void AdaptProjectSettings(FileBasedProject createdProject) { // Adapting translate task settings ISettingsBundle settings = createdProject.GetSettings(); TranslateTaskSettings translateSettings = settings.GetSettingsGroup <TranslateTaskSettings>(); translateSettings.NoTranslationMemoryMatchFoundAction.Value = NoTranslationMemoryMatchFoundAction.CopySourceToTarget; AnalysisTaskSettings analyzeSettings = settings.GetSettingsGroup <AnalysisTaskSettings>(); analyzeSettings.ExportFrequentSegments.Value = true; createdProject.UpdateSettings(settings); // Note the most complicated settings are TranslationMemorySettings, to adapt some part of these you need to use TM API // for example for filters. The documentation should mention this fact and describe how user can get a TM API (link to website) // We should not add such examples into ProjectAutomation API as it would add to many dependencies. }