Emacsに関連してよくあるかもしれない質問集です
Emacs21.3.5 on Carbon
Contents
ネットワークが遅い
方法はいろいろあります。
tcp.elの利用
(require 'tcp) (defadvice process-status (after process-status-advice) (let ((ps ad-return-value)) (setq ad-return-value (cond ((not (equal (car (process-command (ad-get-arg 0))) tcp-program-name)) ps) ((eq ps 'run) 'open) ((or (eq ps 'signal) (eq ps 'exit)) 'closed) (t ps))))) (ad-activate 'process-status)
ソースコード変更
http://pc.2ch.net/test/read.cgi/mac/1034581863/363
configure後にできるsrc/config.hで #define HAVE_GETADDRINFO 1 をコメントアウトしてコンパイルしたら、待ち時間がなくなりました。
との事
/* #define HAVE_GETADDRINFO 1 */
PATHはどうなってるの?
/usr/bin:/bin:$HOME にパスがとおっています。
.emacsにたいして
(setenv "PATH" (concat '"/usr/local/bin:/sw/bin:" (getenv "PATH")))
とかでパス追加可能
フォントの設定
(create-fontset-from-fontset-spec (concat "-*-fixed-medium-r-normal-*-16-*-*-*-*-*-fontset-monaco16," "japanese-jisx0208:-apple-osaka-medium-r-normal--16-160-75-75-m-160-jisx0208.1983-sjis," "ascii:-apple-monaco-medium-r-normal-*-14-*-*-*-*-*-mac-roman")) (set-default-font "fontset-monaco16")
大きく感じる場合は、
(create-fontset-from-fontset-spec (concat "-*-fixed-medium-r-normal-*-12-*-*-*-*-*-fontset-monaco12," "japanese-jisx0208:-apple-osaka-medium-r-normal--14-140-*-m-140-jisx0208.1983-sjis," "ascii:-apple-monaco-medium-r-normal-*-12-*-*-*-*-*-mac-roman")) (set-default-font "fontset-monaco12")
なんてどうでしょうか??
ヒラギノにする場合は以下な感じです。
ヒラギノ角ゴ
(create-fontset-from-fontset-spec (concat "-*-fixed-medium-r-normal-*-16-*-*-*-*-*-fontset-hiragino16," "japanese-jisx0208:-apple-\203q\203\211\203m\203m\212\333\203s pro w4-medium-r-normal--16-160-75-75-m-160-jisx0208.1983-sjis," "katakana-jisx0201:-apple-\203q\203\211\203m\203m\212\333\203s pro w4-medium-r-normal--14-140-75-75-m-140-mac-roman," "ascii:-apple-monaco-medium-r-normal-*-14-*-*-*-*-*-mac-roman")) (set-default-font "fontset-hiragino16") (setq default-frame-alist (append '((font . "fontset-hiragino16"))))
SSHでBackspaceがうまくきかない
;;; help key変更 ;; BackSpaceをC-hに変更 ;; sshする時の都合上 (global-set-key "\C-h" 'backward-delete-char) ;;(define-key fence-mode-map "\C-h" 'fence-backward-delete-char) ;;(define-key henkan-mode-map "\C-h" 'henkan-quit) ;;(define-key isearch-mode-map "\C-h" 'isearch-delete-char) (global-set-key "\M-?" 'help-for-help) ;;(define-key fence-mode-map "\M-?" 'fence-mode-help-command)
もっと簡単にする場合は
;; deleteキーとC-hを交換 (load-library "term/keyswap")
shellでC-hがbackspaceになれてしまったのと、sshでうまくbackspace効かなかったのでこれだけは変更する事にした。
コメントアウトしてある所はエラーになりますが。。。ある環境はで必要です_o_
全角空白、タブ、末尾の無駄な空白の色付け
font-lockを利用します。
オリジナルは以下のサイトの模様です。
http://homepage1.nifty.com/blankspace/emacs/color.html
またこのサイトより古いものがemacs.helpのnewsに流れている模様です。
(defface my-mark-tabs '( (t (:foreground "red" :underline t) )) nil) (defface my-mark-whitespace '( (t (:background "gray") )) nil) (defface my-mark-lineendspaces '( (t (:foreground "SteelBlue" :underline t) )) nil) (defvar my-mark-tabs 'my-mark-tabs) (defvar my-mark-whitespace 'my-mark-whitespace) (defvar my-mark-lineendspaces 'my-mark-lineendspaces) (defadvice font-lock-mode (before my-font-lock-mode ()) (font-lock-add-keywords major-mode '( ("\t" 0 my-mark-tabs append) (" " 0 my-mark-whitespace append) ("[ \t]+$" 0 my-mark-lineendspaces append) ))) (ad-enable-advice 'font-lock-mode 'before 'my-font-lock-mode) (ad-activate 'font-lock-mode)
font-lockが有効なモードでしか色がつきません。
その他に
http://www.emacswiki.org/cgi-bin/wiki.pl?ShowWhiteSpace
http://www.emacswiki.org/cgi-bin/wiki.pl?CategoryFaces
を参照してください。
EOFに色を付けたい場合は以下のスレッドを参照してください。
http://www.ysnb.net/meadow/meadow-users-jp/1999/msg00625.html
以下な感じで可能。 http://www.emacswiki.org/cgi-bin/wiki.pl?HighlightEndOfBuffer
にあった。ので修正した。
(defun my-mark-eob () (let ((existing-overlays (overlays-in (point-max) (point-max))) (eob-mark (make-overlay (point-max) (point-max) nil t t)) (eob-text "[EOB]")) ;; Delete any previous EOB markers. Necessary so that they don't ;; accumulate on calls to revert-buffer. (dolist (next-overlay existing-overlays) (if (overlay-get next-overlay 'eob-overlay) (delete-overlay next-overlay))) ;; Add a new EOB marker. (put-text-property 0 (length eob-text) 'face '(foreground-color . "slate gray") eob-text) (overlay-put eob-mark 'eob-overlay t) (overlay-put eob-mark 'after-string eob-text))) (add-hook 'find-file-hooks 'my-mark-eob)
(if (eobp) (function) ))
とかではうまくいかないのだった。まあ当然ですね。意味がちがうから。。<eof>
http://member.nifty.ne.jp/~satomii/software/jaspace.el
バイトコンパイルをTerminalからする
emacs -batch -f batch-byte-compile file-name
まちがって終了してしまう
C-x C-cをまちがっておしてしまう場合は以下を.emacsに記述
(add-hook 'kill-emacs-query-functions (lambda () (y-or-n-p "Finish?") ))
バグ報告
M-x report-emacs-bug RET
の場所になります。