【问题标题】:In Notepad++, how can I insert the current date and time?在记事本++中,如何插入当前日期和时间?
【发布时间】:2015-03-13 02:17:09
【问题描述】:

在 Windows Notepad.exe 上,我只需按 F5 即可插入日期和时间,如下所示:

2015 年 1 月 14 日上午 11:05

我可以在 Notepad++ 中添加类似的简单功能吗?

【问题讨论】:

  • 这不是编程相关的问题..
  • Super User上有一些类似的问题。如果那里不存在这个确切的问题,你可以在那里问。
  • 有趣的一点,关于编程/开发工具的问题符合 SO 问题吗?
  • @jxramos:确实如此。不过,这里并没有太多的“编程”。我的意思是,您通常不会将 Visual Studio 之类的 IDE 用于任何开发,而 Notepad++ 将自己宣传为代码编辑器和直接的记事本替代品。
  • @PeterMortensen,我刚刚验证 F5 今天仍然可以在我的 Windows 10 机器上运行。 “2019 年 3 月 22 日上午 11:51”。

标签: datetime notepad++


【解决方案1】:

如果您的 Notepad++ 附带 TextFX,您可以在 TextFX > TextFX 插入 > 日期和时间 - 短格式 中找到它,这将插入完全相同格式的字符串。如果您没有看到 TextFX 菜单,请通过插件管理器安装它,它就会出现。

然后,您可以将其绑定到 设置 > 快捷方式映射器...> 插件命令 中的键盘快捷方式。在映射中查找 I:Date & Time - short format

