Upgrade to Pro — share decks privately, control downloads, hide ads and more …

let-me-edit-with-editor

wtnabe
August 17, 2019

 let-me-edit-with-editor

Kanazawa.rb meetup #84 で発表した「エディタでエディットしたい」です。

wtnabe

August 17, 2019
Tweet

More Decks by wtnabe

Other Decks in Technology

Transcript

  1. エディタでエディットしたい
    @wtnabe
    Kanazawa.rb meetup #84
    2019-08-17 (Sat) at ITBP
    武蔵

    View Slide

  2. お品書き
    問題意識
    ブラウザ +
    エディタの歴史
    最近の問題
    最近の死亡例
    解決策
    デメリット

    View Slide

  3. 問題意識
    ブラウザベースで長文の編集を強いられている
    pull-req, Wiki,
    ブログ
    Web
    サイト側の工夫は分かるが、正直きつい
    ブウラザではなく普段使いのエディタで書きたい

    View Slide

  4. 歴史
    ブラウザとエディタの組み合わせ方の話

    View Slide

  5. 手作業でコピペ
    これは今でも使える
    コピペ忘れやコピペの方向ミスったら死亡

    View Slide

  6. エディタ内部でブラウザを動かす
    Emacs-w3m |
    現代的かつ完全装備で安全なEmacs

    ンターネットブラウザ(2018)
    なんと現役!
    でも最近のサイトは JavaScript
    前提だし…

    View Slide

  7. ブラウザ拡張が外部コマンドを起動
    It's All Text
    da zilla/ refox-viewsourcewith
    Windows
    固有だともっとあると思うけど分かんない

    View Slide

  8. ブラウザ拡張と外部のホストの連携
    セキュリティポリシーの変更 ( after Chrome )
    で直接起動不可
    Edit with Emacs
    エディタ内部で HTTP
    を喋る
    GhostText
    拡張側もサーバ / WebSocket
    で低遅延同期
    withExEditor
    Native Messaging Host
    方式
    要Node.js 10+

    View Slide

  9. 最近の問題
    Web
    アプリが
    を使っていない
    モダン化、高機能化を拡張でカバーしきれない
    Edit With Emacs
    や GhostText
    は真っ白か
    HTML
    タグ丸ごとに
    withExEditor
    は頑張ってるが…

    View Slide

  10. 最近の死亡事例
    esa
    新UI ( v2 beta )
    少なくともキャレットの位置で内容が増える
    複数人のキャレット位置を保持して履歴を扱え
    る機能が邪魔してるみたい
    Simplenote
    新UI ( 2019-08-13
    リリース )
    改行が増える
    Web UI
    が固まる

    View Slide

  11. GitHub
    はまだ大丈夫!
    頑張れGitHub !!

    View Slide

  12. 解決策
    エディタを API
    クライアントにする
    emacs-w3m
    を API
    ベースにするイメージ
    alpha22jp/simplenote2.el
    nabinno/esa.el
    masutaka/emacs-helm-esa
    Google Docs
    はもともとエディタで編集してなかった
    けど同じ理屈でイケそう

    View Slide

  13. デメリット
    credentials
    を保持する人が増える
    エディタ側で OS
    や 3rd party
    の password
    manager
    と連携できるとよさそう

    View Slide

  14. まとめ
    プラットフォームを強いものに寄せておくべし
    エディタは拡張対応できるもの
    サービスもAPI
    が提供されているもの
    これでエディタをAPI
    対応すればまだイケる!

    View Slide