레이블이 IDE인 게시물을 표시합니다. 모든 게시물 표시
레이블이 IDE인 게시물을 표시합니다. 모든 게시물 표시

2015년 6월 15일 월요일

스크랩 :: VIM 활용 :: 복수의 문자열의 하나의 문자열로 바꾸기 혹은 복수의 문자열로 바꾸기


4. 복수의 문자열을 하나의 문자열로 바꾸기

이것은 결국 위의 정규표현식을 사용한 패턴을 특정한 문자열로 바꾸는 것이다. 웬만한 vi 기초 문서에서 간단하게라도 다루는 내용이다.
:%s/[vV]i//g   - vi 또는 Vi 를 null string 으로 치환한다. 즉 삭제한다.
:%s/<.*>//g    - html 화일에서 태그를 제거하는 경우인데, 이렇게 쓰면 내용 라는 줄이 있을 때 죄다 지워질 것이다. 
                 따라서 <.*> 대신에 <.\{-}> 를 쓰는 게 낫다.
::%s/\(gnu\|Gnu\)/GNU/g  - gnu 또는 Gnu 를 GNU 로 치환
간단한 것이니 이 정도로 통과.

[edit]5. 복수의 문자열의 복수의 문자열로 바꾸기

사실 이 얘기를 하고 싶었던 것인데... 이것만 덜렁 쓰기가 뭣해서 서론이 장황해졌다.
핵심은, 괄호를 사용하여 찾는 문자열 쪽에 그룹을 지정한 후에, 바꿀 문자열 쪽에서 그 그룹을 부를 수 있다는 것이다.
\0 은 찾은 문자열 전체
\1 은 첫번째 괄호
\2 는 두번째 괄호
\3 은 세번째 괄호
...
괄호의 순서는 여는 괄호 "(" 의 순서로 따진다. 또 . 나 [list] 등이 괄호안에 있을 경우는 실제로 검색된 문자열을 의미한다는 것에 유의. 즉 abef 라는 스트링이 있고 \(ab\|cd\)ef 로 검색했다면 \1 은 ab 가 된다.
다음과 같은 경우를 생각해 보자. html 화일 안에 수십개의 링크가 다음과 같이 나열되어 있다.
  • aaa
  • bbb
  • ccc ...
  • 이것을 내가 위키위키 페이지에 옮기려 한다. (사실 위처럼 깔끔하게 되어 있으면 그냥 html 코드를 써도 되겠지만)
    * [http://www.aaa.com aaa]
    * [http://www.bbb.com bbb]
    * [http://www.ccc.com ccc]
    ...
    
    다음의 한 줄로 만사형통.
    :%s/
    
  • \(.\{-}\)<\/a>/* [\1 \2]/g

  • 관련 링크:

    2015년 4월 30일 목요일

    Vim 학습일지 15-04-30 Session의 중요성. 정규식(regex)의 적극적인 사용에 대한 부족함을 느낌.

    기회가 좋게도 현재 맡은 업무에서 터미널 작업을 많이 하게 되는데 덕분에 vim을 마음껏 써볼 수 있게 되었다. 공부는 조금씩 했었지만 개발에 적극적으로 써보진 못했던 상황이었어서 물론 아직은 이클립스가 더 친숙하긴 하다.

    아직 vim에서 해본게 새 발의 피이긴 하지만 벌써 몇가지 커맨드들과 이동방식에는 친숙해져 버려서 이클립스나 Aptana 상에서도 '/'라던지 'i'라던지를 누르게 되어버렸다;;;

    아직은 커맨드 한 번 입력하려면 익숙해진 yy,dd,w 등의 아주 많이 쓰는 커맨드들 외에는 검색을 한 번 해봐야 쓸 수 있다.


    그 중에서 정말 유용한 건 탭 나누기와 세션을 적극적으로 활용하는 방법이다.

    vim에 강력한 기능이 정말 많지만 지금까지 느낀 것으론 탭 나누기가 정말 유용한 것 같다. 특히 한 파일이 정말 긴 경우에는 왔다갔다 하면서 봐야 하는 이클립스 등에서는 생산성이 극히 떨어지는데 vim에서는 :vs, :sp 등으로 화면을 분할해서 하나의 파일을 다각도로 볼 수 있는 것이 정말 유용했다. 그런데 처음 며칠은 신나게 분할하고 탭 열고 해서 환경을 잡아놔도 다음날이 되면 다시 그짓을 하려니 귀찮음과 비효율적이란 느낌을 받았다.

    그러던 중 세션 저장이란 걸 알게되어 써보니 어제 작업하던 환경을
    :mks! 를 이용해서 작업하고 shell 상에서
    vim -S Session.vim 하여 여니 어제와 같은 환경을 유지할 수 있었다.

    더 다양한 활용법이 있겠지만 일단은 이 정도만으로도 큰 도움이 되었다.


    vim에서 느끼는 또하나의 강점은 검색.
    물론 아직은 이클립스에서 쌓아온 노하우 정도까지는 따라가지 못한다. 하지만 현재 작업 방식 자체가 원격에 있는 소스를 보며 작업하는 상태라서 이클립스의 전역 검색(Ctrl-H)이 제대로 되지 않는 상태이다. 그래서 vim에서의 검색이 더 빛을 발하는 환경이기 때문에 학습하기 좋은 환경(?)이 된 것 같다.

    다양한 방법으로 원하는 부분을 찾아서 작업을 하곤 하는데 아쉬운 부분은 정말 잘 쓰시는 분들이 regex를 적극적으로 사용해서 문자 치환이나 전역 검색등을 아주 강력하게 사용하시는데 반해 나는 아직까지는 이클립스의 Ctrl-F 정도의 검색밖에는 못하고 있다는 점이다.
    regex를 좀 더 적극적으로 활용한다면 개발 속도도 더 빨라지지 않을까란 생각이 든다..


    일지이지만 사실상 근 한달간의 학습(?) 결과이니 월지라고 해야 하려나..ㅎㅎ

    2013년 2월 1일 금요일

    이클립스 Subversion(SVN) 연동하는 법 : [스크랩]IT's a humanism

    IT's a humanism: 이클립스 Subversion(SVN) 연동하는 법: *** Here we will learn how to install Subversion Eclipse Addon, connect to your Subversion repository and get the source code from Subvers...


    이클립스 Subversion(SVN) 연동하는 법


    *** Here we will learn how to install Subversion Eclipse Addon, connect to your Subversion repository
    and get the source code from Subversion. ***

    (여기서는 Eclipse에 Subversion Plugin을 설치하는 법, Subversion Server와 연결하는 법
    그리고 Subversion에서 소스 내려받는법을 배울겁니다.)
    1. Menu Help > Intall New Software
    (메뉴에 Help > Install New Software 를 선택 )


    2.Click on "Add..." button unless you already have Subclipse on your "Work with:" select box.
    (Subclipse가 이미 설치되어 있지 않다면, "Add...' 버튼을 누릅니다.)

    3. Add as below ( this is for Eclipse 3.2 +, if you are using lower version than 3.2, please check out at http://subclipse.tigris.org/ )
    (아래와 같이 타이핑하고 Add를 누릅니다. Eclipse 버젼 3.2+은 아래와 같이 쓰면 되고 그 이전 버젼은 http://subclipse.tigris.org/ 를 참고 하세요.)

    http://subclipse.tigris.org/update_1.6.x

    4.After you add "Subclipse" you will see the added item appears on "Work with:" select box.
    (Subclipse가 추가되면 "Work with:"에서 Subclipse를 선택할수 있습니다.)

    5.Check on "Subclipse" checkbox and click "Next"
    (Subclipse를 체크한후 "Next"를 클릭합니다.)

    6.It shows the item that will be installed. click "Finish"
    (설치될 아이템을 보여줍니다. "Finish"를 누릅니다.

    7. Depends on your Eclipse version, you might see this screen. then select "I accept the term ... " then click "Finish"
    (Eclipse 버젼에 따라서 이 화면을 보는 경우가 생깁니다. "I accepted the term..."이라고 되있는것을 선택후 "Finish"를 누릅니다.
    8.then you should see the progress window.
    (그리고 나면 설치 진행상황을 나타내는 윈도를 보시게 됩니다.)

    9.This window might popup then just answer positively then everything will be ok :)  - click "OK"
    When downloading and installation are done, Eclipse will recommend you to restart Eclipse.
    Say "Yes" :)
    ( 아래와 같은 팝업이 뜨는걸 볼수 있습니다. 그런 언제나 그랬듯이 긍정적인 대답을... "OK"를 누릅니다.
    다운로드와 설치가 끝나면 Eclipse를 재 시작할것을 권장합니다. 그역시 긍정적인 대답을 ^^ )

    10.When Eclipse came back this window will show up. Why don't you help Subclipse team
    by only check the check box and click "OK"
    ( Eclipse가 재시작되면 아래의 팝업이 뜨게 됩니다. Subclipse를 만드는 사람들을 돕는 차원에서
    체크를 한 상태로 "OK" 눌러주세요. )

    11.Now go to Menu Window > Open Perspective > Other...
    ( 이제 메뉴에서 Window > Open Perspective > Other... 를 선택합니다.)

    12.Select "SVN Repository Exploring" and click "OK"
    ( "SVN Repository Exploring"를 선택하고 "OK"를 클릭합니다.)

    13.then you should have "SVN Repositories" view.
    Right click on black space then select "New > Repository Location..."
    ( 바뀌화면에서 "SVN Repositories" 뷰에서 빈공간에 오른쪽 버튼을 누른후
    "New > Repository Location..."를 누릅니다. )

    14.Enter your repository URL. (it can be svn protocol or http protocol depends on your provider)
    then It will ask User ID and Password if your SVN has security on.
    ( URL에 당신의 저장소 주소를 입력합니다. 이것은 svn 프로토콜을 쓸수도 있고 http 프로토콜을 
    쓸수도 있습니다.  보안이 걸려있다면 사용자 아이디와 패쓰워드를 묻는 창이 뜹니다. )

    15. If you were successfully logged into SVN, your SVN repository will appear on "SVN Repositories" View.
    ( SVN으로 성공적으로 접속되었다면 "SVN Repositories"에 당신의 저장소가 나타나 있을 겁니다.)

    16. Right click on your repository and select "Checkout..." menu
    ( 그 저장소위에서 오른쪽 버튼을 누른후 "Checkout..."을 선택합니다. )

    17.Normally SVN suggest you to use "Check out as a project in the workspace" so just go with it.
    Unless you have better idea of SVN. then click "Finish"
    ( SVN은 일반적으로 내려받는 프로젝트의 이름을 그대로 Workspace에 저장하기를 권장합니다.
    Subversion을 잘 사용하지 못하는 분이라면 그냥 "Check out as a project in the workspace"를 
    선택하시고 "Finish"를 클릭하세요.)

    18. Select where you want to put your project from SVN then click "Finish"
    ( 선택한 프로젝트를 로컬 디렉토리 어디에 저장할지를 결정후 "Finish"를 클릭 )

    19. Now you should see your new project in "Project Explorer" or "Package Explorer".
    (이제 당신의 프로젝트를 "Project Explorer"나 "Package Explorer"에 생긴것을 보실수 있습니다.)
    \

    There you go. You have a project on your local machine that is connected to your Subversion Server.
    Enjoy and collaborate with your friends or co-workers and make some awesome software !!!
    ( 다 됬습니다. 당신의 로컬 프로젝트가 Subversion Server와 연결되었습니다. 
    친구들 또는 직장동료들과 함께 작업하며 멋진 소프트웨어를 만들어 보세요. )

    You may need JavaHl installed depends on your OS.
    Go the link below and set it up :)
    http://subclipse.tigris.org/wiki/JavaHL#head-bb1dd50f9ec2f0d8c32246430c00e237d27a04fe

    크롬 에서 번역 옵션 뜨는 거 막는 방법

    버그 같은게 아니고 저 옵션의 기본 값이 제공으로 바뀐듯... 번역 옵션 제공을 비활성화하면 안 뜸. Chrome에서 웹페이지 번역 모르는 언어로 작성된 페이지를 방문할 때 다음 단계에 따라 Chrome이 페이지를 번역하도록 할 수 있습...