iTerm2 - macOS Terminal Replacement

iTerm2 by George Nachman. Website by Matthew Freeman, George Nachman, and James A. Rosen. Website updated and optimized by HexBrain

iTerm2 is a replacement for Terminal and the successor to iTerm. It works on Macs with macOS 10.12 or newer. iTerm2 brings the terminal into the modern age with features you never knew you always wanted.
iTerm2는 터미널 및 iTerm의 후속 제품을 대체합니다. MacOS 10.12 이상에서 작동합니다. iTerm2는 당신이 항상 원했던 적이없는 기능으로 현대 시대에 터미널을 제공합니다.

Zsh 설치하기 

>brew install zsh 

oh-my-zsh 도 설치하기

>sh -c "$(curl -fsSL"

Theme는 Preference에서 설정하면 된다. 


Posted by 홍반장水 홍반장水

MacOS에서 eclipse.ini 파일 위치 찾기

spring 설정하다보니 eclipse.ini 파일을 수정하라는데, 어디있는지 알 수가 없네.

그런데, 찾아보니 Eclipse 우측클릭하니 "패키지 내용 보기"가 있어서 눌러보았다. 

그러니까, 그 속에 eclipse.ini 파일이 땋!

Contents > eclipse > eclipse.ini

Posted by 홍반장水 홍반장水

macOS 용 패키지 관리자 - Brew



The missing package manager for macOS (or Linux).

Posted by 홍반장水 홍반장水

사용중인 프레임워크 버전이 3.1

그럼 3.1~ 3.5 버전까지 커버된다고 해서 정보권고안에 Eclipse Luna로 설치해보자. 




egovframework:dev2:install_guide [eGovFrame]

전자정부 개발자 개발환경은 기본적으로 Windows 32 Bit 기반으로 제공되나 이 이외의 환경에서도 사용 가능하다. Windows 32 Bit 이외의 환경에서 개발환경을 사용할 필요가 있을 경우 본 가이드를 참고하도록 한다. 개발환경을 개별적으로 구성해야 할 필요가 있을 경우 환경에 맞는 eclipse를 다운로드 받아 다음의 순서에 맞게 설치하도록 한다. 설치 소프트웨어 간 dependency 정보가 있으므로 반드시 아래의 순서를 따르도록 한다. *

  • Eclipse Luna(4.4) Packages 이용 시 설치가이드

소프트웨어 버전 자동설치/업데이트주소 필수여부
Eclipse 4.4 → Eclipse IDE for Java EE Developers 다운로드 필수
Spring Core 3.7.0 → Core / Spring IDE → Spring IDE Core 필수
UML2 Extension 5.0.2 → Modeling → UML2 Extender SDK 필수
Subversive SVN Connector 2.0.4 → Collaboration → Subversive SVN Team Provider 설치 → Subversive SVN Connectors → Subversive SVN Connectors 설치, SVNKit 1.8.7 Implementation 설치
eGovFrame 3.5.1에서 필요 기능 설치 필수
JUnit 4.11 Eclipse에 JUnit이 내장되어 있으므로 별도 설치 필요 없음 필수
MyBatipse 1.0.13 → MyBatipse → MyBatipse 선택
PMD 4.0.7 → PMD for Eclipse 4 → PMD Plug-in 설치 선택
FindBugs 3.0.1 선택
Properties Editor 6.0.4 → PropertiesEditor 설치 선택
EclEmma 2.3.2 → EcliEmma → EclEmma Java Code Coverage 선택
Developer Tools 23.0.7 → Developper Tools → 모두설치 안드로이드 개발 필수
Android Connector for M2E 1.4.0 → Android for Maven Eclipse → Android for Maven Eclipse 안드로이드 개발 필수


자바 설치 : 7 버전.


Java Archive Downloads - Java SE 7

