티스토리 툴바


당신을 위한 오픈소스

IT 2012/02/06 01:56 Posted by rkJun
Open Source for you : http://blog.jupo.org/2011/09/12/open-source-for-you/ 

오픈소스 커뮤니티에서 활동하고 있는 Stephen McDonald 의 블로그에서 본 글인데, 좋은 글인 것 같아, 미천한 영어임에도 불구하고 번역해 볼까 했는데, 잘 되지 않으므로 (read 와 translate 는 본질적으로 다르다 -_-;; )

큰 타이틀만 적어보면,
---------------------------------------------------------------
업무로 짜증나는 날들, 다시 즐겁게 프로그래밍하기.
협업을 통해 더 좋은 개발자가 되기.
돈을 벌기.
비기술 경험 넓히기
좋은 사람이라고 느끼기
---------------------------------------------------------------

자,  이제 오픈소스 활동을 시작합시다~.
 
저작자 표시 비영리 동일 조건 변경 허락

Mac 용 MPlayerX 1.0.12 한글번역본

IT 2012/01/31 00:49 Posted by rkJun
Mac 용 MPlayerX 1.0.12 한글번역 파일입니다.

(MPlayerX 란? 맥용 무료 동영상 재생 프로그램입니다. 한때 무비스트가 맥용 동영상재생기의 갑이었다면, 지금은 MPlayerX 가 갑이 아닐런지.. 물론 맥에는 퀵플레이어가 내장되어 있으나, 기능이 다소 아쉽습니다. 곰플레이어도 나왔지만, 탐색기능이 좀 아쉽습니다. 그래서 전 그냥 MPlayer X 를 가장 많이 쓰고 있습니다.)

이미 맥 앱스토어에 1.0.12 버전이 릴리즈되었기 때문에, 이미 이 번역파일은 필요가 없어졌네요.
좀 더 일찍 번역해서 MplayerX 제작자에게 제공했으면, 1.0.12 버전부터 공식 한글지원이 됐을 텐데, 아쉽기도 하네요.  (고로 정식지원은 1.0.13 부터 될 듯. 제작자와 메일을 주고 받았는데, 1.0.13 조만간에 또 릴리즈할 건데 그때 넣어준다고 하네요)

어쨋든 기존에 MPlyaerX 1.0.12 버전을 다운로드 받은 분들을 위해서, 배포해 봅니다. 

수동으로 적용하셔야 합니다.

첨부파일을, 응용프로그램 > MplayerX > 패키지내용보기 > Contents > Resources 안에 압축제거하면,

Korean.lproj 폴더가 생깁니다.

MplayerX 재시작하면, (한글 상위 설정이라면) 한글로 나옵니다.

번역하고, 검수를 주의깊게 안해서, 일부 글씨 짤림이 발생하기도 하네요. 번역깔끔하게 검수한번 해야겠네요.-_-;
(1.0.12 버전에 들어가지 않은게 다행일수도;;; )

베타 테스트 해주시고, 오역·오타 알려주시는 분께는 상품을 ···. 응(?)

1.0.13 에서는 깔끔하게 나올 수 있게 주의깊게 검수 해야겠다. 라고 다짐해 봅니다~


 
파일 다운로드
 
저작자 표시 비영리 동일 조건 변경 허락

Base64 UTF-8 인코딩 해주는 온라인 사이트

IT 2012/01/30 22:39 Posted by rkJun
Base64 UTF-8 인코딩, 디코딩을 간단하게 바로 온라인에서 확인 가능하다.

번역을 위해, 도움을 받았으므로, 포스팅으로 광고해둠.

http://coderstoolbox.net/string/

 
저작자 표시 비영리 동일 조건 변경 허락
jQuery Block UI 플러그인을 사용하면 ajax 처리중에 화면에 간단하게 음영처리를 할 수 있다.

즉, 화면을 Blocking 해주는 것인데 document 전체 적용도 가능하고 일부 DIV 영역에만, 음영처리를 할 수도 있다. 물론, 음영처리외에도 여러 방식의 데모를 제공해 주고, 원하는 입맛에 맛게 골라 사용할 수도 있고!

디폴트 세팅을 잡아 주고, 그대로 사용할 수 도 있고, 각각 화면마다 다른 방식의 스타일을 보여줄 땐 그때그때마다 CSS 속성을 건드려 해당 화면에서만 원하는 스타일을 구사하는 등, 여러모로 활용도가 높다.

(단 IE6 은 버전 특성상 Blocking 중일 때는 SELECT BOX 가 비표시처리된다. 워낙 IE6 에서의 SELECT BOX 는 뚫기능력이 강해서ㅋ)

또한, 음영처리와 더불어, Ajax 에 의한 비동기 처리중 다시 한번 요청을 보낼 수 없도록, 알아서 화면을 막아주기 때문에 추가적인 처리도 해 줄 필요가 없다. (Blocking 된 영역은 클릭자체가 불가능함)

