설정항 용량에 맞게 더미 파일 만들기(fsutil file createnew)

더미 파일을 만들고 싶으시면 아래와 같이 하시면 됩니다.

fsutil file createnew 경로 용량(사이즈)

예)   fsutil file createnew c:\파일명.zip 10000

Posted by jazzlife
,

git 작업취소

old/Git 2010. 8. 7. 20:30
개별파일 원복
git checkout  -- <파일> : 워킹트리의 수정된 파일을 index에 있는 것으로 원복
git checkout HEAD -- <파일명> : 워킹트리의 수정된 파일을 HEAD에 있는 것으로 원복(이 경우 --는 생략가능)
git checkout FETCH_HEAD -- <파일명> : 워킹트리의 수정된 파일의 내용을 FETCH_HEAD에 있는 것으로 원복? merge?(이 경우 --는 생략가능)

index 추가 취소
git reset -- <파일명> : 해당 파일을 index에 추가한 것을 취소(unstage). 워킹트리의 변경내용은 보존됨. (--mixed 가 default)
git reset HEAD <파일명> : 위와 동일

commit 취소
git reset HEAD^ : 최종 커밋을 취소. 워킹트리는 보존됨. (커밋은 했으나 push하지 않은 경우 유용)
git reset HEAD~2 : 마지막 2개의 커밋을 취소. 워킹트리는 보존됨.
git reset --hard HEAD~2 : 마지막 2개의 커밋을 취소. index 및 워킹트리 모두 원복됨.
git reset --hard ORIG_HEAD : 머지한 것을 이미 커밋했을 때,  그 커밋을 취소. (잘못된 머지를 이미 커밋한 경우 유용)
git revert HEAD : HEAD에서 변경한 내역을 취소하는 새로운 커밋 발행(undo commit). (커밋을 이미 push 해버린 경우 유용)

워킹트리 전체 원복
git reset --hard HEAD : 워킹트리 전체를 마지막 커밋 상태로 되돌림. 마지막 커밋이후의 워킹트리와 index의 수정사항 모두 사라짐.
                                  (변경을 커밋하지 않았다면 유용)


* 참조 : reset 옵션
--soft : index 보존, 워킹트리 보존. 즉 모두 보존.
--mixed : index 취소, 워킹트리만 보존 (기본 옵션)
--hard : index 취소, 워킹트리 취소. 즉 모두 취소.

'old > Git' 카테고리의 다른 글

Repo 설치 및 설정  (0) 2011.01.14
git 요약  (0) 2010.07.27
Subversion Git 사용법  (0) 2010.05.14
Eclipse Plugins  (0) 2010.02.01
Git과 SVN 통합  (0) 2010.02.01
Posted by jazzlife
,

Eternity74님의 블로그에서 얻은 아주 유용한 Tip!
Eternity74님 감사합니다.^^;

Source Insight로 디버깅을 하다보면, 떠있는 창이 50-60개에 육박하는 경우가 많은데,
이런 경우, Source Insight가 잡아먹는 리소스가 장난 아니다.
컴퓨터가 버벅거리기 일쑤~!
이 Tip을 적용하면, Source Insight에서 창이 10개이상이 뜨면, 오래된 창부터 자동으로 닫아준다.

이 매크로를 사용하려면,
Options > Preference > General > Enable event handler 에 체크가 되있어야 한다.
그 후, Base Project의 Utils.em파일을 열어 다음과 같은 function을 추가한다.

event DocumentOpen(sFile)
{
   nHoldWnd = 10
   winCnt = WndListCount()
   if(winCnt > nHoldWnd) {
      hWnd = GetCurrentWnd()
      while(nHoldWnd-- != 0) {
         hWnd = GetNextWnd(hWnd)
      }

      while(hWnd != 0) {
         hTmpWnd = GetNextWnd(hWnd)
         CloseWnd(hWnd)
         hWnd = hTmpWnd
      }
   }
}


event 로 시작하는 함수는 source Insight 에서 정의하는 event handler인데, DocumentOpen()이라는 함수는 새로운 파일을 open할때 불려지는 이벤트 핸들러이다.

적용해보니 잘된다. ㅎㅎㅎ
참고로 이 방법을 적용할 수 있는 Source Insight 버전은 3.50.0045 이상이어야 한다.

'etc' 카테고리의 다른 글

popJazzSmooth  (0) 2010.11.17
깡통파일(더미파일) 만들기  (0) 2010.09.01
SourceInsight 한글 주석 깨지지 않게하기  (0) 2010.07.09
Source Insight에서 Custom Language 추가하기  (0) 2010.07.09
안드로이드 참고자료  (0) 2010.07.08
Posted by jazzlife
,
설정방법
 
