달력

9

« 2020/9 »

  •  
  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  •  
  •  
  •  

Visual Studio Code의 새로운 Release(November 2018, Ver 1.30)가 나왔다.

기능적인 주요 Feature들은 다음과 같다.




최근에 사용하는 기능중에는 Search 관련 기능들이 많이 개선되고 있는데, 이번에는 "Multiline Search"에 대한 기능이 소소하게 개선 되었다. 기존에 Regular Expression 을 사용하여 여러라인에 걸처져 있는 Text를 검색하던 것을 "Shift + Enter" 키를 이용하여 Line을 구분하여 주면 찾아올 수 있는 기능이다. 

(개인적으로는 자주 사용할 것 같지는 않다. ) 


아래와 같은 파일이 있을 경우에, 


Window버전의 경우는 "Control + Shift + F"를 눌러 검색 창을 띄우거나, 또는 

MacOS의 경우에 "Shift + Command + F"를 눌려 검색 창을 띄우고, 검색어로 "latest" 를 치고 "Shift + Enter" 를 치고 "Untagged"를 입력한다. 그리고 "Enter"를 치면 멀티라인 검색이 된다.


결과는 다음과 같다.


"Choose extension version"는 개인적으로 있었으면 했던 기능이었는데, Extention Plugin에 대한 설치 버전들을 보고 이전 버전을 설치 할수 있는 기능이다. 설치된 Plugin이 문제가 있을 때 유용할 것 같다.


설치가 되어 있는 Extention Plug인의 오른쪽에 설정 버튼(톱니바퀴모양)을 누르면, 아래와 같이 Pop-UP 메뉴가 나타난다. 메뉴중에 "Install Another version..."을 선택하면 된다. 



현재 설치가 되어 있는 버전들과 이전에 만들어진 설치 가능한 버전들이 나타난다. (아래 화면 참조) 


이중에 한개의 항목을 선택하며, 이전 버전으로 변경하거나, 새로운 버전으로 선택해서 바꿀수 있다.


Posted by 행복상자

댓글을 달아 주세요

Visual Studio Code의 단축키들을 정리한 파일들이다. 가끔식 확인이 필요하거나 책상에 프린트에서 붙여 놓으면, 참고하는데 도움이 될 것이다.  VS Code의 메뉴상에서는 "도움말" > "바로가기 키참조"에서 확인 가능하다.


아래는 각 OS별로 작성된 Shortcut 키 매핑에 대한 파일들의 링크와 위치이다.



[MacOS용 Shortcut 파일] 

   https://code.visualstudio.com/shortcuts/keyboard-shortcuts-macos.pdf






[Windows용 Shortcut 파일

    https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf





[Linux용 Shortcut 파일]

    https://code.visualstudio.com/shortcuts/keyboard-shortcuts-linux.pdf



Posted by 행복상자

댓글을 달아 주세요

2017. 1. 30. 19:29

Gradle에서 Proxy 설정 Tip & Tips/Eclipse Tip & Tips2017. 1. 30. 19:29

최근에는 Build환경을 구성하기 위해 Maven 보다 Gladle을 많이들 사용하고 있다.

신규 프로젝트의 기본 Frame을 만들고 팀원들간에 Java 프로젝트의 뼈대와 빌드환경을 구성하기에 수월하기 때문이다.


사용하고 있는 IDE에서, 나의 경우는 Eclipse를 사용하고 있는데, 정상적으로 Build가 되지 않았다.

로그를 확인하니 문제는 필드를 위해 필요한 Package를 정상적으로 받지 못해서 발생한 것인데, 회사의 보안 정책으로 외부의 Package Repository 서버에 접속이 안되기 때문이다.


Gradle에서 이를 해결하기 위해서는 다음과 같이 3가지 방식을 통해서 HTTP Proxy 설정이 가능하다.

1) from gradle.properties in project build dir.  

    프로젝트의 빌드환경에서 "./gradle.properties"를 통한 설정 

2) from gradle.properties in gradle user home.  

    사용자 홈디렉토리 환경의  "$HOME/.gradle/gradle.properties"를 통한 설정

3) from system properties, e.g. when -Dsome.property is set on the command line. 

   명령행에서 "-Dsome.property" 설정을 통한 설정


예를 들어 설명할 방식은 "gradle.properties" 상에서 설정하는 방식이다 (위 1번과 2번)

아래는 HTTP Proxy 설정에 대한 예이다.

systemProp.http.proxyHost=www.somehost.org
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=userid
systemProp.http.proxyPassword=password
systemProp.http.nonProxyHosts=*.nonproxyrepos.com|localhost


HTTPS상에서는 아래와 같이 설정해 주면 된다.

systemProp.https.proxyHost=www.somehost.org
systemProp.https.proxyPort=8080
systemProp.https.proxyUser=userid
systemProp.https.proxyPassword=password
systemProp.https.nonProxyHosts=*.nonproxyrepos.com|localhost


한가지 주의할 점은 "www.somehost.org"와 같이 URL을 넣어야 하는데, "http://www.somehost.org"와 같은 형태로 넣어주면, 정상적인 결과를 얻을수 없는 점만 주의 해야 한다. 또는 IP address를 직접 넣어 주는 것이 확인하기도 수월할 것이다.

 

Proxy 설정하는 방식이 툴에 따라 다르기 때문에 주의가 필요하기 때문이다. 

보통 linux의 셀 환경에서는 "http://www.somehost.org:8080"의 형태로 프로토콜을 pre-fix로 넣어주지만,

툴과 환경에서 요구하는 방식은 다르다는 점에 대해서 주의해야 한다. 


이에대한 자세한 내용은 아래의 링크를 참고하면 도움이 될 것이다.

  https://docs.gradle.org/current/userguide/build_environment.html




Posted by 행복상자

댓글을 달아 주세요

Azuer와 AWS의 가상화된 인스턴스에서는 잘 동작하던 코드가, 사내 또는 특별한 환경에서 동작하지 않을 때가 있는데, 이경우는 보안 강화를 위해 설정된 방화벽과 Proxy 서버를 통해서 외부로 나가는 Traffic의 통제를 받기 때문일 것이다.


node js의 패키지를 설치를 위해서 사용하는 NPM을 사용할 때도 Proxy의 영향을 받아서 Repository에서 다운받을 패키지 설치가 원활하지 않을 수 있을때 다음과 같이 CLI상에서 명령을 실행하여 해결할 수 있다.


예로 proxy 서버의 주소가 '192.168.10.1' 이고 Port가 8080이라고 할때, 다음과 같이 실행하면 된다.

(이미 npm과  nodejs가 설치 되어있는 환경에서 실행)


   npm config set proxy http://192.168.10.1:8080

   npm config set https-proxy http://192.168.10.1:8080

   npm config set strict-ssl false


가장 마지막에 있는 strict-ssl은 HTTP Strict Transport Security(HSTS)를 사용하여 항상 HTTPS  프로토콜을 사용하도록 강제하기 위한 옵녓인데, 여기서는 False로 설정했다. 




Posted by 행복상자

댓글을 달아 주세요