아래는, 음영처리를 하지 않고, 이중처리만을 막기 위한 CSS 설정 속성이다.
어느 블로그에선가 보고, 적용해놨는데 -_- 다시 찾을려니 찾기가 힘들당 -_-;;

jQuery BlockUI.js 내에서 음영처리없도록 설정해놓음

$.blockUI.defaults = {
message: '',             // customize
    css: {
        width: '0px',        //customize
        top:        '5%',    //customize
        border:        '0px solid #aaa',    //customize
    },

overlayCSS:  {
    backgroundColor: '#FFF',    //customize
    opacity:           0.0,     //customize
    cursor:     'default'
    },

관련없는 코드부분은 전부 생략했고, 음영을 제거하고, 마우스 포인터만 디폴트 설정으로 바꿔놨다.
뭐 굳이 이렇게 쓸 일이 있을까 싶지만, 가끔 필요할 것 도 같아서 기록해 둔다.

아래 BlockUI Demo 링크도 달아둔다.

BlockUI DEMO

P.S 물론 ajax 처리중에만 쓰는 건 아니고, 일부 영역만 blocking 할 때 라던지, 여러모로 사용할 일이 많다.
저작자 표시 비영리 동일 조건 변경 허락
div 로 구성된 레이어 팝업을 화면 (브라우저) 의 중앙에 위치하도록 처리하는 자바스크립트.

jQuery 기반으로 되어 있으므로, 당연 jQuery 가 참조되고 있어야 한다.

코드 :

var CenterLayer = {
    isShow : {},

    showLayer : function (id) {
        var obj = $('#'+id);
        var iHeight = (($(window).height() - obj.outerHeight()) / 2) + $(window).scrollTop();
        var iWidth = (($(window).width() - obj.outerWidth()) / 2) + $(window).scrollLeft();

        obj.css({
            position: 'absolute',
            display:'block',
            top: iHeight,
            left: iWidth
        });

        this.isShow[id] = true;
    },

    hideLayer : function (id) {
        $('#'+id).hide();
        this.isShow[id] = false;
    },

    hideAll : function () {
        for (var id in this.isShow) {
            if (this.isShow[id]) this.hideLayer(id);
        }
    }
}





사용방법 :

  CenterLayer.hideAll(); // 모두 숨김
 CenterLayer.showLayer("div_id");  // 해당 id 값 보여주기
 CenterLayer.hideLayer("div_id");   // 해당 id 값 숨기기



추가적으로, 스크롤 이동시에 해당 레이어 팝업이 중앙으로 따라다니면서 위치할 수 있게,
 resize , scoll 될 때 이벤트를 -showLayer 호출하도록- 바인딩 시켜 둠.

$(window).bind('resize scroll', function() {
for (var id in CenterLayer.isShow) {
if (CenterLayer.isShow[id]) CenterLayer.showLayer(id);
}
});



같이 일했던 웹퍼블리셔분이 만들어준 코드.

+ 2011.12.17 해당 Layer Popup 의 outerHeight 값을 정확히 취득하지 못하는 케이스가 더러 있었는데, 이때는 당연히 outerHeight 값이 부정하므로 제대로 중앙에 위치되질 못한다. 결국 .css("top", "7") 등으로 top 의 값을 조정해서 임의 처리했다. -_-;;




저작자 표시 비영리 동일 조건 변경 허락

유클라우드 CS 사용후기

IT 2011/09/28 23:29 Posted by rkJun
사용후기라 할것 까진 없고, 그냥 약 보름정도 써보다가 해지 했다.

마땅한 아이템도 없는 상황에서, 무작정 서버만 가지고 놀기에는 별다른 사용 필요성이 느껴지지 않는다.
그냥 google app engine 만으로도 내가 원하는 놀이터 정도는 될 수 있을 것 같다.

잠깐이나마 써본 경험을 기억과 공유를 위해 메모해 둠.

1. 가상 서버답게 시작, 정지, 해지에 별다른 제약이 없다.

서버 띄우고 가지고  놀다가, 맘에 안들면 뭐 정지했다가 해지하면 된다.
(해지는 서비스시작당일은 안되고, 익일부터 가능함..)
새로 서버 추가해서 만들 수도 있고. 괜춚한 듯.. 

2. 널럴한 하드 용량 (120GB) 과 저렴한 가격 (월 3만3천원)

난 30기가 추가 제공 이벤트혜택에 따라 150GB . 그리고, 서버호스팅에 비해서는 저렴한 가격.

3. 빠른 속도

우리집이 인터넷이 느려서 그런지 몰라도, 서버에서 wget 명령등을 쓸 때 속도가 굉장히 빨랐음. 잘은 기억안나도 우리집 인터넷속도의 몇배쯤 되던거 같다.

 4. 빠른 기술지원 응대

정착 초기단계라 그런지, 문의사항 있으면 KT 에서 바로바로 답변 지원 해준다. 질문 올리면 거의 한시간안에 답장이 온다. 아직 익숙치 않아 종종 물어보게 되는데, 이부분은 정말 맘에 들었음. 
 

맘에 안들었던 건,

5. 한달무료 였는데, 서버 지우고 신규 서버시부터는 부과되는 점

이건 사실 내가 잘 몰랐던 부분이었는데, 서버 최초 생성시에는 한달 무료이벤트 적용을 받고 있다가,
이걸 삭제하고, 새로 서버를 만들면 이때부터는 과금처리된다. -_-
그래서 해지하면서 위약금이 부과되어 버렸다. -_-;
(서버 단위 과금)

6. 웹에서 클라우드 콘솔 클릭할 때 가끔 청약된 서버가 없다고 뜨는 오류?

이건 사실 오늘 하루만 이랬는데 왜 오류가 발생했는지는 잘 모르겠다.
정확히 좀 찾아보고 기술지원에 문의할까 싶었는데 시간도 없고 해서 그냥 재로그인 하니까 해결.

7. 뭔가 이상한 파일들이..

파일 뒤져보다 보면, 뭔가 의문의 파일들이 있다. 뭔가 다른 사람이 놔둔 것 같은 파일들이..
KT 관리자쪽에서 둔 파일인지는 잘 모르겠지만, 뭔가 의문스런 파일들이 가끔 보였음.


지금은 맛만 보고 패스하지만, 나중에 웹사이트 하나 만들게 되면 ucloud 에 한번 해보고 싶은 욕심이 든다.ㅋ

 
저작자 표시 비영리 동일 조건 변경 허락
보통 OS X 내에서 최근 사용 목록 (실행한 응용프로그램, 열어본 문서등) 삭제는 맨 좌측 상단의 사과마크 - 최근사용항목 - 메뉴지우기 에서 삭제가 가능하다.

그리고, 프로그램별로도, 각 응용프로그램별로 실행해서 최근에 열었던 파일 목록을 파일 - 최근파일열기(Open Recent) - 메뉴지우기(Clear Menu) 에서 삭제가 가능하다.

그런데, 이게 골 때리는게, 이렇게 최근사용항목들을 삭제 해 놓아도, Dock 에서 마우스오른쪽 클릭 (트랙패드 두손가락 탭) 을 했을 때, 최근사용목록이 뜨도록 되어 있는데, 이게 연동이 되는지 안되는지, 아무튼 이런 저런 액션들을 다 해놓고도 삭제가 제대로 안되고 남아있는 경우가 있다.




아무튼 내가 원하는 건, Dock 에 뜨는 최근 사용 파일 목록을 삭제하는 거고,
이래저래, 인터넷을 찾아봤는데, OS X Lion 의 버그 라는 얘기도 있고 해서, 한동안 해답을 찾을 수 없었다.
··· 만은, 결국 파일 삭제를 통해 해결하는 방법을 알아냈다.

방법은 간단하다.

~/Library/Preferences 폴더에는 프로그램들에 대한 환경설정파일들이 존재하는데, 이중에 프로그램별로 LSSharedFileList.plist 이런 이름을 가진 파일이 존재한다. 이놈을 삭제해 주면 된다.
단, 파일이름이 xxx.LSSharedFileList.plist 조합으로 되어 있어서, 어떤 프로그램의 최근사용목록을 지울지 확인후에 지워야 한다.

예 )