@다운로드 해서 .dmg 파일 설치 후 버전 확인


    * JDK 설치 위치 : /Library/Java/JavaVirtualMachines
        * JDK 설치위치에 jdk1.7.0_80.jdk 이 생성되어 있으면 정상설치 완료 된 것임
    * Java 버전 확인 : java -version 

@JAVA 삭제 할 경우

    * JDK 설치위치 
        * /Library/Java/JavaVirtualMachines/ 하위
    * 설치되어 있는 JDK 디렉토리 제거 
        * JDK 7u11 예 : rm -rf jdk1.7.0_80.jdk


1. Eclipse Mars의 Eclipse IDE for java EE Developers 설치하기

Eclipse Mars 다운로드


Mars 2 | Eclipse Packages

370 MB 27,329 DOWNLOADS The Modeling package provides tools and runtimes for building model-based applications. You can use it to graphically design domain models, to leverage those models at design time by creating and editing dynamic instances, to collab

Luna, Kepler는 다운받아서 실행해보니 실행이 안되더라. 결국 Mars로 낙점!!!


2. 이클립스를 설치 및 실행한 뒤 help -> Install New Software를 클릭한다.

   Download the ADT Plugin

  1. Start Eclipse, then select Help > Install New Software.
  2. Click Add, in the top-right corner.
  3. Click OK. ...
  4. In the Available Software dialog, select the checkbox next to Developer Tools and click Next.
  5. In the next window, you'll see a list of the tools to be downloaded.

3. 다음 플러그인들을 순서대로 추가한 뒤 설치해준다. 
 1) Spring Core 3.7.3 (필수)
    Core / Spring IDE -> Spring IDE Core


2) UML2 Extension 5.1.2 (필수)
    Modeling -> UML2 Extender SDK


3) Subversive SVN Connector 6.0.1 (필수)
    Collaboration -> Subversive SVN Team Provider(3.0.4)
    Subversive SVN Connectors -> Subversive SVN Connectors(5.0.3) 설치
    SVNKit 1.8.12 Implementation(5.0.3) 설치


4) eGovFrame 3.6.0 (필수)
    필요한 플러그인 설치(전부 다 설치했음)


5) JUnit 4.12 (필수)
    이클립스에 내장되어있어서 별도 설치과정 필요없음


6) MyBatipse 1.0.23 (선택)
    MyBatipse -> MyBatipse 설치


7) PMD 4.0.11 (선택)
    PMD for Eclipse 4 -> PMD Plug-in 설치


8) FindBugs 3.0.1 (선택)
    FindBugs -> FindBugs Feature 설치


9) Properties Editor 6.0.4 (선택)
    PropertiesEditor 설치


10) EclEmma 2.3.3 (선택)
      EclEmma -> EclEmma Java Code Coverage 설치


11) Gradle 1.0.21 (선택)
     Buildship:Eclipse Plug-ins for Gradle -> Buildship:Eclipse Plug-ins for Gradle 설치


12) Developer Tools 23.0.7 / Android Connector for M2E 1.4.0(안드로이드 개발 필수)
     Developer Tools 모두 설치 (Developer Tools)
     Android for Maven Eclipse -> Android for Maven Eclipse 설치 (Android Connector for M2E)





Posted by 홍반장水 홍반장水

[ChatScript] ChatScript -

Natural Language tool/dialog manager


Natural Language tool/dialog manager

ChatScript is the next generation chatbot engine that has won the Loebner's 4 times and is the basis for natural language company for a variety of tech startups.

ChatScript is a rule-based engine, where rules are created by humans writers in program scripts through a process called dialog flow scripting. These use a scripting metalanguage (simply called a "script") as their source code. Here what a ChatScript script file looks like:

# file:
topic: ~food []

#! I like spinach
s: ( I like spinach ) Are you a fan of the Popeye cartoons?
	a: ( ~yes )  I used to watch him as a child. Did you lust after Olive Oyl?
    	    b: ( ~no ) Me neither. She was too skinny.
    	    b: ( yes ) You probably like skinny models.
	a: ( ~no ) What cartoons do you watch?
     		b: ( none ) You lead a deprived life.
     		b: ( Mickey Mouse ) The Disney icon.

