言語処理系やテキストエディタなどのプログラミングツールが好きなので,その周辺を趣味で触ってます.Vim を Wasm にポートするために Vim の実装を読んだりはしているのですが,フルスクラッチでテキストエディタをつくったことはありませんでした. 今年のお盆はめちゃ暑かったので,引きこもって夏休みの自由工作的に Rust でテキストエディタをつくっていたという話です.普段ターミナルで作業しているので,つくるのもターミナル向けテキストエディタです.最近 vim.wasm で C と TypeScript ばかりだったので,そろそろまた Rust か Go を書きたかったのですが,Go はすでに micro という良さそうなテキストエディタ実装があったので,Rust で書いてみることにしました. まずは Build Your Own Text Editor というガイドを利用して,1000行
Email Subscriptions are here! Get notified in your email when a new post is published to this blog We are beyond excited to announce Windows Terminal! Windows Terminal is a new, modern, fast, efficient, powerful, and productive terminal application for users of command-line tools and shells like Command Prompt, PowerShell, and WSL. https://aka.ms/terminal-video Windows Terminal will be delivered v
Get notified in your email when a new post is published to this blog One of the most frequent requests we receive is to increase the number of colors that the Windows Console can support. We love nothing more than to deliver features you ask for! But rather than just add a few more colors, or limit our console to a mere 256 colors, in Windows 10 Insiders Build #14931, we’ve updated the Windows Con
LTしてきた 勉強会に参加するよりひたすら家にこもってプルリ書いてるほうが好きなので去年はそういう生活をしていたけど、今年はもうちょっとアウトプットしようと年の始めに考えていた。そこで、とりあえず一発目としてhikarie.go #4というGoの勉強会でLTをした。 話したこと GoでCLIツール書くとwindowsでも動くことを期待されることがそこそこあり、かつwindowsだけは他のOSとはだいぶ実装方法が違うので辛いという話をした。使わないしよく知らないOSの実装が重たくて思い通り開発を進められないのは厳しい。甘えていてもいられないので、僕が普段書くCLIツールでwindows対応が必要でかつそういうAPIが提供されていると作りやすそうみたいなライブラリを書いた。 k0kubun/go-ansi k0kubun/go-keybind go-ansiがstdout側、go-keybin
What Is This? Mlterm is a multilingual terminal emulator on X11. See the man page and README for detail. Download The latest stable version 3.9.3 is released at 2023-04-01. Source and release note Other Resources GitHub repository SF.net Project Page SF.JP Project Page Mailing Lists: mlterm-dev-en in English language and mlterm-dev-ja in Japanese language. README.ja for Japanese. Supported control
リンク 資料 Sixel Graphics復活への動き - Togetterまとめ http://togetter.com/li/375434 Sixel グラフィックス - VT100.net: VT330/VT340 プログラマーリファレンスマニュアル https://github.com/fumiyas/translation-ja/blob/master/vt3xx-sixel.md All About SIXELs ftp://ftp.cs.utk.edu/pub/shuford/terminal/all_about_sixels.txt Displaying Sixel Image Files http://rullf2.xs4all.nl/sg/doc.html ハウツーなど OS X Mavericksにmltermとlibsixelをインストールして端末で画像を表示する
先日 ターミナル操作の記録(ttyrec)からGIFアニメを生成するツールを作った - すぎゃーんメモ を書いたところ、思っていた以上に反響があって。 自分的にも結構便利だなーと思っていたのだけど、 ttygifとその系列、端末マニアではない人の95%くらいのユースケースでは端末に依存するシーケンスとか流さないだろうし、色とかが微妙に違ってもそこが主眼じゃないと思うので、単純に内部に端末を持ってダイレクトにGIFを吐ければ良くて、いちいちスクリーンショト取るの筋悪ではないの? 2014-07-24 21:45:33 via Twitter Web Client という意見をいただいて。うーん 確かに、と。 C版 で、はやくもそういうのを実現するものが作られました。すごい。 https://github.com/saitoha/seq2gif こんなカンジで使える。 エスケープシーケンスの処
Geckoベースのユーザーインターフェース (HTML Canvas + XUL)。柔軟でカスタマイズが容易です。 マルチプラットフォーム。現在サポートされるのは、Mac / FreeBSD / Linux(というかUbuntu) / Windows(XP/Vista/7) + Cygwin環境 (POSIX版Pythonが必要) プラグインアーキテクチャ。プラグアンドプレイでのインストール・アンインストールが可能。 ブラウザを再起動したり閉じたりしている間、ターミナルセッションを保持します。 サスペンドしたセッションに後から再接続できます。 デバッガ内臓。ステップ実行やトレースができます。 ターミナルとアプリケーションがやり取りするI/Oシーケンスをリアルタイムで観察できます。 スクロールバック、代替スクリーン、ビジュアルベル、オーディオベルなど基本的な機能はサポートしています。 IME
端末上で動作するマインスイーパーをCommonLisp(SBCL)で実装してみた。 github: cl-mine-0.0.2 端末操作 端末操作部分のソースコードは以下のような感じ。 基本的には端末のエスケープシーケンスで(カーソル移動や画面クリア、文字色等の)制御を行っている。 ただ、キー入力をリアルタイムで取得可能にするのはエスケープシーケンスでは無理そうだったので、その部分はtcsetattr等のシステムコール(?)を使用している。 (defpackage console (:use :common-lisp :sb-alien) (:shadow :common-lisp format) (:export with-raw-mode clear move set-pos format newline formatln style)) (in-package :console) ;
Nyancat Telnet Server As with nearly everything I make, this is open source (NCSA license) and available on github (klange). You can also follow me on Twitter (@kevinlange). Watch Nyancat on a VT220 This is an animated, color, ANSI-text telnet server that renders a loop of the classic Nyancat animation. Open up a supported terminal^ and run: telnet miku.acm.uiuc.edu Or you can click here on some b
これはターミナルマルチプレクサ Advent Calendarの1日目です。 ターミナルマルチプレクサとは何か ターミナルマルチプレクサとは、誤解を恐れずに言えばCUI版ウィンドウマネージャのようなものです。 1つのターミナル上に仮想のターミナルを複数表示したり、複数の端末から1つのターミナルを共有することができます。 具体的なソフトウェアとしてはGNU Screen、tmuxなどが該当します。 詳しくはググってください。 スクリーンショット こちらはtmuxのスクリーンショットです。 画面いっぱいに1つのX端末を開いているのですが、tmuxの機能で画面を3分割しています。 左側に表示されているのはCUIベースのIRCクライアント(weechat)、右上はtmuxのmanページ、右下は通常のターミナルです。 一番下に緑色で表示されている部分はtmuxのステータスバーです。開いているウィンド
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く