Skip to content

Instantly share code, notes, and snippets.

View kuuote's full-sized avatar
🙃
I may be slow to respond.

kuuote

🙃
I may be slow to respond.
View GitHub Profile

にっき

  • vim-jp見てたらローカルLLMと向き合う会というDiscordサーバーへの言及があったから入ってみてた
    • AIの仕組み(上辺の概念)にそれなりに詳しくなってきた気がする
  • vim-jpでピアノの9度とか10度きつすぎるf**k(意訳)みたいなこと言ってて押せねーよという写真を貼ってたら写った電子ピアノを見て同じの持ってるかもという話になって驚いてた
    • KORGのSP-250というやつなんだが、本当に同じのだった
      • 何も知らないので値段と謳い文句で選んだんだけど今になって思えばいい選択だったと思う

にっき

  • VimConfのProposal提出期限だった
    • おれは夏休みの宿題を最終日に無理やりやって破綻する愚かな人間…
      • 最終日にも関わらず出力の上で0%しか完成していなかったのはバカ
    • というわけで草案は頭の中にあったので頑張って練って出力した
    • たけてぃからこんなの喋ったらどう?みたいに提案された物があったのでそれをベースにした
      • VimをIMEとして扱う方法とそのメリデメ
    • 自作したシステムでVimの外の入力を賄ってる人なんてそうそうおらんやろということでユニークさには自信があった
    • 3年近くこの方式でvim-jpやってるし最近はAIに投げ付けるプロンプトも全部これで書いているので有用性には自信があった
    • 内容には自信があったものの、プロポーザルを読む側や聴衆の立場で考えたらこれだけ聞きたいか?という疑問が生まれたので、そもそもなんでVimからのコピペをやってるの?チャットするためだよね?となってVimを使って文章作成をアシストする話をしたらいいと思い至った

常に日本語で応答してください

これはDenoのプロジェクトです deno test -A でテストできます

Assists text writing anywhere

Abstract

近年、生成AIの台頭により文章を書くことの重要性が日々増しています。そこでこの発表ではVimの豊富な編集機能が文章を書くのに適していること、カスタマイズすることでより執筆を楽しめることを実際に私がやっていることと共にお話した後、私がやってるVimの外にテキストを素早く持ち出す方法をお伝えしようと思います。 In recent years, the rise of generative AI has only heightened the importance of writing skills. In this presentation, I'll explain how Vim's rich editing features make it particularly suitable for writing, and how customization can enhance your writing experience. I'll demonstrate this with practical examples from my own workflow, then share my method for quickly exporting text outside of Vim.

Pitch

発表者について

  • ddskk(Emacs),eskk.vim,skkeletonと長いことテキストエディタ内で動くSKKエンジンを使って日本語入力を行っており、テキストエディタ内で文章を入力することに慣れ親しんでいます
  • skkeletonのメンテナンスも行っています。最近補完部分に機能追加しました

にっき

  • skkeletonの内部ハンドリング関数を公開APIに変えた
    • 後付けで公開API増やすのはかなり神経を使うのでなるべくすべきではないという学びになった
    • というかユーザーにこの手の操作をやらせるのが早期に視野に入っていたのでとっととそれ前提の設計をすべきだった
  • ピアノ演奏晒したらスケールとアルペジオちゃんとやった方がいいとの指摘を頂いたので真面目にやろうと思ってる
    • 前もどこかに書いた気がするけど最近基礎練習の重要性を理解してきた。好きな曲ばかり弾いてると技術が偏るので上手くなりたいなら機械的な基礎練習をやった方がいい

にっき

  • skkeletonに送りあり変換の補完ソースを追加した
    • 送り仮名が難しすぎるという話をengineer’s paradiseのIMEチャンネルで聞いて、試作したやつがあったから貼ってみたらいい反応を貰えたので本腰入れて組み込んでみた
    • skkeletonに候補取得用のAPIを生やした上で既に用意していたソースをそれ使うように書き換えて辞書登録を行うように変更を加えた
    • Gemini CLI使ってみていたので一部やらせてみたりしていた
      • 候補を取得してmapしてる所をdenops dispatchに書き換えるように頼んだらちゃんと書いてくれた上でPromise.allに直してくれた。forにしてと頼んだらそれも綺麗にやってくれた。この手のタスクは得意らしい
        • 細かい所は手で買いた方が早いので併用していた
      • importの修正を頼んだら失敗したりしなかったりしたので上手く行った所だけ採用した
      • 辞書登録のためのデータを追加ために型の定義を書かせたら余計なことばかりしていたので諦めて上手く行った所だけ採用して手書きした
        • 型は人類には早すぎると思うんだが、AIにも早いらしい

にっき

  • 今日もyakの毛が長い
    • tombi試したい
    • 手元で普通にビルドできない(Nixだと必要無いのでCコンパイラとか入ってない)のでcrate2nix通す
    • nvim-lspのローカル環境を構築するのにexrc使いたかったけど動かなかったのでvim-localrcで vim.secure.read() 叩くコード書いていた
    • 折角書いたので晒そうとしたらコピペできなくてVIMEで使ってたスクリプトの不備に気付く
      • wl-copy はデフォルトで中身をHTMLかなんかとして解釈するので <script> (Vim scriptだとexpandでスクリプトのファイル名に展開される)が含まれてると爆死する
      • --type text/plain を引数に与えることで解決
  • 手を動かさずに夢語りだけしてるの楽しすぎる
    • 昔作ったLispの継続の実装取り出して無駄が多いよねみたいな話をしてた

にっき

  • 魚介だしカレーのカップヌードル食べたけど、うどん屋で出てくるカレーの味がした
  • 久々にNixの設定いじってたけど、腐りにくい設定になったなーと思ってた
    • home-managerの自分用最小構成を作った。初めてのimpure
  • 図書館でピアノの弾き方のコツみたいな本を読んでた。以下のことはすぐにできそうなのでやってみようと思った
    • 手を付いた状態から特定の指を上げる練習
    • 鍵盤を見ずに弾く練習
    • 楽譜を読む訓練

にっき

  • 事実だけ書いても書けないので適当にやっていくことにした
  • Nikolai Kapustinの曲にドハマりしたのだけどピアノで弾くのには難しすぎて今の所最大限楽しめない、むねん
  • どうも鍵盤に1人向き合うのにあまり向いてないらしく強烈な孤独感を覚えることが多いのでなんとかしたい今日このごろ
    • 独学に挫折する人が多いのは案外こういう所があると思ってる
    • 興奮状態に持っていくと誤魔化せるのは分かってるけど、まあ長続きしないので…