【讨论】:

    【解决方案2】:
    Step 1 : Install plugin TextFX
    Step 2 : Insert Date & time
    

    【讨论】:

    • 非常感谢
    • 解释得好!!
    【解决方案3】:

    试试“Python 脚本”插件

    我更喜欢使用此处记录的 Python 脚本 插件:https://ardamis.com/2014/03/09/adding-an-insert-datestamp-or-timestamp-macro-to-notepad-plus-plus/ 因为它让我可以完全控制我希望日期时间戳格式的外观,它还允许我创建宏脚本来插入我想要计算的其他类型的值。

    手动安装“Python 脚本”

    请注意,您必须从 http://npppythonscript.sourceforge.net/download.shtml 下载 Python 脚本插件,因为从 Notepad++ 中的插件管理器下载它并不总是有效。 (详见this thread。)

    编写“Time.py”脚本

    然后你可以写一个这样的简单脚本:

    import time
    # import sys
    timeStr = time.strftime( '%Y-%m-%d' + ' @ ' + '%I:%M %p' )
    # sys.stdout.write(timeStr)
    editor.addText( timeStr )
    

    您可以根据需要更改格式字符串。这使您可以完全控制文本输出。 (详情请参阅Python 2's time.strftime documentation。)

    然后将脚本保存到这个文件名:

    "%AppData%\Notepad++\plugins\Config\PythonScript\scripts\Time.py"

    在“Python 脚本”中创建“菜单项”

    在此处导航:Menu bar -> Plugins -> Python Script -> Configuration 像这样:

    然后你可以像这样添加脚本:

    分配热键

    然后,当您重新启动 Notepad++ 时,您可以通过转到 Menu bar -> Settings -> Shortcut Mapper -> Plugin Commands -> Time 将脚本分配给这样的快捷方式:

    进一步阅读

    关于 Python 脚本 插件的更多文档可在此处获得:PythonScript plugin documentation for Notepad++

    【讨论】:

    • 由于 TextFX 不再适用于新版本的 notepad++,因此此解决方案适用于新的 64 位 notepad++,谢谢!
    • 对于安装,我发现这些说明适用于 64 位安装(即是最新的):notepad-plus-plus.org/community/topic/17256/…
    • 如果可能的话,我会+100!一旦你安装了 PythonScript 并开始使用它(大约 20 分钟让你感到舒服),你将永远不会回到旧的方式!
    • 我只想说先试试插件管理员。它几乎是即时的,非常容易,似乎它应该是最好的集成。截至 2019 年,我已经在包括 Ubuntu snap 安装在内的十几个系统上尝试过它,并且它一直都能完美运行。
    • 很好的答案。对于分配热键,插件命令中没有显示时间。所以我必须先去插件 --> Python 脚本 --> 配置并将 Time.py 添加到“菜单”框中。重启Notepad++后,插件命令中出现Time.py。
    【解决方案4】:

    TextFX 插件 proposed here 似乎不再适用于 64 位。

    The alternative as of today是安装Notepad++ Plugin Demo插件,提供Date Time - short formatDate Time - long format。根据需要映射到快捷方式。在我的德语语言环境中,结果分别是:

    12:10 01.07.2020
    12:10 Mittwoch, 1. Juli 2020
    

    【讨论】:

    • 谢谢,这比编写 Python 脚本更容易,就像目前对 TextFX 的最受好评的替代答案所建议的那样。希望这个演示插件能保持这种状态......
    【解决方案5】:

    使用 TextFx 插件可以选择插入日期和时间。我想你可以给它分配一个键盘快捷键。

    【讨论】:

      【解决方案6】:

      Notepad++ v8.1.4 中已添加此功能。

      菜单 > 编辑 > 插入 >

      • 日期时间(短)
      • 日期时间(长)

      无需插件即可回答这个问题。

      您能找到将其映射到快捷方式的方法吗?目前,快捷方式映射器没有将其映射到的条目。当我尝试为其录制和播放宏时,屏幕上出现乱码(看起来像一个错误)。

      【讨论】:

        【解决方案7】:

        通过 LuaScript 的简单方法(https://github.com/notepad-plus-plus/notepad-plus-plus/issues/497https://www.lua.org/pil/22.1.html):先安装 LuaScript 插件,然后在 LuaScript 中编辑启动脚本,如下:

        npp.AddShortcut("Insert Current Date/Time", "Ctrl+Shift+D", function()
            editor:ReplaceSel(os.date("%I:%M %p %m/%d/%Y"))
        end)
        

        重启npp后,在记事本中Ctrl-Shift-D会变成F5。

        【讨论】:

          【解决方案8】:

          使用“Autohotkey”的更通用的答案:

          https://autohotkey.com/board/topic/21387-how-to-insert-current-date-into-a-hotkey/

          例子:

          ;//will replace ddd keystroke with yyyy-MM-dd formatted date
          :R*?:ddd:
          FormatTime, CurrentDateTime,, yyyy-MM-dd
          SendInput %CurrentDateTime%
          return
          
          ;//will replace ttt keystroke with yyyy-MM-dd HH:mm formatted date/time
          :R*?:ttt::
          FormatTime, CurrentDateTime,, yyyy-MM-dd HH:mm
          SendInput %CurrentDateTime%
          return
          

          【讨论】:

            【解决方案9】:

            这是一种以您喜欢的任何格式插入日期/时间戳的简单灵活的方法。

            像许多其他开发人员一样,我使用了 FingerText 插件,它允许您通过键入“触发”字并按下 tab 键来插入可自定义的代码或文本 sn-ps。

            我的一个 sn-ps 是插入我在代码 cmets 中使用的日期/时间戳:

            我只需输入 stamptab 并插入如下日期:2020-07-31 @ 11:45

            这是我用来生成图章的 FingerText 代码,您可以根据自己选择的任何日期时间格式对其进行修改:

            $[![(key)DATE:yyyy-MM-dd]!] @ $[![(key)TIME:HH:mm]!] $[0[]0][>END<]
            

            您可以通过插件管理对话框下载 FingerText。

            【讨论】:

            • 看起来很酷,但安装 FingerText 的 zip 文件似乎指向了一个无效的 SourceForge 链接。所以我无法安装 FingerText。
            • 是的,看起来这个项目已经死了,但我仍然觉得它很有用。它不能通过插件管理对话框使用吗?也可以直接从downloads.sourceforge.net/project/fingertext/Alpha%20Releases/…下载
            • 我得到一个 502 的链接。也许是我的防火墙?插件管理员使用相同的链接。感谢您的建议。它看起来很酷。
            • 是的,这很奇怪。我刚刚确认它对我有用。这是一个 sourceforge 镜像的直接链接:managedway.dl.sourceforge.net/project/fingertext/… 如果你不介意从互联网上的随机人那里下载二进制文件,我将它上传到filebin.net/984d8v81rsgh59xo 并且链接将持续存在一周。
            【解决方案10】:

            从 Notepad++ 8.1.5 开始,您可以使用 Edit/Insert/Date Time (customized) 插入自定义日期/时间格式。可以在Settings/Preferences/Multi-Instance &amp; Date自定义。

            【讨论】:

              【解决方案11】:

              我想到的最快方法是打开 Windows 记事本,按 F5,复制/粘贴。无需安装任何东西...

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 2020-12-09
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2016-03-28
                • 1970-01-01
                • 2017-04-01
                相关资源
                最近更新 更多