emacs 에서 디버깅할때 분할창에서 현재 실행 라인을 표시해주는

voider의 이미지

이멕스에서 디버깅을 할때 next 나 step 명령을 사용할때 분할 창(소스 화면)에서 현재 실행 되고 있는 라인을 표시하는 방법은 어떻게 하나요?
x 이멕스라면 이기능이 필요 없겠지만 콘솔 상태에서는 현재 실행되고 있는 라인이 어디인지 헤깔리네요
예전에 사용했을때는 소스 라인 옆에 => 와 같은 표시가 있었던걸로 기억하는데.... 이기능을 어떻게 켜야 하는지 도무지 모르겠습니다.
cinsk 님이 라면 알고 있을듯 한데...
알려주세용~~~

File attachments: 
첨부파일 크기
Image icon emacs-terminal-gdb.png483.26 KB
Image icon 옵션없이.PNG14.45 KB
Image icon -q --no-site-file옵션.PNG14.56 KB
Image icon xemacs.PNG28.19 KB
cinsk의 이미지

버전에 따라 다르지만 대개 terminal에서 실행하면 (emacs -nw), gdb를 띄웠을 때, 현재 줄을 "=>"로 표시합니다. 그리고 현재 gdb가 가리키고 있는 소스 위치를 띄우기 위해서는 C-c C-l을 사용합니다.

댓글 첨부 파일: 
첨부파일 크기
Image icon 0바이트
voider의 이미지

먼저 답변 고맙습니다.
불행하게도 제 버전에서는 emacs -nw 로 실행을 해도 => 는 나와주지 않네요 ㅠ.ㅠ
C-c C-l 도 =>이 나와주기는 하는데 다음번 명령이 실행되면(step, next, print) 다시 보이지 않게 되네요...

gud.el 파일을 열어보긴 했는데 역시나 lisp의 압박이...
도저히 모르겠다는

-- 아쉬운 하루 되세요 --

cinsk의 이미지