난 abc 프로그램 의 dock 최근사용목록을 삭제하고 싶음.
cd ~/Library/Preferences           --해당 폴더로 이동해서,
ls -al "*abc*"            -- abc 프로그램 이름이 들어간 파일들을 찾는다.

찾아보니...
xxx.xxx.abc.LSSharedFileList.plist
xxx.xxx.abc.LSSharedFileList.plist.lockfile
xxx.xxx.abc.plist
xxx.xxx.abc.plist.lockfile
 
관련 파일이 4개가 나온다.  뒤에 LSSharedFileList.plist 가 붙은 파일은 지워버리자.

rm xxx.xxx.abc.LSSharedFileList.plist 

해당 프로그램을 재시작하고, dock 을 확인해보니, 드뎌 깨끗해졌다. ㅎ


출처 : http://forums.macrumors.com/showthread.php?t=1189631


저작자 표시 비영리 동일 조건 변경 허락

OS X Lion 설치후에 git

IT 2011/07/25 23:51 Posted by rkJun
OS X Lion 설치후에 git 명령이 안되길래, 설치할 때 같이 지워진 줄 알았는데, 그게 아니었다.

 $ git
-bash: git: command not found

Snow Leopard 에서 설치한 git 이 사실은 남아 있었다.

$ mdfind -name git
...
...
....
/usr/local/git/bin/git

