Humanity

Edit the world by your favorite way

Vim

Vim script に ECMAScript の Observable がほしい

タイトルは前記事からの流用。 最近 Vim script で Java 8 の Stream API を実装する、ということをしている。 tyru.hatenablog.com github.com Vim 8 でも lambda が入ったので、メソッドチェインでどんどん処理を繋げるスタイルの書き方ができると嬉しいと…

Vim script に Java 8 の Stream API がほしい

Vim

ので作ってる。この記事も PR も絶賛更新中。 github.com 一言で言うと underscore.vim + Data.LazyList 的なものがほしかった。 Twitter でぼやいた時の会話。 vital.vim の Data.List って、名前からだと https://t.co/423dfKhtl4([1,2,3,4,5]).filter({x …

はてなブログの記事をブログ間で移動させたかったから MovableType 形式のファイル用の Vim 折り畳みプラグイン作った

Vim

github.com 使用方法 珍しく GIF アニメ作ったのでそれで察してください。 はてなブログでエクスポートした記事のテキストファイル(MovableType 形式)に折り畳みを付けるだけのプラグインです。 インターフェースは MovableTypeFoldToggle コマンドしかあ…

Vim のマッピングで Fizzbuzz 問題を解く

Vim

この記事は Vim Advent Calendar 2016 19日目の記事です。 締め切りがない世界に行きたいと言いつつ、締め切りがなければ何もしないニート根性の tyru です。メリークリスマス!!(錯乱) (レジスタ編) Fizzbuzz 問題のコード 以前私はこんなコードを Gist に…

ミニマリストな Vimmer におすすめしたい履歴管理プラグイン oldfilesearch.vim

Vim

この記事は Vim Advent Calendar 2016 (その2) の 4 日目の記事です。 追記:oldfilesearch.vim のリポジトリへのリンクを貼り忘れていたので追記しました。 履歴管理プラグインへの懸念 履歴管理プラグインには様々なものがあります。 例えば MRU.vim であ…

私、普通のVimmerに戻ります

Vim

頭のおかしいいつも通りのヨタ話です。半分ネタです。 もう限界です。 プラグインを入れたり作ったりしてプラグインが増えていき、気が付くと Core i3 4130 3.4 GHz, メモリ 16G の PC にもかかわらず Vim が起動するまで3秒ぐらい掛かるようになってしまい…

MSYS2 での Vim のビルド

Vim

「TODO」の lua.exe が実行できない件は解決してないけどまぁとりあえず実害は出てないし何より解決するやる気が無くなってしまったので公開。 # Lua のインストール curl -O http://www.lua.org/ftp/lua-5.3.2.tar.gz pacman -S tar tar xzf lua-5.3.2.tar.…

Vim script での依存ライブラリのバージョン管理について (vital.vim が生まれた経緯とこれまでのあらすじ)

Vim

何となく自分の考えを整理するためにつらつら書いた。 Vim プラグイン開発者にとっては目新しい情報はないかもしれないけど、vital.vim の最近の動向を知りたい人や、これから Vim プラグイン作りたい人にとっては有用かもしれないと思ったので公開してみる…

skk.vim と eskk.vim でデフォルトのマッピングを上書きする方法

Vim

skk.vim や eskk.vim ではデフォルトで多くの言語モードマッピング(:lmap,:lnoremap)を行うため、ユーザーが vimrc で追加したインサートモードやコマンドラインモードでのマッピングを覆い隠してしまう問題があります。 skk.vim でも eskk.vim でもこの問題…

箸という古くて新しい道具

Vim

私は私生活がダラけきっており、箸を洗うのが面倒なため普段の生活から割り箸を使っている。 買ってるのも安い割り箸なので、ちょっと力を入れただけですぐ折れてしまう。 なので折れないようそっと使っている。 箸とVimは似た所があると思った。 箸は言って…

Software Design 5月号の Vim 特集に記事を書きました

Vim

