vim-jp/vimdoc-ja-working

初めてフィードバックします

Mizuki-Oonojou opened this issue · 11 comments

はじめまして、Mizuki-Oonojou と申します。

さて、日本語マニュアルを読みながら vimrc を書いていたのですが、そのマニュアルに読み誤りやすそうな箇所がありました。

(実際、私は読み誤って、自作 function!...endfunction を作るのに手間取ったのです。 )

というわけで、フィードバックしたいのですが、私はどう行動すればよいのでしょうか。

予想される次のアクション:

  1. この issue に、修正希望の箇所を書き込む。
  2. Google グループに、修正希望の箇所を書き込む。
  3. 修正希望箇所はわずかであるけれども、リポジトリをフォーク&クローンをし、ブランチを作成して……と、Workflow の手順どおりに push して Pull Request する。

おおよそ、この三通りのうちのいずれかになるはずです。どの方法でもよいという場合は、1. のとおり、この issue に修正希望箇所を書き込もうという算段です。

なお、Mizuki-Oonojou の Vim 経歴は次のとおりです。

  • 2012年、Ubuntu 12.04 Unity Desktop で、初めて vi と vim に触れる。
  • さらに Windows 7 上で gVim も使う。
  • 2015年前後から、エディタ難民と化す。
  • 多くのエディタを試したが、どれも挫折した。Atom も挫折した。
  • 2019年頃、なんだかんだで結局、Vim に落ち着いた。
  • 現在は、Fedora Workstation 32 GNOME desktop の GNOME Terminal 上で Vim を愛用中。

この経歴で、私がいったいどういう修正を望んでいるか、想像がつけば幸いです。

Mizuki-Oonojou

@Mizuki-Oonojou はじめまして 😄

私はどう行動すればよいのでしょうか。

どれでもお好きに。だた、2. vimdoc-jaのGoogleグループはチェックしていないメンバーもいるかもしれないです。(少なくとも私は見ていないです)

@h-east さん、コメントありがとうございます。

それでは、先の 1. のとおり、この issue に修正希望箇所を書き込もうと思います。

修正希望の場所は、fold.jax の 505 行目、

v:folddashes 折畳レベルを表現したダッシュ(-)記号を含む文字列。

の行末から6文字目の「含む」です。修正希望の文の一例としては、

「 v:folddashes 折畳レベルを表現したダッシュ(-)記号の文字列。」

といったところです。

「含む」を修正(削除)してほしいその理由

「ダッシュ(-)記号を含むもなにも、ダッシュ(-)記号しか戻ってこないじゃァないか!」

これが、端的な理由でございます。この現象を以下に再現してみます。

現象の再現

何がきっかけだったか、ある日、折畳テキストをカスタマイズしようと思い立ちました。

そこで、日本語マニュアル fold.jax の「折畳テキスト」の欄を読みながら、設定ファイル vimrc 上で、set foldtext の関数定義をしていたのですが、これがうまくいかない。

「あれぇ、意図したとおりに文字列が返ってこないなぁ。文字列連結、どこか間違えたかなあ」

確かめてみても、戻り値 return の記述に間違いはなかった。

「しょうがないから、書かれている値を、すべて確かめるか」

すべて、その挙動を確かめました。

  1. foldtext()
  2. v:foldstart
  3. v:foldend
  4. v:folddashes
  5. v:foldlevel

その中の 4. v:folddashes の日本語マニュアルの説明は、くだんのとおり、

v:folddashes 折畳レベルを表現したダッシュ(-)記号を含む文字列。

と書かれているのですが、その文の意味を、私は、ダッシュ記号以外にも文字列が含まれている と解釈してしまいました。

その読み誤りの結果、いざ 4. v:folddashes の変数の値を確かめてみたら、

「なんだよ、含むもなにも、変数にはダッシュしか入っていないじゃァないか」

と文句たらたら、になってしまった次第です。

それゆえ、fold.jax の505行目、

v:folddashes 折畳レベルを表現したダッシュ(-)記号を含む文字列。

は、

「 v:folddashes 折畳レベルを表現したダッシュ(-)記号の文字列。」

などに修正してほしいと思っています。

修正理由について、あれこれ

ただし、その部分の原文を読むと、fold.txt の516行目、

v:folddashes a string that contains dashes to represent the foldlevel.

(太字部分、引用者)

と書かれていて、確かに「contains(含む)」なのです。

そこで、手元の英和辞典『E-Gate』(Benesse)のページを繰ってみると、「contain」に次の説明がありました。

contain は入っているものが全部を表す場合と一部を表す場合の両方に用いることができるのに対し、include は一部を表す場合にしか用いることはできない。

確かに、問題の変数 v:folddashes は、入っているダッシュ(-)記号が、その全部を表していました。原文の表記にも、また翻訳にも、間違いはどこにもございません。

