aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/content/docs
diff options
context:
space:
mode:
Diffstat (limited to 'src/content/docs')
-rw-r--r--src/content/docs/textlint-guide.mdx119
-rw-r--r--src/content/docs/whisper-to-ai-moji-okoshi.mdx8
2 files changed, 121 insertions, 6 deletions
diff --git a/src/content/docs/textlint-guide.mdx b/src/content/docs/textlint-guide.mdx
new file mode 100644
index 0000000..de90a1a
--- /dev/null
+++ b/src/content/docs/textlint-guide.mdx
@@ -0,0 +1,119 @@
+---
+title: textlintではじめる日本語文章校正
+description: Zedエディタ上で日本語の文章をリアルタイム校正する方法。textlintの導入からルール設定、自動修正までを解説します。
+---
+
+import { Steps, Aside } from '@astrojs/starlight/components';
+
+## textlint とは
+
+[textlint](https://textlint.github.io/) は日本語の自然言語テキスト向けのプラグイン可能な文章校正ツールです。ESLint のように、校正ルールを個別に追加・設定できるのが特長です。
+
+## できること
+
+- 誤字・脱字の検出
+- 表記ゆれの指摘(「例えば」→「たとえば」)
+- ら抜き言葉・い抜き言葉の検出
+- 冗長な表現の指摘
+- 一文の長さチェック
+- です・ます調とである調の混在チェック
+
+## セットアップ
+
+<Steps>
+1. Node.js 18 以上をインストール
+2. `textlint` とルールをプロジェクトにインストール
+
+```bash
+npm install --save-dev textlint @textlint/markdown
+npm install --save-dev @textlint-ja/no-synonyms ja-no-abusage ja-no-redundant-expression prh
+```
+
+3. `.textlintrc.json` を作成
+
+```json
+{
+ "plugins": {
+ "@textlint/markdown": true
+ },
+ "rules": {
+ "@textlint-ja/no-synonyms": true,
+ "ja-no-abusage": true,
+ "ja-no-redundant-expression": true,
+ "prh": {
+ "rulePaths": ["prh.yml"]
+ }
+ }
+}
+```
+
+4. `prh.yml` に独自ルールを定義(必要な場合)
+
+```yaml
+version: 1
+rules:
+ - expected: たとえば
+ pattern: 例えば
+ prh: 漢字で書かず、ひらがなで書くと読みやすくなります
+```
+
+</Steps>
+
+## エディタ連携
+
+### Zed
+
+本サイトでは、Zed 用のカスタム LSP サーバー `textlint-lsp` を開発しています。
+保存時に自動でlintが走り、波線で問題箇所を表示します。
+
+<Aside type="note">
+現在 `textlint-lsp` は開発中のため、npm では未公開です。
+公開準備が整い次第、`npm install -g textlint-lsp` で導入可能になる予定です。
+</Aside>
+
+### VSCode
+
+[textlint.vscode-textlint](https://marketplace.visualstudio.com/items?itemName=taichi.vscode-textlint) 拡張機能が利用できます。
+
+### CLI
+
+```bash
+npx textlint "**/*.md"
+```
+
+## コードアクション(自動修正)
+
+Zed 上では、波線の上で `Ctrl+.` を押すと以下の操作が可能です。
+
+| アクション | 内容 |
+|---|---|
+| 修正を適用 | textlint の自動修正候補を適用 |
+| 無効化:(ルール名) | 指定したルールをその行だけ無効化 |
+| 無効化: すべてのルール | その行以降の全ルールを無効化 |
+
+## 無効化コメント
+
+`.md` ファイルでは、HTMLコメント形式で記述します:
+
+- 特定のルールだけ無効化: `&lt;!-- textlint-disable prh --&gt;`
+- 再有効化: `&lt;!-- textlint-enable prh --&gt;`
+
+`.mdx` ファイル(Starlight / Astro)では、JSXコメントで囲みます:
+
+- 特定のルールだけ無効化: `{/* &lt;!-- textlint-disable prh --&gt; */}`
+- 再有効化: `{/* &lt;!-- textlint-enable prh --&gt; */}`
+
+## トラブルシューティング
+
+### MDX ファイルで `&lt;!-- --&gt;` がエラーになる
+
+MDX は `&lt;!-- --&gt;` を許可しません。代わりに `{/* &lt;!-- ... --&gt; */}` で囲んでください。
+
+### 誤検出が多い
+
+該当ルールを `.textlintrc.json` で `false` に設定するか、`prh.yml` で除外パターンを追加してください。
+
+### lint が重い
+
+`textlint-lsp` は保存時と、編集を止めてから 10 秒後に自動実行されます。
+それでも重い場合は、`didChange` 時の lint を無効にすることも可能です。
diff --git a/src/content/docs/whisper-to-ai-moji-okoshi.mdx b/src/content/docs/whisper-to-ai-moji-okoshi.mdx
index e133b64..be79d1b 100644
--- a/src/content/docs/whisper-to-ai-moji-okoshi.mdx
+++ b/src/content/docs/whisper-to-ai-moji-okoshi.mdx
@@ -142,11 +142,11 @@ Google Drive を開いたとき最初に表示される場所です。
<img src="/img/google-account-access.png" alt="アカウントアクセス" class="whisper-img" />
-**⑨ 実行すると、次の図のように進捗していきます。**
+実行すると、次の図のように進捗していきます。
<img src="/img/whisper-processing.png" alt="Whisperで文字起こし中の様子" class="whisper-img" />
-**⑩ 完了すると、最後にすべてを連結した文章が表示されます。**
+完了すると、最後にすべてを連結した文章が表示されます。
<img src="/img/whisper-finished.png" alt="文字起こし完了" class="whisper-img" />
@@ -263,10 +263,6 @@ Pro を一度契約すると1ヶ月間(最大100回分)使えます。なお
---
-参考までに、令和4年9月時点で私が約2時間の音声(約80MB)を文字起こしした際は、Pro で約33分で完了しました(ファイル転送時間を除く)。
-
----
-
:::caution
##### ⚠ 免責事項
本ページで紹介している方法・ツールの利用に関して、いかなる問題が生じた場合でも、安竹洋平及び本サイトは一切の責任を負いません。ご自身の判断と責任においてご利用ください。