タグ

ブックマーク / koturn.hatenablog.com (6)

  • Vimで作成する新規ファイルのパーミッションを自動的に変更する - koturnの日記

    僕はWindowsを用いる場合,KaoriYaのgvimと,Cygwinのvimを用いている. そして,Cygwinのgitを利用している. Cygwinであれば,新規に作成されるファイルのパーミッションは644であるが,Windowsだとパーミッションが700となるのが気にくわなかった. というのも,gitはファイルのパーミッションも含めて管理するし,GitHub上では実行可能なテキストファイル等(例えばLICENSE)は,シェルスクリプトのシンタックスハイライトが適用されるからだ. 無意味な実行権限の付与は避けたいので,Windows環境でVimで新規ファイルを作成するときに,Cygwin等のchmodを呼び出し,ファイルのパーミッションを変更する処理を加えることにした. ただし,ファイル先頭がshebang行であるならば,パーミッションを755にする. function! s:sys

    Vimで作成する新規ファイルのパーミッションを自動的に変更する - koturnの日記
  • koturnの日記

    背景 最近のWebサイトではOSのダークモード設定をそのまま反映しているものもある. 僕は普段からOSの設定をダークモードにしているので,previmでダークモード対応を行うことを考えた. デモ 以下のようになった. ダークモードとライトモードの切り替えも示している. Previmダークモードのデモ 実装方針 実装方針としては下記のようにした. 体はいじらずカスタムCSSとアドオンのみで対応する ダークモードとライトモードを切り替え可能にする このため,メディアクエリを用いたCSSだけでの対応は不可 方法としてはプレビュー上にボタン追加やクエリパラメータではなく,開発者モードでの関数呼び出しでよい applyLightTheme() でライトモードに, applyDarkThene() でダークモードに 実装 カスタムCSS ライトモード,ダークモード用の色はCSS変数を用いて管理する.

    koturnの日記
  • Windowsでneovimを使う(改訂版1) - koturnの日記

    はじめに 前回の記事(約1年前1)でWindowsneovimを使う方法について書いた. しかし,約1年も経過すれば,色々と変化はあり,前回の記事内容そのままというわけにはいかない. 「Windows neovim」でググると,僕の記事が一番上に出てくるというのもあり,新しい記事を書くべきだと思い立ったわけだ. (プラグイン制作にあたり,Vimのjobとneovimのjobについて調査していたのもきっかけ) ダウンロード 公式Wiki 公式でneovim体のバイナリとQtで実装されたフロントエンドのバイナリが配布されているので,それらをダウンロードしてくる. 体 公式のneovim体のバイナリは,以下のAppVeyorの成果物へのリンクから取得できる(Wikiのリンクそのまま). 32bit版 64bitフロントエンド 公式Wikiにある通り,equalsraf/neovim-

    Windowsでneovimを使う(改訂版1) - koturnの日記
  • 候補絞り込み型インターフェースを提供するプラグインについて - koturnの日記

    この記事は Vim Advent calendar 2015 の16日目の記事です. 僕は普段「だ・である」調でブログを書いていますが,今回の記事は多数の人に見ていただくことを考慮して,多くの人がブログで採用している「です・ます」調,語り口調で書いていくことにしましょう. さて題です. 候補を絞り込むインターフェースというのは人気で,Vimではunite.vim,ctrlp.vimなどが有名ですね. そして,コマンドラインツールfzfはVimからも利用できるように,体にVimプラグインが付属しています. また,ctrlp.vimにインスパイアされて開発されたプラグインとして,LeafCageさんによるalti.vimやkamichiduさんによるvim-milqiがあります. この記事では,前述の5つの候補絞り込み型インタフェースを提供するVimプラグイン Shougo/unite.v

    候補絞り込み型インターフェースを提供するプラグインについて - koturnの日記
  • Vimからfzfを利用する - koturnの日記

    はじめに fzfとは,percolやpecoと同様,絞り込みの検索を行うことのできるコマンドラインツールである. 日では,percolやpecoが有名で,fzfはあまり有名ではないが,海外では有名であるらしい. fzfはVimから利用できるように,公式のリポジトリにAPIを提供するVimプラグインが付属している. この記事では,fzfをVimから使う方法について述べる. fzfの特徴 fzfはGoで実装されている. Goで実装されているから,マルチプラットフォームなのかと思ってしまうが,実は Windowsでは利用することができない(Cygwin上では利用可能). fzfを利用したプラグインの作り方 正直,fzfのREADME.mdやwikiのサンプルを見るのが早いのだが,それではこの記事の意味が無いので,ちゃんと書く. (日語で書いておくと,日人が読みやすいという利点もあるだろうし

    Vimからfzfを利用する - koturnの日記
  • シェル上で普通の言語のようにVim scriptを実行したい - koturnの日記

    元ネタはWandboxにVim scriptが追加されたことである. Wandboxが実行するコマンドラインをパクれば,シェル上でVim scriptが実行できそうだと考えた. ただ,オプションの数が多く,いちいち打ち込むのは面倒なので,シェルスクリプトとバッチファイルを作った. vsというネーミングは,正直微妙な気もするが,JavascriptのエンジンのひとつであるSpiderMonkeyのバイナリ名を真似た結果だ. それに,名前が短い方が打ちやすいという利点があると思う. 作成するにあたって,少々苦労した点もある. Vimの出力が全て標準エラー出力だったり,コマンドプロンプトはワイルドカードを展開しない,という点だ. #!/bin/sh vim=vim if [ $# -lt 1 ]; then echo 'Invalid arguments' 1>&2 echo '[USAGE]'

    シェル上で普通の言語のようにVim scriptを実行したい - koturnの日記
  • 1