でありますが、並の日本人なら、「含む」という言葉を使うとき、全体の一部と考えるでしょうし、また、「その含むものは全体か、それとも一部か」などと区別して考えることなどないであろうと思われます。少なくとも、そこら辺の町のおばちゃんに、そのようなことを尋ねようものなら、そんなこと聞かれてもと嫌な顔をされるだけであろうと思います。

さらには、v:folddashes をタグジャンプすると、eval.jax の1843行目に、

v:folddashes 'foldtext' 用。閉じた折り畳みのレベルを表すダッシュ。

と書かれていますし、また、原文 eval.txt の1894行目にも、

v:folddashes Used for 'foldtext': dashes representing foldlevel of a closed

と書かれています。この箇所に「含む」という言葉も、また、そのような意味も書かれていないので、くだんの fold.jax の505行目も、「含む」という訳語を削ってしまって、

v:folddashes 折畳レベルを表現したダッシュ(-)記号を含む文字列。

から、

「 v:folddashes 折畳レベルを表現したダッシュ(-)記号の文字列。」

に修正してはどうかと思っています。

なお、「いや、今回のような読み誤りというか愚かしい過ちというか、そういう過ちを犯すのは、オマエだけだ」と言われてしまったら、それでおしまいにはなってしまいます。

要するに修正に関する淡い期待です

なんだかんだで、ちょっとしたところの修正の提案といったところであります。

余談

余談ですが、この日本語マニュアルのおかげで、望んだスクリプトが書けそうです。

function! SetFoldtext_mycui()
  let lnums = v:foldend - v:foldstart + 1
  let str = getline(v:foldstart)
  if ('vim' == &filetype)
    return '+' . v:folddashes . ' ' . lnums . ' lines: ' . str . ' '
  elseif ('css' == &filetype)
    let str = matchstr(str, '\(^\/\*\+[^*]\)\@<=.*\([^*]\*\+\/$\)\@=')
    return '+' . v:folddashes . ' ' . lnums . ' lines: ' . str . ' '
  elseif ('markdown' == &filetype)
    return '+' . v:folddashes . ' : ' . str . ' '
  else
    return '+' . v:folddashes . ' ' . lnums . ' lines: ' . str . ' '
  endif
endfunction

set foldtext=SetFoldtext_mycui()

日本語マニュアルに対しては、感謝の念に堪えません。どれだけ助けられたか分からぬ程であります。

(2020-05-22 00:19)

提案の通り修正しても良いと思います:+1:

@k-takata どうですか?

contain とあったら、つい機械的に「含む」と訳してしまってたことが多い気がしますが、確かにその方がよさそうですね。

@Mizuki-Oonojou Pull Request出せますか?

@h-east さんへ

Pull Request 出します。本日よりローカルPCに git clone して修正に取りかかります。(提案を終えて、私の役目はすっかり終わったとばかり思っていました。)

今から、急いで取りかかります。(意思の疎通が取れていなかったような……。)

人生初の Pull Request です。GitHub Help を読みながら Workflow のとおりに進めます。(git は愛用しているのですが、GitHub は不慣れ。)

@h-east さんの想像より遅くなるかもしれません。否、すでに遅くなっているはずです。すいません。(事前に謝っておこう。)

Pull Request出せますか?

は...
(Pull Request出せそうなら出してみませんか?
No の場合はこちらで修正を反映させていただきます)

くらいの気持ちで書いたつもりでした。
ですので強制はしておりません。
負担になっているようでしたら、こちらで作業しますよ?

@h-east さんへ

Pull Request します、します。

(せっかくの git と GitHub です。これらのバージョン管理とホスティングサービスは、80年代90年代のプログラマやエンジニアの方々が、きっと夢にまで見た世界でありましょう。ですので、往時を偲びつつ、また、感慨にふけりながら取り組んでいきます。例えば、昔は5インチフロッピーだったなぁとか、ハードディスクは1GBもなかったよなあとか……。)

さて、本日は、フォークリポジトリと本流リポジトリの同期をとりました。

明日は、作業ブランチを作って、実際に修正に取りかかる予定です。

(2020-05-28 22:45)

@h-east さんへ

本日は、

  1. 作業ブランチを作りました。
  2. Vim 原文ファイルのリポジトリをクローンして、fold.txt をコピーしました。
$ cp /path/to/vim/runtime/doc/fold.txt en/fold.txt
$ git status
On branch fold-jax-on-issue-820
nothing to commit, working tree clean

原文の fold.txt に更新はないようです。

  1. 今日はここまででおしまい。

(2020-05-29 22:59)

@h-east さんへ

本日は、(と言っても日付はすでに変わっていますが、)

  1. くだんのとおり、fold.jax の505行目を修正しました。
  2. その作業ブランチをフォークリポジトリに push しました。
$ git push -u origin fold-jax-on-issue-820
Branch 'fold-jax-on-issue-820' set up to track remote branch 'fold-jax-on-issue-820' from 'origin'.
Everything up-to-date

明日から、いよいよ Pull Request です。

(2020-05-31 01:26)

Fixed via #831.