スコープに含まれる変数を要素とする辞書を戻す関数メモ。

テストプログラムを書く

$ vi vars.py
#!/usr/bin/env python
# -*- coding: utf8 -*-
g_name = "tarou"
g_color = "red"
 
def func():
	name = "jirou"
	color = "blue"
	print "-"*10, "In function.", "-"*10
	print "vars ->", vars()
	print "locals ->", locals()
	print "globals ->", globals()
	print "name:%(name)s, color:%(color)s" % vars()
 
if __name__ == "__main__":
	func()
	print "-"*10, "In __main__.", "-"*10
	print "vars ->", vars()
	print "locals ->", locals()
	print "globals ->", globals()
	print "name:%(g_name)s, color:%(g_color)s" % vars()

実行してみる

$ python vars.py 
---------- In function. ----------
vars -> {'color': 'blue', 'name': 'jirou'}
locals -> {'color': 'blue', 'name': 'jirou'}
globals -> {'__builtins__': <module '__builtin__' (built-in)>, '__file__': 'vars.py', 'func': <function func at 0x5e2f0>, 'g_name': 'tarou', '__name__': '__main__', 'g_color': 'red', '__doc__': None}
name:jirou, color:blue
---------- In __main__. ----------
vars -> {'__builtins__': <module '__builtin__' (built-in)>, '__file__': 'vars.py', 'func': <function func at 0x5e2f0>, 'g_name': 'tarou', '__name__': '__main__', 'g_color': 'red', '__doc__': None}
locals -> {'__builtins__': <module '__builtin__' (built-in)>, '__file__': 'vars.py', 'func': <function func at 0x5e2f0>, 'g_name': 'tarou', '__name__': '__main__', 'g_color': 'red', '__doc__': None}
globals -> {'__builtins__': <module '__builtin__' (built-in)>, '__file__': 'vars.py', 'func': <function func at 0x5e2f0>, 'g_name': 'tarou', '__name__': '__main__', 'g_color': 'red', '__doc__': None}
name:tarou, color:red

雑感

“%(name)s” % (vars()) って記述がわかりやすい。

 

vim からクリップボードへコピーする方法メモ。

.vimrc に以下の2行を貼り付け

nmap _ :.w !nkf -Ws¥|pbcopy<CR><CR>
vmap _ :w !nkf -Ws¥|pbcopy<CR><CR>

nmap はノーマルモードのキーマップ設定。
vmap はビジュアルモードのキーマップ設定。

MacPorts から nkf をインストール

nkf がインストールされてないなら、インストールする。

$ sudo port install nkf

コピーしてみる

vim で何かしらファイルを開く。
コマンドモードで _ を入力してコピー!

雑感

:set nonumber しなくて良くなった。ターミナルからのコピーが楽に。

参考

[vim]vimからMacのクリップボードにコピーする