Как я могу вставить текст в буфер без завершающего «ноль» - PullRequest
2 голосов
/ 24 января 2011

У меня есть функция для вставки текущей даты в мой файл

(defun insert-date ()
   (interactive)
   (insert 
        (format-time-string "%m-%d-%Y")))

Это работает для вставки даты в мой текущий буфер, однако вывод: 01-24-2011nil

Как я могу удалить ноль со входа.

Ответы [ 2 ]

3 голосов
/ 24 января 2011

Как отмечено выше, insert возвращает nil и вставляет аргументы в качестве побочного эффекта.Поскольку вы объявили свою функцию interactive, вы можете вызвать ее с помощью Mx.Даже если вы не объявляете это интерактивным, вы можете сказать M-: (insert-date).

2 голосов
/ 25 января 2011

Это C-j, который вставляет ноль. Сама функция, как вы определили, в порядке. C-j в чистом буфере полезен для отладки написанного вами Lisp, но вы должны помнить, что он вставит возвращаемое значение Если вы этого не хотите, попробуйте вместо этого C-x C-e.

...