- Published on
HackMDで記事作成
HackMDで記事作成
HackMDをつかって記事を作成するテスト
これにより、iPadでも無料で記事作成/編集等ができる
HackMDとは
Markdownをオンラインで編集できるクラウドサービス。NotionのMarkdown版という例えがちょうどよさそう
共同編集なども簡単にできて、フリープランでも画像のアップロード(パブリック限定)ができるなど、結構触りごこちがよい
前提条件
Contentlayer+GitHubで記事の管理をしている
このブログはVercelでGitHubへのコミットをもとにデプロイしているが、HackMDによるコミットではデプロイを発火できないため、マージコミットを手動作成するための別ブランチを用意しておく
リリースPR作成用のGitHub Actionsを設定するなどしておくと、このあたりが楽になるかもしれない
手順
HackMDでユーザー登録をし、設定から[他のサービス許可]→[GitHubと連携する]
新規メモを作成
デフォルトのHackMDの改行に対する扱いが本来のMarkdownと違っているため、編集エリアの下部にある[改行]ボタンをクリックして[Rendar newline as hard line breaks]をオフにする
行末に半角スペースを2つ入力すると改行のアイコンが出るため扱いやすい
あるいは、contentlayer側で改行を変換する処理を加えてもよい画面右上の[Share]から[閲覧可能]を全員に変更する
画像をアップロードする場合は、この設定が必要になる画面右上のメニューから[バージョンをGitHubと同期]を選択
リポジトリ、ブランチを選択し、保存先ファイル(ない場合はパスを入力して新規作成)を選択してプッシュする
ここで、コミット時のVercelデプロイを発火させたい場合は事前に作成した別ブランチを選択し、プッシュ後にGitHubアプリ等からデプロイ用ブランチへとマージを行う
制約
無料プランだと月間20pushまでしかできない
iPadで外部キーボードを接続して編集する場合、とくにプレビューを有効にしていると入力ができなくなることがある
このときは一度プレビュー画面をタップorクリックして、再度編集画面をクリックすると再度入力が可能になる
おまけ
GitHub Actionsで自動的にPRを作成するようにしておくと、iPadでの編集時にマージ作業が楽になる
以下はそのサンプル
name: Create Pull Request from `posts` to `main`
on:
push:
branches:
- posts
jobs:
create_pull_request:
runs-on: ubuntu-latest
steps:
- name: Checkout the repository
uses: actions/checkout@v4
- name: Check for existing pull requests
id: check_pr
env:
GH_TOKEN: ${{ github.token }}
run: |
echo "pr_count=$(gh pr list --base main --head posts --json number --jq '. | length')" >> "$GITHUB_OUTPUT"
- name: Create pull request if none exists
if: steps.check_pr.outputs.pr_count == '0'
env:
GH_TOKEN: ${{ github.token }}
run: |
gh pr create --title "Merge posts into main" --body "Automatically created pull request to merge \`posts\` into \`main\`." --base main --head posts