1. DoNoting() 이라는 macro를 만들어 추가한다. 진짜로 아무일도 하지 않는 걸로.
macro DoNothing()
{
}
2. Option > Key Assignment 을 선택한다.
 


 


 
3. Macro: DoNothing 선택후에 Assign New Key를 누르고 다음의 키조합을 입력한다.
Shift + 한/영 (황당한 조합이지만 먹힌다.)
4. 화면에 "shift+ " 로 표시되면 들어간 것이다.
 
5. 완료!!

이후로 아무 것도 해줄 필요가 없다.

그냥 메모장 쓰듯이 한글입력하면 된다. 쌍자음 그냥 입력해도 안 깨진다.

 
 
주의
"어 안되잖아?" 하시는 분이 있을까봐...
 
txt 파일에서 시험해보면 확실히 아무런 문제가 없는데, c 파일에서는 커멘트나 따옴표 블럭 밖에서는 한글이 깨진것처럼 보일 것이다.
정확한 이유는 알수 없지만 깨진게 아니고 잘못 보여주는 것이다. (syntax highlight 때문이라고 생각한다.)


아래 그림에서 보듯이, 마우스로 블럭선택해보면 멀쩡한 글자들이 보인다.

그리고 커멘트내에서는 안 깨져 보인다.

 c 파일에서 커멘트나 따옴표 외부에 한글쓸 일은 어차피 없으니 안심하자.


 


 
배경지식
 
Source Insight 로 한글입력시 shift 때문에 깨진 파일을 헥사 에디터로 보면 0xe5가 들어가면서 한글이 깨진다는 것을 알 수 있다.
그런데 0xe5가 뭐냐하면...
 
VK_PROCESSKEY (0xE5)
Windows 95/98/Me, Windows NT 4.0, Windows 2000/XP: IME PROCESS key
 
그니까 소스인사이트는 IME에서 내려오는 virtual key code중에서 ctrl 이나 alt 같은 실제로 문자입력이 아닌 값을 유효한 문자인 줄 알고 처리하고 있는 것이다.
 

그래서 이걸 가로챌 방법을 생각하다가 macro hot key로 assign 해보니까.. 통했다.


be happy!!

Posted by jazzlife
,

Source Insight에서 Custom Language 추가하기

Custom Language란?

  • Source Insight에서 기본적으로 제공하는 프로그래밍 언어 외에 사용자가 새로운 언어 타입을 재정의하거나 추가할 수 있는 기능을 말합니다.
  • 가장 일반적으로 많이 사용되는 C/C++, Java 등의 언어에 대한 Language Definition은 이미 Source Insight에 포함되어 있는데, 이것들 외에 사용자가 별도로 더 추가하고 싶은 언어가 있을 수 있습니다. 이럴 때 사용하는 것이 Custom Language 기능입니다.
  • 또는 Symbian C++ 등과 같이 별도의 추가적인 파일 확장자나 parsing 규칙을 일부 사용하는 경우에 기존 Language Definition을 상속/재정의 해서 사용할 수도 있습니다.

