NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 학습
  • 매뉴얼

    학습


    기타 루아 매크로 만들기. (Lua Script를 작성하기 위한 환경 설정)

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 파이썬으로 매크로 만드는 방법에 대해 알아봤는데요. 이번에는 루아(Lua) 스크립트를 이용해서 마우스, 키보드, 이미지 매크로를 만들기 위한 환경을 구성 해보겠습니다. 사실, 언어들이 문법만 다를뿐 대부분 비슷합니다. 그래서, Base가 되는 C부터 배운 분들은 다른 언어를 습득하는데 그리 오랜 시간이 걸리지 않기도 합니다. 물론, 사람마다 다른 부분이긴 하지만요^^; 루아는 파이썬, 엔지엠 스크립트와 같이 내장 가능한 스크립트 언어입니다. (아마도 대부분은 C++에 스크립트를 추가해서 사용할겁니다.) 스크립트 언어들이 동일한 장점을 가지고 있는데요. 엔지엠 스크립트, 파이썬, 루아, 오토핫키 같은 것들이 C나 C++같은 저수준 언어보다 쉽고 빠르게 배울 수 있습니다. 언어의 특성에서 오는 퍼포먼스를 배제한다면 생산성은 최고죠^^; 항상 그렇듯이~ 개발 도구(IDE, 통합 개발 환경)를 먼저 설치해야 합니다. 우리는 이미 Visual Studio Code(VSC)를 가지고 있으니 루아 개발 환경만 갖추고 바로 진행하도록 하죠~

    [ 루아 다운로드 ]

    qJkNH5e.png

     

     

    현재 버전은 5.4.3이네요. 릴리즈 버전을 다운로드 받아야 하니 binaries를 클릭하세요.

    2mBM8ji.png

     

     

    현재 릴리즈 버전은 5.4.2입니다.

    YMym4Bj.png

     

     

    루아는 소스포지에서 배포하고 있군요. 아무튼 lua-5.3.6_Win32_bin.zip 파일의 압축을 풀어줍니다.

    pdUpyWD.png

     

     

    lua53.exe 파일의 이름을 lua.exe로 변경해주세요.

    OYLGbc6.png

     

     

    다운로드에 있는 lua-5.3.6_Win32_bin 폴더를 C드라이브 루트에 복사해줍니다. 그리고, 윈도우 환경 변수의 path에 아래와 같이 추가 해주세요.

    OtCwEe5.png

     

     

    Visual Studio Code를 실행하고, 루아 관련 확장을 설치합니다.

    1. 확장 클릭
    2. 루아 검색
    3. 루아 설치
    4. 루아 디버그 설치

    ※ 2번에서 code runner를 검색하고, code runner도 추가로 설치 해줍니다.

    3y89igK.png

     

     

    "Start.lua" 파일을 추가한 후 아래 코드를 입력하세요.

    1. 탐색기 클릭
    2. 파일 추가 클릭
    3. Start.lua 파일 추가
    print("Hello NGMsoftware!")

    a8gaaJ2.png

     

     

    그리고, Ctrl+F5를 눌러서 실행 해봅니다. 하단 디버그 콘솔에 "Hello NGMsoftware!"가 표시되었을겁니다.

    pCT03WV.gif

     

     

    혹시라도 code runner에서 에러가 발생하는 경우에는 .vscode 폴더를 삭제하고 다시 해보세요. 저처럼 여러가지 언어를 동시에 개발하는 경우 컴파일러 위치가 잘못되어 발생하는 경우가 대부분입니다. 설정에서 code-runner.executorMap 에 루아 컴파일러 위치를 설정해줘도 됩니다. 하지만, 윈도우 환경 변수의 path에 등록해두었기 대문에 대부분은 정상 동작할겁니다. 개발자는 크게 2 부류인데요. 한가지 언어 또는 업무를 깊게 알거나 저처럼 넓지만 얕게 아는 경우입니다. 개인적으로는 한가지 업무를 깊이 있게 하는게 좋다고 생각합니다. 이것 저것 줏어들은 건 많아서 이래저래 대화에 잘 끼어들수는 있지만, 몇마디 나눠보면 저같은 경우는 금방 실력이 뽀록나서 먹고 살기 힘들어집니다.

     

    루아 스크립트를 설치했다고 해서 뭔가 개발할 수 있는건 아닙니다. C나 C++로 작성된 함수를 루아에서 호출하여 로직을 구성해야 합니다. 그래서, 엔지엠 스크립트 짜듯이 루아 스크립트를 작성해서 실행해야 합니다. 루아가 C# 라이브라리를 이용할 수 있다면 좋겠지만, 현재로써는 C로 래핑한 후 루아에서 사용하는 방법 말고는 없습니다. 뭐, 방식이야 어떻든 간에 루아도 자바스크립트처럼 여러가지 문법들을 익혀야 하고, 로직은 직접 구성해야 하는건 동일합니다. 그렇더라도, 프로그래밍 수준의 문법 및 인터프리터를 제공하기에 GUI 형태로 개발이 불편한 경우 이 기능을 사용하면 개발 생산성이 비약적(?)으로 증가할 수 있을겁니다. 엔지엠에서도 lua script를 이용해서 로직을 구성할 수 있도록 하면 더 편리할듯 합니다. 루아에서 C# 메소드를 호출할수는 없지만, C#에서는 루아 인터프리터로 한줄씩 읽어서 처리는 가능하기 때문입니다. 사실 GUI로 for, foreach, while 및 function등등을 만드는건 괴로운 일입니다. 아무리 멋진 UI/UX를 제공하더라도 로직은 코딩이 편하니까요^^;

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.