eclipse + pdt + rse 환경에서 emacs로 넘어가려고 하고 있다.
이유는 다수의 프로젝트를 생성 관리하는 상황에서 GUI만 사용하는 이클립스 환경에서는 이를 간단하게 자동화 할 방법이 없기 때문이다.
(물론 이클 플러그인을 짜서 '복잡하게 자동화'할 방법은 많이 있을 것이다... 그러나 scripting eclipse 는 여전히 정체중. 참고 : [http]eclipse shell, [http]Would You Script Eclipse? )
또 gui 기반의 os와 eclipse를 넘나들면서 하는 작업에 진력이 난 이유도 있다.
결국 근본적인 해결을 위해 linux로 완전히 이행할 생각이다.

emacs 에서 php 작업을 하는 것은 어렵지 않다. [http]ecb를 이용하면 프로젝트 트리도 볼 수 있다.
문제는 rse 환경에서처럼 ftp에 연결한 상황에서 프로젝트 트리를 보는 것인데, 어떻게든 될 것 같긴 하지만 확신이 서지 않는다.
일단 리눅스와의 연계 작전을 생각하고 있다. [http]ftpfs처럼 ftp 자체를 마운트해 사용하는 것이다.
(윈도우xp에서는 [http]기본 네트워크 연결 기능을 이용해 ftp 드라이브를 마운트할 수 있다.)
그러나 ftpfs및 새 구현인 lufs 프로젝트는 침체된 듯 하고, [http]gentoo 위키의 게시물을 따라서 [http]fuse를 사용해 보기로 했다.

X윈도우상에서 터미널모드로 띄우기

# emacs -nw

자동 emacs 셋팅.

  1. [http]여기에서 latest EmacsW32+Emacs patched Emacs patched를 받는다.
    - [http] 여기에서 초보자를 위한 win32 셋팅을 참고.

나의 emacs 셋팅

;;; ~/.emacs.d/ 모듈을 자동 로드 (add-to-list 'load-path "~/.emacs.d/") ;;; X윈도우와 Clipboard 결합 (setq x-select-enable-clipboard t) ;;; 줄바꿈 방지 설정 (setq-default truncate-lines t) ;;; 한글 글꼴 설정 ;;; http://crazia.tistory.com/entry/Emacs-%ED%95%9C%EA%B8%80%ED%95%98%EA%B3%A0-%ED%95%9C%EC%9E%90%ED%8F%B0%ED%8A%B8-%EA%B7%B8%EB%A6%AC%EA%B3%A0-%EC%9D%BC%EC%96%B4%ED%8F%B0%ED%8A%B8-%EC%89%BD%EA%B2%8C-%EC%A7%80%EC%A0%95%ED%95%B4%EC%A3%BC%EA%B8%B0 (set-fontset-font "fontset-default" '(#x1100 . #xffdc) '("NANumGothicCoding" . "unicode-bmp")); (set-fontset-font "fontset-default" '(#xe0bc . #xf66e) '("NanumGothicCoding" . "unicode-bmp")); ;;; 시작시 안내 메시지 끄기 (setq inhibit-startup-message t) (setq inhibit-startup-echo-area-message t) (setq initial-scratch-message nil) ;;; 해시 백업 파일 생성 방지 (setq auto-save-default nil) (setq make-backup-files nil) ;;; Tab 크기 및 강제 탭 적용 (setq-default tab-width 4) (setq-default indent-tabs-mode t) ;;; Ctrl+Tab 이용한 버퍼간 이동 (global-set-key (kbd "<C-tab>") 'bury-buffer) ;;; syntax highlighting (global-font-lock-mode t) ;;;;;; 그루비 모드 관련 ;;; use groovy-mode when file ends in .groovy or has #!/bin/groovy at start (autoload 'groovy-mode "groovy-mode" "Major mode for editing Groovy code." t) (add-to-list 'auto-mode-alist '("\.groovy$" . groovy-mode)) (add-to-list 'interpreter-mode-alist '("groovy" . groovy-mode)) ;;; make Groovy mode electric by default. (add-hook 'groovy-mode-hook '(lambda () (require 'groovy-electric) (groovy-electric-mode))) ;;;;;; 탭바 모드 관련 ;;; 탭바 표시 (tabbar-mode)


php mode 설치

관리자로 로그인 : su

(하단 소스의 #은 get이 들어간 소스를 막고 있는 이 서버의 보안 설정 때문이다.
#다운로드 : http://sourceforge.net/projects/php-mode/
wg#et http://internap.dl.sourceforge.net/sourceforge/php-mode/php-mode-1.1.0.tgz
#압축 풀면 튀어나오는 php-mode.el을 옮긴다
mv php-mode.el /usr/share/emacs/21.3/lisp/
chmod 644 /usr/share/emacs/21.3/lisp/php-mode.el
Emacs 실행 : M-x byte-compile-file RET /usr/share/emacs/21.3/lisp/php-mode.el

.emacs 편집
(autoload 'php-mode "php-mode" "PHP editing mode" t)
(add-to-list 'auto-mode-alist '("\\.php\\'" . php-mode))

한글 설정


/etc/emacs/site-start.el 이라는 파일에 아래 사항을 넣어 주세요
(require 'cl) (when enable-multibyte-characters (set-language-environment "Korean") (setq-default file-name-coding-system 'euc-kr) ;; the following setting is unnecessary from 20.5 > ;;(when (string-match "^3" (or (getenv "HANGUL_KEYBOARD_TYPE") "")) (setq default-korean-keyboard "") (setq input-method-verbose-flag nil input-method-highlight-flag nil) ;; 주로 기존 파일을 열 때 인식에 사용된다 (prefer-coding-system 'euc-kr) ;; 새 파일을 작성할 때 사용된다 (set-default-coding-systems 'euc-kr) ;;(setq default-process-coding-system '(euc-kr . euc-kr)) (when window-system (global-set-key "\C-\\" 'undefined)) (add-hook 'quail-inactivate-hook 'delete-quail-completions) (defun delete-quail-completions () (when (get-buffer "*Quail Completions*") (kill-buffer "*Quail Completions*"))) (unless window-system (menu-bar-mode -1) (set-keyboard-coding-system 'euc-kr) (set-terminal-coding-system 'euc-kr) (define-key encoded-kbd-mode-map [27] nil)) (set-selection-coding-system 'ctext) ;; Hangul Mail setting (setq-default sendmail-coding-system 'euc-kr) ;; turn off C-h during input (eval-after-load "quail" '(progn (define-key quail-translation-keymap "\C-h" 'quail-delete-last-char) (define-key quail-translation-keymap (kbd "C-SPC") 'set-mark-command) (define-key quail-translation-keymap "\C-?" 'quail-translation-help))) (define-key global-map (kbd "C-x RET s") 'decode-coding-region))

기타 도움이 될 만한 명령어

현재 파일의 인코딩 변경 : C-x C-m f 인코딩명
에디터의 기본 인코딩 변경 : C-h C 인코딩명
EOF 형식 변경 : 접미사 이용 (예 : utf-8-dos, utf-8-doc, utf-8-mac)


모듈 참고

[http]ecb 솔루션 탐색기나 파일 익스플로러 스타일의 디렉터리 트리 탐색기
powered by Moniwiki | themed by clockoon
last modified 2011-10-20 00:04:54
Processing time 0.4129 sec