2011-05-31 23 views
1

儘管我把大部分時間都花在Windows機器上,但我對Vim非常滿意。然而,它始終困擾着我,儘管它的強大和功能,Vim仍然卡住了這個舊的,醜陋的,非用戶友好的GUI。我想通過寫一個新鮮而現代的新GUI來貢獻一些東西來開源,主要是我自己的理智。我想改變Vim,但Vim的來源是巨大的。我從哪說起呢?

我一開始就從這裏克隆Vim的源:
http://code.google.com/p/vim/

才知道原來我不知道從哪裏開始。這段代碼似乎對於文本編輯器來說非常龐大而且具有洞察力和可笑的複雜性。我設法辨別了關於結構的基本事情,至少在GUI文件的位置,但我仍然不知道它們如何與文本編輯器的核心進行交互。我知道如果我真的想要這樣做,我就需要坐下來仔細閱讀,但是我想知道是否有人對如何解決這類項目有什麼好的建議,或者如果有人對內部工作有所瞭解vim。

在最好的情況下,我可以發送擊鍵到vim,並從它獲得輸出直接到我寫的任何GUI,但我知道它會比這更混亂。怎麼樣?

史蒂夫Losh約VIM
  • 德里克悅的博客的配置
  • +15

    如果您必須提出這個問題,您可能無法完成這項工作。 GVIM怎麼了? – 2011-05-31 09:51:27

    +1

    我希望你有好幾個月,甚至幾年的空閒時間來完成這個GUI。你確定你想要這樣做嗎? – orlp 2011-05-31 09:51:59

    +3

    'vim -g' ...或...'gvim'? – pmg 2011-05-31 09:52:23

    回答

    3

    免責聲明:我絕對沒有VIM內部的知識。這是非常通用的,非常模糊的建議。

    • 對vim的當前功能有清晰的瞭解。爲此,你必須閱讀代碼。這裏沒有捷徑。看看你是否可以從核心中辨別vim的UI部分,一旦你完成了這些,事情會變得更容易。
    • 清楚地看到你想達到的目標。這是最重要的部分。嘗試回答如下問題:「我的目標是否無法通過腳本完成?」,「我需要修改/替換/添加/刪除?」。此外,如果您想出最簡單的GUI並設法將其插入當前的vim實現中,那麼添加所需的功能應該是小菜一碟。還要考慮如果你能夠通過在現有的vim GUI上添加你的功能來實現你想要的功能 - 不需要重新發明輪子。

    我甚至不知道上述內容聽起來是非常簡單還是不可能,因爲你甚至沒有提到你想做什麼。如果你澄清了你的問題,也許你會得到更好的答案。

    相關問題