自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python腳本在VIM環(huán)節(jié)中的系統(tǒng)介紹

開發(fā) 后端
Python腳本在很多環(huán)境之中都會有所應(yīng)用。下面我們就向大家介紹在VIM中的具體應(yīng)用,下面我們就看看具體的情況是什么樣的。

Python腳本在使用的時候有不適的知識需要學(xué)習(xí)。在VIM中就有很廣泛的Python腳本應(yīng)用。在當(dāng)前實現(xiàn)原理很簡單,在VIM中執(zhí)行JPython()這個VIM函數(shù),然后函數(shù)負(fù)責(zé)去調(diào)用python(當(dāng)然這里需要把常用版本的python放到環(huán)境變量中去)。

調(diào)用的命令是"python -c ...",即直接執(zhí)行后面的字符串,字符串中有完整的執(zhí)行腳本。腳本中,首先打開一個文件,用fp.readlines()讀出所有行放入一個列表中(g_text),然后使用execfile()去調(diào)用JPython()傳入的腳本名和全局變量g:JPYTHON_PATH。這樣一來Python腳本中就無需關(guān)心文件IO和路徑的問題,直接去使用g_text變量即可。當(dāng)python把內(nèi)容用print或者sys.stdout輸出后會被VIM替換掉原始的內(nèi)容。代碼如下。

 

 

  1. function! JPython(py_fname)  
  2. let w:fname = g:JPYTHON_PATH . '/' . a:py_fname  
  3. echo bufname(".")  
  4. let w:cmd = 'fp = open(r"' . bufname(".") . '", "rb");'  
  5. let w:cmd .'g_text = fp.readlines();' 
  6. let w:cmd .'fp.close(); del fp;' 
  7. let w:cmd .'execfile("' . w:fname . '");'  
  8. exec '%!python -c "' . escape(w:cmd, "'\"") . '"'  
  9. " 發(fā)現(xiàn)輸出后會有^M,進(jìn)行替換用  
  10. if has('windows')  
  11. try  
  12. exec '%s/\r//g'  
  13. catch  
  14. endtry  
  15. endif  
  16. endfunction  
  17. let g:JPYTHON_PATH = "D:/scripts/vim" 

 

把這個函數(shù)復(fù)制到vimrc中,然后配置g:PYTHON_PATH到指定位置即可。

這只是設(shè)想的一個簡略實現(xiàn),實際環(huán)境中可能會有更好的方式去操作,也應(yīng)該還有更好的方式達(dá)到VIM和Python交互的目的。有朋友可能問為什么不直接用VIM的腳本,主要原因是本人對VIM腳本僅限于實現(xiàn)這種簡單功能的水平,相信為了使用VIM而研究VIM腳本的人也不多,更談不上復(fù)雜的應(yīng)用,python相對大眾化,而且日常都在使用,寫與改相對熟練。

 

大家有什么好的想法或者建議請給我留言,也歡迎提出更好的方案。

【編輯推薦】

  1. Python socket服務(wù)如何進(jìn)行配置詳解
  2. Python數(shù)組實踐中具體問題分析
  3. 對python開源技術(shù)開發(fā)的相關(guān)了解
  4. Python數(shù)據(jù)類型在常見集合中的語法
  5. Python列表與C#語言的相似度介紹
責(zé)任編輯:張浩 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-03-23 14:34:44

Python vim檢

2010-09-10 13:25:22

2010-03-19 09:26:52

Python編程

2010-03-26 16:35:29

Python open

2010-03-23 13:50:24

python教程

2010-03-17 17:06:10

python腳本語言

2010-03-15 14:24:09

Python字典

2010-03-08 19:03:23

Python腳本

2010-03-23 10:07:05

2010-02-02 16:40:34

Python 腳本

2009-12-22 16:29:10

Fedora Core

2010-02-23 10:32:20

Python 腳本

2010-03-24 09:46:16

Python 2.6

2010-03-26 15:28:05

Python編寫

2020-07-29 07:40:19

Linux系統(tǒng)Vim

2011-06-15 15:16:54

Session

2010-03-19 12:49:20

Python編程

2010-03-15 09:11:25

Python編程版面

2014-11-10 10:05:58

綜合布線

2010-04-30 14:55:09

Unix系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號