#12/28 [매직미러 HowTo] / 스텝 2

2020. 11. 22. 17:44IT

한글로 정보 출력하기

  우리는 앞서서 Translations.js라는 파일에서 국가 코드 “kr”을 봤습니다. 이 얘기는 뭔가 한국과 관련된 구현사항이 이미 매직미러에 존재한다는 것을 의미합니다. 어디서 부터 찾아봐야 할 것인지 감이오지 않았는데 매직미러를 다운로드 할 때 config.js.sample을 config.js로 복사를 했던 것이 기억이 났습니다. Config는 설정 관련된 것을 일반적으로 담고 있으니 그 파일을 열어보도록 하겠습니다.

탐색기를 열어 home/pi/MagicMirror/config로 이동을 해서 config.js 파일을 선택하고 마우스 오른쪽 버튼을 이용해서 지니로 열어봅시다.

 

그림 82. Config.js 열기

 

  파일을 열고 좌측의 클래스에서 Language를 선택해 봅니다. 그리고  

 

language : “en”,

 

language : “ko”,

 

로 바꿔주거나 다음에 보이는 것과 같이 

 

//language : “en”,

language : “ko”,

 

로 수정을 해 봅니다.

 

그림 83. 언어 변경(영어 → 한글)

 

  앞서서 ‘//language: “en”,’과 같이 수정을 했습니다. 소스 코드 상에서 ‘//’와 뒤에 있는 부분은 주석(comment)라고 해서 단지 코멘트 역할만 할 뿐, 실행되지 않고 컴퓨터에는 의해서 무시되는 부분입니다. 

[그림 83]에서 보면 빨간색이 모두 주석입니다. 여기에는 어떤 의미가 있는 코드인지, 여럿이서 개발할 때엔 누가 언제 수정했는지 등등을 남겨 놓습니다. 나중에 누군가 이 코드를 볼 때, 이해도를 높여주기 위해서 사용을 하는 것입니다.

 

$npm run start

 

이 것을 실행해 수정사항이 어떻게 반영되었는지 확인해보시죠. 

 

그림 84. 언어 변경된 화면

 

  영어로 되어 있던 부분 중에서 일부분이 한글로 바뀐 것을 볼 수 있습니다. 한 번에 전체를 바꿔주는 매직 솔루션은 없나봅니다. 어디를 수정해 줘야 할지 차근차근 찾아봅시다. 

 

  시간 아래 부분은 미국의 휴일 정보이니 원래의 소스가 영어이니 언어를 변경해도 영어로 나타나는 것이고, “You look nice!”는 아마도 원작자가 넣어 놓은 메시지가 영어이기 때문에 그대로 나타나는 것으로 추측이 됩니다. 그리고 맨 아래 뉴스에 대해서 부연 설명을 하자면 뉴스는 뉴욕타임즈에서 인터넷을 통해서 받아오는 정보이다보니 원소스가 영어라 중간에 번역을 해서 보여줄 수 있는 방법은 없을 것 같습니다. 

 

그래서 다음 장에서는 한글 뉴스를 받아오도록 변경을 하는 작업을 해 보도록 할 예정입니다. 역시 한 두 줄 바꿔주면 뭔가 되긴 되네요. 어디를 바꿔야할지를 찾는 것도 크게 어려워 보이지는 않습니다.

 

RSS 뉴스 서비스

  매직미러의 맨 아래 나타나는 뉴스는 일정시간마다 기사 제목을 보여줍니다. 이렇게 보여주는 뉴스를 RSS라고 하죠. 매직미러의 하단의 뉴스는 뉴욕타임즈에서 받아오는 것이라고 앞서 이야기를 했습니다. 

지하철을 타서 중간 중간 있는 모니터의 맨 아래에 뉴스 헤드라인이 흘러가는 것을 본 경험이 있으실 것입니다. 이런 것들을 각 뉴스 미디어나 방송사에서  뉴스 피드라고 해서 RSS라는 서비스 형태로 제공을 하고 있습니다. 이것을 인터넷을 통해 읽어와서 화면에 보여주는 것입니다.

 

  RSS는 뉴스나 블로그에서 사용하는 콘텐츠 표현 방식 중의 하나로 Really Simple Syndication 또는 Rich Site Summary라고 합니다. 콘텐츠가 자주 변하지 않는 사이트의 경우에는 제공하지 않고 있으며 주로 뉴스나 신문기사와 같이 업데이트 주기가 잦은 사이트에서 제공을 하며 뉴스나 기사의 제목들만 또는 짧은 본문을 포함하는 기사를 하나의 파일로 만들어 제공하는 것입니다. 

 

한국 뉴스보기

  화면에 보여주는 뉴스피드는 오래된 것 보다는 속보가 좋을 것 같다는 생각이 듭니다. 하지만 개인의 취향이니 최종 선택은 직접하길 바라며 제 경우에는 “연합뉴스"의 “최신정보"를 선택했습니다. 구글 검색창에 “뉴스 RSS”를 치면 다양한 뉴스 피드 서비스들의 주소를 찾을 수 있습니다. 

 

수정이 필요한 곳은 역시나 config.js에 있습니다.

 

그림 85. 뉴스 피드 변경

 

  뉴스 피드를 기존의 뉴욕타임즈에서 연합뉴스로 바뀌었습니다. 어딘가 하면 “{“ 다음에 module이라고하는것이 보이는데 module 다음에 있는 “Newsfeed”를 찾으시면 됩니다.  

config의 항목 중에 Title에 “연합뉴스"를 넣었는데 따옴표 사이에는 넣고 싶은 문자열을 넣으면 화면에 그대로 나타나게 됩니다. 한글 폰트를 사용했기 때문에 한글은 잘 동작할 것입니다. 

그리고 그 아래에는 웹 검색에서 얻은 RSS 서비스 주소입니다.

 

http://www.yonhapnewstv.co.kr/browse/feed/

 

그리고 나서 실행을 해 봅니다. 


오류 화면보기

그런데 혹시라도 [그림86]와 같이 ‘Config 파일을 생성하세요’라는 메시지가 나온다면 뭔가 실수를 한 것입니다. 우리가 수정한 config 파일 중 문법에 틀린 문장이 들어 있기 때문입니다. 이것도 역시 버그라고 말을 합니다. 실수를 찾아 수정을하는 과정은 디버깅이라고 하고요. 실수를 찾아보고 다시 실행을 해 봅니다. 만약에 이런 메시지를 프로젝트를 진행하면서 한번도 보지 않게 된다면 대단한 능력자입니다. 지금까지 못 보셨다면 ‘newsfeed’ 다음에 있는 ‘,’를 삭제하시고 실행을 해 보시기 바랍니다. 그러면 다음과 같은 화면을 바로 보실 수 있습니다. 

 

그림 86. 오류화면

 

  수정이 제대로 되었다면 [그림 87]과 같이 뉴스 피드가 연합뉴스로 바뀌어 뉴스가 일정 시간마다 변경되어 화면에 나타나는 것을 볼 수 있습니다.

 

그림 87. 연합뉴스 피드

 

  ‘다음 작업은 무엇을 할까’하고 화면을 보니 US holiday가 눈에 걸립니다. 다음은 US Holiday 대신에 구글 캘린더를 연결해 보도록 하겠습니다.

 

반응형