Emacs + Python


Cask


➜ .emacs.d cat Cask
...
(depends-on "yasnippet")
(depends-on "cl-lib")
(depends-on "init-loader")
(depends-on "python")
(depends-on "flycheck-pyflakes")
(depends-on "ecb")
(depends-on "flymake")
(depends-on "flymake-cursor")
(depends-on "elpy")

pip of Python


➜ ~ pip list
autopep8 (1.2.1)
Django (1.8.6)
flake8 (2.5.0)
Flask (0.10.1)
Flask-Psycopg2 (1.3)
importmagic (0.1.3)
itsdangerous (0.24)
jedi (0.9.0)
Jinja2 (2.8)
MarkupSafe (0.23)
mccabe (0.3.1)
pep8 (1.5.7)
pip (7.1.2)
pyflakes (1.0.0)
Pymacs (0.25)
rope (0.10.3)
ropemacs (0.8)
ropemode (0.3)
setuptools (18.3.1)
Werkzeug (0.11.2)
wheel (0.26.0)
yapf (0.6.2)
➜ ~

Xcode 7.0.1, Alcatraz 설치 후 메뉴가 안 보일 때,


Alcatraz ( http://alcatraz.io/ ) 설치 후 메뉴가 안 보일 때,

  1. Xcode 7.0.1 종료
  2. % defaults delete com.apple.dt.Xcode DVTPlugInManagerNonApplePlugIns-Xcode-7.0.1
  3. % curl -fsSL https://raw.github.com/supermarin/Alcatraz/master/Scripts/install.sh | sh
  4. Xcode 7.0.1 재시작

iOS 개발, CocoaPods, “.h” 파일들을 못 찾을 때 해결 방법


프로젝트에 Pods-{앱명}.[debug/release].xcconfig 이런 파일(텍스트)이 있을 것이다.

HEADER_SEARCH_PATHS = ${SRCROOT}/Pods/Headers/**

를 추가해 준다.

Xcode 의 “Build Settings” 쪽에 보면 “Header Search Paths” 항목에 “…./Pods/Headers/**” 가 추가 되있는 것을 볼 수 있다.

참고 : http://guides.cocoapods.org/using/troubleshooting.html

Emacs, Cask 설정


1. Cask 준비

설치 위치 : $HOME/.emacs.d

2. Cask 생성

$HOME/.emacs.d/Cask 를 만든다.

% cd $HOME/.emacs.d
% cask init

“cask init” 으로 Cask가 만들어 진 것을 볼 수 있다.

3. Cask 수정

http://cask.emacs.kr/dsl.html 에 있는 패키지 저장소 목록에서
( 예) http://elpa.gnu.org/packages/ )
직접 가보면 본인이 원하는 package를 검색해서 찾는다.
markdown 패키지가 mkdown 이라고 있고 이것을 설치 하고 싶으면
Cask에 아래 내용을 추가 하면 된다.

(depends-on "mkdown")

4. Cask로 패키지 설치

간단히 Cask 가 있는 디렉토리에서 cask 명령을 하면 설치가 된다.

% cask

5. “$HOME/.emacs.d/init.el” 추가


(require 'cask "~/.emacs.d/.cask/24.4.1/elpa/cask-20150109.621/cask.el")
(cask-initialize)
(require 'pallet)
(pallet-mode t)

– 끝 –

iOS 개발, CocoaPods 설치 및 프로젝트에 Facebook SDK 추가해 보기


1. CocoaPods(http://cocoapods.org) 설치 (no sudo 모드)

1.1 $HOME/.zshrc 추가


# for GEM
export GEM_HOME=$HOME/.gem
export PATH=$GEM_HOME/bin:$GEM_HOME/ruby/2.0.0/bin:$PATH

1.2 cocoapods 설치


% gem install cocoapods --user-install

$HOME/.gem/ 안에 설치가 된다.

1.3 cocoapods 초기화(?)


% pod setup

2. 예) Project 에 CocoaPods를 이용해서 FacebookSDK 설치

2.1 우선 Project 디렉토리로 이동한다.

(MyProject.xcodeproj 와 같이 xcode project 파일 이 있는 곳으로…)

2.2 Podfile 생성


% pod init

2.3 Podfile 수정.

(“pod ‘Facebook-iOS-SDK'” 추가)

% cat Podfile
# Uncomment this line to define a global platform for your project
# platform :ios, '6.0'

target ‘syruporder’ do
pod ‘Facebook-iOS-SDK’
end

target ‘syruporderTests’ do

end

2.4 FacebookSDK 를 받는다.

(Podfile 이 있는 디렉토리, Project 디렉토리에서 하면 된다.)

% pod install
Analyzing dependencies

CocoaPods 0.36.0.rc.1 is available.
To update use: `sudo gem install cocoapods –pre`
[!] This is a test version we’d love you to try.

For more information see http://blog.cocoapods.org
and the CHANGELOG for this version http://git.io/BaH8pQ.

Downloading dependencies
Installing Bolts (1.1.4)
Installing Facebook-iOS-SDK (3.23.0)
Generating Pods project
Integrating client project

[!] From now on use `syruporder.xcworkspace`.

[!] The `syruporder [Release]` target overrides the `GCC_PREPROCESSOR_DEFINITIONS` build setting defined in `Pods/Target Support Files/Pods-syruporder/Pods-syruporder.release.xcconfig’. This can lead to problems with the CocoaPods installation
– Use the `$(inherited)` flag, or
– Remove the build settings from the target.

% tree -L 1 -d Pods
Pods
├── Bolts
├── Facebook-iOS-SDK
├── Headers
├── Local\ Podspecs
├── Pods.xcodeproj
└── Target\ Support\ Files

Project에 Pods 라는 디렉토리가 생기고 Facebook-iOS-SDK가 잘 설치 된 것을 볼 수 있다.

– 끝 –

Ubuntu, Emacs 24.4 compile


1) 의존성 패키지 설치
$ sudo apt-get build-dep emacs24

2) emacs 24.4 설치

2-1) 압축을 풀고

2-2)
$ ./configure —prefix=/usr
$ make
$ sudo make install

– 끝 –

Emacs, Terminus + 나눔고딕코딩 글꼴 설정


emulator002

$HOME/.emacs.el
(defun xftp (&optional frame)
"Return t if FRAME support XFT font backend."
(let ((xft-supported))
(mapc (lambda (x) (if (eq x 'xft) (setq xft-supported t)))
(frame-parameter frame 'font-backend))
xft-supported))

(when (xftp)
(let ((fontset "fontset-default"))
;; (set-default-font "Terminus 10")
;; (set-face-font 'default "Terminus 10")
(set-default-font "Terminus")
(set-face-font 'default "Terminus")
;; (set-fontset-font fontset 'latin
;; '("NanumGothicCoding" . "unicode-bmp"))
(set-fontset-font fontset 'hangul
'("NanumGothicCoding" . "unicode-bmp"))
(set-face-attribute 'default nil
:font fontset
:height 120)
))

Emacs, background color



;; ================================================================================
;; 기본 색 지정
;; ================================================================================
(set-foreground-color "wheat")
(set-background-color "DarkSlateGray")

2013-06-21 AM 12.40.20

RGB Color :

#2F4F4F

OS X, Dash의 Integration 기능


Dash는 DocSets 등 개발 문서를 단축키 등으로 편하게 볼 수 있는 프로그램이다.
무료로 사용할 수 있지만, 유료를 구매하면 가끔씩 보이는 Timer를 없앨 수 있는 것 같다.

Dash URL : http://kapeli.com/dash

searches offline documentation sets for 80+ APIs

개발 문서를 쉽게 다운받을 수 있고 업데이트도 쉽게 관리가 된다.
시스템에 있는 문서도 검색을 해주고 인터넷에 있는 레퍼런스 문서도 80개 이상 설치 할 수 있다.

나는 Xcode, Eclipse 도 Integration 기능을 켜서 사용하고 있다.
Integration 기능을 설정 혹은 설치하기 위해서 Preferences의 Integration 탭을 보면 된다.
Integration 탭에 대표적인 앱들의 아이콘이 크게 자리잡고 있다.


Preferences 의 Integration

앱 아이콘을 클릭하면 설명 혹은 해당 Integration 웹 페이지로 이동하게 된다.

오늘은 터미널에서 Dash를 호출하는 것에 대해서 소개하려고 한다.

Dash_Preferences_Integration002Integration에서 Terminal을 클릭 화면

설명을 보면 알 수 있듯이 “open dash://php:{query}” 형식으로 호출 하면 된다는 것을 볼 수 있다.
그래서, dm.sh 스크립트를 아래와 같이 하나 만들고 manpages 를 호출 하도록 했다.

Doohyuns-MacBook-Pro@x% ls -al ~/bin/dm
lrwxr-xr-x 1 x staff 5 5 14 16:35 /Users/x/bin/dm@ -> dm.sh
Doohyuns-MacBook-Pro@x% cat ~/bin/dm.sh
#!/usr/bin/env bash
open dash://manpages:$1
Doohyuns-MacBook-Pro@x% dm tcpdump

Dash_dm_tcpdump
Terminal에서 dm 스크립트 실행 화면

Dash_Search_tcpdump
Dash에서 tcpdump manpage가 실행된 화면

– 끝 –