emacs 에서 필요한 기능...

oppor의 이미지

아크로 에디트에선 유용하게 쓰던 기능이 있는데 이맥스를 쓸려니 적응하기가 힘드네요.

예를 들면
1. 여러개의 파일을 한번에 불러오는 기능
2. 불러온 파일을 다른 창에 나열하는 기능(파일이름 더블 클릭하면 해당 파일 내용 화면에 표시)
3. 현재 열린 파일내에 존재하는 함수들을 나열하는 창(함수이름 더블 클릭하면 해당 함수로 이동)
4. 여러개의 열린 파일들에서 특정 문구를 찾아서 또 다른 창에 나열하는 기능(찾은 라인 더블 클릭하면 해당 파일의 해당 라인으로 이동)
5. 하나의 파일에서 특정 문구를 찾아서 또 다른 창에 나열하는 기능(찾은 라인 더블 클릭하면 해당 라인으로 이동)

이정도 기능만 있어도 프로그래밍 하는데 꽤 편안한 환경이 구성되는데
이맥스에서 이렇게 구성할려면 꽤 많은 노력이 필요한가요?

아크로 에디트 그냥 써라거나 만들어서 쓰면 된다는 내용은 좌절입니다.^^;;

withtw의 이미지

1. 저도 잘... 하지만, C-x d를 눌러 Dired 모드로 들어간 다음 원하는 파일에 커서를 두고 C-o를 누르면
커서는 유지한 채로 다른 창에 해당 파일을 여는데요. 이 정도면 여러개의 파일을 한꺼번에 여는 기능은 필요 없지 않을까 합니다만...

2. http://www.geekware.de/software/emacs/ 에서 bs.el 파일을 다운로드 한 다음
~/.emacs.d 폴더에 복사하고, .emacs 폴더에 아래 코드를 추가합니다.
(require 'bs)
(global-set-key "\C-x\C-b" 'bs-show)

C-x C-b를 누르면 버퍼리스트가 나오는데 여기서 'a'를 누르면 "파일 버퍼만 보이기"/"전체 버퍼 보이기"가
토글 됩니다. C-o를 누르면 커서는 유지한 채로 해당 버퍼를 엽니다. 'd'를 누르면
해당 버퍼를 닫습니다. 'q'를 누르면 버퍼리스트 화면을 닫습니다.
목록 앞에 '*' 표시는 수정된 버퍼라는 의미입니다.

3. CEDET, ECB를 사용하면 됩니다. 설치가 좀 복잡한데, 해서 저도 잘 안씁니다.
함수 리스트만 나열하는 다른 방법이 있는지 모르겠군요.

4. M-x grep를 사용하시면 됩니다.사용법은 좀 공부하셔야 겠네요.

5.
-가. http://www.emacswiki.org/emacs/Icicles_-_Libraries 로 가서
icicles.el 부터 icicles-var.el 까지 13개의 파일들을 다운로드 하여 하나의 폴더에 복사합니다.

-나. .emacs 파일에 아래와 같이 적어줍니다.(경로는 맞게 수정)
(add-to-list 'load-path "/Users/macbook/.emacs.d/icicles/")
(require 'icicles)
(icy-mode 1)

-다. 버퍼에서 C-s 또는 C-M-s를 이용해 단어를 찾습니다.
이 상태에서 C-o를 누르면 찾은 라인만 라인번호와 함께 다른 창에 표시됩니다.
C-x b로 표시된 창으로 이동한 후 원하는 라인에 커서를 두고 C-o를 누르면 해당 라인으로 이동합니다.
찾은 목록을 다른 단어로 다시 필터링 하고 싶다면 찾은 창에서 C-s를 눌러 동일한 과정을 계속 반복하면 됩니다.

oppor의 이미지

아크로 에딧에서는 기본으로 지원하는 것들이 이맥스에선 꽤나 복잡한(?) 설정을 거쳐야 하네요.^^;;;

withtw의 이미지

M-x grep는 파일들에서 찾는 것이구요.
열린 버퍼들에서 찾는 것은 M-x multi-occur-in-matching-buffers를 사용하시면 됩니다.
List lines in buffers whose filenames match regexp: 에 ".*"를 입력하면 모든 버퍼를 찾습니다.(정규식)

blueiur의 이미지

Emacs에 적응하시려면 기존에 작업하는 방법을 Emacs에서 똑같이 찾으시는 것보다는 Emacs에서는 비슷한 일들을 어떤 방법으로 처리하는지 생각해 보는게 적응하는데 더 쉽습니다.

madman93의 이미지

기본적으로 제공되는것도 있고 없는 것도 있군요
withtw 님께서 설명을 잘 해 주셨네요
일단 저는 emacs 설정을 통해서 어떤 결과물을 얻는 과정 자체를 즐기는
편입니다.
제 생각에는 즐기지 못하면 emacs를 사용하기가 좀 곤란한 상황이 많을 것 같기는 합니다.

cedet를 이용한 ecb 작업은 요즘 거의 auto install 에 가깝게 발전해 간 상황이라서
설정이 그렇게 어렵진 않더군요..

---------------------------------------------
git init
git add .
git commit -am "project init"
---------------------------------------------

---------------------------------------------
git init
git add .
git commit -am "project init"
---------------------------------------------

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.