Vim 中設定對 Aspell 的支援 (windows)

來源:互聯網
上載者:User

我最終在_vimrc下加入的是:

1 map <F9> :w!<CR>:!E:\Aspell\bin\aspell --lang=en check %<CR>:e! %<CR>

即按 F9 執行 aspell 對當前檔案的檢查

註:vimrc中 %號 表示當前檔案

   E:\Aspell\bin\aspell 改成自己的aspell所在目錄


========== [以下是參考文獻] ===========

[轉] http://ar.newsmth.net/thread-5ad4875c9af373.html

 

一直想讓vim在winxp下也可以spell check,這樣就可以隨意的使用beloved vim 
來寫tex了,不用老得用winedt去檢查一下spell。 

於是昨天就下了個aspell,裝上了。 

或許大家都看到過vimaspell.vim或vimispell.vim這兩個檔案,其實把它們放到 
*nix下工作是完全沒有問題的,它可以直接調用ispell或aspell。但是在win32下, 
由於vim通過cmd.exe 來執行外部命令,所以即使你把aspll添加到PATH裡也沒用, 
vim不能用這個教本來check spell.我想一會兒再看看vimaspell.vim裡面是怎麼 
找到aspell命令的,或許可以解決。 

另一個常見的解決方案就是: 
 map ^T :w!<CR>:aspell check %<CR>:e! %<CR> 

注意:^T是<CTRL+V><CTRL+T>的組合,在win32下是敲不出來的,因為 
<CTRL+V>是paste的shortcut。一個辦法就是到*nix下寫到一個檔案裡,在拷貝回來, 
在vi中用:r命令讀入。---我自己就是這麼弄的,笨了點兒!哪位有好辦法請 
指教! [轉者註:(見上)不用^T,而用<F9>之類]

事實上,直接把這條map指令放到_vimrc裡還是沒用的,原因就是上面講的,cmd.exe 
根本找不到aspell. 

所以只好把你的aspll的完全路徑加上:--我的是這樣的: 
 map ^T :w!<CR>:d:\Aspell\bin\aspell check %<CR>:e! %<CR> 

好了,啟動vi,隨便找個檔案,當然要有錯誤的單詞了,不然check what :), 
press CTRL+T,是不是看到DOS視窗中居然又有錯誤?大致是不是這樣講的: 

 Error: no word lists can be found for the language "zh_CN" 
 shell return 1 

肯定是的,不過到這裡就容易多了, 
在你的vi裡來這麼一下: 
:lan en 
或者 
:lan en_US 
除非你用的是e版系統,中文系統出這個問題很正常,只要暫時修改一下language屬性 
就可以了。 

現在再來一次CTRL+T 

是不是在一個DOS視窗中出來了讓你激動不已的冬冬? 

這是自己的一點收穫,歡迎大家拍板磚! 

最後的應該是: 
 map ^T :w!<CR>:lan en<CR>:!<path_to_aspell>\bin\aspell check %<CR>:e! %<CR>

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.