記事の内容はタイトルそのままですが、私はVimに glidenote/memolist.vim: simple memo plugin for Vim.というプラグインをインストールして活用しています。しかし、メモを取ろうとVimを起動する都度、以下の作業を行う必要があり、それが面倒でした。1
- Vimを立ち上げる
:MemoNew
コマンドを実行する- メモのタイトルを入力する
- メモをVimで編集するか、Vimを終了してATOMでメモを編集する。
そこで、「ターミナルからVimを起動するときに、コマンドラインモードのコマンドを指定して、Vimが起動したらそのコマンドが自動的に実行される方法」がないか調べたところ、以下の方法で対応できることが分かりましたので、参考までに記事にしました。
具体的には、以下のとおりオプションを指定してVimを起動させると、Vimが起動すると同時にコマンドが実行されます。
vim -c :MemoNew# Vim起動後、:MemoNewコマンドが自動で実行され、メモのタイトルを入力する画面が表示される。
vim --help
でオプション-c
は-c <command> Execute <command> after loading the first file
と説明されており、このオプションを指定すると、.vimrc
を読み込んだ後に指定してコマンドを実行してくれます。そのため、プラグインに関するコマンドを実行することができます。また、オプション-c
は複数指定できますので、以下のコマンドも実行可能です。
vim -c :MemoNew -c :wq# Vim起動後、:MemoNew コマンドが自動で実行され、メモのタイトルを入力する画面が表示される。# メモのタイトルを入力したら、自動で「保存・終了」のコマンドを実行する。# これで、メモのファイル(Markdownファイル)が作成されます。
ちなみに、Vimの標準コマンドを実行できれば良いという場合は以下の方法でもOKです。
vim --cmd :vsplit# 最初から左右2画面に分割します
vim --help
でオプション--cmd
は--cmd <command> Execute <command> before loading any vimrc file
と説明されており、このオプションを指定すると、.vimrc
を読み込むより前に指定したコマンドを実行してくれます。そのため、プラグインに関するコマンドは実行できませんが、Vimの標準コマンドは実行できます。
Vimで日本語文章を編集していると途中から日本語入力が異常に遅くなったことがあったため、今のところ、日本語文章の編集はATOMで行なっています。 ↩