emacs 에서 큰 파일 스크롤 할때 버벅이는 현상 해결 가능한가요?

oppor의 이미지

emacs에서 꽤 긴 파일을 읽은뒤에 스크롤을 해보면 순간적으로 딜레이 현상이 나타나는데요.

끝까지 읽고 난 다음에는 이런 현상이 나타나지 않습니다.

예상으로는 이맥스가 파일을 한번에 다 읽지 않고 스크롤 해야 할때에 읽기 때문에
그런것 같은데요. 메모리가 넘쳐나서 초기에 모두 읽도록 해줘도 괜찮을것 같거든요.
스크롤시에 딜레이도 조금 거슬리구요.

이거 설정하는게 있을까요? 당연히 있을것 같은데 어떤 키워드로 찾아야 할지 모르겠네요.

도움 부탁드립니다.

oppor의 이미지

이런 현상은 저만 있는건가요?

madman93의 이미지

1. linux or windows emacs 종류는?
2. 꽤 긴 파일을 읽은뒤 라 하셨는데 사이즈나 라인수가 어떻게 되는지요?
3. 키보드에 의한 즉 C-n 에 의한 스크롤인지 마우스에 의한 스크롤인지요?
4. .emacs 파일 전체를 공개 하기 어려 우시면 scroll 관련 설정이 어떻게 되는지요?

제 경험상 linux 나 windows 쪽에서의 emacsw32 ntemacs 둘다 그런 현상이 발생하는데요
어느정도 설정으로 커버가 되는 상황입니다.

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

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

oppor의 이미지

1. linux ubuntu 10.04 emacs 23.1.1 입니다.
2. 몇백 라인 이상이면 나타나는군요.
3. C-n에선 나타나지 않고 C-v 나 마우스 스크롤에서 나타납니다.
4. scroll 관련 설정은 기본 그대로 입니다. 따로 설정된 부분이 없네요.

이 현상이 C-v 나 마우스 스크롤로 끝까지 다 읽은 뒤에는 나타나지 않는 걸로 봐서
처음 읽을 때 모두 메모리에 올려놓도록 설정하면 될것 같은데,
관련 정보가 없네요.
어떻게 설정 하셨나요?

madman93의 이미지

emacs 에서의 smooth scroll 관련 사항을 찾아 보시면 좋은 정보들이 많더군요
scroll 관련되서 고민하는 사람들이 많은가 봐요

저 같은 경우는 마우스나 C-v 에서는 발생하지 않고 C-n일때 발생했었는데
시스템 마다 조금씩 다른 현상이 있나 보군요

아래 설정들은 제가 그동안 테스트 했던 것들인데요
제가 현재 windows를 쓰고 있어서 ntemacs 설정이긴 하지만 별 무리는 없을 것입니다.

자신에 맞는 설정을 찾는 수 밖에 없을 것 같군요
분명한건 효과는 있습니다.^.^

;; smooth scrolling
;;(setq scroll-conservatively 10000) 
 
 
; scroll just one line when hitting the bottom of the window center
;;(setq scroll-step 1)
 
 
 
;; ;;; test 1
;; (when (fboundp 'blink-cursor-mode)
;;   (blink-cursor-mode -1))
;; (setq visible-cursor nil) ; Emacs 22
;; (setq-default scroll-step              1
;;               scroll-conservatively    most-positive-fixnum
;;               scroll-up-aggressively   0.0
;;               scroll-down-aggressively 0.0)
 
 
;; test 2
;; (setq scroll-step 1)                    ;; just like windows scrolling
;; (setq scroll-conservatively 50)
 
 
;; test 3
;; (setq
;;   scroll-margin 0                  
;;   scroll-conservatively 100000
;;   scroll-preserve-screen-position 1)
 
(setq scroll-margin 1
scroll-conservatively 0
scroll-up-aggressively 0.01
scroll-down-aggressively 0.01)

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

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

madman93의 이미지

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