zen-codingっぽくTeX

2010/04/17 \end{align*}のスターが抜けていたのを修正

" for zen-coding plugin
let g:user_zen_settings = { 
\   'tex' : { 
\       'indentation' : '  ',
\       'snippets' : { 
\           'align'       : "\\begin{align}\n|\n\\end{align}\n",
\           'aligns'      : "\\begin{align*}\n|\n\\end{align*}\n",
\           'enumerate'   : "\\begin{enumerate}\n\\item |\n\\end{enumerate}\n",
\           'itemize'     : "\\begin{itemize}\n\\item |\n\\end{itemize}\n",
\           'description' : "\\begin{description}\n\\item |\n\\end{description}\n",
\           'array'       : "\\begin{array}{|}\n\\end{array}",
\           'table'       : "\\begin{table}[htbp]\n"
\               ."\\begin{center}\n"
\               ."\\caption{|}\n"
\               ."\\label{}\n"
\               ."\\begin{tabular}{}\n"
\               ."\\end{tabular}\n"
\               ."\\end{center}\n"
\               ."\\end{table}\n",
\           'figure'      : "\\begin{figure}[htbp]\n"
\               ."\\begin{center}\n"
\               ."\\includegraphics[width=0.7\textwidth]{}\n"
\               ."\\caption{|}\n"
\               ."\\label{}\n"
\               ."\\end{center}\n"
\               ."\\end{figure}\n",
\           'jsart'       : "\\documentclass{jsarticle}\n"
\               ."\\usepackage{amsmath,amssymb}\n"
\               ."\\usepackage[dvipdfmx]{graphicx}\n\n"
\               ."\\renewcommand{\\theequation}{\\thesection.\\arabic{equation}}\n"
\               ."\\makeatletter\n"
\               ."\\@addtoreset{equation}{section}\n"
\               ."\\makeatother\n\n"
\               ."\\title{|}\n"
\               ."\\author{}\n"
\               ."\\date{}\n\n"
\               ."\\begin{document}\n"
\               ."\\maketitle\n\n"
\               ."\\section{}\n\n\n"
\               ."\\begin{thebibliography}{99}\n"
\               ."\\bibitem{}\n\n"
\               ."\\end{thebibliography}\n\n"
\               ."\\end{document}\n",
\           'jart'        : "\\documentclass{jarticle}\n"
\               ."\\usepackage{amsmath,amssymb}\n"
\               ."\\usepackage[dvipdfmx]{graphicx}\n\n"
\               ."\\renewcommand{\\theequation}{\\thesection.\\arabic{equation}}\n"
\               ."\\makeatletter\n"
\               ."\\@addtoreset{equation}{section}\n"
\               ."\\makeatother\n\n"
\               ."\\title{|}\n"
\               ."\\author{}\n"
\               ."\\date{}\n\n"
\               ."\\begin{document}\n"
\               ."\\maketitle\n\n"
\               ."\\section{}\n\n\n"
\               ."\\begin{thebibliography}{99}\n"
\               ."\\bibitem{}\n\n"
\               ."\\end{thebibliography}\n\n"
\               ."\\end{document}\n",
\       }
\   },
\   'plaintex' : {
\       'extends' : 'tex'
\   }
\}
  • おもむろに空の.texファイルを開く
$ vim hoge.tex
  • 挿入モードで次のようにタイプする(はCtrl+y)
jsart<C-y>,
  • 幸せになった!


基本的に行単位で処理し、しかも元々HTML用ということもあり、数式入力支援にはあまり向かないかも。それでも図や表を多用する文章を書く人にとっては便利なはず。
スニペットは完全に自分の趣味(数式番号いじってるところとか)なので、使う人は勝手にカスタマイズしてください。"|"が、展開後のカーソル位置になるようです。