Использование texcount в Emacs для определения количества слов в латексном или tex-файле (требуются дополнительные параметры) - PullRequest
2 голосов
/ 14 декабря 2011

У меня есть функция, которую я использую для определения количества в латексе, и обычно мне нравится использовать команду 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 Ответ

0 голосов
/ 14 декабря 2011

Не проверено:

   (defun latex-word-count ()
      (interactive)
      (let* ((this-file  (buffer-file-name))
             (options    (let ((opts  ())
                               opt)
                           (while (not (equal (setq opt  (read-string "Option: "))
                                              ""))
                             (push opt opts))
                           (nreverse opts)))
             (word-count (with-output-to-string
                             (with-current-buffer standard-output
                               (apply 'call-process "texcount" nil t nil
                                      (append options (list this-file)))))))
        (string-match "\n$" word-count)
        (message (replace-match "" nil nil word-count))))

Это позволяет вам вводить столько параметров, сколько вам нужно, в нужном вам порядке.В конце нажмите RET без ввода.

Если вы знаете, какие параметры допустимы для texcount, тогда вы можете использовать completing-read вместо read-string, предоставляя списокэти параметры в качестве аргумента COLLECTION.НТН.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...