fcitx5-skk+FirefoxでScrapboxやGoogle Docsなどの変換確定直後の子音が落ちるときはpreeditを切ると良い

3行まとめ

  • fcitx5-skkFirefoxの組み合わせで一部のページでの変換の挙動がおかしい
  • 例えば Kousatu suruが「考察うる」となるように子音が落ちる
  • preeditを無効にすると変換の挙動が意図通りになる

症状

fcitx5-skkとFirefox121.0を組み合わせた状況で、ScrapboxGoogle Docsなどに入力すると、変換確定後の子音が欠落していまいます。 これだけだと分かりにくいので例を上げます。

例えばScrapboxGoogle Docsで「考察する」と入力するときは"Kousatu suru"と入力しますが、実際には「考察うる」と変換されてしまいます。

おそらくですが、Fcitx5-skkのデフォルト設定だと「▽こうさつ」と入力した直後のsを入力したタイミングで考察と確定してしまい、その直後の「す」を入力するためのsが欠落してしまうからであるかと思います。

Scrapboxの検索欄やブラウザのアドレスバー、はてなブログの編集画面などではこのようなことは発生しません。<input>タグだと何も問題ないのではと考えています。

またこの症状はChromeでは発生しません。

解決策

このようなことをツイートしていたらfcitxのメインコントリビュータの@CSSlayerさんに解決策を教えてもらえました。

確かにpreeditを無効にすると子音が落ちることなく、意図通りに変換ができます。

なのでpreeditを恒常的に無効にすることとしました。 fcitx5-config-toolを開いて、Global Options -> Behavior -> Show preedit in appllicationのチェックを外すとpreeditを無効にできます。

Fcitx5 configurationのpreeditを無効にするチェックボックス

おわりに

@CSSlayerさんありがとうございました。

音楽サブスクサービスをより便利に使うための外部サービスn選

お約束

大幅に遅刻していますがUEC Advent Calendar 2023 - Adventarの記事を書いていきます。

adventar.org

この記事はUEC Advent Calendar 2023 19日目の記事です。今これを書いているのは25日です。何とかしてクリスマスが終わる前に書ききります。

18日目の記事はつまみさんの菅平セミナーハウスを使って旅行した話でした。菅平楽しかったですね。途中離脱したのが悔しい。

また20日目の記事はまどさんのホロライブEN(を使った英語学習)の布教でした。英語のスラングとかは受験とかでは使わないから推しの力を使うと良さそう。

続きを読む

GitHub AppsのToken作成Actionが公式から出たので乗り換えるときの注意点

はじめに

GitHub ActionsでGitHub Appsを使うときには登録時に入手できるApp IDとsecret keyから一時的に使用できるトークンを発行する必要があります。

このトークンはGitHubが用意しているRest APIやGraphQL APIに対してリクエストすることによって入手することができます*1が、いちいちAPIを叩く準備をするのは面倒なので個人が作成したActionであるtibdex/github-app-tokenやSentryが提供しているActionであるgetsentry/action-github-app-tokenを使うことによって楽をすることができました。

今まで非公式なActionに依存していたトークン生成ですが、GitHubが公式でAppsトークンを作成するActionであるactions/create-github-app-tokenを提供するようになったので公式のActionへ依存先を切り替えられるようになりました。 実際、GitHubのドキュメントでは今までtibdex/github-app-tokenを使う手順が紹介されていましたが、actions/create-github-app-tokenを使うように変更*2されています。

docs.github.com

しかし乗り換えるにあたって注意事項がいくつかあったので紹介します。

今回はGitHub Appsが何かについてはスコープ外とします。以下の記事で詳しく説明されているので参考にしてみてください。

zenn.dev

注意事項

1. Optionalな引数を追加で渡さないと、WorkFlowが動いているリポジトリの外にアクセスできない

# https://github.com/actions/create-github-app-token#create-a-token-for-the-current-repository
    steps:
      - uses: actions/create-github-app-token@v1
        id: app-token
        with:
          app-id: ${{ vars.APP_ID }}
          private-key: ${{ secrets.PRIVATE_KEY }}

READMEには上のような例が記載されています。この例には "Create a token for the current repository"というタイトルがついている通りWorkFlowが動いているリポジトリのみにアクセスできるトークンが発行されます。

tibdex/github-app-tokenはデフォルトではGitHub Appsがアクセスできるすべてのリポジトリ*3にアクセスすることができます。またgetsentry/action-github-app-tokenはアクセスできるRepositoryを制限できず、すべてのリポジトリにアクセスできるトークンのみが発行できます。

Git Submodulesを使用しているなどの場合はOptionalな引数であるrepositoriesを指定する必要があるので注意が必要です。

トークンがアクセスできるリポジトリを絞りやすくなって良いですね。

2. 必須引数が既存のActionそのままだとdeprecated

tibdex/github-app-tokenやgetsentry/action-github-app-tokenは必須パラメータであるAppIDとPrivateKeyをそれぞれキーをapp_idprivate_keyとして指定します。

# https://github.com/getsentry/action-github-app-token#usage
  - name: my-app-install token
    id: my-app
    uses: getsentry/action-github-app-token@v2
    with:
      app_id: ${{ secrets.APP_ID }}
      private_key: ${{ secrets.APP_PRIVATE_KEY }}

しかしactions/create-github-app-tokenではスネークケースで指定するapp_id, private_keyはdeprecated扱いとなっていて、かわりにケバブケースでapp-id, private-keyと表記することを求められています。

使えはしますが、いちいちWarningが出るのも面倒なので直しておきましょう。

まとめ

GitHub AppsをGitHub Actionsで使うツールをActions公式が新しく出してきたので乗り換えるときの注意点をまとめました。

GitHubのドキュメントでも紹介されているActionなので、GitHub AppsをGitHub Actionsで使っている人はぜひ移行を検討してみてください。

*1:https://docs.github.com/en/apps/creating-github-apps/authenticating-with-a-github-app/authenticating-as-a-github-app-installation

*2:変更があったコミット https://github.com/github/docs/commit/a07fc6cf5f74b3f843319aa6a504db193fc379d7

*3:Appsのインストール時にすべてのリポジトリにアクセスできるようにしたのであれば文字通りすべてのリポジトリにアクセスできるようになる。特定のリポジトリを選択してインストールした場合は、その特定のリポジトリすべてにアクセスできるようになる。

BuildJetはRyzen 9 5950Xでカスタムランナーをホストしている

はじめに

BuildJetはサーバ用CPUではなくゲーム用CPUを使うことによりシングルコア性能を上げているとアピール*1しています。

実際にはどのCPUを使っているのか調べました。

続きを読む