From f7ae224f3e2530bb4b05166b6013f8a42432086e Mon Sep 17 00:00:00 2001 From: nsfisis Date: Mon, 20 Mar 2023 22:03:50 +0900 Subject: feat(nuldoc): rename simpara to para See also: https://tdg.docbook.org/tdg/sdocbook/5.1/para.html --- ...ce-between-autocmd-bufwrite-and-bufwritepre.xml | 68 +++++++++++----------- 1 file changed, 34 insertions(+), 34 deletions(-) (limited to 'content/posts/2021-10-02/vim-difference-between-autocmd-bufwrite-and-bufwritepre.xml') diff --git a/content/posts/2021-10-02/vim-difference-between-autocmd-bufwrite-and-bufwritepre.xml b/content/posts/2021-10-02/vim-difference-between-autocmd-bufwrite-and-bufwritepre.xml index 4e3f187..7e0dd2e 100644 --- a/content/posts/2021-10-02/vim-difference-between-autocmd-bufwrite-and-bufwritepre.xml +++ b/content/posts/2021-10-02/vim-difference-between-autocmd-bufwrite-and-bufwritepre.xml @@ -15,69 +15,69 @@ - + この記事は Qiita から移植してきたものです。 元 URL: https://qiita.com/nsfisis/items/79ab4db8564032de0b25 - - + +
-
+
TL; DR - + 違いはない。ただのエイリアス。 - +
調査記録 - + Vim の autocmd events には似通った名前のものがいくつかある。大抵は :help に説明があるが、この記事のタイトルにある2つを含めた以下のイベントには、その違いについて説明がない。 - + BufRead/BufReadPost BufWrite/BufWritePre BufAdd/BufCreate - + このうち、BufAdd/BufCreate に関しては、:help BufCreate に - +
- + The BufCreate event is for historic reasons. - +
- + とあり、おそらくは BufAdd のエイリアスであろうということがわかる。他の2組も同様ではないかと予想されるが、確認のため vim と neovim のソースコードを調査した。 - +
- + ソースコードへのリンク vim (調査時点での master branch) neovim (上に同じ) - +
vim のソースコード - + 以下は、autocmd events の名前と内部で使われている整数値とのマッピングを定義している箇所である。見ての通り、上でエイリアスではないかと述べた3組には、それぞれ同じ内部値が使われている。 - - + + https://github.com/vim/vim/blob/8e6be34338f13a6a625f19bcef82019c9adc65f2/src/autocmd.c#L85-L86 - + - + https://github.com/vim/vim/blob/8e6be34338f13a6a625f19bcef82019c9adc65f2/src/autocmd.c#L95-L97 - + - + https://github.com/vim/vim/blob/8e6be34338f13a6a625f19bcef82019c9adc65f2/src/autocmd.c#L103-L105 - +
neovim のソースコード - + neovim の場合でも同様のマッピングが定義されているが、こちらの場合は Lua で書かれている。以下にある通り、はっきり aliases と書かれている。 - - + + https://github.com/neovim/neovim/blob/71d4f5851f068eeb432af34850dddda8cc1c71e3/src/nvim/auevents.lua#L119-L124 - + - + ところで、上では取り上げなかった FileEncoding だが、これは :help FileEncoding にしっかりと書いてある。 - +
まとめ - + 記事タイトルについて言えば、どちらも変わらないので好きな方を使えばよい。あえて言えば、次のようになるだろう。 - + BufAdd/BufCreate @@ -159,10 +159,10 @@ - + ところでこの調査で知ったのだが、BufReadBufWrite は上にある通り発火するタイミングが「後」と「前」で対称性がない。可能なら Pre/Post 付きのものを使った方が分かりやすいだろう。 - +
-- cgit v1.2.3-70-g09d2