Python 을 사용하면서 이래 저래 많은 툴들을 많들어서 사용하는 중입니다. 

프로그램을 만들시 파라미터들은 보통 argument 에서 받고 했었는데 

파라미터가 매우 많다면 이런 값들은 파일을 통해 받게 만들곤 합니다. 

이런 파라미터 들은 보통 key : value 의 쌍으로 저장하곤 하는데 

이럴때 XML 을 많이 사용해 왔었습니다. 

그런데 XML 은 테그로 구성되다 보니 같은 내용이더라도 복잡해 보이더군요. 즉 가독성이 떨어진다는 생각이 들었습니다. 

그래서 요즘은 json 을 사용하고 있습니다. 

json 파일은 Python 에서 너무 쉽게 다음과 같이 파일을 load 할 수 있습니다. 

import json

with open(jsonFile) as data_file:
     Topology = json.load(data_file)


json 파일을 formatting 하고 싶은 경우에는 아래 주소의 사이트를 추천 합니다.


위 사이트에서는 json 파일을 XML, CSV, YAML 과 같은 형태로 변환 할 수 있으며 사람이 보기 좋게 Formatting 도 해주고 전달하기 좋게 Minify 도 해 줍니다.

이렇게 변환 된 Code 는 파일로 다운로드해서 사용 할 수 있습니다.


코딩을 하면서 코드의 인덴트를 맞추거나 스타일을 맞추는 것은 요즘 Editor 에는 필수로 들어 있는 기능 입니다.

   

Eclipse 등에서는 CTRL + ALT + F 를 누르면 각자 설정한 Formatter 설정에 따라 Formatting 이 됩니다.

   

이렇게 Editor 를 사용하여 Formatting 을 하는 방법도 있지만 editor 에서 formatting 을 하기 위해서는 파일을 일일이 editor 에서 열어야 하는 불편함이 있습니다.

   

이럴 때는 command 라인 프로그램이 훨씬 편리 하다는 생각이 드는데요~

   

코드를 예쁘게 formatting 해 주는 프로그램들을 소개하려 합니다.

   

일단 GNU indent 라는 툴이 있습니다.

   

아래 글에서 소개했던 Gow 를 설치하면 indent.exe 라는 프로그램이 설치 됩니다.

 

http://iamaman.tistory.com/717


GNU Indent 의 매뉴얼은 아래 주소에서 확인 할 수 있습니다.

 

http://www.gnu.org/software/indent/manual/indent.html

 

또 다른 code formatting 툴로 Artistic Style 이라는 툴이 있습니다.

 

Artistic Style 의 홈페이지 주소는 다음과 같습니다. 아래 페이지에서 Download 링크를 클릭해서 다운로드 페이지에서 Artistic Style 를 다운로드 할 수 있습니다. 아래 쪽에 보면 astyle 의 옵션들도 나와 있습니다.

 

http://astyle.sourceforge.net/

 

저는 Eclipse 에서는 allman 스타일로 formatting 을 하는데 Artistic Style 을 사용하면 command line 에서 allman 스타일로 formatting 을 할 수가 있습니다.

   

특정 폴더 하위의 C, H 확장자 파일에 대해 recursive 하게 allman 스타일로 formatting 하는 명령은 다음과 같습니다. 아래 명령어는 현재 폴더 하위의 C, CPP, H 파일을 allman 스타일로 formatting 해 주는 명령어 입니다.

   

astyle.exe --style=allman --mode=c --recursive *.c *.cpp *.h

 

아래 그림과 같이 보기 힘들게 생긴 코드에 대해 위 명령어를 사용하면~

 

현재 main.cpp.orig 라는 백업 파일이 생기고 다음과 같이 코드가 formatting 되는 것을 확인 할 수 있습니다.



윈도우 Powershell 코딩을 하면서 약간 아쉬웠던 부분이 바로 IDE 인데요

 

윈도우에는 Powershell 과 Powershell IDE 가 있는데 윈도우 Powershell IDE 의 경우엔 코딩을 하기에 약간 불편한 감이 있더군요.

 

Auto Complete 기능이나 자동 Formatting 과 같은 기능들이 아쉬운 부분이었습니다.

 

보통 저는 윈도우에서 Powershell 코딩을 할대는 Notepad++ 와 같은 에디터들을 사용하곤 했는데~

 

Notepad++의 Plugin들도 약간씩 아쉬운 감이 있더군요.

 

그래서 인터넷을 검색해 봤습니다.

 

Powershell IDE 프로그램 중에 Freeware 인 프로그램을 찾아보니 Powershell Plus가 나오더군요.

 

Powershell Plus 는 아래 주소에서 다운로드 할 수 있습니다.


 

http://www.idera.com/productssolutions/freetools/powershellplus


 

간단하게 이메일을 넣고~~

 

자신의 컴퓨터 환경에 맞게 다운로드 합니다. 저는 윈도우 7 64 비트 환경이라 x64 파일을 다운로드 받았습니다.

 

다운로드 받은 압축 파일을 압축 해제 하고~ IderaPowerShellPlusInstallationKit-x64.exe 파일을 실행하면 설치가 시작됩니다.

 

설치는 계속~ OK~ OK 이고~ 다음과 같은 화면이 나오면 Install 을 눌러 주면 됩니다.

 

License 와 관련된 화면에서는 당연히 Agree를 해 줘야 하겠죠~ 그 담부터는 또~~ OK~ OK 입니다.

 

설치를 하고 Powershell Plus를 실행하고CTRL + N 을 눌러서 Editor 창을 하나 열고Powershell 코등을 하면 됩니다.

 

for 를 타이핑 한 후에 CTRL+Space 를 눌러 보면~ 아래 그림과 같이 기본 Template이 써 집니다.

 

마치 Eclipse 에서 자바 코딩하는 것 같은 느낌이 들더군요. 또한 if를 타이핑 하고 CTRL+Space 를 누르면 역시 마찮가지로 Template 이 타이핑 됩니다.

 

일반적인 명령어들도 위 그림과 같이 get- 까지 타이핑 한 후에 CTRL+Space를 누르면 입력할 수 있는 명령어들이 나열 됩니다.

 

윈도우 Powershell IDE 에서 가장 아쉬웠던 부분인 Autoformat 기능도 있습니다. 아래 그림과 같이 오른쪽 클릭후에~ Autoformat 을 누르면~ 코드가 예쁘게 정렬됩니다.


 

그 밖에도 Powershell 코드들을 라이브러리화 해서 관리 할 수도 있고~ 너무 좋더군요.

 

Powershell 코딩을 많이 하시는 분들은 적극적으로 활용해 보시면 좋을 것 같네요.


+ Recent posts