목록프로그래밍 (299)
Dharma
최근 자바 작업을 할 일이 있어서 하다보니 인라인 함수가 없다는 충격적인 소식을 들었습니다. 간단한 작업은 전부 인라인 작업을 즐겨하는 저에게는 청천벽력같은 일!! 그래서 귀찮은 작업들을 정말 간단한 이맥스 함수를 만들어서 해결 하는 방법을 소개할까 합니다. (defun put-iteration (var) (interactive "s메시지: ") (insert "parse_map.put(\"" var "\" , getTextValue(docEle , \"" var "\"));\n" )) (global-set-key "\C-\M-z" 'put-iteration) 주어진 var 형태를 소스에 직접 입력하는 방식입니다. 아래에 있는 줄은 단축키를 지정하는 것입니다. 자주 쓸것도 아니고 작업할 때만 몇가지 변경..
자바에서 Ant 를 이용해서 다중 컴파일 할때 큰 프로젝트의 경우에는 여지 없이 메모리 에러가 발생합니다. 그럴 때는 COMMAND 프롬프트 상에서 set ANT_OPTS=-Xmx1024m -Xms512m 와 같이 입력하면 깔끔하게 해결됩니다.
간단한 파일하고 설정만으로 매킨토시 컴퓨터에 SVN 서버를 설정할 수 있습니다. 1. 저장소 만들기 mkdir /Users/crazia/svn cd /Users/crazia/svn svnadmin create super_ultra chown -R www:www /Users/crazia/svn/* svn 레파지토리가 될 디렉토리를 생성하고, svnadmin 을 이용해서 프로젝트를 생성합니다. 지금 보여지는 예제로는 super_ultra 가 되겠군요. 그리고 chown 을 이용해서 www:www 로 바꿔줍니다. 2. 설정파일 만들기 sudo emacs /etc/apache2/other/svn.conf -- svn.conf -- LoadModule dav_svn_module /usr/libexec/apache..
간만에 Vim 세상으로 돌아 온 것이 아니고, 옆에 앉은 개발자가 사용하는 vi 에서 이상하게 backspace 가 안 먹는다고 해서 해결책을 찾다가 알게 된 사항입니다. $HOME 에 .vimrc 라는 파일을 만들어 줍니다. :imap ^H 라는 내용을 채워 줍니다. ^H 는 (Ctrl+V 누르고 Backspace 를 누르는 것입니다) 이렇게만 해주면 됩니다.
EmacsW32 에서 grep 을 이용하여 정규표현식으로 검사할려고 하면 "memory exhausted" 에러가 발생하는 현상을 수정하는 방법입니다. 이 현상은 굳이 EmacsW32 의 문제라기 보다는 grep for Windows 버젼의 문제인것 같습니다. 따라서 버젼이 다른 grep 을 사용하고 있었다면 발생 안했을 확률이 높습니다. 왜냐하면 EmacsW32 안에 포함되어 있는 grep 의 버젼이 문제가 있는 버젼이기 때문입니다. grep 의 버젼이 2.5.1 인데 그러한 문제를 포함하고 있습니다. Grep for Windows(클릭) 사이트에서 최신 버젼으로 다운 받습니다. 최신 버젼은 2.5.4 버젼이군요. 1. 여기에서 Setup File을 받아서 설치합니다. 'Complete package,..
EmacsW32 를 설치하고 grep-find 를 동작하게 만들기 위해서 몇가지 세팅을 해줘야 합니다. 1. EmacsW32 설치하기 EmacsW32 소개페이지(클릭) EmacsW32 는 GNU Emacs 에다가 윈도에서 사용하기 편하게 몇가지 패치를 한 버젼입니다. 편해서 윈도에서는 항상 설치해서 사용하고 있습니다. 2. grep-find 문제 해결 grep-find (find-grep 으로 써도 똑같이 동작함)은 현재 디렉토리부터 하위 디렉토리까지 찾고자 하는 단어를 포함하고 있는 줄의 정보를 표시하는 Emacs 의 기능입니다. 유닉스 명령어 (unix command) 중에서 가장 많이 쓰이는 find 와 grep 을 합쳐놓은 것입니다. 게다가 검색된 파일을 바로 emacs 상에서 열어서 편집할 수가..
osx snow leopard (10.6) 에 mysql 64bit 5.5.8 버젼을 설치하는 방법을 설명합니다. 빌어먹을 osx 스노우 레오파드 (snow leopard) 에는 mysql 도 제대로 설치가 되지 않습니다. 물론 이건 mysql 측에서 제대로 만들어 줘야 하는 문제인거 같기는 하지만 짜증나는건 마찬가지입니다. mysql 사이트에서 다운 위 사이트에서 "Mac OS X ver. 10.6 (X86 , 64-bit), DMG Archive" 를 받아서 설치해 줍니다. 그리고 mysql -uroot 하면 아무일도 안 일어날 것입니다. 그래서 조금의 삽질 끝에 설치하는 법을 알아냈습니다. * 참조 사이트 를 참조했습니다. 1. ~/.bash_profile 파일을 에디터로 열어서 다음과 같이 추가한..
Emacs 에서 조금이라도 처음 실행 될 때 속도를 높일려고 하다 보면 필연적으로 .el 파일을 컴파일 해서 .elc 로 만들게 됩니다. 속도가 얼마나 빨라지겠느냐 하지만 기분상이라도 빨라지게 하려면 컴파일 해주는 것이 좋습니다. 더구나 컴파일만 해주면 알아서 .el 대신 .elc 파일을 로딩하니 편리하기도 합니다. 일반적으로 .el 파일을 컴파일 할려고 하면 M-x byte-compile-file 컴파일 대상 파일 지정 이런식으로 컴파일을 해줘야 합니다. 하지만 이 얼마나 불편합니까? 따라서 디렉토리에 존재하는 모든 .el 파일을 컴파일 하는 명령을 소개할 까 합니다. C-u 0 M-x byte-recompile-directory 앞에 C-u 0 (숫자임) 을 붙이는 이유는 질문이 안나오고 전부 .el..
UITextView 에서 단어 개별에 관한 특정 작업(색을 다르게 입힌다던가, 애니메이션, 이미지 추가)을 위해서는 단어가 출력되는 좌표와 크기를 알아야 합니다. 그 개별 개별 단어의 크기와 좌표를 알아내는 방법에 관한 글 입니다. iPhone apps 개발하는 중에 문장이 쓰여져 있는 UITextView 에서 특정 단어에 효과를 주고 싶었습니다. UIWebView 를 이용해서 화면에 글을 출력하고 CSS 와 Javascript 를 이용해서 개발하면 된다는 소리가 있기는 하던데, 제가 잘 아는 분야와는 조금 거리가 있어서, UITextView 를 수정하기로 했습니다. 원리 원리는 쉽습니다. UITextView 에서 문장을 출력하는 경우라고 하면 1. 문장을 각 단어별로 쪼개서 NSArray 로 저장합니다..
프로그래밍을 하다보면 수학적 귀납법의 원리를 이용하여 함수가 제대로 작성 됐는지 검증하면 편할 때가 많습니다. 수학적 귀납법 자연수 n과 관련된 명제 P(n)을 증명하려고 할 때, 다음 두 가지만 증명하면 된다. 1) n=1일 때, 참이다. 2) n=k일 때, 참이라고 가정하면 n=k+1일 때도 참이다. 1)과 2)에 따라서 모든 자연수일때 명제가 성립한다. 살아오면서 수학과 프로그래밍에 대해서는 별다른 연관성을 못 느끼고 있었습니다. '수학적 사고나 논리력 증대가 프로그래밍에 도움이 되는 것이겠지' 정도로만 치부하고 살았는데, 최근에 결국 프로그램의 대부분이 아무리 많은 데이터를 다루더라도 index 형태로 처리하게 된다면, 함수를 작성할 때 귀납법을 고려해서 작성하면 좋구나 하고 느낄 때가 있었습니다..