diff --git a/src/main/kotlin/de/idetools/filename_template/InitializeFilenameTemplateActivity.kt b/src/main/kotlin/de/idetools/filename_template/InitializeFilenameTemplateActivity.kt
index 1072885..e092f5f 100644
--- a/src/main/kotlin/de/idetools/filename_template/InitializeFilenameTemplateActivity.kt
+++ b/src/main/kotlin/de/idetools/filename_template/InitializeFilenameTemplateActivity.kt
@@ -6,6 +6,7 @@ import com.intellij.openapi.actionSystem.Constraints
import com.intellij.openapi.actionSystem.DefaultActionGroup
import com.intellij.openapi.project.Project
import com.intellij.openapi.startup.StartupActivity
+import de.idetools.filename_template.placeholders.DatePlaceholder
import de.idetools.filename_template.placeholders.DefaultPlaceholder
import de.idetools.filename_template.placeholders.EpochPlaceholder
import de.idetools.filename_template.placeholders.PlaceholderProcessor
@@ -21,6 +22,7 @@ class InitializeFilenameTemplateActivity : StartupActivity {
val placeholders = listOf(
EpochPlaceholder(),
+ DatePlaceholder(),
DefaultPlaceholder()
)
diff --git a/src/main/kotlin/de/idetools/filename_template/placeholders/DatePlaceholder.kt b/src/main/kotlin/de/idetools/filename_template/placeholders/DatePlaceholder.kt
new file mode 100644
index 0000000..9c36484
--- /dev/null
+++ b/src/main/kotlin/de/idetools/filename_template/placeholders/DatePlaceholder.kt
@@ -0,0 +1,20 @@
+package de.idetools.filename_template.placeholders
+
+import java.time.LocalDateTime
+import java.time.format.DateTimeFormatter
+
+class DatePlaceholder : Placeholder {
+ override fun supports(placeholder: String): Boolean = placeholder.startsWith("DATE")
+
+ override fun process(placeholder: String, context: PlaceholderContext): String {
+ val date = LocalDateTime.now()
+ val datePattern = placeholder.substringAfter(":", "")
+ val formatter =
+ if (datePattern.isBlank()) {
+ DateTimeFormatter.ISO_DATE
+ } else {
+ DateTimeFormatter.ofPattern(datePattern)
+ }
+ return date.format(formatter)
+ }
+}
diff --git a/src/main/resources/META-INF/plugin.xml b/src/main/resources/META-INF/plugin.xml
index d9fdc38..5c8a3f0 100644
--- a/src/main/resources/META-INF/plugin.xml
+++ b/src/main/resources/META-INF/plugin.xml
@@ -35,6 +35,12 @@
A template might contain following place holders: