【问题标题】:Atom editor: snippet for inserting a timestampAtom 编辑器:插入时间戳的片段
【发布时间】:2014-10-29 10:44:04
【问题描述】:

下面是我正在玩的 Atom sn-p。我想要做的是在末尾插入一个带有开发人员姓名的时间戳。当多人在同一个代码库上工作并且您需要注释掉一些代码或添加注释时,这很有用。这样其他开发人员就知道谁做了什么,以及他们什么时候做的。我发现它非常有用,并想创建一个 sn-p 来执行此操作。

但是,从 sn-p 中可以看出,它非常丑陋……JS 不是我的强项。有没有干净的方法来做到这一点?

time => 制表符 => YYYY-MM-DD HH:MM / NAME

'.source':
  'Timestamp':
    'prefix': 'time'
    'body': """
      # #{datetime = new Date(); datetime.getFullYear()}-#{(datetime.getMonth()+1)}-#{datetime.getDate()} #{datetime.getHours()}:#{datetime.getMinutes()} / NAME
    """

【问题讨论】:

标签: javascript datetime coffeescript code-snippets atom-editor


【解决方案1】:

如果不借助诸如 moment.js 或 Date.js 之类的库,您最接近这一点的是使用 toISOString()

new Date().toISOString()

这将像这样打印日期:

2014-09-05T07:15:14.840Z

缺点是这将始终以 UTC 格式打印日期。

这里列出了更多选项:How to format a JavaScript date - 也许你会在那里看到一些东西。根据对答案的快速浏览,您所做的实际上看起来还不错。

【讨论】:

    【解决方案2】:

    对于使用 momentjs,这里是 sn-p 的最小示例:http://jsfiddle.net/jasdeepkhalsa/a0m9s3rc/

    HTML 和 JavaScript - (index.html)

    <!doctype html>
    <html>    
        <body>
            <script src="http://momentjs.com/downloads/moment.min.js"></script>
            <script>
                (function (name) {
                    var date = moment().format('YYYY-MM-DD HH:MM'),
                        name = name || '< Developer Name >',
                        string = date + ' / ' + name;
                    return console.log(string);
                })('Dan L');
            </script>
        </body>
    </html>
    

    这会输出到浏览器的console:

    2014-09-05 15:09 / Dan L
    

    注意:这目前使用console.log 输出到浏览器的F12 开发者工具的控制台,您可以改为在return 语句中使用document.write 输出到页面。

    【讨论】:

    • 这与请求的功能无关。 OP 要求 sn-p 在 Atom 编辑器中插入时间戳。不像 Javascript(在 HTML 页面或其他内容中)。
    猜你喜欢
    • 2014-12-24
    • 2015-09-23
    • 1970-01-01
    • 1970-01-01
    • 2016-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-05
    相关资源
    最近更新 更多