일단 git 이 설치된 경로를 확보한 뒤,

심볼릭 링크를 주는 것으로 해결했다.

sudo ln -s /usr/local/git/bin/git /usr/local/bin/git

그 외에도, 그냥 git 을 실행할 수 있게 path 만 잡아 줘도 된다.

결론은, 스노레오파드에서 설치한 Git 은, 라이언 설치하고 나서도 남아 있고,

라이언에서도 잘 실행된다.

참조 : Git not found after installing OS X Lion

 
저작자 표시 비영리 동일 조건 변경 허락
TAG Git, 라이언

OKJSP MobileWeb 과 twitter API 세미나

IT 2010/06/28 09:10 Posted by rkJun
2월즈음에,

OKJSP 에서 모바일웹 프로젝트를 진행해 왔는데,
여러가지로 재밌는 프로젝트였습니다.

OKJSP 를 위해 개인적으로 뭔가 도움이 되고 싶었는데 조금이나마 도움이 된 것 같아 뿌듯했습니다.
오히려 도움이 되기 보다 제가 도움을 더 많이 받은 것 같습니다.

좋은 사람들도 많이 알게 됐고, 무엇보다 즐겁고 재밌는 프로젝트 였으니까요.




저작자 표시 비영리 동일 조건 변경 허락

'IT' 카테고리의 다른 글

OS X Lion 설치후에 git  (0) 2011/07/25
OKJSP MobileWeb 과 twitter API 세미나  (0) 2010/06/28
엑세스가 거부 되었습니다. (IE 자바스크립트오류)  (1) 2010/06/16
Hello, Android  (0) 2010/02/04
부모의 객체를 가져오다, 엑세스가 거부되었다는 오류가 뜬다.

iframe 으로 뜨는 자식페이지에서 부모의 객체를 가져와서 iframe 쪽 사이즈 자동 변경처리를 만들어 놨는데, 개발 서버에서는 나지 않는 자바스크립트 오류 (엑세스가 거부 되었습니다.) 가 유독 운영서버에서만 발생했다.

아무튼 몇번의 디버깅과 구글링을 통해, 그 해답을 빠르게 얻을 수 있었다.

JavaScript iframe Object : http://www.cadvance.org/?leftmenu=doc/include/total_menu.asp&mainpage=doc/java/object/iframe_object.asp

링크를 따라가 보면,

iframe의 security(보안 문제)

iframe의 src로는 상대 경로를 지정해야 됩니다. 예를 들어 http://www.som_uri.com/ 과 같은 절대 경로는 사용하면, IE는 '엑세스가 거부 되었습니다.' 라는 경고창이 뜨고, FF의 경우에는 아예 무시하고 아무런 작동도 하지 않게 됩니다. 그러므로 '../doc/iframe.html' 과 같은 자기의 서버나, 무료 홈 계정 폴더의 상대 경로를 사용해야 됩니다.

이런 내용이 있다. 
일단 이 내용을 참조하여, 추가적인 구글링을 실시.

[Java & Coffee 블로그] javascript opener 오류 "엑세스가 거부 되었습니다."  : http://eyecandyzero.tistory.com/178

[ajax 블로그] [javascript] pop 으로 띄운 child 가 parent 값을 읽지 못할 때  : http://ajax.tistory.com/20

결국 부모창의 도메인과 자식창의 도메인이 서로 달라 이런 문제가 발생할 수 있었던 거다.

document.domain 을 자식창에서 다시 동일하게 지정해서 문제를 해결했다.

현재 내 쪽에서 발생한 문제는 서브 도메인 (www.naver.co.kr 을 메인으로, test.naver.co.kr 을 서브도메인으로 사용하여 자식창에서 부모창 값을 가지고 온다.) 때문에 발생했으니, 간단하게 자식창에서 parent 값을 가져오기 전에 메인 도메인으로 지정해서 가져오도록 수정했다.

if (document.domain.toString().indexOf("naver.co.kr") != -1) {
document.domain="naver.co.kr"; 
}


[ 2010. 6. 24 추가합니다. ]
한쪽에서만 해결해 주면 되는 게 아니었습니다.
www.naver.com 과 test.naver.com 두 곳에 모두 document.domain = "naver.com" 으로 지정해 주어야 합니다.




저작자 표시 비영리 동일 조건 변경 허락

'IT' 카테고리의 다른 글

OKJSP MobileWeb 과 twitter API 세미나  (0) 2010/06/28
엑세스가 거부 되었습니다. (IE 자바스크립트오류)  (1) 2010/06/16
Hello, Android  (0) 2010/02/04
정보처리기사 자격 취득  (0) 2009/08/19