precious.vim がチョー便利

複数の種類のコマンドの切り分けを自動的にやらせる

pukiwiki で作業ログを書いているときに, 一つのページに複数のコマンドの作業ログを書くことがある.
再実行させるときに, 毎回自分で切り替えながらコマンド実行しているけど, 範囲を選択して \r で実行できるようにしたい.
...

 ここからは python コード 
xxx
xxx
 ここまでは python コード 

ほげほげ ほげほげ

 ここからは ruby コード 
yyy
yyy
 ここまでは ruby コード 
http://d.hatena.ne.jp/syngan/20130623/1371923016

以前の記事に作者の id:osyo-manga さんからコメントで教えていただいた. precious.vim + quickrun.vim で, pukiwiki.vim での作業が捗ることこの上ない.

設定

必須プラグインである context_filetype.vim に記述している部分が他言語であることを教えてあげる必要がある.
pukiwiki 上に, 整形済みテキストとしてソースコードを記述しているのでそこに自由に仕様を決めれば良い.

FormattingRules
行頭が半角空白で始まる行は整形済みテキストとなります。行の自動折り返しは行なわれません。

他言語毎に設定を書くのは面倒なので markdown の設定を参考にした.
pukiwiki 上では少し目立つようにしたかったので ``` を ### として書き換えた.

\ 'pukiwiki': [
\ {
\ 'start' : '^\s*###\s*\(\h\w*\)',
\ 'end' : '^\s*###$',
\ 'filetype' : '\1',
\ },
\ ],

あとは, quickrun を使う設定をすれば \r すれば自動的に言語を切り替えて実行してくれる.

  • 最初は私の使っている vim のバージョンが古いために動かなかったが, 対応してもらった. thx!
  • ヘルプで example を書くときなど便利な場面はたくさんありそう.