PlantUML 甘特图的日历语言环境(德语)

Calendar locale (German) for PlantUML gantt diagrams

有人能告诉我如何为 plantUML

中漂亮的 gantt 功能的渲染日历部分定义另一个日历的语言环境(例如德语)

我有类似的东西:

@startgantt
-- Vorbereitung --
Project starts 2020-12-01
[Themenfindung] starts 2020-12-01 and ends 2021-01-01
[milestone] happens at 2020-12-15
-- ... --
@endgantt

输出以英文打印月份和日期名称:

是否可以,如果可以,如何将其更改为德语。

文档中没有关于此的内容 (https://plantuml.com/de/gantt-diagram)。

根据他们的源代码, 日期和月份的硬编码值为 Enums 他们使用 name() 方法来获取他们的英文名字。 我建议你克隆他们的 repo 并更改两个 类:

中的硬编码值
  1. 在文件中 src/net/sourceforge/plantuml/project/time/DayOfWeek.java 像这样替换方法 shortName
  public String shortName() {
    Locale locale = Locale.getDefault();
    String s = StringUtils.capitalize(java.time.DayOfWeek.valueOf(this.toString()).getDisplayName(TextStyle.SHORT_STANDALONE, locale));
    return s.substring(0,2);
  }
  1. 在文件中src/net/sourceforge/plantuml/project/time/Month.java 像这样替换两个方法

     public String shortName() {
     return StringUtils.capitalize(java.time.Month.valueOf(this.toString()).getDisplayName(TextStyle.SHORT_STANDALONE,Locale.getDefault()));
    

    }

    public String longName() {
    return StringUtils.capitalize(java.time.Month.valueOf(this.toString()).getDisplayName(TextStyle.FULL_STANDALONE,Locale.getDefault()));
}

我只编译了这两个 类 并在 jar 文件中替换它们。这对我有用。

麦克。

在上一个测试版 http://beta.plantuml.net/plantuml.jar 中,您现在可以为日历指定一种语言。 例如:

@startgantt
Language DE
Project starts the 20th of september 2017
...
@endgantt

这将在下一个正式版本中集成。