#! I often eat chicken
u: ( ![ not never rarely ] I * ~ingest * ~meat ) You eat meat.

#! I really love chicken
u: ( !~negativeWords I * ~like * ~meat ) You like meat.

#! do you eat bacon?
?: ( do you eat _ [ ham eggs bacon] ) I eat '_0

#! do you like eggs or sushi?
?: ( do you like _* or _* ) I don't like '_0 so I guess that means I prefer '_1.

#! I adore kiwi.
s: ( ~like ~fruit ![~animal _bear] )  Vegan, you too...

#! do you eat steak?
?: ( do you eat _~meat ) No, I hate _0.

#! I eat fish.
s: ( I eat _*1 > ) 
  $food = '_0 
  I eat oysters.

Above example mentioned in article How to build your first chatbot using ChatScript.

Basic Features

  • Powerful pattern matching aimed at detecting meaning.
  • Simple rule layout combined with C-style general scripting.
  • Built-in WordNet dictionary for ontology and spell-checking.
  • Extensive extensible ontology of nouns, verbs, adjectives, adverbs.
  • Data as fact triples enables inferencing and supports JSON representation.
  • Rules can examine and alter engine and script behavior.
  • Planner capabilities allow a bot to act in real/virtual worlds.
  • Remembers user interactions across conversations.
  • Document mode allows you to scan documents for content.
  • Ability to control local machines via popen/tcpopen/jsonopen.
  • Ability to read structured JSON data from websites.
  • Postgres and Mongo databases support for big data or large-user-volume chatbots.

OS Features

  • Runs on Windows or Linux or Mac or iOS or Android
  • Fast server performance supports a thousand simultaneous users.
  • Multiple bots can cohabit on the same server.

Support Features

  • Mature technology in use by various parties around the world.
  • Integrated tools to support maintaining and testing large systems.
  • UTF8 support allows scripts written in any language
  • User support forum on
  • Issues or bugs on this repo

Getting started


Take this project and put it into some directory on your machine (typically we call the directory ChatScript, but you can name it whatever). That takes care of installation.

git clone

Standalone mode - run locally on a console (for developement/test)

From your ChatScript home directory, go to the BINARIES directory:


And run the ChatScript engine




./LinuxChatScript64 local

Note: to set the file executable: chmod a+x ./LinuxChatScript64


./MacChatScript local

This will cause ChatScript to load and ask you for a username. Enter whatever you want. You are then talking to the default demo bot Harry.

Server Mode (for production)

From your ChatScript home directory, go to the BINARIES directory and run the ChatScript engine as server

Run the server on Windows

ChatScript port=1024

Run the server on Linux


Run the server on MacOS


This will cause ChatScript to load as a server.
But you also need a client (to test client-server communication). You can run a separate command window and go to the BINARIES directory and type

Run a client (test) on Windows

ChatScript client=localhost:1024 

Run a client (test) on Linux

./LinuxChatScript64 client=localhost:1024

Run a client (test) on MacOS

./MacChatScript client=localhost:1024

This will cause ChatScript to load as a client and you can talk to the server.

How to build a bot

Run ChatScript locally. From the ChatScript command prompt, type

:build Harry

or whatever other preinstalled bot exists. If you have revised basic data, you can first:

:build 0

How to compile the engine.

On windows if you have Visual Studio installed, launch VS2010/chatscript.sln or VS2015/chatscript.sln and do a build. The result will go in the BINARIES directory.

On Linux, go stand in the SRC directory and type make server (assuming you have make and g++ installed). This creates BINARIES/ChatScript, which can run as a server or locally. There are other make choices for installing PostGres or Mongo.

Full Documentation

ChatScript Wiki (user guides, tutorials, papers)


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Last releases


Posted by 홍반장水 홍반장水