aboutsummaryrefslogtreecommitdiff
path: root/plugins/datetimestamps.lua
diff options
context:
space:
mode:
authorrxi <rxi@users.noreply.github.com>2020-06-23 17:19:50 +0100
committerGitHub <noreply@github.com>2020-06-23 17:19:50 +0100
commit2446f3c89b54c4554bd54c5f3a1e6d4a8471cac2 (patch)
tree93add93f7303fb7e5c269ed080c7a31f57e40480 /plugins/datetimestamps.lua
parente7d3925f739e87f4d18521a2902b678f05bbfe85 (diff)
parent9871b6c7de50d94c1f2ccedb8c14cb222a218377 (diff)
downloadlite-xl-plugins-2446f3c89b54c4554bd54c5f3a1e6d4a8471cac2.tar.gz
lite-xl-plugins-2446f3c89b54c4554bd54c5f3a1e6d4a8471cac2.zip
Merge pull request #62 from SwissalpS/proposeDateTimeStamps
proposal: date- and time-stamps insertion
Diffstat (limited to 'plugins/datetimestamps.lua')
-rw-r--r--plugins/datetimestamps.lua60
1 files changed, 60 insertions, 0 deletions
diff --git a/plugins/datetimestamps.lua b/plugins/datetimestamps.lua
new file mode 100644
index 0000000..518f0a9
--- /dev/null
+++ b/plugins/datetimestamps.lua
@@ -0,0 +1,60 @@
+local core = require "core"
+local config = require "core.config"
+local command = require "core.command"
+
+--[[
+Date and time format placeholders
+from https://www.lua.org/pil/22.1.html
+%a abbreviated weekday name (e.g., Wed)
+%A full weekday name (e.g., Wednesday)
+%b abbreviated month name (e.g., Sep)
+%B full month name (e.g., September)
+%c date and time (e.g., 09/16/98 23:48:10)
+%d day of the month (16) [01-31]
+%H hour, using a 24-hour clock (23) [00-23]
+%I hour, using a 12-hour clock (11) [01-12]
+%M minute (48) [00-59]
+%m month (09) [01-12]
+%p either "am" or "pm" (pm)
+%S second (10) [00-61]
+%w weekday (3) [0-6 = Sunday-Saturday]
+%x date (e.g., 09/16/98)
+%X time (e.g., 23:48:10)
+%Y full year (1998)
+%y two-digit year (98) [00-99]
+%% the character `%ยด
+--]]
+config.datetimestamps_format_datestamp = "%Y%m%d"
+config.datetimestamps_format_datetimestamp = "%Y%m%d_%H%M%S"
+config.datetimestamps_format_timestamp = "%H%M%S"
+
+local function datestamp()
+
+ local sOut = os.date(config.datetimestamps_format_datestamp)
+
+ core.active_view.doc:text_input(sOut)
+
+end
+
+local function datetimestamp()
+
+ local sOut = os.date(config.datetimestamps_format_datetimestamp)
+
+ core.active_view.doc:text_input(sOut)
+
+end
+
+local function timestamp()
+
+ local sOut = os.date(config.datetimestamps_format_timestamp)
+
+ core.active_view.doc:text_input(sOut)
+
+end
+
+command.add("core.docview", {
+ ["datetimestamps:insert-datestamp"] = datestamp,
+ ["datetimestamps:insert-timestamp"] = timestamp,
+ ["datetimestamps:insert-datetimestamp"] = datetimestamp
+})
+