이제 곧 6월 4일(세계 표준시 기준)에 리눅스 민트 19 Tara의 베타버전이 배포됩니다.


사실 이미 테스트버전이 FTP를 통해 배포중이었습니다. ftp://ftp.heanet.ie/pub/linuxmint.com/testing/


이미 이쪽을 통해 사전 다운로드가 가능했었다.



하지만 공식홈페이지에는 아직 올라오진 않고 있었는데 이번 6월 4일을 기준으로 공식적인 19 Tara의 베타버전이 배포될 예정입니다. 이번 리눅스 민트 19는 기존 16.04기반의 18.x버전과 달리 우분투 최신 버전인 18.04를 기반으로 만들어지고 있습니다. 따라서 우분투 18.04에서 개선된 것이 적용이 될 것입니다. (인텔의 Meltdown 완화 패치 포함) 


큰 기대는 하지 않지만 반대로 실망은 절대로 하지 않는 배포판이기에 초보자 및 본격적인 데스크탑으로 사용하고자 하는 분들에게 많이 추천하는 배포판입니다. 우리나라의 HamoniKR프로젝트(http://hamonikr.org/)도 이것을 기반으로 하고 있고 저도 이걸 기반으로 배포를 많이 했었지요. 


일단 우분투 18.04기반이기에 그동안 우분투 18.04가 쌓은 호환성 문제를 해결하고 이를 따라서 개인 PPA들이 지원하는 각종 프로그램들을 이용이 가능합니다. 18.2에서 18.3으로 넘어갈 때에는 Time Shift기능을 통해서 차별화를 했는데 이번에는 어떤 것을 가져올지 기대되는군요.


Tara버전의 베타버전이 나오면 일단 써보면서 이런저런 것을 해야겠지요.

,


LibreOffice가 어느새 6.0으로 업데이트 되었습니다.


기존 5.0보다 더욱 좋아진 기능으로 무장했고 더욱 호환성을 높혔습니다.


그런데 그에대한 반동으로 상당히 무거워졌습니다. 왠지 MSOffice가 갔던 그 길을 따라가는 것 같아 슬프네요.


하지만 뭐 이걸 어느정도 완화 할 수 는 있습니다. 물론 기본적으로 무거워 진 것은 어쩔 수 없으니 답답하면 버전을 낮추기라도 해야겠지요. (....아니면 이참에 다른 것으로 바꿔야 할지도 모르겠네요.)


일단 LibreOffice의 아무 프로그램이나 실행한 다음

도구-옵션으로 들어갑니다.


그다음 Advanced를 찾아 들어갑니다. 아직 번역이 완벽히 되지 않아서 한글과 영문이 섞여 있습니다.


여기서 Open Expoert Configuration 즉, 전문가 설정을 눌러 들어가도록 합시다.

참고로 여기서 JAVA를 꺼주시면 조금이나마 더 성능이 나아지기도 합니다. 대신 일부 기능을 못 씁니다.



여기서 org.openoffice.Office.Common에서 Cache -> GraphicManager 순으로 열어서 확인합니다.


여기서 캐시크기를 늘려주면 그림이 많은 문서를 작업할 때 캐시를 확보해서 어느정도 버벅임을 줄일 수 있습니다. TotalCacheSize와 ObjectCacheSize를 늘려주세요. 물론 적당히 늘려야 메모리를 절약할 수 있겠죠?


그리고 확인을 누른다음 옵션에서 보기를 누릅니다.



그래픽출력을 확인해보시면 하드웨어가속 사용이 있는데 시스템에 따라 하드웨어가속을 써야 빠른 경우가 있고 하드웨어 가속을 꺼야 빠른 경우가 있습니다. 그건 상황에따라 다릅니다. 그리고 OpenGL렌더링 사용은 왠만하면 체크해두세요. Ignore OpenGL Blacklist는 체크를 해서 쓰다가 렌더링이 깨지면 그냥 OpenGL 사용 자체를 꺼주세요. 일부 GPU에서 렌더링이 깨진다고 합니다.


일단 이렇게만 해도 적당히 돌아는 갑니다. 그런데 아직도 답답하다면 LibreOffice를 다운그레이드 하는 것도 방법입니다.


뭐... 차차 나아지겠지요.

,

Korean_IME_suport_Linux_v2.tar.gz



http://moordev.tistory.com/242 두근두근 문예부! 리눅스에서 굴리기


해당 글에서 우리는 두근두근 문예부를 굴리는데 성공했습니다.

그런데 다른 것은 하나도 문제가 없는데 이름 입력할 때 한국어가 입력이 안 된다는 문제가 있었습니다.


패치는 글 제일 아래에 있습니다. 아래에서 이야기하는 것은 다 넣어놨으니 그냥 패치만 필요하신 분은 그냥 글 아래로 쭉 내려가세요.


원인이 Ren'Py 엔진이 사용하는 SDL이 리눅스에서 사용하는 XIM프로토콜(한국어, 중국어, 일본어 입력기에서 사용하는 프로토콜)이 지원이 안된다고 합니다. 게다가 해당 프로토콜이 딱히 정형화 되어 있지 않은 것이 워낙 많아서 SDL에서 지원을 하기가 좀 걸끄러운 수준인 듯 합니다.


https://www.renpy.org/doc/html/input.html

여기 보면 해당 사항에 대해 나와있습니다.


대충 해석하면 리눅스에서는 IME가 필요한 한국어, 일본어, 중국어 입력이 불가능



그래서 다른 방법을 생각했습니다.


그럼 어차피 Python이니 Python의 기능을 활용해서 넣으면 되는거 아닌가?

실제로 Tkinter같은 간단한 GUI 라이브러리를 쓰면 아무런 문제가 없을테니까요.


그래서 게임을 뜯었습니다. 


rpatool https://github.com/Shizmob/rpatool

unrpyc https://github.com/CensoredUsername/unrpyc



이 둘을 쓰면 rpa를 뜯고 스크립트를 들여다보는 것은 어렵지 않습니다. 자세한 것은 직접 확인을 부탁드리고 우선 Tkinter를 렌파이에 삽입하기 전에 간단한 GUI를 만들어보았습니다.

#-*- coding: utf-8 -*-
from Tkinter import *

name = ""
root = Tk()
def okClick():
    name = txt.get()
    root.destroy()
    print name

lbl = Label(root, text="이름")
lbl.pack()

txt = Entry(root)
txt.pack()

btn = Button(root, text="OK", command=okClick)
btn.pack()

root.mainloop()

렌파이는 아직도 Python2.7을 쓰기 때문에 2.7에 맞춰서 제작했습니다. 해당 프로그램은 이름을 입력한 후 OK버튼을 누르면 터미널에 입력한 문장을 띄우는 지극히 간단한 GUI프로그램입니다.


우분투라면 python-tk 패키지를 미리 설치해야 작동합니다.

sudo apt install python-tk


나중에는 python2.7-tk 이런 식으로 이름이 바뀔 수도 있습니다. 그때가면 알게 되겠지요.


이런 것을 넣기로 게임에 해당 코드를 삽입하기로 했습니다.


Scripts.rpa파일은 game 폴더 안에 있다. 사실 여긴 게임하다보면 자주 들락날락 하게 되는 곳이기도 하다.



scripts.rpa파일이 보이는 군요. 이 안에 필요한 파일이 있을 것입니다.


rpatool -x scripts.rpa


rpatool이 설치 된 곳에서 명령을 내리세요.


그러면 수많은 rpyc파일들이 쏟아집니다. 그러면 이걸 rpy로 디컴파일 해야 합니다. 제가 원하는 파일은 screen.rpyc더군요.(노가다해서 알아냈습니다.


python unrpyc.py screen.rpyc (screen.rpyc 파일을 unrpyc와 함께 놓고 명령을 내리세요.)


이렇게 하면 디컴파일된 코드를 얻을 수 있습니다. 이걸 수정해서 (설치폴더)/game

에 rpy 상태로 그냥 넣으면 수정된 코드로 작동하게 됩니다. 이건 LongLiveTheQueen에서 잘 써먹었던 방법이지요. rpa에 있는 스크립트보다 밖에 있는 스크립트가 우선됩니다.


그리고 screem.rpy파일을 잘 뒤져서

init -501 screen name_input(message, ok_action):


코드를 찾습니다.

이 부분이 바로 이름을 입력하는 부분!


 init -501 screen name_input(message, ok_action):
    python:
        #-*- coding: utf-8 -*-
        from Tkinter import *
        global root
        global tk_txt
        global name
        global player
        tk_txt = ""
        name = ""

        root = Tk()
        def okClick():
            global name
            global tk_txt
            global player
            name = tk_txt.get()
            root.destroy()
            player = unicode(name)
            print player
      
        lbl = Label(root, text="이름을 입력해 주세요")
        lbl.pack()
        
        tk_txt = Entry(root)
        tk_txt.pack()
        
        btn = Button(root, text="OK", command=okClick)
        btn.pack()
        if not player:
            root.mainloop()

        else:
            del(root)
            del(tk_txt)
            del(name)

        
    modal True

    zorder 200

    style_prefix "confirm"

    add "gui/overlay/confirm.png"
    key "K_RETURN" action [Play("sound", gui.activate_sound), ok_action]

    frame:

        has vbox:
            xalign .5
            yalign .5
            spacing 30

        #label _(message):
        label _(player+"(으)로 진행합니다."):
            style "confirm_prompt"
            xalign 0.5
        #input default "name" value VariableInputValue("player") length 12


        hbox:
            xalign 0.5
            spacing 100

            textbutton _("예") action ok_action



여기서 붉은 색으로 표시한 부분이 추가한 부분입니다.

그리고 초록색으로 표시한 부분은 앞에 #을 추가하여 삭제한 코드입니다.

아래쪽에 frame: 안을 보시면 label _(message)를 삭제하고 player란 변수에 들어간 이름을 쓴다는 지극히 쓸데없는 메시지를 한번 더 띄웁니다. 사실 본래 이름입력하라고 한 창을 최소한의 수정으로 바꾼 것입니다.


이걸 쓰면 일단 TK로 된 창이 뜨고 이름을 입력하면 기존 player라는 변수에 이름이 입력되게 됩니다.


문제는 Renpy에 Tkinter 라이브러리를 넣어줘야 한다는 것.

어차피 제가 올려놓은 패치에는 필요한 라이브러리는 다 넣었습니다.


(문예부 설치폴더)/game/python-package

여기에 해당 모듈을 쏟아 부어줘야 합니다.

시스템에 python2.7이 설치되어 있다면

/usr/lib/python2.7/lib-tk

여기에 해당 모듈이 다 있습니다. 이걸 (문예부 설치폴더)/game/python-package 여기에 싹 복사해서 넣어주면 됩니다.


그리고 추가로 python2.7.14의 _tkinter.so파일이 필요합니다. 이건 Debian패키지에서 찾아서 넣어주면 됩니다.

https://packages.debian.org/sid/python-tk

여기서 sid버전의 DEB을 다운로드 받은 다음 압축을 풀어서 AMD64패키지의 것은


(문예부 설치폴더)/lib/linux-x86_64/lib

여기에 _tkinder.so 파일을 넣고

i386은 (문예부 설치폴더)/lib/linux-x86/lib

여기에 넣으면 됩니다.


그러면

이렇게 별도의 창을 띄울 수 있게 됩니다. 이러면 한글 입력이 가능해지는 것이지요!


이제 리눅스에서도 한글 이름 입력을 할 수 있게 되었습니다!


 

 

 




수정 전 후비교


왼쪽은 백날 아무리 두드려봐야 한글 입력이 안 되지만 오른쪽은 한글로 입력이 가능해집니다. 추가로 글자수 제한이 풀려서 14자 이상의 글자 입력이 가능합니다.


해당 패치는 리눅스 전용입니다. Windows에서는 정상작동이 절대로 안 되니 Windows 사용자분들은 굳이 설치 하지 마세요.(애초에 Windows는 한글입력이 잘 되니까 이런 짓 안 해도 됩니다.)


===================================


2018. 4. 13


세이브중에 세이브가 안 되는 버그가 발견되어 이를 수정한 패치를 만들었습니다.


Korean_IME_suport_Linux_v2.tar.gz


수정 부분은

         if not player:
            root.mainloop()

        else:
            del(root)
            del(tk_txt)
            del(name)


이 부분으로 이름입력이 끝난후 필요없어진 TK관련 객체를 삭제하는 코드를 넣었습니다. 그랬더니 세이브가 잘 되더군요.


====사용상 주의사항======


1. 한글 이름입력을 위해 Tkinter를 이용한 패치입니다. 따라서 Tcl/Tk 라이브러리가 설치되어야 합니다.


우분투의 경우

sudo apt install python-tk


명령을 통해 Tkinter 설치가 가능합니다.


2. 한국어 입력기에 따라 마지막 글자가 입력이 될 수도 있고 안 될 수도 있습니다. 그럴 때는 화살표 키를 한번 눌러주시면 마지막 글자가 입력 됩니다.


3. 이름을 입력하고 되돌리기는 불가능합니다. 이름을 잘 못 입력했다면 그냥 눈물을 머금고 다시 게임을 시작하시기 바랍니다. game폴더의 firstrun파일을 지우면 완전 처음부터 가능합니다.


4. 이 패치는 오로지 한국어 환경에서 리눅스를 사용하는 사람들을 위한 패치입니다. 절대로 한글 패치가 아닙니다.


5. 게임을 수정한 것이기에 Monika가 갑자기 놀랄 수가 있습니다. 그건 제가 알 바 아닙니다.


6. 게임이 이상해진다거나 하는 것은 이 패치 때문이 아닙니다. 이 쯤 되면 다들 알잖아요?


7. 게임내의 캐릭터가 사라지는 것은 이 패치 때문이 아닙니다.


8. 저는 Team Salvato와 아무런 관계가 없습니다. 한글패치 팀과도 아무런 관계가 없습니다.


9. JUST MONIKA

,

리눅스에서 이런저런 프로그램을 쓰다보면 난감할 때가 많습니다. 분명 일부 글자는 한글로 잘 뜨지만 중간중간 영어나 다른 외국어가 끼어있는 경우도 있고 가끔 멀쩡히 한글로 뜨던것이 갑자기 영어로 덜컥 나오면서 멘붕을 먹게하는 경우도 있지요.


사실 오픈소스 프로그램들은 대부분 i18n이라해서 국제화 방식을 사용합니다. 시스템의 국가설정을 읽어서 이에 맞춰 해당 언어로 인터페이스를 갖추는 것 입니다. 윈도우에서도 반디집이나 한글2007 이후 버전이 국가 설정을 읽어서 언어 설정을 자동으로 하는 대표적인 프로그램입니다. 윈도우 영문판을 설치하거나 국가설정을 영어로 맞추면 반디집의 인터페이스가 자동으로 영문으로 바뀌는 것을 확인 할 수 있습니다.


물론, 옛날 옛적에 만든 프로그램은 그런 것을 1도 신경 안 썼기 때문에 한글판이면 한글판이 필요했고 영문판과 한글판의 라이센스가 따로 논다던지 하는 문제가 있었는데(대표적인 예가 포토샵 구버전 영문판 구매하고 한글판 설치하면 안 먹힙니다.) 요즘은 어느 국가에서 구입을 하더라도 한국어 인터페이스를 갖출 수 있는 것입니다.


문제는...


상용 프로그램이면 몰라도 커뮤니티의 기여와 여러사람들의 노력으로 굴러가는 오픈소스 프로그램 특성상 기존 번역가가 빠지면 번역이 옛날 버전 수준으로 만들어 진다는 점입니다.


대표적인 프로그램이 PlayonLinux입니다.


분명 기본 인터페이스는 한국어로 잘 나옵니다.


어디는 한국어화가 되어있고 어디는 한국어화가 안 되어있는 난감한 상황, 이러고 3년을 썼다.

하지만 특정 인터페이스는 영문으로 출력되는 것을 알 수 있습니다. 그것도 제일 중요한 프로그램 설치 중 메시지는 100% 영문입니다. 심지어 일부 메시지는 한국어와 영어가 혼재되어있습니다.


이유는 PlayonLinux는 계속 업데이트 되었지만 업데이트되며 추가된 텍스트가 번역이 되지 않은 것입니다. 사실 이런 프로그램이 상당히 많습니다. 그러니까 해당 언어권 사람의 기여가 필요합니다.


그러려면 우선 po파일에 대하여 알려드려야겠네요.


po파일은 말 그대로 번역파일입니다. 소스에서 문장을 뽑아서 이를 적용할 수 있게 만들어진 파일입니다. 그냥 UTF8 혹은 UTF16으로 인코딩된(당연히 유니코드계열 인코딩이겠지요. 멍청이가 아닌 이상) 텍스트 파일입니다.


이런 식으로 구성되어 있습니다. (예시는 PlayonLinux의 ko.po입니다.)


# Korean translation for playonlinux
# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
# This file is distributed under the same license as the playonlinux package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: playonlinux\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2015-08-31 19:00+0200\n"
"PO-Revision-Date: 2014-11-25 09:09+0000\n"
"Last-Translator: Hyun-Seok, Choi <chs1217@gmail.com>\n"
"Language-Team: Korean <ko@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2015-09-01 05:11+0000\n"
"X-Generator: Launchpad (build 17690)\n"

#: Capture plugin:2, Detour plugin:4
msgid "Which application do you want to apply the modification to?"
msgstr "어느 어플리케이션에 수정 사항을 적용할 것 입니까?"

#: Capture plugin:3
msgid ""
"This plugin wil allow you to capture you applications under PlayOnLinux"
msgstr "이 플러그인은 PlayOnLinux 아래의 어플리케이션을 캡쳐할 수 있습니다."

#: Capture plugin:4
msgid "Capture menu (OpenGL)"
msgstr "캡쳐 메뉴(OpenGL)"

#: Capture plugin:5
msgid "Capture menu (not OpenGL)"
msgstr "캡쳐 메뉴(not OpenGL)"


제일 위쪽에 언제 누가 번역을 했는지 적혀있고 아래로 내려오면서 실제 번역될 문장과 번역된 문장이 있는 것을 알 수 있습니다.


그럼 이 po파일만 있으면 되느냐 하면 그건 아니고 이것을 mo파일로 컴파일 해야합니다.

msgfmt란 프로그램이 그런 역할을 합니다.


msgfmt XXX.po -o XXX.mo

이렇게 하면 mo 파일이 만들어집니다.


/usr/share/locale 여기로 들어간 다음 하위 폴더를 찾아보면 수많은 mo파일들을 볼 수 있는데 이것이 바로 지금까지 우리가 언어팩이라며 설치한 수많은 국가들을 위해 만들어진 파일입니다. 여기에는 Gnome이나 MATE, KDE의 프로그램도 있고 심지어 apt-get의 메시지도 번역되어 들어가 있습니다.


/usr/share/locale/ko/LC_MESSAGES

여기에 가면 수많은 한국어 번역 파일들이 있고 그렇다는 것은 여기에 파일명에 맞춰서 mo파일을 넣으면 해당 프로그램이 한국어로 뜨게 된다는 것을 의미합니다.


그리고 대다수 프로그램들은 i18n지원을 위해서 pot파일이라하여 po파일의 템플릿을 제공합니다.


즉, 그냥 양식을 줄테니 번역만 해서 달라 이겁니다.


그런데 이걸 그냥 텍스트에디터로 작업하려고 하면 노가다가 극심하겠지요. 심지어 기존 번역이 부족해서 추가하려고 한다면? 맨 땅에 pot파일을 가져와서 처음부터 다시 번역을 해야 할까요? 그랬다간 번역자들이 죽어 나갈겁니다. 그래서 po편집전문 프로그램이 있습니다.


poedit https://poedit.net/


아주 간단합니다. 이것을 쓰면 됩니다. 심지어 한글로도 잘 번역되어 있으니(당연하다면 당연한 것일까요?) 편하게 쓸 수 있습니다. 한국에서는 Wordpress로 자체 사이트 운영하는 사람들이 쓴다고 소개하던데 본래 목적은 i18n지원이 목적입니다.


sudo apt install poedit


이렇게 하면 설치됩니다.


당연하게도 한국어 번역이 잘 되어있다. 만약 번역이 안 된 부분이 있다면 poedit으로 poedit의 한국어화를 하도록 하자.

그냥 po파일을 불러와서 편집만 하면 되는 아주 간단한 프로그램입니다. 윈도용은 유료니 뭐니 하는 이야기가 있던데 그건 협업 시스템 이야기고 우리는 그냥 개인적으로 이용할 테니 무시하도록 합시다.


일단 하나를 예시로 들어봐야겠네요.


아까 위에서 말했던 PlayonLinux를 이용해보도록 하겠습니다.

보통 오픈소스 프로그램들은 github에서 소스코드를 제공합니다. 물론 po파일도 같이 제공합니다.


PlayonLinux의 po파일들은 여기 있군요.

https://github.com/PlayOnLinux/POL-POM-4/tree/master/lang/po


보통 소스트리에서 po란 폴더 혹은 lang이란 폴더가 po파일들이 있는 폴더일 가능성이 높습니다. 여기서 두 가지 파일을 다운로드 받아봅시다.


하나는 번역이 부족한 한국어 번역파일 ko.po

다른 하나는 프로젝트에서 제공하는 템플릿인 pol.pot 파일입니다. 보통 템플릿 파일은 확장자를 pot으로 만듭니다. 만약 pot이 없다면 en.po를 이용해야 합니다. (그런데 보통은 pot을 제공합니다. 정 없으면 소스트리에서 gettext를 통해 pot을 만들어야합니다.)


Raw버튼을 누르면 github에서 실제 파일이 다운로드 가능하다.

해당 파일을 github에서 연 뒤에 RAW버튼을 누르면 파일을 다운로드 받을 수 있습니다. 파일이 다운로드 안되고 그냥 열린다면 오른쪽 버튼을 누르고 다른 이름으로 저장을 누르면 됩니다. 어차피 그냥 일반 텍스트 파일이니까요.


그럼 이것을 poedit으로 열어봅시다.


poedit을 열고 ko.po파일을 열어봅시다.

보시면 아시겠지만 번역은 완벽히 된 것처럼 보입니다. 하지만 이것은 오래된 버전에 맞춰져서 만들어진 번역입니다. 최신판에 맞춰서 바꿔야겠지요.


카탈로그 - POT파일로 업데이트를 누르고 다운로드 받은 pol.pot파일을 선택하면...


번역 숙제가 와르르 쏟아집니다.

이제 이것은 숙제입니다. 일일이 노가다해서라도 번역을 해야합니다. 그러고 나면 자동으로 mo파일이 만들어집니다. 저장 버튼을 누르면 알아서 컴파일까지 다 해주더군요.


번역이 완료된 뒤에 해당 mo파일을 pol.mo로 바꾸고 /usr/share/locale/ko/LC_MESSAGES 여기에 넣으면...


PlayonLinux의 번역이 완료됩니다. 가능하다면 po파일을 해당 프로젝트 관리자에게 보내거나 직접 github에 branch해서 올리는 것도 방법입니다. 그러면 관리자가 해당 branch를 master로 합쳐줄 수 있겠지요.


다른 프로그램도 비슷합니다. 아직 한국어 번역이 되지 않은 수많은 프로그램을 이런 식으로 한국어화 할 수 있습니다. 예외가 몇 가지 있기는 대부분은 이렇게 번역이 가능합니다. 심지어 이것을 웹으로 할 수 있게 만든 weblate란 프로젝트도 있습니다. 이쪽은 CSV형태로도 가능하더군요!


영어 능력자이신 한국인, 취미로 영어 번역을 하시는 분, 영어를 쓰시면서 한국어가 되시는 분, 그냥 한국어가 되는 영어권 사람 등등 그리고 오픈소스를 사랑하는 한국어 사용자 분들 이런 식으로 작은 기여를 통해 오픈소스 세계의 한국을 만들어봅시다.

,

음... 이건 뭐라고 해야하나..

아무튼 대단한 게임이 있습니다. 게다가 무료지요.


뭐라고 해야하지...?


뭐... 자세한 것은 그렇다고 치고 일단 한국어화 패치 사이트는 여기입니다.


https://sites.google.com/view/dokidokikor


여기에 게임의 모든 것을 설명한...것은 아니고 아무튼 잘 번역이 되어있습니다.


이 게임은...일단 미소녀 연예 시뮬레이터의 일종...이라고 하는데 일단 일종이라는 표현을 빌려서... 에휴.. 모르겠다. 아무튼 아는 사람은 다 알테니 게임에 대한 설명은 넘어가겠습니다.


일단 저는 내용 스포일러를 다 당했기 때문에 그렇다 치겠습니다.


이 게임은 지원 OS가 Windows, Mac, Linux입니다.


스팀판이 있다고 하니까 따로 구하기 귀찮아서 스팀에서 설치하려고 하니...


리눅스 지원이 안된다고 나오네요? 리눅스 지원된다고 알고 있었는데 이유가 뭔지 몰라서 공식 홈페이지에 가봤습니다.


https://teamsalvato.itch.io/ddlc



여깁니다. 어차피 무료이니 여기서 다운로드 버튼을 눌러보면 리눅스, 맥, 윈도버전을 다운로드 받을 수 있게 해놓았겠지요.


하하... 게임이 마음에 들면 기부해 달라고 하네요. 네 마음에 드신다면 여기서 필요한 만큼 금액을 적어서 Paypal이나 기타 방법으로 기부를 하시면 됩니다. 일단 저는... 무료로 해보기 위해서 "No, Thanks. Just take me Download." 를 위치고 다운로드를 하기로 했습니다. 그런데 10달러정도는 기부할 만한 게임입니다. 여러가지 의미로 말이지요...


펭귄그림이 윈도용과 함께 있군요. 그러니까 윈도용과 리눅스용은 공용판이었나 봅니다. Windows용을 다운로드 받으면 되겠군요.


다운로드 받은 ddlc-win.zip 압축을 풀어주시면...


요렇게 나옵니다. 여기서 DDLC.sh를 실행하면 됩니다.


음.. 실행 잘 되네요. 그럼 한글 패치를 해봅시다.


https://sites.google.com/view/dokidokikor


여기가 한글패치 배포 사이트입니다. 여기서 우린 스팀판이 아닌(스팀판을 굴릴래야 굴릴 수가 없으니...)일반 사용자 버전을 다운로드 받으면 되겠습니다.


스팀판 패치는 안 먹히니 이걸 다운로드 받으시면 됩니다.


그리고 압축파일의 내용을 그대로 설치된 곳에 풀어서 덮으시면 됩니다.

(렌파이 엔진의 일부도 갈아엎은 듯 합니다. 몇 년전에 제가 Long Live The Queen 작업할 때 비슷한 짓을 했었지요. 이후 해당 기능이 이식되면서 패치를 내려버리긴 했습니다.)


이제 다시 실행해 보겠습니다.


... 윈도와 리눅스의 차이를 아십니까?


권한이 날아가 버렸네요!

이런 빌어먹을 작업을 해야한다는 것이 더 슬픕니다. 마이너는 이래서 슬픈 겁니다.


하지만 권한따윈 복구해주면 됩니다.


게임이 설치된 곳에서

sudo chmod +x lib/linux-x86_64/DDLC

sudo chmod +x lib/linux-i686/DDLC


이렇게 해주면 실행 권한이 다시 살아납니다.


터미널에 이런저런 내용이 뜨면서 실행이 됩니다.


굳이 터미널로 실행한 이유는 뭐냐고요?


.... 이 게임을 해보시면 압니다. 한국어로 아래에 뜨는 경고문 보이시죠? 이것하고 묘하게 관련이 깊습니다.

해커는 역시 터미널을 봐야 직성이 풀린다고 해야할까요...?


저기 있는 SyntaxWarning부터 신경쓰이기 시작하면 이 게임을 아주 잘 아시는 겁니다.



그런데 새 게임을 눌러보니 한글 입력이 안 되네요?

그래서 한글입력을 할 수 있게 Tkinter를 이용해서 한글 입력이 되게끔 수정한 패치를 같이 공개합니다.


http://moordev.tistory.com/246

두근두근 문예부! 리눅스용 한글입력 개삽질



마지막으로...


리눅스에서의 너는 어떤지 한번 보자꾸나.

> 터미널을 같이 띄우는 이유는 이런일이 일어나기 때문입니다.(스포일러 약간 함유.게임을 할 것이라면 누르지 마세요. 주의)




,

가끔 지워서는 안 되는 파일을 지우기도 하는 것이 사람입니다.


보통 그럴때는 휴지통에서 복구하는 방법으로 해결하기도 하는데 사람이란것이 워낙 멍청한지라 정말 아무 생각없이 휴지통 비우기를 시전하는 경우도 있지요.


그럴 때 사용하는 프로그램으로 가장 유명한것이 Finaldata란 프로그램입니다.

http://www.finaldata.co.kr/


문제는 이 프로그램은 포렌식에 이용되는 것이기에 더럽게 비쌉니다. 보통 일반인은 이런 프로그램을 쓸 정도는 아닙니다.


이 프로그램은 주로 경찰이나 정보기관에서 주로 사용하는 프로그램입니다.


보통 일반인이 쓸 정도면 실수로 삭제했다가 어?하고 다시 복구해야 하는 경우겠지요. 일단 간단하게 USB메모리 정도를 생각할 수 있습니다. 내부 HDD에서 복구해야한다면 HDD를 떼다가 다른 컴퓨터에서 복구 프로그램을 돌리면 됩니다.


이런 프로그램을 간단하게 만든 것이 있는데 바로 testdisk란 프로그램입니다.


https://www.cgsecurity.org/wiki/TestDisk


간단하게 우분투에서는 그냥 apt로 설치가 가능합니다.


sudo apt-get install testdisk


다만 단점은 CLI프로그램이라 키보드만 사용가능하다는 점입니다.


예시로 다음과 같이 묶인 SDCARD를 복구해보겠습니다.

파일을 삭제한지 얼마 안 된 상황과 똑같은 상태로 만들어주는 Winmend folder hidden으로 폴더를 잠가놓았다. 삭제 후 작업을 하지 않은 상황과 같은 상황이다.

해당 SDCARD는 Winmend folder hiddne라는 도구로 암호화(!)되어 파일들이 숨겨진 상태입니다. 말이 좋아 숨겨진 상태이지 사실은 삭제 체크가 되어 읽혀지지 않는 상태입니다. (금방 삭제한 파일과 같은 상태라는 의미입니다.)해당 도구로 복구가 가능하긴 하지만 이것을 강제로 복구해보겠습니다.


터미널에서

sudo testdisk

명령을 통해 testdisk를 실행합니다.


영어라서 곤란한 사람이 있을 수도 있지만...

이 정도 영어는 다들 읽을 수 있을 것이라고 봅니다. (파일 복구한다면서 이 정도도 못 읽으면 이 참에 공부를 하셔야 할 겁니다.)


여기서는 파일 복구 기록을 남길것인지 아니면 안 남길것인지 물어보는 것입니다. 솔직히 복구가 완전히 안 됐을 경우를 대비해서 만들면 좋은데 나중되면 귀찮을 수도 있어서 알아서 선택하시기 바랍니다. 저는 No Log를 선택하겠습니다.


이제 복구하실 디스크를 선택하면 됩니다. 아까도 말했듯이 OS가 설치된 디스크는 떼어서 다른 컴퓨터에서 읽혀야합니다. 뭐하면 라이브USB에 testdisk만 설치해서 쓰는 방법도 있겠지요.


저는 USB메모리인 /dev/sdb를 선택할 예정입니다.


난감한 것이 나왔는데 파티션테이블 타입을 알려달라는 의미입니다. Intel과 EFI GPT 둘 중 하나일 것입니다. 요즘 OS는 GPT를 쓰는 경우도 많습니다. 어떤 것인지 모르시겠다면 디스크 유틸리티를 통해 알 수 있습니다.


여기서 보시면 파티션 만들기와 파티션 형식을 알 수 있는데 제 OS가 설치된 HDD는 파티션 만들기는 GUID이고 파티션 형식이 EFI라고 나옵니다. 즉, EFI GPT를 선택해야합니다. 그리고 USB메모리는 파티션 만들기가 주 부트영역이라고 나옵니다. 이걸 줄여서 우리는 MBR이라고도 합니다. 옛날 DOS시절부터 써오던 유서깊은 방식입니다. Testdisk에서는 Intel방식이라고 합니다.


저는 USB메모리(SDCARD)를 읽을 것이니 Intel을 선택하겠습니다.


여기서 많은 작업이 가능한데 숨겨진 파티션을 찾아내거나 부트옵션을 주거나 깨끗하게 싹 날리는 작업이 가능합니다. 그런데 지금 제가 말한 기능은 Gparted를 통해 편하게 작업이 가능합니다. 우리는 파일 복구를 위해서 이 프로그램을 쓰는 것이니 Advanced를 선택하겠습니다.


파일 복구 작업을 하기 위한 파티션을 선택하라고 나옵니다. 파티션이 두 개 이상이라면 해당 파티션을 선택하시고 아래의 Undelete를 좌우 방향키로 조정한 다음 Enter키를 누르면 됩니다. 저는 파티션이 하나뿐이니 하나만 뜨네요.


디스크를 잘못 선택했다면 q를 눌러서 뒤로 돌아갈 수 있습니다.(이것은 공통입니다.)


Undelete를 누릅시다.



빨간색으로 표시된 것이 삭제된 파일, 폴더를 의미합니다. 여기서 좌우 방향키를 누르면 해당 폴더로 들어갈 수 있고 파일을 살펴볼 수 있습니다.


복구하고 싶으신 파일을  :로 선택하실 수 있습니다. (Shift+;) 아래 내용을 보시면 알겠지만 여기서 Shift+C를 누르면 선택된 파일을 복구 할 수 있습니다. a를 누르면 현재 폴더에 들어있는 모든 파일을 선택 가능합니다.


파일 하나만 복구하시려면 그냥 c만 눌러서 바로 아래 작업을 할 수 있습니다.


초록색이 선택받은(?)파일들이다.여기서 Shift+C를 누르면 복구를 위한 저장폴더 선택을 할 수 있다.

Shfit+C를 누르면 갑자기 명령을 내렸을 때의 폴더가 덜컥 튀어나옵니다.

저는 홈폴더에서 프로그램을 실행했기에 홈폴더가 나오는군요.


여기서 복구될 파일이 저장될 곳을 선택해주시면 됩니다. 미리 폴더를 만들어두셔야 편하겠지요.

저는 ~/restore라는 폴더에 저장하겠습니다.


여기서 다시 Shift+C를 눌러주시면 복구를 시작합니다.


그리고 어떤 파일이 Fail되었는지 어떤 파일이 성공했는지 알 수 있습니다. 

저는 다행히 전부 성공했습니다. (사실 Winmein으로 잠긴 파일은 무조건 성공합니다. 금방 삭제된 상태와 동일하거든요. 어떤 파일이든 삭제된 시점에서 사용시간이 얼마 지나지 않을 수록 복구가 가능해집니다.)


자물쇠 마크는 root권한으로 만들어져서 그런것이다. chmod 666으로 누구나 읽을 수 있게 하자. (사실 읽는 것은 문제없다.)


복구파일을 저장한 곳에 의문의 폴더가 생성되어있고

해당 폴더에 들어가면...



해당 파일이 복구 되어있습니다!!!!


참고로 지금까지 저는 돈 한 푼 안 들이고 파일 복구 작업을 했습니다.

아마추어 파일 복구가 생각보다 어렵지 않습니다.


다만, 파일용량이 얼마 되지 않아서 파일복구가 어렵지 않았고 만약 파일이 크다면 복구하기가 어려웠을 것입니다. 무엇보다 저는 임의로 Winmein Folder Hidden이란 프로그램으로 파일을 삭제된 상태로 얼려주는(그렇기에 폴더를 숨길 수 있지요.)상태로 만들었기에 100%성공을 할 수 있었지만 만약 사용중이던 디스크면 복구가 어려워집니다.


참고로 Winmein Folder Hidden으로 숨겨진 파일을 이런 식으로 복구 할 수도 있습니다.(백날 이런식으로 숨겨봐야 데이터가 있으면 다 찾아냅니다. 차라리 그냥 암호화해서 압축하세요.)


이제 복구하는 방법을 아셨으니 복구를 못하게 하는 법을 알려드리겠습니다.


간단합니다. 그냥 용량 큰 파일을 해당 디스크에 여러번 복사해서 덮어주시면 이런 식으로 복구가 안 됩니다. 아니면 dd를 이용해서


sudo dd if=/dev/zero of=/dev/디스크위치 bs=10M


이렇게 하시면 그냥 싹 제로필해서 이 프로그램으로 복구가 안 됩니다. 대신 파티션 테이블도 날아가니 Gparted를 통해 파티션테이블을 다시 만들 필요는 있겠지요.

,

타자연습은 처음은 컴퓨터를 배우셨을 때 많이 해보셨을겁니다.


그 중에서 제일 많이 쓰셨던 프로그램이 아무래도 한컴타자연습일 것이라고 생각하는데요. 아무래도 한컴오피스를 깔면 같이 깔려있고 게다가 타자연습이라는 기본에 매우 충실해서 상당히 쓸만하기 때문입니다.


그런 한컴타자연습이 사실 한컴에서 무료로 배포중입니다.


http://www.hancom.com/hanfriends/friendsTypingDownload.do


여기서 한컴타자연습을 무료로 다운로드 받을 수 있습니다. 심지어 전체이용가로 게임심의까지 받았더군요. (한컴내부에서도 소개문을 보면 그냥 게임 취급하고 있습니다.)


우리 모두에게 필요한 게임! 즉, 타자연습은 게임취급이다.

이것을 Wine으로 실행하면 어떨까 해서 해봤는데 잘 되더군요.


온라인은 아직 안 했봤는데 사실 혼자 하기만 해도 타자연습이라는 본분에는 아주 잘 어울립니다.


PlayonLinux로 설치하는 방법을 알려드릴려고 했는데 사실 편하게 하는 것이 더 좋을 것 같아서 알려드립니다.


일단 Wine 3.0버전에서도 아무 문제없이 실행되는 것을 확인 했습니다.


그런데 솔직히 귀찮아서 PlayonLinux Vault로 백업한 파일을 올립니다.


https://drive.google.com/open?id=1-n81XcuuOnElYMWkbek_MyvbQpZqJXGp

위의 파일을 다운로드 받으신 다음


PlayonLinux에서 (없으면 설치하세요!)

플러그인 - PlayOnLinux Vault를 실행합니다.


그리고 위의 스크린샷 처럼 Restore를 선택한 다음 파일을 선택하라고 하면 찾아보기를 누른 뒤의 다운로드 받은 파일을 선택 합니다. 그리고 다음을 누르면...


이렇게 HncTT란 아이콘이 생성됩니다.


이걸 실행하면...


한컴타자연습이 실행됩니다!!!


만약 실행이 안 되신다면

Wine 버전관리에서 x86버전으로 3.0버전을 설치하신 다음(2.14에서도 됩니다....)


구성버튼을 누르고




HncTT의 와인버전을 3.0으로 설정하시면 잘 됩니다.


,

https://www.youtube.com/playlist?list=PLUBVPK8x-XMjxqbVg5aIjImKW6O64Ns1q

RWBY 유튜브 공식채널


Vol.3를 보다 보면 오프닝전에 게임 광고가 나옵니다.


RWBY라는 애니메이션이 있습니다. 미국의 Rooster Teeth란 단체(?)에서 만드는 애니메이션인데 분명 미국에서 만들어졌음에도 캐릭터들이 일본분위기가 나는 것이 특징입니다. 하지만 만든사람들이 만든 사람들이다보니 미국 하이틴 느낌이 다분히 납니다. (Vol.1~Vol.2 까지만 Vol.3부터는 배틀물 느낌이 나더니 Vol.4부터는 암울함 그 자체...)


아무튼 이런 애니메이션을 가지고 게임이 만들어졌는데 나름 재미있는 게임이 나왔습니다. 


문제는 역시나 그렇듯이 Windows만 지원한다는 것! 하지만 Wine으로 돌리니 일부 문제만 빼고는 잘 돌아갑니다.


이런 게임은 역시 PlayonLinux로 굴리는 것이 제일 좋겠지요.


일단 여기를 참고 : https://appdb.winehq.org/objectManager.php?sClass=version&iId=34898


일단 Wine-Staging을 이용할 것이니 도구-Wine 버전관리에서 staging이 붙은 최신버전 (18.2.19 현재 2.21-staging이 최신)을 설치합니다.


x86버전을 설치하는 것을 추천합니다.


그리고 설치를 해야겠지요.


PlayonLinux에서 설치버튼을 누르고




왼쪽 아래의 Install a non-listed program을 선택합니다.


이름은 아무래도 상관없지만 알기 쉬운 것으로 해주세요.



이번에 설치한 Wine-Staging을 이용할 것이니

Use another version Of Wine을 체크해주세요.


여기서 아까 설치한 Wine-Staging을 선택


x86버전을 설치했으므로 32bits로 선택


이제 Wine이 어쩌고 할 텐데 기다려 주신다음 Wine 설정 창이 나오면 Staging 탭으로 달려갑시다.



여기서 CSMT 활성화 체크


그 다음 설치할 프로그램이 어쩌고 하는데 우리는 여기서 설치할 생각이 없고 Steam을 이용할 예정이니 가뿐하게 창을 닫아줍시다.


그 다음 PlayonLinux의 구성 버튼을 누릅니다.


왼쪽의 이름을 찾으면서 아까 설치 기능으로 설정한 이름(저는 RWBY라고 했지요.)을 찾은 다음 구성요소 추가 탭을 눌러 Steam을 설치합니다.


미리 Steam을 설치해두었기에 steam 아이콘이 있는 것일 뿐...

적절히 steam을 설치했다면 일반 탭에서 steam 아이콘을 만들어야 편하겠지요.


그리고 Steam.exe를 바로가기로 만들면 됩니다.


이제 Steam을 실행하고 게임을 구입하고 깔기만 하면 됩니다.


단! 한가지 트릭이 더 필요합니다. 바로 RWBY:Grimm Eclipse는 DX11이 기본으로 이용되는 게임인데 Wine에서 DX11은 아직 갈길이 멉니다. 그래서 레거시용 옵션인 DX9(쉽게말해서 구형 OS인 WindowsXP용...)모드로 강제구동 되도록 해야 합니다. 그건 스팀에서 설정을 해야 합니다.


게임이름에서 마우스 오른쪽 버튼을 눌러 속성에 들어가신 다음


시작 옵션을 추가해주셔야 합니다. 고급사용자 어쩌고 하지만 우린 고급사용자 맞습니다.


-force-d3d9

이렇게 적어주시면 DX9로 구동이 됩니다.


게임패드가 정상적으로 지원되지 않기에 이 화면은 키보드를 제외하면 그저 그림의 떡...

다만 여기서 한 가지 문제가 생기는데 분명 컨트롤러가 지원된다고 되어있지만 아무리 용을 써도 컨트롤러가 작동이 되지 않았습니다.


키보드와 마우스는 아무런 문제 없이 되니 상관은 없지만 컨트롤러가 편하신 분들은 답답할 겁니다. 그럴 때는 QJoypad(Joy2Key같은 프로그램)으로 컨트롤러를 키보드로 입력되게 하신 다음 플레이하시면 됩니다.


Windows10에서도 같은 문제가 발생해서 여기서도 Joy2Key나 Xpadder 같은 프로그램을 쓴다고 하네요. 게임자체 문제인 듯 합니다.


일단 이 게임은 혼자하면 재미없고 4이서 협동을 해야 재미있는 게임이니 같이 한번 해보는 것도 추천합니다.


2만원이 넘는 뭐 같은 가격은 넘어가자구요...(가격대비 볼륨이 썩 좋지는 않습니다. 할인 할 때 사세요. 꼭...)

,

"아~ 언더테일 아시는구나~"

라고 유명한 그 게임입니다.


스팀에서 팔고 있고 리눅스용도 나왔습니다. 한글 패치도 당연히 나왔고요.


리눅스 버전의 한글 패치가 은근히 빡세더군요.


http://caswac1.tistory.com/entry/%EC%96%B8%EB%8D%94%ED%85%8C%EC%9D%BC-%ED%95%9C%EA%B8%80%ED%8C%A8%EC%B9%98?category=165834


원본 패치는 여기서 긁었습니다.


패치 방식은 Xdelta를 사용한 방식이어서 어렵지 않겠다고 생각했는데 이게 왠 걸...



참고: xdelta3방식의 경우 패치 방식은 OS에 따라 다르지 않습니다.


xdelta3 -d -s (패치할 파일) (패치파일) (패치되어서 나올 파일)

따라서 패치 할 원본과 patch.xdelta 파일만 있어도 큰 문제는 없습니다.



윈도용과 리눅스용의 파일이 약간 차이가 있습니다.


우선 MD5해시값만 비교해도


윈도용 : cd48b89b6ac6b2d3977f2f82726e5f12  data.win
리눅스용 : 88ae093aa1ae0c90da0d3ff1e15aa724  game.unx


이것 때문에 xdelta3 패치가 안 먹힙니다. Steam판과 GOG.com 판도 이런 문제가 있어서 안 먹힌다고 하더군요.


그리고 최신판인 1.05버전은 어찌된 영문인지 Crash가 일어납니다. 어차피 한글패치도 1.01용이었으니 그러려니 하고 있습니다.


어쨌건 성공은 했으니 알려드리겠습니다.


패치를 위해서는 xdelta3가 설치되어야 합니다. 우분투에서는


sudo apt install xdelta3


명령으로 설치가 가능합니다.


한글패치된 리눅스용 언더테일. 창제목이 깨지는 것은 UTF-8과 EUC-KR의 차이일 뿐 게임하는데는 문제가 없다.


우선 스팀에서 언더테일을 구입하셔야 합니다. GOG.com이나 다른 곳에서 구입하시면 또 패치가 잘 된다는 보장이 없습니다. 이미 윈도판에서 스팀판 외에 다른 버전은 안 된다는 이슈가 나왔지요.


그리고 구버전으로 돌리기 위해서 (1.05버전은 한글 패치를 안 해도 이상하게 실행이 안 됩니다.) 속성에 들어간 다음 베타 탭에서 old_version_101을 선택합니다.


그러면 다시 다운로드가 되면서 구버전으로 돌아가게 됩니다.


https://drive.google.com/file/d/1ju4I_GWr9_nu2PibTtgHP3Q1veCgXX0F/view?usp=sharing

그리고 위의 파일을 다운로드 받아서 ~/.steam/steam/steamapps/common/Undertale/assets


해당 위치에 압축을 풀어서 투척합니다.



그리고 Patch.sh 파일을 실행하시면 game.unx 파일외에 gama.unx.bak 파일이 만들어집니다.


즉, game.unx 파일이 패치되면서 원본파일에 .bak을 붙인 것이지요.


만약 제대로 패치가 안 되었다면 game.unx 파일이 없이 game.unx.bak 파일만 있을 것입니다.


그렇다면 game.unx.bak 파일을 game.unx로 되돌려놓고 다시 패치를 진행하세요.

xdelta3를 설치 안 하고 Patch.sh파일을 실행하면 그러한 현상이 생깁니다.


이제 스팀에서 실행해보면...


네 이제 한글 패치도 잘 되는군요!


방법은 윈도용 스팀판 언더테일을 Wine으로 설치해서 data.win 파일을 긁은 뒤에 패치를 해서 한글화된 data.win 파일을 만들고 이걸 다시 xdelta3로 game.unx 파일과 비교해서 패치 파일을 다시 만들어낸 것입니다.


쉽게 말해서 귀찮은 짓을 한 겁니다. 하지만 덕분에 리눅스용 언더테일도 한글이 가능해졌으니 좋은게 좋은거겠지요?

,



PDF는 문서 표준으로 교환용, 인쇄용 등으로 많이 이용되고 있습니다. 특히 doc나 hwp같은 문서 파일은 폰트나 그림등의 외부 개체를 이용하기 때문에 다른 기기에서 파일을 열면 레이아웃이 깨지는 반면 PDF는 내부에 폰트와 이미지등을 내장하기 때문에 어디서든 레이아웃이 깨지지 않는 장점이 있습니다.


그런데 보통 사람들은 PDF는 편집이 불가능하다는 편견을 가지고 있습니다. 하지만 PDF는 사실 편집이 가능합니다.


애초에 PDF를 만드는 도구의 바이블인 Acrobat 부터가 PDF를 편집할 수 있는 도구니까요. 다만 Adobe사의 물건인 만큼 더럽게 비싼 것이 흠입니다.


그렇다면 다른 프로그램은 없을까요?

PDF는 표준이기 때문에 다른 프로그램들도 많습니다. 사실 Adobe가 만든 것은 대부분 써드파티 프로그램들이 많이 있습니다. PDF도 그 중 하나입니다.


PDF 편집도구가 많지만 제가 써본 결과 제일 좋았던 프로그램은 NesPDF라는 프로그램입니다.


http://www.nespdf.com/download/down_priv.php


국내 업체가 만든 프로그램인데 인터페이스부터 MSOffice와 비슷하게 만들어서 누구나 쉽게 쓸 수 있게 했고 (그러니까 MSWord 쓰듯이 PDF 편집이 가능) 기능도 깔끔하게 군더더기 없이 잘 만들어졌습니다.


개인에게는 무료지만 회사나 단체에서는 유료라는 점이 걸리지만 보통 회사나 단체는 Acrobat을 구입했을겁니다.


사실 리눅스에서 PDF 편집 프로그램은 제가 원하는 수준까지 되는 것이 없었습니다. Acrobat을 Wine으로 굴리는 것도 생각했는데 역시 비용이 문제더군요. 그런데 Wine으로 NesPDF를 써봤는데 너무 잘 되더군요.



그럼 이걸 어떻게 우분투에서 설치하는지 알려드려야겠군요.


일단 NesPDF는 32비트 버전을 사용합니다. 64비트버전도 잘 되는 것 같기는 하지만 Wine이 아직 32비트가 더 잘 되는 관계로 그냥 32비트를 쓰기로 했습니다.


위의 링크에서 32비트 버전을 다운로드 합시다.


32비트 설치 다운로드 버튼을 누르자


아마도 파일 이름은 nespdf_free_x86.exe 라는 식으로 되어 있을 겁니다.


저는 언제나 Wine으로 굴릴 때 PlayonLinux를 이용해서 관리를 합니다.


PlayonLinux에서 2.14-staging 버전을 사용합니다. 다른 버전은 아직 테스트를 안 해봤습니다.


PlayonLinux의 도구-Wine 버전 관리 창에서 x86버전의 2.14 이상의 버전을 설치하자


언제나 하듯이 설치 버튼을 누른 뒤에 왼쪽 아래의 Install a non-listed program 을 클릭해서 시작합니다.





이름은 어떤 것을 써도 좋습니다.






중간에 Wine-Mono 설치와 Wine-Gecko에 대해 물어보는데 둘 다 예를 눌러서 설치를 합니다. 특히 Mono는 중요합니다.



찾아보기를 누른 뒤에 홈페이지에서 다운로드 받은 nespdf_free_x86.exe를 선택합니다. (만약 x64라고 써있다면 32비트 버전으로 다시 다운로드 받으세요!)





사용자 이름과 조직은 마음대로 하시면 됩니다. 보통 무료버전을 이용하시는 분들은 개인자격일테니 딱히 아무런 문제가 없을 겁니다.



사용자정의 설치를 하신 뒤에 필요한 것만 설치해도 되지만 귀찮으니 그냥 전체 설치.



기본프로그램으로 지정해봐야 아무런 영향이 없으니 그냥 체크를 풀도록 합시다. 잘못하면 PDF를 보려고 하는데 리눅스용 문서 뷰어가 아닌 Wine과 함께 이 녀석이 실행 될 수도 있습니다. 그럼 엄청 느리겠지요.



지금 바로 실행하지 않겠습니다.



PlayonLinux에 아이콘을 만들어야 하므로 NesPDF.lnk파일을 선택합시다.



그 다음은 필요없으니 창을 닫아버리거나 더 이상 바로가기를 만들지 않음을 선택합시다.


실행해봅시다. 인터페이스가 정말 깔끔하지요?




한번 PDF 파일을 아무거나 열어봤습니다.



여기서 글씨를 한 번 수정해볼까요? 텍스트 및 이미지 편집 버튼을 누르면 PDF편집이 가능합니다.


논문을 쓰던 당시의 분노를 한번 표현해 보았다.



그림의 위치도 마우스 드래그를 써서 수정이 가능합니다. 


그리고 파일 - 다른이름으로 저장하시면...


PDF파일을 수정할 수 있습니다.


만약 페이지를 바꾸거나 따로 떨어져있는 PDF를 병합하는 것은 NesPDF를 쓰지말고 PDFShuffler라는 오픈소스 프로그램을 사용하면 편리합니다.


PDFShuffler 로 악보와 노트북 분해 설명서를 함께 묶어보았다. NesPDF는 이런 간단한 병합에 약한 면이 있다. 그래서 이런 툴과 병행해서 쓸 필요가 있다.



사실 오픈소스로 되어있는 프로그램이 있다면 정말 좋겠지만 딱히 쓸만한게 없었기 때문에 어쩔 수 없이 Wine으로 굴려야 했습니다.


하지만 NesPDF는 정말 좋은 프로그램이고 정말 유용한 프로그램이었습니다. Wine으로나마 이런 훌륭한 프로그램이 굴러간다는 사실이 다행이라고 해야겠지요.

,