Emacs를 19.x 때부터 써 왔지만, 특별히 설정하지 않았는데도 "=>"와 같이, 현재 위치를 안 알려주는 경우는 없었던 것 같은데요.. :(

설정 파일을 적용시키지 말고, 다시 한 번 해 보시기 바랍니다. 예를 들면, "emacs -nw -Q" 또는 "emacs -nw -q --no-site-file"로 실행하시고, 해 보시기 바랍니다.

또한 사용하는 emacs의 version을 알려주시기 바랍니다.

voider의 이미지

-q --no-site-file 옵션을 사용하니까
=> 이 나오는군요...
하지만 소스가 컬러 없이 나오네요( 머 이건 별 상관없지만요)

위에 그림은 no-site-file 옵션을 사용한것이구요
아래건 디폴트로 동작시킨 것입니다.

그런데 site-file 은 어떤건가요? emacs/site-lisp 밑의 파일들인가요?
참고로 제 emacs 버전은 GNU Emacs 21.2.1 입니다.

리눅스 배포판은 paran R2 이고요

답변 감사드립니다.

댓글 첨부 파일: 
첨부파일 크기
Image icon 0바이트
Image icon 0바이트

-- 아쉬운 하루 되세요 --

cinsk의 이미지

혹시, term emulator에서 보이지 않는 색상으로 등록되어 있는게 있나요? 정상적인 경우라면, site-lisp이나 .emacs에서 "=>"를 사라지게 하지 않았을 텐데요..

M-x global-font-lock-mode를 번갈아 가며 시험해 보기 바랍니다. 이 명령을 수행했을 때 "=>"이 사라진다면 term emulator에서 색상을 조절하면 될 것 같습니다.

voider의 이미지

색상 때문에 생기는 문제는 아닌것 같습니다.
global-font-lock 을 해도 =>는 여전히 안나오고요
xemacs 에서도 =>는 안나옵니다.
단지 커서의 흔적(?) 이 남아서 =>역할을 대신할뿐입니다.

다음은 .emacs 파일입니다. 제가 대충 보기론 =>을 끄는 부분은 없는것 같은데요 site-lisp 는 먼가요?

Quote:

;; Red Hat Linux default .emacs initialization file

;; Are we running XEmacs or Emacs?
(defvar running-xemacs (string-match "XEmacs\\|Lucid" emacs-version))

;; Set up the keyboard so the delete key on both the regular keyboard
;; and the keypad delete the character under the cursor and to the right
;; under X, instead of the default, backspace behavior.
(global-set-key [delete] 'delete-char)
(global-set-key [kp-delete] 'delete-char)
(global-set-key "\C-cg" 'goto-line)

;; Turn on font-lock mode for Emacs
(cond ((not running-xemacs)
(global-font-lock-mode t)
))

;; Visual feedback on selections
(setq-default transient-mark-mode t)

;; Always end a file with a newline
(setq require-final-newline t)

;; Stop at the end of the file, not just add lines
(setq next-line-add-newlines nil)

;; Enable wheelmouse support by default
(cond (window-system
(mwheel-install)
))
(custom-set-variables
;; custom-set-variables was added by Custom -- don't edit or cut/paste it!
;; Your init file should contain only one such instance.
'(c-basic-offset 4)
'(case-fold-search t)
'(current-language-environment "Korean")
'(default-input-method "korean-hangul")
'(global-font-lock-mode t nil (font-lock))
'(tab-stop-list (quote (4 8 12 16 20 24 28 32 36 40 44 48 52 56 60 64 68 72 76 80 84 88 96 104 112 120)))
'(tab-width 4)
'(transient-mark-mode t))
(custom-set-faces
;; custom-set-faces was added by Custom -- don't edit or cut/paste it!
;; Your init file should contain only one such instance.
)

댓글 첨부 파일: 
첨부파일 크기
Image icon 0바이트

-- 아쉬운 하루 되세요 --

voider의 이미지

원인을 찾았습니다.
-q 옵션은 .emacs 파일을 로딩하지 않는 옵션이고
--no-site-file 은 site-start.el 파일을 로딩하지 않는 옵션.
그래서 -q 옵션만 사용한 이멕스에서 정상작동을 확인하고
site-start.el 파일을 조지던중(파일이 얼마 안커서 다행였습니다)
삽질끝에 ㅠ.ㅠ 원인은 python-mode 때문이라는것을 알아냈습니다.
파이썬 홈페이지 가서 최신 파이썬 편집 모듈도 구해서 설치해봤지만...
여전히 => 가 출력안되는 상황...
그래서 아예
(require python-mode)
를 주석 처리해서 정상적으로 작동 되네요
문제는 python 파일을 코딩할때 파이썬 모듈이 안올라온다는것
그래서 임시 방편으로 파이썬을 코딩할땐 스크래치 버퍼에서
(require python-mode)
해주면 되긴 하는데....
unloading 할려면 어떻게 해야 하나요?
info 페이지에 보니까 언로딩에 관해서 나와있긴 한데 해볼려구 했는데 안되네요
젠장할 리스프~~

방법 있는 겁니까 cinsk님?

-- 아쉬운 하루 되세요 --

cinsk의 이미지

참 희한한? 문제를 접하시는 군요.. :)
일단 제가 쓰는 버전과 맞지 않아서 뭐라고 답하기가 힘듭니다.

먼저 요청하신? library를 unload하는 기능은 loadhist.el이 제공합니다.
예를 들어 python library를 load하고 unload하려면,

(require 'loadhist)
(require 'python)
...
(unload-feature 'python)

식입니다. 자주 쓰이는 게 아니라서 :)

아니면, 이 기회에 최신 버전의 emacs로 upgrade하시기 바랍니다.
http://savannah.gnu.org/cvs/?group=emacs
에 가셔서, 따라하시면 됩니다. 본문의 <modulename>을 emacs로 바꿔서 하면 되며, CVS version을 받은 다음에는 다음 sequence를 따르면 됩니다.

$ ./configure ...
$ make bootstrap
$ make install

자세한 것은 포함되어 있는 INSTALL.CVS를 참고하기 바랍니다.

kyano의 이미지

이맥스 뿐 아니라 python-mode도 업글해보심이 어떠실까요?

전 데비안에 emacs 21.4a와 python-mode 4.70을 쓰고 있는데
그런 문제는 없네요...
따로 설정한 부분도 거의 없고 배포판 기본설정이나 다름없는데
말씀하신 문제는 없네요...

--
Have you ever heard about Debian GNU/Linux?

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.