Custom Language File 구하기

  • 기본적으로 Source Insight 공식 홈페이지에서 제공하는 Custom Language File(이하 CLF)을 사용할 수 있습니다.
  • 인터넷 검색을 통해서 몇몇 CLF 파일을 구할 수 있기도 하지만, 의외로 드뭅니다. :(
  • 사용자가 직접 CLF를 만드는 것도 가능합니다. 이 작업은 좀 번거롭고 시간이 걸릴 수 있습니다.

Custom Language 추가하기

Custom Language를 추가하는 데에는 두 가지 작업을 필요합니다. 하나는 Language 자체에 대한 parsing 정보를 등록하는 것이고, 나머지는 등록한 Language를 Project에 적용할 수 있도록 Document Option에 추가해주는 것입니다.

  1. 새로운 Language 추가하기
    1. Options 메뉴 -> Preferences 메뉴 -> Languages 탭으로 이동합니다.
      sicl1.png
    2. Import 버튼을 눌러 원하는 CLF 파일을 가져옵니다.
      Add 버튼을 눌러서 새로운 Language를 추가하고 직접 keyword 편집이나 symbol parsing 규칙 등록 등의 작업을 해줄 수도 있습니다.
      sicl2.png
    3. 이제 Languages 탭에서 새로운 Language가 추가된 것을 확인할 수 있습니다.
      ※ 사용자가 추가한 Custom Language는 아이콘이 약간 다릅니다.
      sicl3.png
  2. 추가한 Language에 대한 Document Option 추가하기
    1. Options 메뉴 -> Document Options 메뉴를 실행한 다음 다이얼로그에서 Add Type 버튼을 눌러 새로운 타입을 추가합니다.
      sicl4.png
    2. 추가된 타입에 대한 상세 설정을 해줍니다.
      sicl5.png

      1. 이 Language Type이 적용될 확장자를 지정해줍니다.
      2. Include when adding to projects 항목을 체크해주어야 프로젝트 생성 시 해당 확장자 파일이 자동으로 추가됩니다.
      3. 위 첫 번째 단계에서 추가한 Custom Language를 지정해줍니다.

Symbian C++ 개발을 위한 추천 설정

Symbian 관련 개발 상에서는 일반 C++ 개발 상에서와 달리 추가되는 파일들이 몇 가지 더 있습니다. 그렇기 때문에 이 파일들을 별도의 Language Type으로 등록해주면 소스 분석에 더욱 도움이 됩니다.

  • 가장 먼저 Symbian C++ 관련 C.tom 파일을 적용해두셔야 합니다.
  • Symbian C++ 관련 source 파일 등록
    • 추가해야 할 확장자들: *.hrh;*.pan;*.inl;*.rsg;*.rh;*.loc;*.mbg;*.rss;*.rls;*.cia
      주의: C++ Language Type에 Symbian C++ 관련 확장자를 등록해두신 분은 C++ Language Type 쪽에서 그 확장자를 제거해주실 필요가 있습니다.
      sicl6.png
  • Symbian C++ 관련 build script 파일 등록

    • 추가해야 할 확장자들: *.mmp;*.midef;*.inf;*.iby
      sicl7.png
Posted by jazzlife
,
네트워크 공유방식 중 NAT방식을 사용하고 있다면 Bridge 모드로 바꿔줘서 가상 네트워크가 아닌

물리적인 네트워크가 이루어 질 수 있게 해줘야한다. 그리고 물리적인 네트워크 카드가 사용될 수 있게

x윈도우 상에서 선택을 하던지 ifup, ifdown을 사용해서 내리고 올리던지 해야 통신을 원할하게 할 수 있다.


  만약, 네트워크가 유무선 네트워크 카드를 두개 이상 사용한다면 사용할 네트워크 카드를 제외하고는

'사용 안함'으로 해줘야 한다. 실제 네트워크 카드는 다리 역할을 해주는 것이기에 ip주소는 큰 의미가 없다.


 * 보드의 전원이 들어와 있어야 네트워크 주소를 얻어오는데 네트워크 연결설정에서 '케이블 언플러그드'라는

   메세지가 보일 경우에는 케이블 연결을 확인하고 케이블이 제대로 연결되어 있다면 blob을 올리는 과정에서

   문제가 생겼다고 볼 수 있다. 다시 blob을 올려야 제대로 작동할 것이다.  

'etc' 카테고리의 다른 글

안드로이드 참고자료  (0) 2010.07.08
SourceInsight 사용법  (0) 2010.07.06
PMD(Eclipse Plugin)  (0) 2010.04.24
CruiseControl  (0) 2010.04.24
eclipse 언어 변경  (0) 2010.04.09
Posted by jazzlife
,

Meld is a visual diff and merge tool. http://meld.sourceforge.net/

효율적으로 소프트웨어를 개발하기 위해 버전별로 파일을 비교하여 차이점을 살펴볼 때가 있습니다. 예를 들어 안드로이드 cupcake, donut, eclair 소스에서 어느 부분이 달라졌는지를 살펴보거나 할 때 유용하게 사용할 수 있습니다. (물론 안드로이드의 경우는 차이 부분만 받을 수도 있고, 일반적으로는 diff 명령어를 이용할 수 있지만 알아보기 어려운 등의 불편함이 있습니다.)
diff 및 merge 기능을 가진 상용 소프트웨어들이 나와 있기는 하지만 대부분 윈도우즈 환경에서 동작하는 것으로 리눅스에서 주로 작업하는 개발자에게는 불편함이 있습니다. 물론 vi 에 능숙한 사람에게는 vimdiff 도 있겠지만 익숙하지 않은 사용자에게는 불편함이 있습니다. 그래서 (많이 알려져 있지 않은 것 같아서 ...) Ubuntu에서 작업을 시작하는 개발자를 위해 유용한 비주얼 도구를 하나 소개할까 합니다.

우분투에서 설치 방법은 다음과 같습니다.

시스템 > 관리 > 시냅틱 패키지 관리자

를 실행합니다. [빠른 검색]에서 'meld'를 입력하면 1.3.0-2 버전의 패키지가 나옵니다.
그러면 이를 선택하고 설치하면 됩니다.

명령어를 이용하고 싶은 경우에는 다음과 같이 설치할 수 있습니다.


$ sudo apt-get install meld


설치가 완료되면

프로그램 > 개발 > Meld 차이 보기

가 나타나고 이를 선택하면 실행하여 사용하면 됩니다. 참~~ 쉽 죠~~~

다음은 최신 버전으로 업데이트를 하는 방법입니다. (현재 가장 최근 버전은 1.3.1입니다.)

http://meld.sourceforge.net/

에 가서 [download]를 선택하여 1.3 디렉토리로 가도 되고, 아니면 직접

http://ftp.gnome.org/pub/gnome/sources/meld/1.3/

로 가서  

meld-1.3.1.tar.gz 혹은 meld-1.3.1tar.bz2

를 다운받습니다.

적당한 곳에 파일을 풀고 나서

$ cd meld-1.3.1
$ mv INSTALL INSTALL.org
$ cp INSTALL.org INSTALL

를 실행하고 나서 INSTALL 파일의 21행의

prefix := /usr/local


 
prefix := /usr

으로 수정합니다. 마지막으로 

$ sudo make prefix=/usr install

를 실행하면 설치가 됩니다.
Meld를 실행하여 Help > 정보 를 통해 Meld 1.3.1으로 업데이트된 것을 확인할 수 있습니다.
(기본적으로는 $ sudo make install 만으로 설치가 되지만 /usr/local 아래에 설치가 되어 시냅틱 패키지 관리자로 설치한 디렉토리와 달라지기 때문에 위와 같이 합니다. Eclipse 에서 작업을 하시는 분은 Subclipse 를 이용하시면 더 도움이 될 것 같습니다.)

그럼 삽질을 줄이는데 도움이 되시길 ...

'old > Linux' 카테고리의 다른 글

일정 등록(자동 종료 등) - cron  (0) 2010.05.11
지정 시간에 동작을 예약하는 명령어 [at 사용법]  (0) 2010.05.08
백그라운드 실행  (0) 2010.04.01
우분투 명령어 정리  (0) 2010.03.25
g++ 과 gdb 사용법  (0) 2010.03.25
Posted by jazzlife
,

eclipse 언어 변경

etc 2010. 4. 9. 14:04
Eclipse를 (RTC) 영문으로 실행하려면
"C:\Program Files\IBM\TeamConcert\eclipse.exe" -product com.ibm.team.concert.product -nl en_US

Eclipse를 (RTC) 영문으로 실행하려면

"C:\Program Files\IBM\TeamConcert\eclipse.exe" -product com.ibm.team.concert.product
-nl ko_KR

'etc' 카테고리의 다른 글

PMD(Eclipse Plugin)  (0) 2010.04.24
CruiseControl  (0) 2010.04.24
익스플로러로 ftp 접속  (0) 2010.04.07
Convert a .class to .java file (decompiler)  (0) 2010.03.08
xml 등 강좌  (0) 2010.02.19
Posted by jazzlife
,

ftp://id:pw@domain(or ip address):port

'etc' 카테고리의 다른 글

CruiseControl  (0) 2010.04.24
eclipse 언어 변경  (0) 2010.04.09
Convert a .class to .java file (decompiler)  (0) 2010.03.08
xml 등 강좌  (0) 2010.02.19
이클립스 단축키 정리  (0) 2010.02.11
Posted by jazzlife
,

'old > sms&mms' 카테고리의 다른 글

SMS framework 소스 참고  (0) 2010.05.10
framework_source 참고  (0) 2010.05.10
telephony framework architecture  (0) 2010.04.26
Network switching subsystem  (0) 2010.03.24
Definitions  (0) 2010.03.18
Posted by jazzlife
,

QuickSynergy

old/Linux 2010. 2. 26. 18:01
http://gtko.springnote.com/pages/2774338?print=1


[Linux]

- server

1. QuickSynergy를 설치한다.
2. share 메뉴에서 모니터 설정에 ID를 할당한다.
3. /etc/hosts 설정
    (ex)
    192.168.0.1    windows
    192.168.0.2    linux
4. system-preferences-startup application에 등록하여 시작시 실행되게 한다.

- client

1. QuickSynergy를 설치한다.
2. share 메뉴에서 모니터 설정에 ID를 할당한다.
3. use 메뉴에서 서버의 IP와 ID를 입력한다.
3. /etc/hosts 설정
    (ex)
    192.168.0.1    windows
    192.168.0.2    linux
4. system-preferences-startup application에 등록하여 시작시 실행되게 한다.


[Windows]

1. Synergy를 설치하고 한글 패치를 한다.
2. Client와 Host의 설정을 변경한다.
3. C:\windows\system32\drivers\etc\hosts 설정
    (ex)
    192.168.0.1    windows
    192.168.0.2    linux
4. Autostart로 설정.

'old > Linux' 카테고리의 다른 글

하드웨어 정보 확인  (0) 2010.03.25
기본 명령어  (0) 2010.03.25
Linux Partition  (0) 2010.03.25
tar 사용법  (0) 2010.03.25
RPM 사용법  (0) 2010.03.25
Posted by jazzlife
,