3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

tex文章を推敲するためにtextlintを導入する (初心者向け)。

Last updated at Posted at 2021-12-04

texにlint 導入体験記

HCB Advent Calendar 2021
アドベントカレンダー4日目の記事になります。
急遽他の人が今日の記事を書けないと連絡してきたので、自分の出来合いの記事を4日目とします。

自己レビューや他人のドキュメントのレビュー・推敲時間を削減するために、textlintを導入しました。
導入のついでにtextlint (tex用) 導入の手順を記事として書きました。

目次

  • インストールコマンド
  • 文章校閲ルールの設定
  • 文章校閲 (textlintを動かす)
  • 表記ゆれ対策

インストールコマンド

以下のコマンドでtextlintとtexlintのルール(工業系用)、tex用のパッケージをインストールします。

mkdir newフォルダー名
cd newフォルダー名
npm init -y
npm install -D textlint
npm install --D textlint-rule-preset-ja-spacing textlint-rule-preset-ja-technical-writing
npm install textlint-plugin-latex2e

文章校閲ルールの設定

校閲用のルールをtextlintに設定していく。
まず以下のコマンドで設定ファイル(.textlintrc)を作成する

// newフォルダー名 (新しく作成したフォルダ) の中で操作 
npx textlint --init

ここまでで基本的な内容の校閲設定は終了しています。以下に自分用の追加設定を書いておきます。

{
  "filters": {},
  "rules": {
    "preset-ja-spacing": true,
    "preset-ja-technical-writing": {
      "ja-no-mixed-period": {
        "periodMark": "."
      },
      "ja-space-between-half-and-full-width": {
        "space": "always",
        "exceptPunctuation": true,
      },
      "max-ten": {
        "touten": ",",
        "kuten": "."
      }
    },
  },
  "plugins": [
    "latex2e"
  ]
}

文章校閲 (textlintを動かす)

以下のコマンドを実行する

npx textlint 推敲したい文章のファイル名

多分以下のような形で校閲結果を出力してくれます。

   56:12   ✓ error  一つ => 1つ
数量を表現し、数を数えられるものは算用数字を使用します。任意の数に置き換えても通用する語句がこれに該当します。  ja-technical-writing/arabic-kanji-numbers
   56:112  error    Line 56 sentence length(161) exceeds the maximum sentence length of 100.
Over 61 characters                                        ja-technical-writing/sentence-length
   56:177  error    一つの文で","を4つ以上使用しています
            ja-technical-writing/max-ten
   84:134  ✓ error  二つ => 2つ
数量を表現し、数を数えられるものは算用数字を使用します。任意の数に置き換えても通用する語句がこれに該当します。  ja-technical-writing/arabic-kanji-numbers
  135:95   ✓ error  一つ => 1つ
数量を表現し、数を数えられるものは算用数字を使用します。任意の数に置き換えても通用する語句がこれに該当します。  ja-technical-writing/arabic-kanji-numbers
  137:1    error    Line 137 sentence length(172, original:328) exceeds the maximum sentence length of 100.
Over 72 characters                         ja-technical-writing/sentence-length
  161:75   error    文末が"."で終わっていません。
            ja-no-mixed-period
  191:9    error    一文に二回以上利用されている助詞 "は" がみつかりました。

以上、メモ書きのようなものですが、textlint (tex用) の導入手順になります。

表記ゆれ対策

textlintを使った表記ゆれの対策方法を書きます。
以下のコマンドを実行します。

// newフォルダー名 (新しく作成したフォルダ) の中で操作 
npm install -D textlint-rule-prh
npx prh --init // prh.ymlファイルが作成される

以下のルールを追加 (.textlintrc内)

{
  "filters": {},
  "rules": {
    "preset-ja-spacing": true,
    "preset-ja-technical-writing": {
      ...
    },
// ----追加部分----
    "prh": {
      "rulePaths": [
        "./prh.yml" // パスはymlファイルに適宜合わせる
      ]
    }
// ----ここまで追加部分----
  },
  "plugins": [
    "latex2e"
  ]
}

作成されたprh.ymlに表記ゆれ校閲のためのルールを追加します。以下が自分が修正・追加した表記ゆれ校閲のルールです。設定した後は npx textlint ファイル名 で校閲できます。

rules:
  # patternには正規表現が利用可能
  - expected: ($1)
    pattern:  /(([\S]+))/
    specs:
      # 半角括弧を全角括弧へ
      - from: (そのとおり)
        to:   (そのとおり)

  - expected: 実施する or 取り組む or Aする
    patterns:
      - を行った
      - を行う
      - をする
      - をした
      - を行
      - 行う

  - expected: Web
    patterns:
      - WEB
      - web

最後に

明日のAddvent calendarは @QT21-004-2_HCB がハッカソンについての記事を書くので、是非そちらも見てください。 m ( _ _ ) m

3
0
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
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?