• Vim

    [Vim] 유용한 단축키

    Vim에는 크게 4가지 모드가 존재한다. Normal Mode [N]: 커서로 이동할 수 있는 모드. Insert Mode중에 ESC키를 누르면 나오는 모드가 Normal 모드다.Insert Mode [I]: 문서에 내용을 입력 할 수 있는 모드다.Visual Mode [V]: Normal…

  • Git,  Programming

    [Git] Repository 생성 및 연결

    Setup Environment 우선 git configuration을 설정해준다. Make Repository Directory 우리가 git repository를 저장할 디렉토리를 만들어주고, repository용으로 init한다. Add or Clone Remote Server 이제 해당 repository에 source code를 추가하거나 해당 repository에 연결된 git clone을…

  • Git,  Programming

    [Git] .gitignore 설정

    Git을 쓸 때 대용량 metadata라던지 binary file같은 source code가 아닌 파일들을 배재하고자 할 때 해당 파일을 생성해서 설정해주면 git에 매번 따로 빼주지 않아도 된다. 반드시 항상 최상위 directory에 .gitignore 파일이 있어야한다. Example .gitignore…

  • Git,  Programming

    [Git] fatal: failed to write object

    Local에서 repository로 push를 하려는 도중 다음과 같은 error가 발생했다. 이 문제는 respository에 쓰기 권한이 없어서 생긴 문제다. 따라서 해당 respository에 권한을 풀어주면 해결된다. 위와 같이 수행하니 git push가 정상적으로 동작했다.

  • Linux,  Programming

    [Linux] make: ‘test’ is up to date

    Linux에서 작업을 하면서 Makefile을 많이 사용하게 되는데, 사용하다가 위와 같이 수행되지 않는 경우가 발생했다. 아래는 수행하려는 Makefile 내부 코드다. 원인 해당 Makefile 위치에 수행하고자 하는 명령어와 동일한 directory가 존재해서 발생하는 것이였다. make 명령은…

  • Linux,  Programming

    [Linux] diff: 두 디렉토리에 각 파일 비교

    일반적으로 두 파일을 비교하기 위해서 diff 명령어를 통해 쉽게 비교 할 수 있다. 그러나 두 디렉토리간 동일한 파일에 대한 비교를 지원하는 명령어는 없기 때문에 다음과 같은 shell script를 통해 가능하다. dir1과 dir2에 각…

  • Programming,  Python

    [Python] Google Search Trend

    Python에선 구글의 검색 트렌드를 분석할 수 있도록 pytrends라는 라이브러리를 제공한다. 시간순 선그래프 10.1 Practical use_1 – Jupyter Notebook build_payload(kw_list=[keyword], timeframe=[period])과 trend_df = trend_obj.interest_over_time()를 통해 우리가 원하는 data를 data frame 형태로 받아 올 수…

  • Programming,  Python

    [Python] PyQt – 계산기 만들기

    MVC (Model – View – Controller) 디자인 패턴을 사용해서 계산기를 구현한다. MVC Model Model은 핵심 기능과 데이터를 포함하는데, 계산기에선 계산을 한다. View GUI를 구현하며 application과 상호 작용하는데 필요한 모든 위젯을 호스팅한다. 여기에선 보이는…

  • Programming,  Python

    [Python] PyQt – QThread (OTP Program)

    GUI를 구현할 때 thread를 사용해 producer와 consumer를 각각 구현한다. PyQt에선 좀더 쉽게 사용할 수 있도록 QThread를 제공한다. 아래 프로그램은 하나의 thread가 tic을 튀기면서 signal을 또 다른 thread에게 전달해주어 또 다른 thread가 화면에 뿌리도록…