gihyo.jp Software Design 5月号の Vim 特集に一筆参加させて頂きました。 自分は正規表現について書きました。 なぜ正規表現か 職場によっては (職場指定のソフトウェアしか使用できないルールがあり) Vim を使うことを禁じられている、または (Linux サー…

VimプラグインのGitHubでのブランチ運用について (2)

Vim

tyru.hatenablog.com またもや上記記事からポリシーを変更することになった。 ブランチの運用についての点で、feature や fix には当てはまらない変更はどういうブランチ名にすればいいか?というのが分からなかったので、もう PR に「[New] Add xxx feature…

VimプラグインのGitHubでのブランチ運用について

Vim

Vim プラグイン は Git flow 的なブランチ運用した方がいい気がしてきた - Humanity 上記記事から半月程経過したので現状のブランチの運用についてさらに考えをまとめる。 あとこの記事を書いてる途中、現在の運用について不要な労力を割いている箇所が見つ…

Vim プラグイン は Git flow 的なブランチ運用した方がいい気がしてきた

Vim

理由 しばらく手元で試してマージできる devel ブランチには push してるのでリポジトリが失われる心配をしなくて済むので精神衛生上良い いざとなったら誰かに試してもらえる エラーとかが発生した際にどこから問題が起きたか分かりやすい Gitに詳しくない…

Vim runtime で必須そうなファイルを調べてみた

Vim

@todesking 必須そうなの選別しました。ご査収ください (Vim 本体のソースコードからこれらのファイルのみ持ってきて $VIMRUNTIME 環境変数セットすればいけそう) https://t.co/OhumjyeU10— tyru (@_tyru_) February 22, 2016 Vim runtime files (at 7.4.138…

Vim のビルドスクリプト

Vim

tyru.hatenablog.com どうしても最新版を使いたい派ではないので、これまで ArchLinux で落ちてくる Vim (7.4.1190) で満足していた。 しかし次期リリースのために活発に実装されている job や channel を使いたいのでふと最新版が欲しくなった。 リポジトリ…

Vim script でメニューを追加&日本語化する際のノウハウ

Vim

restart.vim と open-browser.vim で 日本語化されたメニューを提供しているのですが、メニューは無効化していたり使わない人も多く、あまりノウハウが Web 上に無いのでここに記載しておきます。 目次 メニューを追加するタイミング メニューを追加するかど…

My interview on "How I Vim"

Vim

howivim.com (日本語版はこちら) Recently, I wrote one blog entry which is an interview from How I Vim, also mattn and Shougo wrote. It has a little bit too large amount of information because I wrote about various things, of what I haven't …

How I Vimからのインタビューを受けました

Vim

howivim.com (English version of this post) mattnさんやShougoさんも受けたと言うHow I Vimからのインタビュー記事に私も参加させて頂きました。 日本語でもあまり書いてこなかった事も詰め込んだので、けっこう情報量が多くなってしまいました… ただ日本…

Vimのメタデータリポジトリに関する議論とその落穂拾い

Vim

昨日はVimのメタデータリポジトリに関してShougoさんとめっちゃ有益な議論ができたと思う。 ので、以下でその落穂拾いや言い忘れた事について補足します。 参照リンク vim-jp – Lingr Vimプラグインのメタデータリポジトリについて話し合いましょう · Issue …

AppVeyorでVimプラグインリポジトリのCIを回す

Vim

AppVeyorでのVimプラグインのテストについてはid:thincaさんの記事が素晴らしくまとまっています。 Vim プラグインを Windows 環境でテストする - 永遠に未完成 しかし、上記記事だけではいくつか動かない点があったのと、 Web画面からではなくリポジトリにa…

最近のVim関連の活動状況

Vim

送ったPull Requestやissuesは管理しきれなくなって投げたことを忘れるのでRedmineで管理することを覚えました。 なんでGitHubのPublic Activityは30件ぐらいしか遡れないんだろう… 作ったプラグイン tyru/share-cmdline-history.vim GitHubの1行説明:Share…

SKK辞書のsyntaxファイル(skkdict.vim)はeskk.vim、skk.vimのリポジトリに含まれなくなりました

Vim

表題の通り、SKK辞書のsyntaxファイル(skkdict.vim)はeskk.vim、skk.vimのリポジトリに含まれなくなりました。 理由は、SKK辞書を直接編集するユーザは少ないはずで、そのSKK辞書のsyntaxファイルを skkdict.vim、skk.vim、eskk.vimそれぞれのリポジトリで変…

Vim scriptのmatchstr()関数を使用する際の注意点

Vim

Vim script Advent Calendarはもう終了してしまいましたが、 Vim scriptのmatchstr()関数を使用する際に注意した方が良いと思った事があったので共有します。 結論 いきなり結論から言うと、マッチ結果が空文字となる可能性のあるパターンを指定すると失敗し…

VimでGo言語

Vim

https://mobile.twitter.com/tyru/status/618796747570044928 今はvim-go入れて:GoInstallBinariesすればまるっとプラグイン入るようだ。丸々入りすぎな気もするけど… / “Big Sky :: Vimを使ったGo言語開発手法”htn.to/Am4ybvP3 #vim #golang これだけでいい…

Eclipseみたいに検索履歴を保存するVimプラグイン作った

Vim

追記(2015/07/04 19:37) @tyru :h :cold:h :cnew たしか10個まで履歴持ってたはずです。— h_east (トロッコ6個) (@h_east) July 4, 2015 ということで:cold, :cnewでVim標準の機能でもできたようです。 ただ自分としてはquickfixのタイトルで絞り込めたり…

このフォルダ以下をvimgrepするWSFスクリプト

作った。 「送る」フォルダ*1に入れておくと捗る(場合もあるかもしれない)。 *1:ファイル名を指定して実行→shell:sendto

Windowsでもこれだけは入れておきたい、Vimから使える便利な外部コマンド一覧

ライフハック系のタイトルに意味はない。そして本文は短い。 以下のプログラムにPATHを通しておくと便利。 リンク集みたいにしておきたかったので、Kaoriya Vimへのリンクも含めてみた。 Kaoriya Vim ctags tagsを生成するのに必要 diff インストール方法:d…

自動的にプロジェクトルートに:cdするVimプラグイン作った

Vim

tyru/chdir-proj-root.vim · GitHub似たような事をやってる人がいるのはちらほら聞いてたけど、 Vimプラグインとしてはまだなかった気がするので作ってみた。ブコメより id:devorgachem さんにRooter.vimというものがある事を教えてもらいました。ありがとう…

最近のrestart.vimの新機能 (3つ)

Vim

最大化されてるウインドウも最大化したまま復元できるようにした(Windowsのみ) Support maximized window restoration · 2e91b8c · tyru/restart.vim · GitHubソースコードを見ると分かる通りad-hocなコードになっていて、 GVimウインドウの左上の座標がxとy…