LoginSignup
1
2

More than 5 years have passed since last update.

【YaTeX・Emacs】句読点を変換する(、。→ ,.)

Last updated at Posted at 2018-03-15

はじめに

僕は現在大学院に所属しており、よく論文を書いています。
日本語の論文では、ルール(慣例?)として句読点は「,」と「.」を使うことになっています(全角です)。
なので、僕の場合Google日本語入力を使っているので、その環境設定で句読点はデフォルトで「,」と「.」になるようにしています。

しかし、PCでやることはなにも論文執筆だけじゃない。。。
LINEやSlackで連絡を取ることもあれば、TwitterやFacebook、Qiitaで情報発信したりする。

そんなときに句読点が「,」と「.」だと、ちょっと固い文章になってしまう。 …と僕は思っています。

したがって、Google日本語入力のデフォルトは「、」と「。」にして、論文書くときだけエディタ上で勝手に「,」と「.」へと変換してくれるようにしました。なので、メモとしてここに残しておきます。

環境

下記が導入済みの環境を想定しています。

  • Emacs
  • YaTeX

手順

今回はこちらの記事を参考にさせていただきました。(ありがとうございました🙇)

僕が実際に追加したのは以下のコードです。
このコードをinit.elに追記します。

ただし、今回は僕が使っているYaTeXモードにフックをかけています。
皆さんの環境に合わせてyatex-mode-hook(下から4行目)のところをtex-modeなりに変えてください。

init.el
(defun replace-dot-comma ()
  (let ((curpos (point)))
    (goto-char (point-min))
    (while (search-forward "。" nil t) (replace-match "."))

    (goto-char (point-min))
    (while (search-forward "、" nil t) (replace-match ","))
    (goto-char curpos)
    ))

(add-hook 'yatex-mode-hook
          '(lambda ()
             (add-hook 'before-save-hook 'replace-dot-comma nil 'make-it-local)
             ))

いざ、変換!

やてふ変換.gif

少し分かりづらいかもしれないですが、保存した瞬間(下の方に「Wrote 〜」と出た瞬間)に全て変換されていますね!

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2