茄子在线看片免费人成视频,午夜福利精品a在线观看,国产高清自产拍在线观看,久久综合久久狠狠综合

    <s id="ddbnn"></s>
  • <sub id="ddbnn"><ol id="ddbnn"></ol></sub>

  • <legend id="ddbnn"></legend><s id="ddbnn"></s>

    高效的emacs
    來(lái)源:易賢網(wǎng) 閱讀:1628 次 日期:2015-04-02 13:07:48
    溫馨提示:易賢網(wǎng)小編為您整理了“高效的emacs”,方便廣大網(wǎng)友查閱!

    這篇文章用來(lái)總結(jié)自己對(duì)emacs的理解。本人之前使用過(guò)vim和sublime,現(xiàn)在主要使用emacs。

    Start

    就編輯速度來(lái)說(shuō),是不會(huì)有編輯器比vim更快的了。我也常常將代碼片段,或者日志,xml,考到sublime進(jìn)行分析。多行編輯很實(shí)用。

    但我在平時(shí),主要還是使用emacs,無(wú)論是用它寫(xiě)博客,寫(xiě)代碼,執(zhí)行代碼,寫(xiě)GTD,管理文檔…都非常的方便。

    鍵綁定

    一個(gè)高效的編輯器,就是能夠做到不用鼠標(biāo),編輯時(shí)在鼠標(biāo)和鍵盤(pán)之間進(jìn)行切換是一件很惱人的事情。這點(diǎn)在你抱著筆記本進(jìn)行寫(xiě)作的時(shí)候會(huì)深有體會(huì)。

    常用的快捷鍵:(C代表Ctrl,A代表Alt)

    C-n 向下移動(dòng)一個(gè)字符

    C-p 向上移動(dòng)一個(gè)字符

    C-b 向左移動(dòng)一個(gè)字符

    C-f 向右移動(dòng)一個(gè)字符

    A-b 向左移動(dòng)一個(gè)單詞

    A-f 向右移動(dòng)一個(gè)單詞

    C-a 移動(dòng)到行首

    C-e 移動(dòng)到行尾

    C-@ 設(shè)置選擇下標(biāo)

    C-w 剪貼選中區(qū)域

    A-w 復(fù)制選中區(qū)域

    C-l 將光標(biāo)所在行,作為中心行,刷屏

    C-x H 全選整個(gè)緩沖區(qū)。

    C-k 刪除光標(biāo)后的整行內(nèi)容

    C-d 刪除一個(gè)字母

    M-d 刪除一個(gè)單詞

    C-_ Undo

    C-? Redo

    C-s 查找

    A-j 換行,與上一行保持同樣的縮進(jìn)

    A-< 移動(dòng)到文件頭部

    A-> 移動(dòng)到文件尾部

    C-x 3 左右分屏

    C-x 2 上下分屏

    C-x 1 除此屏全部關(guān)閉

    C-x 0 關(guān)閉此屏

    A-/ 補(bǔ)全

    其它的一些也是因?yàn)椴怀S?,基本不?huì)去記它們的。

    除了emacs自己的keybinding,我還特意做了些鍵綁定,提高效率。

    (global-set-key (kbd "C-M-h") 'backward-kill-word)

    ;; (bash中的回刪單詞,也是這三個(gè)鍵)

    (global-set-key (kbd "C-x f") 'recentf-ido-find-file)

    ;; (在最近打開(kāi)文件列表中,選擇要打開(kāi)的文件,這個(gè)很實(shí)用)

    (global-set-key (kbd "C-x t") 'insert-current-date)

    ;; (插入當(dāng)前日期,在寫(xiě)博客或者gtd的時(shí)候,經(jīng)常用日期作為文件名的一部分)

    (global-set-key (kbd "<f8>") 'insert-current-file-fill-path)

    ;; (插入當(dāng)前文件的完整路徑,這個(gè)也比較實(shí)用)

    (global-set-key (kbd "M-g") 'goto-line)

    ;; (跳轉(zhuǎn)到某一行,是沒(méi)有vim中的:n快)

    (global-set-key (kbd "C-x w") 'copy-word)

    ;; (復(fù)制一個(gè)單詞,只要光標(biāo)落在單詞上,就可以復(fù)制整個(gè)單詞)

    13 (global-set-key (kbd "C-x y") 'copy-line)

    14 ;; (emacs是沒(méi)有這個(gè)快捷鍵的,只能自己去實(shí)現(xiàn)了。在vim中,yy就可以了)

    15 (global-set-key (kbd "C-c C-b") 'comment-or-uncomment-region)

    16 ;; (快速的對(duì)代碼進(jìn)行注釋與反注釋)

    17 (define-key global-map (kbd "C-c a") 'wy-go-to-char)

    18 ;; (跳到此行的某個(gè)字母,vim的f和t,比這個(gè)快得多)

    實(shí)用的多功能

    多窗口編輯,文件管理器,都是emacs多功能的一部分。甚至還可以配置git等外部程序,僅僅打開(kāi)一個(gè)emacs就夠了。

    我的emacs還配置了以下實(shí)用的多功能

    ;; 快速的使用bing查找(直接在emacs中查找,然后就會(huì)彈出網(wǎng)頁(yè)上的查找結(jié)果)

    (prelude-install-search-engine "bing" "=" "Search Bing:" )

    (global-set-key (kbd "C-c b") 'prelude-bing)

    ;; emacs 彈窗 (我常常退彈出一個(gè)cmd,運(yùn)行python,或者運(yùn)行g(shù)it)

    (defvar popup-terminal-command

    (cond ((memq system-type '(windows-nt cygwin))

    '("cmd" "/c" "start" ))

    (t '("x-terminal-emulator"))))

    (defun popup-term ()

    (interactive)

    (apply 'start-process "terminal" nil popup-terminal-command))

    (global-set-key (kbd "<f5>") 'popup-term)

    寫(xiě)博客

    我的博客是使用jekyll進(jìn)行搭建的,所以日常,基本就是用markdown編輯完之后,用git推送到服務(wù)器。

    這里要提的就是snippet,因?yàn)閖ekyll擴(kuò)展了一部分的markdown語(yǔ)法格式,配置成snippet后,快速的插入模板片段非常有用。

    比如我的sinppet:hl就對(duì)應(yīng)jekyll的語(yǔ)法高亮擴(kuò)展。這要比markdown自帶的語(yǔ)法高亮(縮進(jìn)),功能強(qiáng)大一些。

    markdown 高亮:

    if i == 3:

    print "人生苦短"

    else:

    print "我用python"

    jekyll 高亮:

    if i == 3:

    print "人生苦短"

    else:

    print "我用python"

    寫(xiě)代碼

    我用emacs主要寫(xiě)的代碼就是python,或者是其它的腳本,像是bash,反正我是不會(huì)用它寫(xiě)c#的,沒(méi)有什么編輯器會(huì)比vs更適合寫(xiě)c#。

    sinppet 是必不可少的了,python中能用到的snippet我都有配置,之前還配置過(guò)一部分和tornado相關(guān)的snippet。

    我將emacs配置成可以彈窗出一個(gè)shell,我一般就在這個(gè)shell中執(zhí)行python

    或者直接彈出顯示結(jié)果,但是這樣不能錯(cuò)誤信息,而且你的python代碼末尾必須要有raw_input() 否則一閃

    ;; emacs彈窗,執(zhí)行,當(dāng)前的python

    (defun popup-expython()

    (interactive)

    (let ((filename "test.py")

    (args (list "cmd" "/c" "start" "python" (buffer-name))))

    (apply 'start-process "terminal" nil args)))

    (global-set-key (kbd "<f6>") 'popup-expython)

    不僅僅是鍵盤(pán)綁定,這些有關(guān)編程的emacs配置,也值得一提。

    ;; 好代碼一行不應(yīng)該超過(guò)80個(gè)字符

    (add-hook 'python-mode-hook

    (lambda () (highlight-lines-matching-regexp ".\{81\}" "red")))

    還有我的emacs主題是zenburn,這種主題看起來(lái)不扎眼,代碼高亮美觀。很舒服。

    寫(xiě)GTD

    我對(duì)GTD的理解,是要單獨(dú)寫(xiě)的,這里只介紹用emacs寫(xiě)gtd的一部分內(nèi)容。

    emacs使用org模式來(lái)寫(xiě)GTD,基本上可以看作是*做的一棵樹(shù),可以切TODO和DONE,展開(kāi),折疊,打標(biāo)簽。

    這里插入我gtd的一部分:

    * Blog

    ** DONE 我應(yīng)該將我購(gòu)買(mǎi)的域名掛到自己的網(wǎng)站上

    CLOSED: [2014-09-11 Thu 13:30]

    ** TODO 翻譯相關(guān)內(nèi)容

    * Book

    ** DONE 寫(xiě)給上班族的世界史

    CLOSED: [2014-09-05 周五 22:15]

    ** DONE 方與圓

    CLOSED: [2014-09-21 周日 23:30]

    * 周末寫(xiě)兩篇博客

    ** DONE 使用python的函數(shù)式編程和c#的linq來(lái)實(shí)現(xiàn)操作,而非迭代器

    CLOSED: [2014-11-24 周一 11:29]

    ** 寫(xiě)一篇關(guān)于c#的迭代器和python的迭代器,

    不要神話(huà)emacs

    之前在學(xué)習(xí)emacs和vim的時(shí)候,網(wǎng)上有許多文章神話(huà)這兩個(gè)編輯器,說(shuō)是什么神的編輯器和編輯器之神。 其實(shí)如果說(shuō)智能,它們是不會(huì)比VS智能的,emacs和vim最多也就是文本匹配,而vs卻真正的在內(nèi)部構(gòu)建代碼對(duì)象。emacs只是比較方便,比較自由而已,比較能折騰而已,要從實(shí)用角度出發(fā),而不是做一個(gè)腦殘粉。

    更多信息請(qǐng)查看IT技術(shù)專(zhuān)欄

    更多信息請(qǐng)查看技術(shù)文章
    易賢網(wǎng)手機(jī)網(wǎng)站地址:高效的emacs
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢(xún)回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門(mén)公布的正式信息和咨詢(xún)?yōu)闇?zhǔn)!

    2026國(guó)考·省考課程試聽(tīng)報(bào)名

    • 報(bào)班類(lèi)型
    • 姓名
    • 手機(jī)號(hào)
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢(xún) | 簡(jiǎn)要咨詢(xún)須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
    云南網(wǎng)警備案專(zhuān)用圖標(biāo)
    聯(lián)系電話(huà):0871-65099533/13759567129 獲取招聘考試信息及咨詢(xún)關(guān)注公眾號(hào):hfpxwx
    咨詢(xún)QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報(bào)警專(zhuān)用圖標(biāo)