2022년 12월 18일 일요일

Windows - gnuwin32 명령어 설정

참고

https://github.com/bjtj/emacs-init/blob/69e84c764414bcc4d553f486460b7385cd9071c9/.emacs#L216-L230

 

gnuwin32

https://gnuwin32.sourceforge.net/

윈도 포팅된 gnu 명령 프로그램 모음 (예: find, grep, diff 등)

전체 목록

 

특정 폴더 (예: C:\dev\xplatform) 에 리눅스 폴더 구조로 관리 하고 있음

e.g.) C:\dev\xplatform\bin 에 실행 파일들이 위치함

 

emacs program 설정 방법

예를 들어 emacs 는 system 의 find 또는 grep 명령을 통해 파일 탐색 동작을 한다.

find 는 윈도에도 같은 이름의 명령이 있지만 gnu find 명령과 입력 동작 방식이 다르다.

grep 은 기본적으로 윈도에 존재하지 않는다.

이런 경우 emacs 가 gnuwin32 의 find 와 grep 을 사용하도록 설정할 수 있다.


.emacs 예


(when (eq system-type 'windows-nt)
  (setenv "PATH"
          (concat
           "C:/dev/xplatform/bin;"
           (getenv "PATH")))
  (setq exec-path
        (append
         '("C:/dev/xplatform/bin")
         exec-path))
  (setq find-program "C:/dev/xplatform/bin/find.exe")
  (setq grep-program "C:/dev/xplatform/bin/grep.exe"))


  • (when (eq system-type 'window-nt) 부분은 windows 환경인 경우에만 실행하도록 확인하는 부분
  • (setq find-program "...")(setq grep-program "...") 부분이 find 와 grep 명령 위치를 설정하는 부분

 

PATH 를 지정하는 부분도 있는데 윈도 내장 명령의 경우 모든 PATH 의 우선인 경우가 있어서 위와 같이 직접적으로 일일이 설정해야 제대로 동작할 수 있다.

(setenv "PATH"
        (concat
         "C:/dev/xplatform/bin;"
         (getenv "PATH")))
(setq exec-path
      (append
       '("C:/dev/xplatform/bin")
       exec-path)) 

 

 

 

 

2022년 8월 29일 월요일

[Emacs + Windows] SSH Tramp

윈도우즈에서 emacs 로 ssh 접속시 sshx 또는 plink 를 사용할 수 있는데 개인적으로 plink (putty) 가 더 잘 동작했다.


참고: https://www.emacswiki.org/emacs/Tramp_on_Windows 

 

sshx 

/sshx:username@hostname: 


plink

/plink:username@hostname:

putty 설정을 공유함


pscp

파일 복사시 scp 대신 pscp

 

팁)

포트 번호 입력 방법

/plink:username@hostname#portnumber:

 

pagent 로 키 관리

pagent 에 키를 추가하면 ssh 접속시 키를 자동으로 찾는다.

부팅 시 자동 실행 방법

1. pagent 바로 가기 만들기 (예: C:\Program Files\PuTTY)

2. '시작 프로그램 폴더' 열기: 윈도키 + r (실행) -> shell:startup

3. 바로 가기 복사

4. 바로 가기 속성

5. '대상' 입력 창에 파라메터로 키파일 (*.ppk) 위치 나열