Sublime Textが2から3に上がるのに際しプラグインを書くのに利用可能なPythonバージョンが2から3にあがり、既存のプラグインが利用できなくなる可能性がある問題がここ数日テキストエディタ業界を賑わしております。本記事では同様の問題がVimにあるのかを検証します。 最初に言っておきますが、VimはPython2とPython3に両対応しています。つまりPython2とPython3を同時に利用できるのです。特に+kaoriya版ではその機能を有効化してコンパイル&配布していますので、まずはやってみましょう。あ、もちろん別途Pythonがインストールされている必要はあります。 :py print(sys.version) 2.7.3 (default, ... :py3 print(sys.version) 3.2.3 (default, ... 1つのVimからPython 2.
pythonbrewによるフレキシブルなPython環境の構築 Vimの設定とかはあまり関係ないですが最強を詠うために最強のPython環境が必要なので構築します。最強の環境とは インストールされているPythonのバージョンが違うことによって不可解なバグが発生しない インストールされているライブラリのバージョンが違うことに不可(ry インストールされているライブラリ同士が干渉して不可解な(ry だと思っています。これらを解決するために pythonbrew という素晴らしいソフトを利用します。 ただこのソフトはシェルが前提となっているのでWindowsをお使いの方は代わりに virtualenv をインストールして先に進んでください。 Pythonには大きく分けて2.x系と3.x系の大きなバージョンがあり、この二つは相容れないものとなっています。 2.x系はずっと使われてきたもので外部ラ
pythonの補完は、vimが標準で配布している物で事足りるかなーとか思ってたけど浅墓すぎた。 今日見つけた jedi-vim は良い。 davidhalter/jedi-vim - GitHub Using the jedi autocompletion library for VIM. https://github.com/davidhalter/jedi-vim 何が良いって精度が良い。そして標準配布の pythoncomplete がモジュールとそのモジュール内関数しか補完出来ないのに比べ、jedi は評価値を補完出来る。 そしてスゴイのが構文を仮実行しているのではなく、パースしている点。jedi というモジュールを使って、構文解析している。 davidhalter/jedi - GitHub Awesome autocompletion library for python. I
Vim を使って PHP スクリプトを作成しているときに phpdoc.vim というプラグインがもの凄く重宝してた。 何をするものかというと、例えば以下のようなコードがあったとする。 <?php class Foo { pubilic function __construct($arg1, $arg2) { } } class や function の行にカーソルがある場合に :call PhpDocSingle() と実行すると <?php class ClassName { /** * __construct * * @param mixed $arg1 * @param mixed $arg2 * @access public * @return void */ public function __construct($arg1, $arg2) { } } といった感じでヘッダーコ
Vim Advent Calendar 18日目! こんにちは!Vim Advent Calendar 18日目担当のtsukkeeです。以前にも、vim-users.jpにて、Hack #132: Pythonインタフェースを使う(1)とHack #136: Pythonインタフェースを使う(2)を書かせていただきましたが、今回はさらに面白い?Pythonインタフェースの使い方を紹介したいと思います。 Pythonインタフェース内でVim scriptの関数を定義する いきなりですが、vim_bridgeというものが既にあります。これに気づかず再発明してしまったのですが、自分が作ったものの方が自由に関数名を決めれるのでまぁいいことにします^^; サンプルコードは以下のとおりです。 PythonのデコレータでPythonの関数をVim scriptの関数に変換するところはvim_bridg
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
vimでPHP開発していた時は、良くvim の 折りたたみ機能を使ってました。 理由としては、割とメソッドを移動したりするのが楽だったり(折りたたみしてる所は yy , dd でヤンクできるから)、メソッド、クラス単位で折りたたみされてるので、俯瞰してそのファイルを眺める事ができるから、不要なメソッドとかを見つけやすかったからです。 折りたたみは最初、開けたり閉じたりするのが面倒だったんですが、気がつけば、小指が za を押すのに慣れてしまいました といわけで、そろそろPythonのヤツも欲しいなと思ったので、プラグインを探しました。割合古いものですが、見やすいので大分気に入っています。 python_fold - Folding expression for python : vim online これを ~/.vim/plugin の下に設置すればそれでおkです。 簡単な使い方 たとえ
vimでhtml編集してるとテキストオブジェクトが便利ですよね。例えばformタグの中にカーソルがある状態で「vat」とキーを叩くだけでform全体を選択状態にしてくれるアレです。 pythonでもクラスやメソッドを簡単に選択できたら楽なんですが、なんかいい方法ないかなーと思ってたらpython_fn.vimというプラグインがありました。 導入方法 python.vim - A set of menus/shortcuts to work with Python files : vim online ↑から最新版(現時点ではver.1.13)をダウンロード。 ダウンロードしたpython_fn.vimを$VIMFILES/ftpluginに入れます ($VIMFILESはwidowsの香り屋版だとruntimeというフォルダ) ただし僕は$VIMFILES/ftpluginに独自にファイル
元ネタ http://d.hatena.ne.jp/ruedap/20110225/vim_php_phpunit_quickrun http://vim-users.jp/2010/09/hack172/ Python スクリプトを書く場合は unittest を使って書くがテストランナーは nose の方が好きなのでそっちを設定する。 augroup QuickRunUnitTest autocmd! autocmd BufWinEnter,BufNewFile *test.php set filetype=php.unit autocmd BufWinEnter,BufNewFile test_*.py set filetype=python.unit augroup END let g:quickrun_config = {} let g:quickrun_config['php.
VimScript は JavaScript に似ていると思ったが、それよりも Python に似ている気がする。 Vim は VimScript という専用言語を使用し、動作を拡張出来るが、VimScript の代わりに Ruby や、Python で拡張する事も出来る。 Vim の拡張言語としての Python のサポートは Ruby のものより強力だ。 大きくは下記の2点。 range が取れる。※range object 辞書、リストをそのまま取り込める。 Vim の拡張機能を VimScript ではなく、Ruby や Python のような汎用言語で書く事についての考察は下記が詳しい。 http://items.sjbach.com/97/writing-a-vim-plugin 最近 Python を勉強し始めたんですが、目的が必要なので、Python で Vim を拡張する
一昨日からvim縛りしている。そこそこ使えるようになってきた。 MacVimはデフォルトでPythonで関数を作れるらしいので、やってみた。 UnixTimeをエコーして挿入する function! Unixtime() python <<EOM import time, vim def make_text(): return str(int(time.time())) buff = vim.current.buffer line, col = vim.current.window.cursor insertion_text = make_text() vim.command('echo '+ insertion_text ) current_line = buff[line-1] buff[line - 1 ] = current_line[0:col] + insertion_text
5 ข้อดีของปั้ม vacuum ประเภท Direct Drive High Vacuum มีอะไรบ้าง หากพูดถึงปั๊มสูญญากาศหรือปั้ม vacuum มีให้เลือกใช้งานหลากหลายชนิด เช่น ปั้ม vacuum โรตารี่ ปั้ม vacuum ลูกสูบ และ ปั้ม vacuum วอเตอร์ริง เป็นต้น นอกจากนี้ยังมีปั้ม vacuum รูปแบบใหม่คือแบบไดอะเฟรม หรือเครื่องปั๊มสูญญากาศแบบแห้ง แต่สำหรับวันนี้เราอยากจะพาไปทำความรู้จักกับปั้ม vacuum ประเภทโรตารี่เวน ชนิด Direct Drive ที่มีคุณสมบัติสามา
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー vim_bridgeを使うと,vim上で使えるPythonのヘルパー関数を定義できる。vimスクリプトの中にPythonのコードを書いて,デコレートするだけなので,とても簡単。 easy_installなどでvim_brigdeをインストール後,vimスクリプトに以下のようなコードを書く。 python << endpython from vim_bridge import bridged @bridged def SayHello(first, last): return "Hello, %s %s!" % (first, last) endpython あとはvimからヘルパー関数
膨大なアクセスを支える屋台骨 高い安定性とパフォーマンスを両立 ZOZOTOWNが選んだストレージ基盤を解説 データ活用は次のステージへ トラディショナルからモダンへ進化するBI 未来への挑戦の成功はデータとともにある オープンソース活用はあたりまえ! そんな今だからこそ改めて考える 企業ITにおけるOSS活用のメリットとリスク 勝つためのクラウド活用術 New Value on Azure ビジネスを次のステージへ! ビジネスの推進には必須! ZDNet×マイクロソフトが贈る特別企画 今、必要な戦略的セキュリティとガバナンス Kubernetes活用の最適解とは? 今、注目のコンテナを活用した柔軟なIT基盤 運用、管理の課題を解決しメリットを最大化 現場主導のデジタル変革 ビジネス変革のための“ITの民主化” そして 変わるIT部門の役割 大事なのは”仕事の段取り” 幅広い業務を任されて
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く