47 votos

¿Cómo puedo insertar fecha y hora actuales en un archivo usando Emacs?

Lo de los comandos de Emacs se puede utilizar para insertar en el búfer de texto de un archivo, la fecha y la hora actual?

(Por ejemplo, el equivalente en el Bloc de notas es simplemente presionando F5 que es casi la única característica útil para el Bloc de notas!)

28voto

CMS Puntos 315406

Poner en tu .emacs archivo:

;; ====================
;; insert date and time

(defvar current-date-time-format "%a %b %d %H:%M:%S %Z %Y"
  "Format of date to insert with `insert-current-date-time' func
See help of `format-time-string' for possible replacements")

(defvar current-time-format "%a %H:%M:%S"
  "Format of date to insert with `insert-current-time' func.
Note the weekly scope of the command's precision.")

(defun insert-current-date-time ()
  "insert the current date and time into current buffer.
Uses `current-date-time-format' for the formatting the date/time."
       (interactive)
       (insert "==========\n")
;       (insert (let () (comment-start)))
       (insert (format-time-string current-date-time-format (current-time)))
       (insert "\n")
       )

(defun insert-current-time ()
  "insert the current time (1-week scope) into the current buffer."
       (interactive)
       (insert (format-time-string current-time-format (current-time)))
       (insert "\n")
       )

(global-set-key "\C-c\C-d" 'insert-current-date-time)
(global-set-key "\C-c\C-t" 'insert-current-time)

Referencia

23voto

Michael Paulukonis Puntos 4757

He utilizado estos fragmentos cortos:

(defun now ()
  "Insert string for the current time formatted like '2:34 PM'."
  (interactive)                 ; permit invocation in minibuffer
  (insert (format-time-string "%D %-I:%M %p")))

(defun today ()
  "Insert string for today's date nicely formatted in American style,
e.g. Sunday, September 17, 2000."
  (interactive)                 ; permit invocation in minibuffer
  (insert (format-time-string "%A, %B %e, %Y")))

Ellos vinieron originalmente de la revista.el

12voto

Marcel Levy Puntos 2378

Usted puede instalar yasnippet, que le permitirá tipo de "tiempo" y la tecla tab, y hace mucho más además. Llama a current-time-string detrás de las escenas, así que usted puede controlar el formato mediante format-time-string.

5voto

Ryan McGeary Puntos 76053

He aquí un paquete escribí hace un tiempo que lo que estás pidiendo.

http://github.com/rmm5t/insert-time.el/tree/master/insert-time.el

(require 'insert-time)
(define-key global-map [(control c)(d)] 'insert-date-time)
(define-key global-map [(control c)(control v)(d)] 'insert-personal-time-stamp)

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X