タグ

vimに関するlepton9のブックマーク (940)

  • Vim scriptを処理系レベルから高速化しようとしている話 - Qiita

    TL; DR Vim scriptをパースしてASTを作り、高速化を図ります。リポジトリはこちら→wholekeik/vim 追記: ベンチマーク追加しました AST化 Vim script は実行のたびにコマンドをパースしているので非常に遅い言語です。コマンドをパースしておいてASTとし、それを実行すれば高速化が見込めます。しかし、Vim scriptでは引数の解釈が各コマンドによって全く異なるため、共通のパーサーを書くのは不可能です。したがって事前にパースするのではなく実際に実行しながら並行してASTを作っていきます。なおVim scriptの実行はユーザーの入力(コマンドモード)やオートコマンド、関数などがありますが、ASTとなるのは関数内のみです。また、AST化は行単位で行われます。 大まかな流れ 関数を定義する 通常通り呼ばれる 呼ばれたExコマンドのうち、ASTにできるものがあ

    Vim scriptを処理系レベルから高速化しようとしている話 - Qiita
  • 「Vimを終了する方法」、100万PVを突破 | スラド デベロッパー

    技術系Q&Aサイト「Stack Overflow」に2012年8月に投稿された「How to exit the Vim editor?」という質問ページのページビューが、100万を突破した(Stack Overflowの公式ブログ)。 このページでは「Vimが終了できない」という質問に対し、Escキーを押し、続いて『:q』や『:q!』などを入力するという終了方法が親切に解説されている。 この記事は昨年Stack Overflowのページビュー全体の0.005%を稼いだそうで、平日のピーク時には一時間当たり80人がこのページを見ていることになるという。また、国別やメインのプログラミング言語別のアクセス統計も示されている。

    「Vimを終了する方法」、100万PVを突破 | スラド デベロッパー
  • vim も zsh も捨てた - AnyType

    プロジェクト移行期に入って暇な時間ができたので、開発環境をリフレッシュすることにした。vim や zsh の設定が少しずつ壊れてきていたのだった。 .vimrc や .zshrc を眺めてみると、かつて意識が高かった頃に施した設定が何のためのものだったのか忘れてしまっていた。別人が書いたスパゲティコードのようだった。 また vim や zsh の設定を検索して理解するべきなんだろうか。ここで覚えた知識はまたすぐに忘れてしまうんじゃないだろうか。設定が洗練されるほどに、それを更新する機会もまた少なくなってくる。設定が必要になるきっかけは忘れた頃にやってくるもんだ。 やり方を根的に見直す時期なのかもしれない。新しいツールもいまなら選択できる。 まず、vim から atom に移行した。git のコミットメッセージやちょっとしたファイルの修正ではまだ vim を使うものの、細かい設定が必要にな

    vim も zsh も捨てた - AnyType
  • Vim + Markdown - Qiita

    Markdownは現在、プロジェクトのドキュメントを書くために利用されたり、JekyllやHugoなどを用いた静的サイトに利用されたりしており、編集する機会は多いと思います。 Vim界隈でも、たくさんのプラグインが作成されており、便利な機能が提供されているので、ここでまとめたいと思います。 基的なプラグイン ます紹介するのは、Markdown編集に必要不可欠な、基的な機能を提供するプラグインです。 共通の機能として、以下のようなものがあります。 Markdownファイルタイプの自動設定 一般的なMarkdown記法のシンタックスハイライト オートインデント このような機能を持っているプラグインとして代表的なのものを以下にリスト化しました。 plasticboy/vim-markdown GitHub上で一番多くスターがついており、開発も最も活発なプラグインです。 例として、以下のような

    Vim + Markdown - Qiita
  • すべてのカラースキーム好きに贈る、新生Vimカラースキームギャラリー「colorswat.ch」 - ここぽんのーと

    こんにちは、Vimカッコイイ計画実行委員会(総員1名)のcocoponです。コツコツ製作していた新生Vimカラースキームギャラリー「colorswat.ch」を、日公開します。 前作「Vim Colorscheme Gallery」から3年。見えてきた課題前作「[Vim Colorscheme Gallery][vag]」を公開してから、もう3年が過ぎてしまいました。あれからカラースキームは増え続け、それらを取りまく状況はいくらか変わって、いい感じのまとめサイトもいくつか生まれました。 自分自身といえば変わらずカラースキームが大好きで、ウォッチ自体は継続していました。しかしながら、肝心のサイト更新は滞っていたのです。なぜか? 運用コストの改善更新が滞った主な原因は、運用コストを甘くみていたことです。ここでいう「コスト」は、主に時間のこと。 前作はカラースキームのデータを抽出するフローが脆

    すべてのカラースキーム好きに贈る、新生Vimカラースキームギャラリー「colorswat.ch」 - ここぽんのーと
  • Go に暗黙の型変換機能を明示的に導入する - haya14busa

    Go に暗黙の型変換はない Go には Tour of Go でも習うように,暗黙の型変換といったものは存在せず,明示的に型変換をする必要があります. Unlike in C, in Go assignment between items of different type requires an explicit conversion. – Type conversions https://tour.golang.org/basics/13 このデザインについては FAQ にも書いてあります. FAQ: Why does Go not provide implicit numeric conversions? https://golang.org/doc/faq#conversions (厳密には interface への変換だけは勝手にやってくれるのでその意味では暗黙の型変換はあるとい

  • Vimperatorの思い出とVivaldiへの期待 - mizchi's blog

    ※はじめに これは Vimp やめて Vivaldi 使おうぜとアジる記事ではない。最近何書いてもアジってると誤解されるの困る。 思い出 僕のプログラマになるきっかけの一つに、2008年頃にリナカフェに遊びに行った時に @mashiro にVimperatorを勧められたのがある(人はおぼえてないかもしれない)。当時の僕は大学に入ったばかり。Firefoxは使っていたが、プログラミングは多少興味あるけど、難しそうだなぁ、程度の認識で、もちろんVimなんか使ったことがなかった。 初期設定はその場で教えてもらって、あとは家に帰って調べた。最初は、とりあえず便利なショートカットキーを提供してくれて、QuickSilverライクな絞込UI(今だとMacのSpotlightもそうなんだろうが、当時はQuickSilverというMacアプリぐらいしか似たようなものがなかった、気がする)を持つインター

    Vimperatorの思い出とVivaldiへの期待 - mizchi's blog
  • Home | SpaceVim

    SpaceVim is a modular configuration of Vim and Neovim. It’s inspired by spacemacs. It manages collections of plugins in layers, which help to collect related packages together to provide features. This approach helps keep the configuration organized and reduces overhead for the user by keeping them from having to think about what packages to install. Quick start guide: installation, configuration,

    Home | SpaceVim
    lepton9
    lepton9 2017/01/04
  • Vim 8.0 Advent Calendar - 永遠に未完成

    この記事は 2016 年 12 月に Qiita 上で行われた Vim 8.0 Advent Calendar を 1 つにまとめたものです。 目次 前書き Vim 8.0 Advent Calendar 1 日目 関数機能の強化 Partials ラムダ クロージャ 2種類の関数参照 Vim 8.0 Advent Calendar 2 日目 チャンネル チャンネルを使う チャンネルのモード その他のメッセージの読み書きの方法 ch_sendexpr() ch_sendraw() ch_read() ch_readraw() ch_evalexpr() ch_evalraw() Vim 8.0 Advent Calendar 3 日目 ジョブ ジョブを使う ジョブのオプション モード 標準入出力の接続先 コールバック その他 ジョブを制御する ジョブを停止する ジョブの状態や情報を得る V

    Vim 8.0 Advent Calendar - 永遠に未完成
    lepton9
    lepton9 2017/01/01
  • Go に恋した Vimmer の2016年の振り返り - haya14busa

    この記事では2016年 @haya14busa がやってきた活動,特にVimとかGo 活動をざっくり振り返ります. 個人的な備忘録です.あとポエム. 過去の振り返り記事 1年間『Vim駆動学習』してきて最高に楽しかったのでオススメしたい - haya14busa 2014年の振り返り. またはプログラミング2年目をVimに捧げるとこうなるという話 - haya14busa はてなGoogleインターン行ってイカやりすぎたイカVimmerの2015年の振り返り - haya14busa 今年はざっくりプログラミング & Vimmer 歴 4年目でした. そろそろプログラミングの基礎的なところわかってなくても,まだはじめてそんな経ってなくてまだ勉強できてないんです〜,また今度やっておきますっ! みたいな言い訳が完全に通用しない年になってきた気がします (そもそも実際に言ったことは無い). ま

    Go に恋した Vimmer の2016年の振り返り - haya14busa
  • 活躍しているVimmerを教えるよ

    この記事は増田Vimアドベントカレンダー2016の27日の記事です。 Vimに興味を持ってるけどtwitterで誰をフォローすべきか分からない・・・ そんな迷える羊たちにデータを提供します。 vim-jpで積極的に活動している(していた) 人達を調査してみました。 vim-jpの3つのリポジトリを見ればだいたい分かります。 vim-jp/issuesvim-jp/vimdoc-ja-workingvim-jp/vital.vim vim-jp/issuesでは、issue作成数、コメントを投稿したissueの数を見ていきます。 vimdoc-ja-workingとvital.vimでは、コミットすることが重要なリポジトリだと思いますので、コミット数とPR数のみ見ていきましょう。 データは2016/12/27 17:00-19:00の期間にgithubからスクリプトで取得 vim-jp/is

    活躍しているVimmerを教えるよ
  • Vim/NeoVimに任意のコード実行の脆弱性

    VimおよびNeoVimに任意のコードの実行につながるセキュリティ脆弱性を修正するパッチが追加された。それぞれ「patch 8.0.0056|vim / vim」および「vim-patch:8.0.0056|neovim / neovim」で内容を確認できる。修正対象の脆弱性はfiletype、syntax、keymapの値のチェックが不適切というもので、結果として誤った設定状態で該当するファイルが開かれるとコードが実行される危険性がある。 今回、発見された脆弱性は、モードラインが有効になっている場合に悪意のあるファイルを開くと任意のシェルが実行されてしまう。パッチは debian stable、CentOS 6 向けにもバックポートされリリースされている。 なお、プラグインなどの形で脆弱性を悪用したマルウェアが登場する可能性も考えられるが、現在のところセキュリティファームからそういった情

    Vim/NeoVimに任意のコード実行の脆弱性
  • renderoptions の設定のしかた — KaoriYa

    Vim は 8.0 で DirectX に対応しました。 しかし誰もそれの良い設定のしかたを知らないはずなので解説します。 記事は Vim Advent Calendar 2016 の 25日目(最終日)の記事です。 TL;DR Vim で DirectX を使うには以下のようにしてください。 OS の ClearType テキストの調整 を実施する VimUTF-8 モードで起動し、好きなフォントを設定する set rop=type:directx,renmode:5 で DirectX を有効化する Vim の DirectX サポート 御存知の通り2016年の9月に Vim 8.0 がリリースされました。 10年ぶりのメジャーアップデートということで たいそう話題 になりました。 特に Windows 界隈のユーザーにとっては、 テキストエディタが DirectX に対応した

  • https://atnd.org/events/33746

    https://atnd.org/events/33746
    lepton9
    lepton9 2016/12/24
    伝説
  • Go で Vim プラグインを書く - haya14busa

    この記事は Vim アドベントカレンダー 2016 の21日目の記事です. 最近は Go 言語が大好きすぎて,Vim plugin も Go で書きたい!!! という欲が出てきたので, Vim plugin を Go で書く方法について紹介します. GoVim plugin を書くとは? 一口に GoVim plugin を書くといっても Go で書いたバイナリがメインで Vim script の autoload 関数などから呼ぶ.例: https://github.com/mattn/vim-filewatcher Go 側からも Vim script を呼ぶ,つまり Vim script で Vim の情報を取得するところなど含めて,ほぼ全部 Go で書く. という 2 段階があると思います.記事では2の方法も含めて紹介しますがまずは1から行きましょう. 1. Go

    Go で Vim プラグインを書く - haya14busa
  • SlackとVimとメモ管理と私 - wadackel.me

    この記事は Vim (その 2) Advent Calendar 2016 の 9 日目の記事です。 Vim に関する記事 + Advent Calendar 初投稿です。よろしくお願いします。 昨年末、仕事が凄く詰まっている時期に突然 Vim を使い始めて、丁度 1 年が経とうとしています。 それまではターミナルを開くのも、Gulp や npm scripts を走らせるときくらいで、それ程使用頻度としては高くありませんでした。 しかし、Vim と出会ってからは一変、黒い画面の中に篭もるようになりました。 そうなってくると Vim でなんでも完結させたい 欲が出てきました。 皆さん、メモの管理はどうしてますか? Vim で作業中、さくっとメモ書きを残しておきたいことがあります。例を挙げると、 備忘録を残しながら作業したい コードの設計を文書化して思案したい TODO の管理 突如ポエムを

    SlackとVimとメモ管理と私 - wadackel.me
  • Big Sky :: builderscon 2016 で登壇してきました。

    « バイナリ一つで zip, tar.gz, tar.bz2, tar.xz が開けるコマンド「archiver」(と go1.8 への対応方法) | Main | gops が SIGINT をキャッチしてしまう問題が修正された。 » 冒頭でもお話させて頂いた通り、僕は YAPC に何回も誘われながらも結局参加できなかったというのが気持ちの奥にずっとあり、一度くらいは出ておくべきだったのかなと考えていたので今回、牧さんからお誘いを貰った時はお詫びをするなら今しかないと思っていました。はじめは15分とか30分程度のトークかなと思っていたら気付けば builderscon 2016 第1回目のド頭で1時間枠を割り当たっていました。 内容は「OSS は Windows で動いてこそ楽しい」というお題で Windows アプリの開発のつらさ、闇、そしてGo言語の誕生と希望について熱く語らせて頂き

    Big Sky :: builderscon 2016 で登壇してきました。
  • OSS は Windows で動いてこそ楽しい - builderscon2016

    SectionTitlePlaceHolder TIME rest time current/total TopicsPlaceHolder

    OSS は Windows で動いてこそ楽しい - builderscon2016
  • 最近の Vim のプラグイン管理について考える - tellme.tokyo

    この記事は Vim Advent Calendar 2016 の 5 日目の記事です。 以前、neobundle.vimvim-plug の比較記事を書きました*1。それから数ヶ月後、dein.vim が登場し、再び比較記事を書こうと思っていたのですが、気づけばあれから 1 年が経っていました*2。この記事は半年前 ('16年8月頃) に大枠だけ書き Qiita の限定共有に投稿していたのものを Advent Calendar 向けに書き下ろしたものです*3。 Vim プラグインの歴史 GitHub 以前 (〜2008年) 昔の話です。Vim script で拡張の機能を書いたらそのスクリプトを vim.org にアップして開発者同士で共有したり、ユーザがダウンロードして使っていたようです。おそらくコレが所謂「プラグイン管理」の始まりなのですが、このときはまだ手動で行われていたようで

    最近の Vim のプラグイン管理について考える - tellme.tokyo
    lepton9
    lepton9 2016/12/05
  • Windows(64ビット環境)でvimprocをコンパイルしてみよう - Qiita

    概説 Windows(32ビット環境)でvimprocをコンパイルしてみように続き、64ビット環境でのvimprocのコンパイル方法のまとめです。 コンパイル(make)するために、GNU on Windowsをインストール 32ビット環境での手順と同様にGNU on Windowsをインストールします。 https://github.com/bmatzelle/gow/wiki にアクセス。 Download Installer のリンクをクリック。 Gow-0.8.0.exeをダウンロードしてインストール。 環境変数「Path」に「;C:\Program Files\Gow\bin」を通す。(インストール先については、インストール時の環境に応じて読み替えてください。) なお、Gow-0.8.0.exeのようなインストーラー形式ではなく、 https://github.com/bmatz

    Windows(64ビット環境)でvimprocをコンパイルしてみよう - Qiita