emacsc語言
Ⅰ emacs c語言模式問題
emacs的cc-mode默認tab鍵確實是沒法用的。
解決方法,可以看看style設置能不能滿足你的需求。至於怎麼讓tab起作用,個人沒研究過,不太懂。我emacs基本就用個org。
可以去看看customize。emacs里的東西,完善的mode都提供customize設置,cc-mode的customize,我之前看過點,能設置的有不少,但是沒注意有沒有tab鍵的設置。如果裡面沒有,就是說插件沒有提供默認設置,想改的話就會比較麻煩。
希望對你有幫助。
Ⅱ 如何使用emacs編寫c語言程序,並編譯運行
1.進入emacs 後,C-x,C-f (意思是先按ctrl+x再接著按ctrl+f)找到文件或新建文件
然後編寫程序,如hello.c
2.保存所編寫的程序,命令是C-x,C-s,(先按ctrl+x,再按ctrl+s)
3.編譯程序。通過命令M-x (alt+x)shell或M-x eshell進行shell模式,然後使用gcc -Wall -o hehe hehe.c進行編譯,如果沒有安裝gcc,請先安裝gcc
5.切換回編輯區: c-x b 』buffername『可以切換到某個buffer,如要切換回剛才那個hehe.c編輯區,輸入c-x b "buffername"(例如先按ctrl+x 再輸入b 再輸入hehe.c)。有木有發現,emacs比vi好用多了。
二、Emacs按鍵
Vim 把控制和編輯分成了兩個模式,單獨操作,互不影響。而Emacs是同時進行編輯和控制,只不過控制命令需要使用控制鍵。
Emacs的控制鍵就三個Control,Shift和 Meta,Control 和 Shift 鍵盤上都有,Meta 在美式鍵盤中就是Alt,在蘋果鍵盤上是那個很花的四個圈的鍵,如果鍵盤上沒有Alt (這個要某些歐洲人才會遇到)可以使用Esc 代替,另外Esc 不想Alt 通常當組合鍵用,它要單獨按一下,再按另外的。
以後控制命令就這樣表示:
C-f Ctrl+f
C-M-f Ctrl+Alt+f
C-_ Ctrl+Shift+-
Ⅲ 如何使用emacs編寫c語言程序,並編譯運行之
vi和emacs被分別被稱為編輯器之神和神之編輯器。vi的入門精通都很難,emacs入門容易,精通難;vi使用起來不停地切換模式,而emacs則不停地ctrl,meta等組合鍵。因此,高德納大師說操作Emacs,就像彈奏管風琴。
vi是有模式的,因此他很少使用組合鍵,編輯起來確實要高效,而我厭煩不停的模式切換。選擇了emacs。很巧,在國外,幾乎所有的大師都是使用emacs的,James Gosling們(Java語言設計者),Donald Knuth們(),Jamie Zawinski們,Eric Benson們。我覺得真正的工程師用Emacs。emacs是那種能讓你用上100年的編輯器。
接下來介紹如何使用emacs來編寫,編譯,運行c程序。(先聲明下,這是寫給初學者看的。):
1.進入emacs 後,C-x,C-f找到文件或新建文件
然後編寫程序,如hello.c
2.保存所編寫的程序,命令是C-x,C-s,
3.編譯程序。通過命令M-x shell或M-x eshell進行shell模式,然後使用gcc -Wall -o hello hello.c進行編譯,如果沒有安裝gcc,請先安裝gcc。
4.運行:./hello 即可運行編譯好的可執行程序,如下圖:
5.切換回編輯區: c-x b 』buffername『可以切換到某個buffer,如要切換回剛才那個hello.c編輯區,輸入c-x b "buffername"。有木有發現,emacs比vi好用多了。
(完)
望採納,謝謝
Ⅳ 如何將emacs配置成c/c++開放環境
文章最後面,我配了,原文的地址。你可以去看。圖文版的。
將Emacs配置成一個C/C++的IDE編程環境
1.寫在前面
linux下的編程,業界多數人士並不喜歡,尤其是習慣了在windows下編程的程序員,認為windows的IDE各種好,而linux下沒有一個好 的IDE ,估計很多人就是卡在這個門檻上了(PS:聽說Microsoft和google這種級別的公司的頂級程序員也都不用IDE的,用的是VIM和 EMACS)。雖說那些linux牛人也都不用IDE的並且我也很想裝成一個牛人,但經過幾番折騰,本人還是比較習慣IDE,因為本人也是在 windows的IDE下開始的程序生涯。「工欲善其事,必先利其器」,我想如果有個好用的IDE,那些linux牛人應該也不排斥吧。
在linux編程,首先要選擇開發工具,自然目光就投向了網上都說的兩大神器——VIM和EMACS,雖說他們只是編輯器,但由於超強的可定製度,已成為 廣大linux工作者的首選。所以今天我就寫點本人使用Emacs和將Emacs配置成一個簡易IDE的過程和心得。不過說起配置IDE,CSDN上前輩 吳垠有篇將VIM配置成IDE的文章,本人剛在linux編程時曾深深學習過,甚為折服。順便提一句,我曾經也是用VIM寫程序的,所以我的VIM看起來 也是一個簡單的IDE,不過後面轉向使用Emacs了(聲明:本人無意加入VIM和Emacs之爭,選擇哪一個純屬個人習慣和喜好而已)。
網上很對人都說Emacs門檻比較高,入門難。其實也沒有說的那麼誇張,可能是比VIM難一點,但是也是很容易上手的,只是好用不好用的問題。好了,閑話少說,下面進入今天的主題:打造Emacs。
本文對Emacs的說明有:
Emacs的基本操作和組合鍵
啟動時的邊框和大小及在屏幕中的位置
Emacs的基本常規設定
Emacs的一些開發環境的設定(C/C++、script等等)
Emacs的一些擴展配置(如改變游標的形狀等)
附:本文不會解釋lisp編程。
我的工作環境是ubuntu11.04,emacs是直接用sudo apt-get install emacs安裝的,版本是GNU Emacs 23.3.1。下面的例子基本都是在C語言做的演示。
下面對一些文中可能用到的名稱說明一下:
文中的路徑都是 ~/ 目錄,文中的一些路徑如,~/_emacs,~/work,之類的如果沒有就自己建一個,.emacs文件在~/.emacs。
先來兩張圖,我的emacs界面,o(∩_∩)o
圖一:
對照上圖的編號:
1:簡潔明了的buffer瀏覽和操作,以及一些文件瀏覽器,tag瀏覽
2:高亮代碼編輯區
3:自動補全
4:更好的文件瀏覽器
圖2:(debug的截圖)
對照上圖:
1:圖形化調試選項
2:變數查看區
3:源碼查看區
4:棧查看區
5:斷點查看區
2.Emacs的基本操作和組合鍵
1.Emacs的模式鍵定義
四個模式鍵:C------àctrl;M------àalt;s------àsuper(win);S----àshift
比如:C-x:表示ctrl+x(表示先按下ctrl鍵,然後按下x鍵
C-x c C-c:表示按下ctrl,然後按下x鍵松開後再按下c鍵
C-x k:表示按下ctrl,同時按下x和k鍵
2.Emacs的基本組合鍵
C-x C-c:退出Emacs
C-x C-s:保存當前buffer
C-x C-f:打開和新建文件
C-n:游標移到下一行
C-p:游標移到上一行
C-k:刪除一行
M-x:執行命令
其他的很多組合鍵我都進行了重新綁定,在下文中將有描述。
3.啟動時的大小和屏幕的中的位置
如圖語句表示在啟動後在屏幕的x=20,y=0處,高度為35寬度為100的Emacs。
說明:關於修改Emacs的啟動大小的問題,網上最多的描述是:有兩種方法①修該~/.Xdefault文件,然後運行xrdb ~/.Xdefault;②在~/.emacs中進行上圖所示修改;然後網上的說明是第一種方法更好。故在此進行一個說明,根據筆者的使用經驗,個人更喜 歡用第2種方法,因為當用第一種方法後,每次修改了emacs的配置文件,都需要重新運行xrdb ~/.Xdefault,個人感覺比較煩,還有一些其他問題,這里就不例舉了,所以我選擇的是在.emacs配置文件中修改的方法。
4.Emacs的基本常規設定
按照一般的習慣,.emacs文件中一般不會放太多的設置信息,一般放一些emacs的搜索路徑的信息。這里我的emacs的配置文件,即lisp腳本都放在~/_emacs的文件夾中。
因此首先添加一個emacs的搜索路徑:
然後載入我們對emacs的設置腳本,在.emacs中添加如下語句:
圖中的幾個腳本文件將在下面分別解釋器用途。
①對emacs的基本設置,即base.el文件(在~/_emacs中),base.el文件中的部分內容如下:
設置默認工作目錄,即啟動emacs後所在的目錄,我這里設的是主目錄下的work文件夾,我幾乎所有的代碼都是在該目錄下完成的,在base.el中加上下面一句:
上面就是一些基本和重要的配置,我沒有多加說明,因為圖中幾乎每行語句都有注釋,所以大家應該能看懂的。O(∩_∩)o
5.C/C++的配置
下面講關於C/C++的配置,因為筆者在Linux下主要還是進行C/C++的開發。我的C/C++的配置主要是cycode.el文件中。
①開發時很重要的一步就是調試,因此,好的調試環境很重要,所以首先就是圖形化調試界面:
上面載入了兩個lisp的腳本文件,這兩個文件是直接在網上下的圖形化調試的文件。
②為了能高效的瀏覽和編輯代碼,需要安裝cedet插件(可以到官網下載),下載cedet後,在~/install目錄中解壓,然後看解壓出來的 文件夾中的INSTALL文件,然後根據裡面的描述安裝cedet即可(註:我所有的需要安裝的插件都在~/install目錄中,下面將不再重復說 明),有一點需要注意就是安裝完成後不能刪除安裝後的文件,也就是需要保留解壓後的文件夾。
安裝完成後,即用下面的語句將我們需要的一些東西包含進來:
然後現在就可進行有關cedet的設置,這里只是用一個代碼折疊和展開為例:
③為了使使用更方便,即對上面cedet插件的一個補充,需要在安裝一個ecb插件。下載ecb後放到intall目錄中,解壓即可(僅僅是解壓),然後加上下面兩句:
④自動補全功能,為了實現自動補全功能,需要安裝兩個插件,這兩個插件是相輔相成的——auto-complete和yasnippet。先安裝 auto-complete,下載後放到install目錄中解壓,然後進入解壓後的目錄,然後輸入make命令即可;下面安裝yasnippet,下載 後放到install目錄,然後解壓即可;下面是幾句關於這兩個插件的配置:
⑤裝完插件後,下面是一些關於綜合的配置:
下面是兩種補全命令:
6.鍵綁定
到這里,已經基本完成了C/C++開發環境的搭建,為了使自己用emacs更方便,需要一些建綁定,即自己定義一些組合鍵,這是emacs配置中必不可少的一步,我的自定義組合鍵都放在cykbd.el文件中,下面是部分我的鍵綁定代碼:
根據一般的慣用f1來表示幫助,即man命令:
這部分是對f1-f12的一些綁定:
這里的f6為調試,即用gdb調試,f7是調用make來對原文件進行編譯。
將f8為對buffer的一些常用操作:
用f12查看函數定義:
對ecb的鍵綁定:
對窗口的一些鍵綁定:
7.Emacs的擴展配置
上面已經完成配置emacs的基本工作,換句話說,到目前為止我們已經可以用emacs進行開發了,但是為了進一步的是emacs更符合我的習慣,又加了一個cyexpand.el這個配置文件,是emacs的功能更強大,cyexpand.el的部分設置為:
Emacs主題的設置:
將游標改成一個豎線:
8.總結
到此為止,已經將emacs打造成了開發c/C++的簡易IDE,由於筆者本身能力所限,文中的不足之處歡迎大家批評指正。我會將我整套配置文件和 需要下載的插件都打包上傳,詳細的設置和編碼,大家可以下載後在使用過程中體會和深入,大家需要看的文件只有_emacs目錄下的base.el、 cycode.el、cykbd.el、cyexpand.el四個文件,其他的腳本文件都是筆者從各種地方收集過來的大牛寫的各種配置。我的配置文件下載連接是:
原文地址:
http://www.oschina.net/question/54100_56621
Ⅳ emacs 用什麼寫的
Emacs 是C語言實現了一個 ELisp(Emacs Lisp) 的解釋器,然後大部分的功能是用 ELisp 寫的。不過在 Emacs 內部調用的時候一個函數是 C 還是 Elisp 實現的是看不出來的。
Ⅵ 如何在GNU Emacs環境下編譯並運行C/C++程序
學習C/C++的朋友有沒有想過完完全全的在Linux環境下開發軟體!?我想過,可能是因為個人對Windows平台有些偏見,或者說個人不是非常喜歡在Windows下寫程序的感覺,總覺得有那麼一層膜隔閡著我們,不像Linux,可以做強大的伺服器,在終端下只需要使用簡簡單單的命令便能完成相當復雜的事情,是不是感覺很高深!?還有很多很多開源項目,Emacs也算一個吧!!!
呵呵,談到在Linux下編程,我們不得不提這兩款編輯器:vi/vim和Emacs(確切的說Emacs的功能已經遠遠超出了編輯器,使用它我們可能收發郵件,玩游戲,排版等等)。Emacs的強大不得不讓我們對設計出該編輯器的大師們發出崇高的敬意和贊嘆,Emacs強大之處不僅僅局限於編輯功能,還提供的許多自定義選項,還有我們可以不需要動滑鼠便可完成日常工作(對於大多數人來說這可能不太現實),下面我只是簡要的介紹如何使用Emacs編譯/運行C/C++程序
Emacs有很多版本,如Gnu Emacs、XEmac等等。而且Emacs在各個平台下均能表現的非常出色,前提是你要熟悉它。
首先,再次說明本人所使用的操作系統是rhel 6.2,已經安裝GNU Emacs 23.1.1和gcc version 4.4.6,注意Emacs只是一個編輯器,在我們程序員看來(其實我們也可以將其看作IDE,如果使用的比較熟練的話),最起碼對於我這種菜鳥來說,還不能十分熟練的玩轉Emacs,它實在是太強大了,以至於有很多知識需要去記憶(不僅僅是快捷鍵)。
OK,不啰嗦了,下面進入正題:
1.啟動Emacs,在終端輸入「emacs&」命令後回車(你也可以輸入「emacs」命令,不過當你在使用Emacs的時候,當前終端就不為你工作了;並且如果你熟練使用Emacs的話也可以輸入「emacs -nw」命令以啟動非X視窗下的Emacs),至於後面為什麼要加一個「&」符,這是Linux裡面的基本知識,加上「&」符後會在當前終端下產生一個子進程以運行Emacs而不會對當前終端的工作造成任何影響,這里我們鍵入「emacs –nw」命令
2.打開/新建文件,進入Emacs界面後,鍵「C-x C-f」以打開/創建一個新的文件(如圖2所示),建議以C/C++語言里所規定的擴展名來指定創建的文件的擴展名,雖然在Linux下面我們不是十分強調文件的擴展名,但是如果你選擇正當的擴展名的話,將有助於高亮代碼,並且Emacs會根據我們創建的文件的擴展名以進行不同語言(要知道,Emacs不只是為了C/C++程序員設計的)編碼風格的縮進;
3.編輯文件,鍵「C-x C-s」存檔,本人測試的代碼如下:
#include <iostream>
int main( ) {
std::cout << "Hello, Emacs!!!"
<< std::endl;
}
Ⅶ C語言在emacs中 寫了一段代碼 怎麼保存 保存在哪裡去了 怎麼新建文件,
在終端下
輸入
vi a.c
寫入
#include <stdio.h>
int
main()
{
printf("Hello World\n");
}
再按Esc鍵
再按Shift+ZZ保存
再輸入
gcc a.c
再
./a.out
就可以了
可以看看
man gcc
Ⅷ emacs怎麼編寫c程序
emacs 的 compile 命令是調用 make 來編譯的,而make是需要makefile的,你只有.c,沒有寫makefile,所以無法編譯。
關於 make/makefile 是另外一個很大的課題,這里不多說。
寫好代碼後, C-x C-s 保存,然後自己打開一個shell, 如bash,然後用
gcc myc.c -o myc
來編譯,然後用 ./myc 來執行即可。
如果想在 emacs 中啟動shell,也可以用 M-x shell 命令,然後重復上面的編譯和執行命令。
Ⅸ 怎麼使用emacs編寫c語言程序,並編譯運行之
學習C/C++的朋友有沒有想過完完全全的在Linux環境下開發軟體!?我想過,可能是因為個人對Windows平台有些偏見,或者說個人不是非常喜歡
在Windows下寫程序的感覺,總覺得有那麼一層膜隔閡著我們,不像Linux,可以做強大的伺服器,在終端下只需要使用簡簡單單的命令便能完成相當復
雜的事情,是不是感覺很高深!?還有很多很多開源項目,Emacs也算一個吧!!!
呵呵,談到在Linux下編程,我們不得不提這兩款編輯器:vi/vim和Emacs(確切的說Emacs的功能已經遠遠超出了編輯器,使用它我們可能收
發郵件,玩游戲,排版等等)。Emacs的強大不得不讓我們對設計出該編輯器的大師們發出崇高的敬意和贊嘆,Emacs強大之處不僅僅局限於編輯功能,還
提供的許多自定義選項,還有我們可以不需要動滑鼠便可完成日常工作(對於大多數人來說這可能不太現實),下面我只是簡要的介紹如何使用Emacs編譯/運
行C/C++程序,文中相關命令可以參考本人其他博文。
Emacs有很多版本,如Gnu Emacs、XEmac等等。而且Emacs在各個平台下均能表現的非常出色,前提是你要熟悉它。
首先,再次說明本人所使用的操作系統是rhel 6.2,已經安裝GNU Emacs 23.1.1和gcc version
4.4.6,注意Emacs只是一個編輯器,在我們程序員看來(其實我們也可以將其看作IDE,如果使用的比較熟練的話),最起碼對於我這種菜鳥來說,還
不能十分熟練的玩轉Emacs,它實在是太強大了,以至於有很多知識需要去記憶(不僅僅是快捷鍵)。
OK,不啰嗦了,下面進入正題:
1.啟動Emacs,在終端輸入「emacs&」命令後回車(你也可以輸入「emacs」命令,不過當你在使用Emacs的時候,當前終端
就不為你工作了;並且如果你熟練使用Emacs的話也可以輸入「emacs
-nw」命令以啟動非X視窗下的Emacs),至於後面為什麼要加一個「&」符,這是Linux裡面的基本知識,加上「&」符後會在當前
終端下產生一個子進程以運行Emacs而不會對當前終端的工作造成任何影響,這里我們鍵入「emacs –nw」命令,啟動界面如圖1所示;
圖1 鍵入「emacs –nw」命令後,Emacs的啟動界面
2.打開/新建文件,進入Emacs界面後,鍵「C-x
C-f」以打開/創建一個新的文件(如圖2所示),建議以C/C++語言里所規定的擴展名來指定創建的文件的擴展名,雖然在Linux下面我們不是十分強
調文件的擴展名,但是如果你選擇正當的擴展名的話,將有助於高亮代碼,並且Emacs會根據我們創建的文件的擴展名以進行不同語言(要知道,Emacs不
只是為了C/C++程序員設計的)編碼風格的縮進;
圖2 鍵「C-x C-f」,輸入文件名以打開/創建一個新的文件
3.編輯文件,鍵「C-x C-s」存檔,本人測試的代碼如下:
[cpp] view plain
#include
int main( ) {
std::cout << "Hello, Emacs!!!"
<< std::endl;
}
4.編譯文件,這里我介紹兩種方法。
法1:常規方法,參考Learning Gnu
Emacs,我們可以這樣做:鍵「M-x」,此時在minibuffer中會顯示「M-x」字樣,輸入「compile」命令後默認會顯示
「Compile command: make -k」字樣,此時把「make -k」刪除後,運行相關編譯命令(如現在我們應該鍵入「g++
test.cpp –o test」),如圖3所示;
圖3 minibuffer下鍵入「g++ test.cpp –o test」命令以編譯源文件
法2:我想大多C/C++程序員會選擇第二種編譯方法,同樣的,鍵「M-x」,輸入「eshell」或「shell」命令,進入「eshell」或
「shell」緩沖區,這里我們鍵入的命令是「eshell」,然後同樣的鍵入「g++ test.cpp –o
test」命令以編譯源文件,如圖4所示;
圖4 eshell下鍵入「g++test.cpp –o test」命令以編譯源文件
5.運行編譯後的可執行文件,同樣的按照第4步中的打開eshell緩沖區,輸入相關命令即可執行編譯後文件,這里我們應該輸入「./test」命令,如圖5所示。
圖5 輸入「./test」命令以執行編譯後文件
注意:當我們進入其他緩沖區後,再想切換到編輯過的緩沖區可以鍵入「C-b
buffername」以切換到目的緩沖區。注意編輯(修改)後的緩沖區的名字格式為「*buffername*」,如上面我們切換到
「test.cpp」緩沖區應該buffername應為「test.cpp」,在我們打開「eshell」緩沖區之前我們已將其保存過了,切換到
「test.cpp」後再想切換到之前打開的「eshell」緩沖區的buffername應為「*eshell*」,這個緩沖區我們修改過了;