日本語二級 通過~

二级通过,哈哈
可喜可贺的日子。。。。。278/400,真不容易。。hoho
 
这都被我RP过去了。。。嘿嘿
 
普天同庆吧。。。。 ^_^
 
Advertisements

python Auto complete for Vim

python。。恩,有点意思。。。。
介于vim中的python补全现在主要是利用字典,所以,一时兴起,就是自己写了一个python成员列表提醒(动态的哦)
应该算很简陋,但是基本功能已经实现了。
 
———代码开始,放在vimrc中即可——–
python << EOF
import vim
import re
import string
def Py_GetAttributesByName(ModulePath): #{{{2
    if len(ModulePath) == 0 :
        return ""
    # split the ModulePath to ModuleName and MemeberPath , ex : os.path
    # ==> ‘os’ & ‘.path’
    findResult = re.match(‘(w+)(.*)’,ModulePath)
    ModuleName = findResult.group(1)
    MemberPath = findResult.group(2)
    # import Module as objModule
    objModule = __import__(ModuleName)
    # Construct the reObj as Search pattern
    reObj = re.compile(‘<.*'(.*)’>’)
    # Make the result
    strMemeberList = eval(‘dir(objModule’ + MemberPath + ‘)’)
    MemberList = []
    for MemberName in strMemeberList:
        TypeStr = eval( ‘type(objModule ‘ + MemberPath + ‘.’ + MemberName + ‘)’ )
        MemberList.append( MemberName + ‘!’ + reObj.match(str(TypeStr)).group(1) )
    return string.join(MemberList,’,’)
#}}}2
EOF
 
function! Py_CompleteAttributes() "{{{2
 let ModulePath = matchstr(getline("."),’m[0-9A-Za-z.]*ze.w*$’)
 redir => AttrNameStr | silent exec "py print Py_GetAttributesByName(‘". ModulePath ."’)" | redir END
 let AttrNameStr = AttrNameStr[1:]
 let AttrNameList = split(AttrNameStr,’,’)
 if len(AttrNameList) == 0
  return ""
 endif
 let AttrNameListDict = []
 for item in AttrNameList
  let AttrName = matchstr( item , ‘mzs.*ze!.*’ )
  let AttrType = matchstr( item , ‘m.*!zs.*ze’ )
  call add( AttrNameListDict , {’word’: AttrName , ‘menu’:AttrType })
 endfor
 call complete(col(‘.’),AttrNameListDict)
 return ""
endfunction "}}}2
if !exists("autoload_python") "{{{2
 let autoload_python = 1
    augroup PYTHON
        au!
        autocmd FileType PYTHON set expandtab shiftwidth=4
        autocmd QuickFixCmdPre * copen
        autocmd FileType PYTHON set makeprg=python %
        autocmd FileType PYTHON inoremap <C-ENTER> <C-R>=Py_CompleteAttributes()<CR>
    augroup END
endif "}}}2
 ———————-over—————-
 
使用方法:
1.我自己编译的vim中加入了python2.5的支持,没有这个代码没运行的哦~!
2.当然了,你的机器也要安装python25环境
3.设置文件set ft=python
4.利用CTRL+ENTER,实现Module成员函数的提示
目前缺陷:
由于python是type unsensitive的,所以,没有办法知道变量的type(虽然,理论上通过语法分析应该能得到,但我没这么大本事)
所以,这段代码,只能对于路径上没有变量的进行成员列表的显示(我实在是不知道,有变量怎么处理)
 
举个例子:
os.path.XXX
在输入os.path. 之后,按ctrl+enter就可列出os.path中的所有成员(funciton ,str之类的东西,还有类型提醒哦。。hoho)
 
恩,就这样了,等有时间再改善啦~~
算是学习完Python语法部分的小总结吧,同时复习了一下好久没这么用的vim函数(们)。。。。
 
PS:不感兴趣的好朋友们略过这篇文章好了 =_=
 

点名游戏

原谅我吧,在一个月之后才看到这个~~ =_=

这是在我等了2个多小时后,才看到的网页!~ (公司的破网络)

————————华丽的分割线———————-

游戏规则:
      A、被点到名字的要在自己的空间里写下自己的答案,然后去掉一个你最不喜欢的问题再加上一个你的问题,仍然组成18个问题,传给其他人,列出其他需要回答问题的人的名字,还要到这几个人的博客里留言通知对方——你被点名了,被点名者不得拒绝回答问题。
      B、这几个人要在自己的博客里注明是从哪里接到的,并且再传给其他人,让游戏继续下去,不得回传。

 

1. 你认为分手后的男女朋友还能做普通朋友吗?
能吧~~

2.想去哪里渡蜜月?
爱琴海

3.你最希望从朋友(不包括爱人)那里得到的是什么?
信任

4、最近最郁闷的事?
很多人告诉我他们找到了另一半~~ >_<

5. 相信那种纯友谊的异性好朋友存在么?
信~

6.目前你最希望自己哪部分外型可以再改观一下?
这个,认识我的人应该都知道。。。哎

7.如果可以你这辈子最想实现的梦想是什么?
让所有和我相识的人幸福快乐

8.如果你失忆了,你认为你会忘了你最爱的人,还是忘了你最恨的人?
应该不会忘了最爱的人的

9.有一天天上掉下一美女或帅哥,你会接么?
啥时掉!?

11.说出点你名的人的3个优点(不可删除题)
可爱,善良,单纯

12.如果你很爱一个人,会不会等他/她回头
回头?。。这个,要具体问题具体分析吧,愚蠢和执着往往是一线之隔

13、最希望爱你的人为你做什么事?
这些问题对于现在的我来说,都太难回答了。。=_=

14.如果可以,你愿意一切回到1岁的时候重来活一次么?
就现在吧,或许有遗憾,但是,遗憾也是一种美

15.父母的幸福快樂最重要還是自己的最重要?

这个不用说了,父母吧

16.将来你有了孩子,你希望是男孩还是女孩,why?(二选一,排除双胞胎或多胞胎的可能)

其实都行,不过现在超喜欢我的小侄女

17。现在最想实现的事情?
好好工作,挣钱 & 找个伴~~ =_=

18. 最想对点名人说的一句话(呵呵不准删除)

你真是越来越可爱了~~

From:可爱的璐璐

我点:大家随意吧~~

小通知吧

介于公司的破网络实在是上不去space,我也没办法更新了

大家的space也没法看了~~我哭 T_T

至于这篇帖子能不能发出来,我都不知道。。。。(祈祷一下吧)

PS:我用的是Windows Live Writer。。