-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
より一般的なルールに変更・追加 #6
Conversation
(ちょっとグローバルに入れないといけないのが面倒ですが)、technological-book-corpus-jaのコーパスでテストしてみました。
|
これとかは少し意味がおかしくなりそうなケースですね。 |
ご確認ありがとうございます. このPRの直接の影響は前者の 後者の |
あ、前者は問題なかったですね。
"実行" -> "する" だと、これ"オペレーションするした"ですが、fixはされないから平気か。 📝 明日もう一度チェックしてみます。 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
実際に既存の文章にルールを適応して、修正をやってみました。
大体は別の表現があったのですが、次のケースは"$1を実行"
が適当なんじゃないかなと思いました。
- {処理, プログラム, テスト}を実行する
- エラー例: refactor(textlint): textlint-rule-ja-no-redundant-expressionの検知を元に修正 asciidwango/js-primer#614 (comment)
という表現はvalidな感じがします。
("処理"は微妙なケースが多いけど)
{ソフトウェア, コマンド} は サ変接続 じゃないからセーフか。
preset-ja-technical-writing/ja-no-redundant-expression: "プログラムを実行"は冗長な表現です。"プログラムする"など簡潔な表現にすると文章が明瞭になります。参考: http://www.atmarkit.co.jp/ait/articles/1001/19/news106_2.html
/Users/azu/.ghq/github.com/asciidwango/js-primer/source/basic/read-eval-print/README.md:274:8
v
273.
274. 実行時エラーはプログラムを実行している最中に発生するエラーです。
275. 実行時(ランタイム)におきるエラーであるためランタイムエラーと呼ばれることもあります。
^
すこし迷うケース
- テストを実行する
"テスト(プログラム)を実行する"の省略に見える。
"テストをする"だと意味が違う感じになってしまう。
preset-ja-technical-writing/ja-no-redundant-expression: "テストを実行"は冗長な表現です。"テストする"など簡潔な表現にすると文章が明瞭になります。参考: http://www.atmarkit.co.jp/ait/articles/1001/19/news106_2.html
/Users/azu/.ghq/github.com/asciidwango/js-primer/source/use-case/nodecli/refactor-and-unittest/README.md:72:5
v
71.
72. ユニットテストを実行するには、Mochaが提供する`mocha`コマンドを使います。
73. Mochaをインストールした後、package.jsonの`scripts`プロパティを次のように記述します。
^
- "処理を行うX"を〜する
Async Functionとは非同期処理する関数を定義します。
とも言い換えはできるから、まあ大丈夫か。
preset-ja-technical-writing/ja-no-redundant-expression: "処理を行う"は冗長な表現です。"処理する"など簡潔な表現にすると文章が明瞭になります。参考: http://www.atmarkit.co.jp/ait/articles/1001/19/news106_2.html
/Users/azu/.ghq/github.com/asciidwango/js-primer/source/basic/async/README.md:1228:20
v
1227.
1228. Async Functionとは非同期処理を行う関数を定義する構文です。
1229. Async Functionは通常の関数とは異なり、必ず`Promise`インスタンスを返す関数を定義します。
^
サ変接続 だけど する にしにくい例外ルールを定義できるようにするとかですかね
@@ -253,20 +253,13 @@ module.exports = [ | |||
}, | |||
{ | |||
// https://azu.github.io/morpheme-match/?text=動作の(確認を行わなければ)ならない | |||
message: `"確認を行わなければ"は冗長な表現です。"確認しなければ"など簡潔な表現にすると文章が明瞭になります。`, | |||
message: `"$1を行う"は冗長な表現です。"$1する"など簡潔な表現にすると文章が明瞭になります。`, | |||
url: "http://www.atmarkit.co.jp/ait/articles/1001/19/news106_2.html", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
📝 メモ
https://www.mew.org/~kazu/doc/japanese.html
のほうが参考としてはわかりやすいかな。
複数URLを書ける仕組みを入れたほうがよさそう
後、mecabの特性的に半角の記号がサ変接続となるらしいです。 |
そうですね.コト(事態)ではなくモノ(物体)を指す場合は「〜を実行」でも問題なさそうですね. (「事態」か「物体」かどちらの用法であるかの判定は「事態性判別」というテーマで研究されています.
はい,簡易的には例外を指定できるようにするのがよさそうですね. |
どのようにオプション化するのがいいかはちょっと悩みどころですが、次の感じが愚直ですかね。
Example module.exports = [
{
id: "$1を実行",
message: `"$1を実行"は冗長な表現です。"$1する"など簡潔な表現にすると文章が明瞭になります。`,
url: "http://www.atmarkit.co.jp/ait/articles/1001/19/news106_2.html",
tokens: [
{
"pos": "名詞",
"pos_detail_1": "サ変接続",
"_capture": "$1"
},
{
"surface_form": "を",
"pos": "助詞",
"pos_detail_1": "格助詞",
"pos_detail_2": "一般",
"pos_detail_3": "*",
"conjugated_type": "*",
"conjugated_form": "*",
"basic_form": "を",
"reading": "ヲ",
"pronunciation": "ヲ"
},
{
"surface_form": "実行",
"pos": "名詞",
"pos_detail_1": "サ変接続",
"pos_detail_2": "*",
"pos_detail_3": "*",
"conjugated_type": "*",
"conjugated_form": "*",
"basic_form": "実行",
"reading": "ジッコウ",
"pronunciation": "ジッコー"
},
]
}
]
{
"rules": {
"ja-no-redundant-expression": {
"dictionary": {
"$1を行う": {
"disable": true
},
"$1を実行": {
"allow": ["ソフトウェア"] // 含まれているなら無視
}
}
}
}
} 現状の辞書自体は人によっては少しfalse positiveがありますが、辞書自体には問題ないのでこのままマージして、別PRで制御できる仕組みを追加するとかですかね。 |
#8 にIssueを分けたので、とりあえずマージします。 |
#7 の一部に対処しました. - "することを可能" - "することをできる" の検出を - "すること[助詞]可能" - "すること[助詞]できる" に拡充しました. またREADMEも修正しました. #6 と同様にtechnological-book-corpus-jaを使った[比較結果](https://gist.github.com/shirayu/0507909cb8b5f3b689d46fcd29b489e4)も添付します.
…614) * refactor(textlint): textlint-rule-ja-no-redundant-expressionの検知を元に修正 Refs: textlint-ja/textlint-rule-ja-no-redundant-expression#6 * refactor: "すること[助詞]できる"を修正 * refactor: 行う、実行する系の冗長な表現を修正 * fix(variable): fix lint * Update source/use-case/ajaxapp/display/README.md * Update source/use-case/ajaxapp/promise/README.md * Update source/basic/async/README.md * Update source/basic/async/README.md * Update source/basic/async/README.md * Update source/basic/class/README.md * Update source/basic/class/README.md * Update source/basic/class/README.md * Update source/basic/function-declaration/README.md * Update source/basic/read-eval-print/README.md * Update source/basic/string/README.md * Update source/basic/string/README.md * Update source/intro/feedback/README.md * Update source/basic/condition/README.md * Update source/basic/function-declaration/README.md * Update source/basic/implicit-coercion/README.md * Update source/basic/implicit-coercion/README.md * chore(textlint): デフォルトの設定に戻す * refactor: 細かい修正 * Update source/basic/function-scope/README.md * Update source/use-case/todoapp/event-model/README.md
リンク先の趣旨にのっとり,より多くの表現がマッチするように変更