Ferrite v0.2.7 日本語化 Ferrite は、Rust 言語と egui フレームワークを用いて構築された、次世代の超軽量 Markdown エディタです。 最大の特徴は、Rust 特有の高いパフォーマンスを活かした「速さ」にあります。多くのモダンなエディタが採用している Electron(Web技術)を使用せず、ネイティブに動作するため、瞬時の起動と軽快なタイピング体験を実現しています。 さらに、技術文書に欠かせない Mermaid ダイアグラムのレンダリングも Rust でネイティブ実装されており、外部ライブラリに頼ることなく、フローチャートやグラフを高速に描画します。 「多機能すぎて重いツールよりも、シンプルで道具として研ぎ澄まされたエディタが欲しい」というユーザーにとって、Ferrite は非常に魅力的な選択肢となるはずです。 - = - = - = - = - =
現時点ではほぼダメです。試した中では唯一 conrod だけ日本語アプリを作る実用に耐えられそうです。 crate 日本語表示 日本語入力 コピペ UI部品の見栄え その他 conrod ○TTF可 ◎自然にできる ◎自然にできる ∞ 作り込み次第 vulkan対応で軽快, GL版だともっさり気味 druid ◎システム可、TTF可 ✘無理 △事実上無理 △ぼちぼち フォント回りや2Dドロー回りはたぶん界隈では最強 OrbTk ○TTF可 ✘無理 ✘無理 ○まあまあ 開発は活発なので続けばよくなるかも azul ○システム可 ✘無理 ✘無理 △ぼちぼち exampleにも動作しない機能、壊れた機能が多い。開発が不活性化していて事実上終了かも 日本語表示の(システム可)はシステムフォントを名前で指定すれば使えるものです。使えないものはフォントファイルをバイナリーで直接ロードする仕組みになって
TauriはRustで書かれた軽量なGUIフレームワークで、Windows、macOS、Linux向けのデスクトップアプリを開発できます。2022年6月に最初の安定版であるバージョン1.0がリリースされました。 Tauriでは、メインプロセスはRustで記述しますが、UI(User Interface)にはWeb技術を利用します。ReactやVue.jsのようなJavaScriptフレームワークがそのまま使えるので、インタラクティブで見栄えの良いUIを簡単に構築できます。同種のフレームワークにElectronがありますが、後発であるTauriにはインストーラのサイズを小さくできるなどの強みがあります。 Tauriのロゴは、おうし座の二重星であるシータタウリ(θ Tauri)をモチーフ[1]にしており、Webとネイティブアプリの相互作用を意味しています。 図1 Tauriロゴ 本稿では、Ta
RustのGUIライブラリとその中でのgtk-rsの位置付け 今現在、RustでGUIアプリケーションを開発するためのライブラリ/フレームワークは多種多様です。 突出して優れたものがあるわけでもなく、これを使えば間違いないと言えるものはありません。このような状況では、何を使えばいいか見当がつきませんが、それでもやりたいことから多少の取捨選択はできます。 百家争鳴のライブラリ群から類型をみると、大きく分けて自前スタックのタイプと既存のライブラリのバインディングになっているものがあります。 自前スタックのタイプはウィンドウ内のボタンといったウィジェットなども含めてすべて自前で実装しているものです。icedやeguiなどがあります。これらを基礎づけているのがwinitというライブラリで、ウィンドウを作る部分を担当しています。winitはRustの対応プラットフォームの多さを活かして、デスクトップ
Rust グラフィックス: winit 編 winit クレートは、アプリケーションウインドウとイベントループを管理する。 GUI アプリケーションやゲームで利用されることを想定して、開発が進められている。 読み方は紹介されていないが、多分「だぶりゅー いにっと」ではないか(それか「ういん いっと」)。 主な役割は次の 4 つ。 イベントキューを生成する キューから取り出したイベントを、対応するコードブロックにふり分ける アプリケーションウインドウを生成する ウインドウへ描画するためのハンドルを保持/提供する winit クレートは、これらをうまく抽象化した、マルチプラットフォームな API を提供する。 Windows、macOS、Unix(X11、Wayland)、Android、iOS、WebAssembly(canvas) がサポートターゲットとして列挙されている[1]。 OS や
Rust の GUI クレートは全体的にまだまだ発展途上で決定版がない状況ではあるものの、 egui が良い感じに進歩しているので、基本的な使い方を書いてみる。 egui の概要と特徴 egui は書き方も見た目も使い勝手も独特なGUIライブラリ。名前の読み方は「エグーイ」だと思う。Emil氏がやっているので。 特徴を知るためにはとりあえずWebブラウザで動くサンプルを触ってみるのが良い。 とにかくクセがすごい。ウィンドウ内のウィンドウなんて今日日見かけないものが普通に存在している。 でも豊富なウィジェットがあるので、それなりに使えそうな感触もあるかとも思う。 egui の特徴をざっくりと列挙してみると、以下のような感じ。 動作もビルドも速い。 色々な環境で動く。上記サンプルみたいにWASMでも動く。 即時モードを採用している。(詳細は後述) ネイティブのような見た目や、複雑なレイアウトは
この記事は Rust Advent Calendar 2023 シリーズ2 の1日目の記事である。 Rustは良くも悪くもシステムプログラミング言語なので、何も工夫しなければデバッグの体験がC言語と同じレベルになってしまう。例えば「rust lldb」でググると上位に Debugging Rust programs with LLDB is a nightmare というスレッドが出てきてしまう。 使うべきツールを知っていれば幾分かマシな体験にできる。Rustコンパイラはデバッガとして LLDB, GDB, WinDbg/CDB をサポート していて、僕はWinDbGは10年くらい触ってないので、この記事ではLLDBとGDBについて書く。 LLDB Apple SiliconのMacだとGDBが使えないので、必然的にLLDBを使うことになる。 CodeLLDB GDBと同じく、LLDBにも
ちょっと思い立ってRustを勉強するかと取り組み始めたもののデバッグ環境構築で手こずった件の覚書。 作業ディレクトリをユーザードキュメント以下ではない任意の場所に配置した際にCodeLLDBでのデバッグ起動がうまくできなかった。 ひとまず期待した状態にはなったので記録しておく。 もっと調べると正規の作法がありそう。検索するにもキーワードをうまく用意できず…。EdgeのCopilotあたりを使うにしても自分の指示能力が低くて嫌になる。 症状 CodeLLDBを使ったデバッグ起動ができない。ビルドまでは行ってくれる。 試した ./vscode/launch.json への記述はよく見かける記事のようにcargoエントリを使った指定。 Launching a New Process @ codelldb/MANUAL.md なおプロジェクトがユーザーディレクトリの Documents 以下にある
はじめに 本記事執筆者の@y-428です! さくっと経歴について記述しておきます! 情報系大学4年生 組み込み系・Webアプリケーション系・VR系について学習しています とまあまだまだ超若造なので本記事についても温かく見守っていただけると幸いです! もし記事が良ければいいねなんかもしていただくと今後の励みになります ではでは早速やっていきましょう~ OS 今回Rustの環境を構築するための執筆者のOSはwin11(バージョン 23H2)です 環境構築までの流れ 今回はVisual Studio Code(VSCode)でRustの環境を構築していきますが、流れとしては以下のようになります! Microsoft C++ Build Toolsのインストール Rust のインストール VSCode のインストール 拡張機能のrust-analyzerをインストール 拡張機能のCodeLLDBを
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く