Использование texcount в Emacs для определения количества слов в латексном или tex-файле (требуются дополнительные параметры)
У меня есть функция, которую я использую, чтобы определить количество в латексе, и обычно мне нравится использовать команду brief
, Как бы я изменил это для параметров ввода вместо того, чтобы работать с "-inc" "-brief"
, Я мог бы ввести свой собственный набор параметров в минибуфере для запуска с помощью команды texcount. Скорее всего, будет лучше, если команды будут разделены запятой, а затем переведены в следующий формат. Или я могу просто напечатать все это сам "-inc" "-brief"
если необходимо.
(defun latex-word-count ()
(interactive)
(let* ((this-file (buffer-file-name))
(word-count
(with-output-to-string
(with-current-buffer standard-output
(call-process "texcount" nil t nil "-inc" "-brief" this-file)))))
(string-match "\n$" word-count)
(message (replace-match "" nil nil word-count))))
1 ответ
Непроверенные:
(defun latex-word-count () (интерактивный) (let* ((this-file (buffer-file-name))) (options (let ((opts ()) opt) (while (не (равно (setq opt (read-string "Option: ")) "")) (push opt opts)) (nreverse opts))) (подсчет слов (с выводом в строку (со стандартным выводом с текущим буфером) (вызов apply) -process "texcount" nil t nil (добавить параметры (перечислите этот файл))))))) (совпадение строк "\n$" word-count) (message (replace-match "" nil nil word-count))))
Это позволяет вам вводить столько параметров, сколько вам нужно, в нужном вам порядке. В конце нажмите RET без ввода.
Если вы знаете, какие варианты приемлемы для texcount
тогда вы можете использовать completing-read
вместо read-string
, предоставляя список этих опций в качестве его COLLECTION
аргумент. НТН.