새 모음집 설정이 안되는데..

자유 게시판

새 모음집 설정이 안되는데..

전체글글쓴이: yongjoo » 2005-07-12 10:04 pm

안녕하세요 새 모음집 방금 해봤는데 readme 부터 완성도가 확 느껴지네요~ 그런데 configure.bat 실행시켰을때 다음 메시지 나오고 0byte 짜리 텅빈 dbkshell.bat 이 생깁니다. 파일들 살짝 열어봐도 뭐가 문젠진 잘 모르겠습니다

코드: 모두 선택
C:\Documents and Settings\Park Yong Joo\My Documents\dbkpack-2005.07.RC1.win32\d
ocbook>configure.bat
warning: failed to load external entity "and"
cannot parse and
글꼴 설정을 마쳤습니다.
warning: failed to load external entity "and"
cannot parse and
dbkshell.bat이 생겼습니다.


환경은 윈도 XP 서팩2입니다. 환경 설정부터 xml 기반으로 돌아가는게 참 멋지네요 ^^
yongjoo
사용자
 
전체글: 82
가입일: 2004-01-03 6:13 pm

전체글글쓴이: 류광 » 2005-07-12 11:27 pm

와 중요한 버그를 잡아내셨습니다~ 디렉터리 이름에 빈칸이 포함되어 있는 경우를 제가 미처 생각하지 못했습니다.

configure.bat을 다음과 같이 수정하면 문제가 해결될 것입니다~(%CD%를 큰따옴표로 감싼 것입니다.)

코드: 모두 선택
@echo off

bin\xsltproc --stringparam dir "%CD%" conf/makefontconf.xsl conf/dummy.xml > conf\userconfig.xml
@echo 글꼴 설정을 마쳤습니다.

bin\xsltproc --stringparam dir "%CD%" conf/makebat.xsl conf/dummy.xml > dbkshell.bat
@echo dbkshell.bat이 생겼습니다.
류광
사용자
 
전체글: 433
가입일: 2003-12-27 12:02 am

전체글글쓴이: 류광 » 2005-07-12 11:39 pm

디렉터리 이름에 한글이 포함되어 있는 경우에는 또 다른 문제가 생기네요... 음... 해결책을 찾아보겠습니다.
류광
사용자
 
전체글: 433
가입일: 2003-12-27 12:02 am

전체글글쓴이: yongjoo » 2005-07-13 2:28 am

아 엔티티 and 가 없다는게 뭔 소린가 했더니 디렉토리 이름이었군요 ^^ 이제 dkbshell.bat 생성은 잘되는데.. dbkshell 에 있는 패쓰 지정 부분에서 다시 디렉토리 이름에 " " 로 감싸줘야하는것 같습니다 그래서

"\"%CD%\""

이렇게 역슬래시로 한번더 넣었더니 dbkshell 에도 따옴표와 함께 디렉토리가 잘 들어간거 같습니다. 그리고 테스트로 readme.xml 변환해 보았는데 잘됩니다만 이상하게 시간이 오래 걸리네요 스타일시트를 인터넷으로 읽어오는것 아닌가요? dbk-html-chunk스타일시트에 docbook.sourceforge.net 주소로 오리지날 스타일시트 import하는 부분을 로컬 디렉토리로 수정되어야하는게 아닌지 싶은데요..

p.s 아 스타일시트 경로 rewrite 하는 부분이 있네요 확인을 안해봐서 죄송합니다 그런데 생각보다 오래걸리긴 하네요..

p.s.2 스타일시트를 인터넷으로 읽어오는게 맞는것 같아요 catalog에 rewrite하는 부분이 xsltproc에서 아마 안먹히는것 같습니다

아니 xsltproc에서 안먹힌다기보다 catalog.xml에서 rewrite 부분이 있긴한데 DTD 선언부분에서 스타일시트 지정할때만 먹히는거 같고 dbk-html-chunk.xsl에서처럼 import 하는 부분에는 영향이 없는거 같습니다? 오랜만에 들여다보니 참 헷갈리네요 -.-;;
yongjoo
사용자
 
전체글: 82
가입일: 2004-01-03 6:13 pm

전체글글쓴이: 류광 » 2005-07-13 3:20 am

yongjoo 작성:아 엔티티 and 가 없다는게 뭔 소린가 했더니 디렉토리 이름이었군요 ^^ 이제 dkbshell.bat 생성은 잘되는데.. dbkshell 에 있는 패쓰 지정 부분에서 다시 디렉토리 이름에 " " 로 감싸줘야하는것 같습니다 그래서

""%CD%""

이렇게 역슬래시로 한번더 넣었더니 dbkshell 에도 따옴표와 함께 디렉토리가 잘 들어간거 같습니다.

안 넣어도 될 것 같은데요... 예를 들어

>set path=%PATH%;c:\doc book\bin

이렇게 해도 잘 되는 걸로 봐서요... 오히려 따옴표를 넣으면 path="c:\doc book"\bin 이 되는데 더 지저분할 것 같습니다.

그리고 userconfig.xml의 경우에는 <value>"c:\doc bock"</value> 형태가 되면 PDF가 생성이 안 되는 문제가 있구요...

yongjoo 작성:그리고 테스트로 readme.xml 변환해 보았는데 잘됩니다만 이상하게 시간이 오래 걸리네요 스타일시트를 인터넷으로 읽어오는것 아닌가요? dbk-html-chunk스타일시트에 docbook.sourceforge.net 주소로 오리지날 스타일시트 import하는 부분을 로컬 디렉토리로 수정되어야하는게 아닌지 싶은데요..

p.s 아 스타일시트 경로 rewrite 하는 부분이 있네요 확인을 안해봐서 죄송합니다 그런데 생각보다 오래걸리긴 하네요..

p.s.2 스타일시트를 인터넷으로 읽어오는게 맞는것 같아요 catalog에 rewrite하는 부분이 xsltproc에서 아마 안먹히는것 같습니다

아니 xsltproc에서 안먹힌다기보다 catalog.xml에서 rewrite 부분이 있긴한데 DTD 선언부분에서 스타일시트 지정할때만 먹히는거 같고 dbk-html-chunk.xsl에서처럼 import 하는 부분에는 영향이 없는거 같습니다? 오랜만에 들여다보니 참 헷갈리네요 -.-;;


랜선을 뽑을까 하다가^^ 닥북\stylesheet\docbook-xsl\xhtml\의 chunk.xsl을 지우고 docbook2html를 실행해 봤는데요. unable to load http:
//docbook.sourceforge.net/release/xsl/current/xhtml/chunk.xsl가 나오는 걸로 봐서 로컬 파일로 연결되는 것은 문제가 없는 것 같습니다.

속도가 예전보다 많이 느린가요? DTD와 XSL이 더 복잡해졌으니 더 느려지긴 하겠지만 아주 느리다면 뭔가 문제가 있는거겠죠...

p.s. 그러고보니 제가 처음으로 닥북 한국과 엮이기-.- 시작한 것이 속도 문제를 가지고 게시판에 질문을 한 것이었던 것으로 기억합니다. 용주님이 답을 달아주셨죠...
류광
사용자
 
전체글: 433
가입일: 2003-12-27 12:02 am

전체글글쓴이: 손님 » 2005-07-13 5:50 pm

저같은 경우는 따옴표를 다시 넣어주지 않으니까 dbkshell에서 docbook2html 실행하면 다음과 같이 에러가 납니다. 처음에 문제와 비슷한 경우인것 같은데 슬래쉬 따옴표 넣어주면 괜찮구요.

코드: 모두 선택
----- 닥북 작업 환경 -----
HTML 생성:
docbook2html 입력파일.xml
PDF 생성:
docbook2pdf 입력파일.xml 출력.pdf
--------------------------
Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Documents and Settings\Park Yong Joo\My Documents\dbkpack-2005.07.RC1.win32\d
ocbook>docbook2html
warning: failed to load external entity "file:///C%3A/Documents"
cannot parse C:\Documents


필요한 패쓰 맞춰서 쉘을 따로 띄우니까 시스템 환경변수 건드리지 않아도 되고 확실히 좋은 방법인 것 같습니다 훨씬 깔끔하게 된것 같애요. 그리고 네트워크로 읽어오는 문제는 저도 헷갈리는데.. 확실히 수상한 점이 있습니다 xsltproc가 반응이 없이 잠잠한 수십초 정도가 있는데 이때 넷트웍 트래픽이 발생하거든요 윈도xp에 작업관리자 네트웍 모니터로 보니까 트래픽이 때맞춰 생겼다가 xsltproc가 워닝 메시지 뿌리면서 트래픽이 샥 사라지는데 ..

스타일시트가 아니면 DTD를 네트웍으로 읽어오는지도 모르겠습니다 저도 시간을 두고 다시 살펴보겠습니다 ..
손님
 

전체글글쓴이: yongjoo » 2005-07-13 5:51 pm

위에 제가 썼습니다 로그인 한줄 알고 :oops:
그때 속도 문제는 뭐였나요 ^^: 같은 문제로 질문이 돌고 도는거 아닌지 모르겠네요 ㅎㅎ
yongjoo
사용자
 
전체글: 82
가입일: 2004-01-03 6:13 pm

전체글글쓴이: 류광 » 2005-07-13 6:18 pm

지금 시험해보니 저도 정확히 똑같은 증상입니다. 어제는 그냥 디렉터리 이름에 빈칸 있는 다른 경로에 해봤는데, 오늘은 저도 "내 문서"(..Documents and Settings ...) 디렉터리에 했습니다.

아무래도 경로 관련 문제 같네요. WinXP가 내 문서 폴더를 특별하게 취급하는 것일 수도 있겠구요.

내 문서 폴더에는 설치하지 말라고 하는 것은 하책이겠고.... 일단 제대로 돌아가는 dbkshell.bat을 손으로 만들어 보는 것으로 시작하겠습니다.

p.s 그 때 질문은 xalan과 제 Java 환경이 문제였습니다. kldp 닥북 한국 프로젝트 질문 게시판 저 멀리 한 구석에 있는데 지금 kldp.net이 안 뜨네요..
류광
사용자
 
전체글: 433
가입일: 2003-12-27 12:02 am

전체글글쓴이: yongjoo » 2005-07-13 6:23 pm

일단 dtd랑 스타일시트랑 네트웍으로 읽어오는게 맞는거 같습니다 네트웍 죽이고 해봤더니

코드: 모두 선택
C:\Documents and Settings\Park Yong Joo\My Documents\dbkpack-2005.07.RC1.win32\d
ocbook>docbook2html README.xml
error : No such file or directory
warning: failed to load external entity "http://docbook.sourceforge.net/release/
xsl/current/xhtml/chunk.xsl"
compilation error: file file:///C%3A/Documents%20and%20Settings/Park%20Yong%20Jo
o/My%20Documents/dbkpack-2005.07.RC1.win32/docbook/stylesheet/dbk-html-chunk.xsl
 line 8 element import
xsl:import : unable to load http://docbook.sourceforge.net/release/xsl/current/x
html/chunk.xsl


이러는데.. dbk-html-chunk.xsl 에 import 부분을 로컬로 바꿔주니까 네트웍으로 스타일시트는 안읽는듯 하지만 dtd도 로컬에서 읽는거 같지 않네요 XML_CATALOG_FILES 를 xsltproc가 그냥 무시하는 것 같은데 원래 그랬던건지도 모르겠습니다.

그리고 포함된 readme.xml 이랑 test.xml에 DTD 선언 부분이 빠져있는데 넣어주는게 좋을것 같습니다. 넣어주니까 이상한 워닝 메시지 같은것도 html 변환시엔 안나오고 잘됩니다.
[/code]
yongjoo
사용자
 
전체글: 82
가입일: 2004-01-03 6:13 pm

전체글글쓴이: 류광 » 2005-07-13 6:57 pm

예 XML_CATALOG_FILES에 빈칸이 포함되어 있으면 xsltproc이 catalog.xml 파일을 못 찾고 네트웍 연결을 시도하는 것 같습니다. 따옴표로 감싸기 등등 여러 가지로 조합을 해 봤는데 되는 게 없네요. 마지막으로 빈칸이 없는 경로에 있는 catalog.xml을 가리키도록 수정해 보려고 했는데 아인트호벤 대 고려대 경기 때문에.. ^^ 오늘 밤에 좀 더 해보고 결과를 알려드리겠습니다...

p.s. 어제는 제가 너무 간단하게 시험을 했던 것 같습니다.. 다른 디렉터리에서도 시험해 봤는데 마찬가지입니다. WinXP가 내 문서 폴더만 특별 취급을 하는 것 같지는 않네요..
류광
사용자
 
전체글: 433
가입일: 2003-12-27 12:02 am

전체글글쓴이: yongjoo » 2005-07-13 7:04 pm

xsltproc가 XML_CATALOG_FILES를 무시하는 것은 아니네요 잘 인식합니다. 그냥 C:\docbook 과 같이 단순한 디렉토리에 설치되면 DTD를 넷웍으로 읽지 않네요 XML_CATALOG_FILES 에 공백문자 들어가고 따옴표 있고 이러면 xsltproc가 인식을 못하는것 같습니다.
yongjoo
사용자
 
전체글: 82
가입일: 2004-01-03 6:13 pm

전체글글쓴이: yongjoo » 2005-07-13 7:06 pm

예 그렇네요.. 어떻게 방법이 있을것도 같은데 공백 앞에 백슬래시 넣어봤더니 윈도에선 디렉토리 경로 구분하는게 또한 백슬래시고 -_- 좋은 방법이 있는지 모르겠습니다
yongjoo
사용자
 
전체글: 82
가입일: 2004-01-03 6:13 pm

전체글글쓴이: 손님 » 2005-07-13 7:24 pm

현재 디렉토리를 띄어쓰기 없는 예전 도스 형태로

C:\DOCUME~1\PARKYO~1\MYDOCU~1\

이런 형태로 얻어올수 있으면 되겠는데..

Windows NT 환경에서도 cmd.exe 대신에 command.com을 띄워버리면 현재 디렉토리가 저렇게 뜨는것 같습니다. 대신에 cmd.exe에서 자동 완성이라든가 히스토리 기능 같은건 쓸 수 없게 되네요..
손님
 

전체글글쓴이: yongjoo » 2005-07-13 7:44 pm

이건 좀 상쾌하지 못한 방법일 수 있겠지만..

코드: 모두 선택
@echo off

command /C

bin\xsltproc --stringparam dir %CD% conf/makefontconf.xsl conf/dummy.xml > conf\userconfig.xml
@echo 글꼴 설정을 마쳤습니다.

bin\xsltproc --stringparam dir %CD% conf/makebat.xsl conf/dummy.xml > dbkshell.bat
@echo dbkshell.bat이 생겼습니다.


command /C 라는건 command.com을 띄워서 /C 뒤에 명령을 실행하는것인데 명령이 없으니까 그냥 빠져나가지만 웬일인지 빠져나온 후에도 디렉토리 경로는 도스 방식으로 띄어쓰기 없는 형태로 남게 되네요 그래서 %CD%도 따옴표로 감쌀 필요 없이 띄어쓰기 없는 도스 형태로 설정이 일단 됩니다. DTD도 로컬에서 잘 읽고요

윈도 커맨드 프롬프트 설정 방법에 대해 찾아보면 더 좋은 방법이 있을 것 같기도 합니다
yongjoo
사용자
 
전체글: 82
가입일: 2004-01-03 6:13 pm

전체글글쓴이: 류광 » 2005-07-13 11:32 pm

자동완성이나 히스토리는 포기하기에는 너무 아깝네요... command.com을 쓰게 하는 것보다는 차라리 빈칸이 포함되지 않은 디렉터리에 설치하도록 강제하는 게 잃는 게 더 적을 것 같은데 어떻게 생각하시는지요....

카탈로그는 계속 고민을 해봐야 할 것 같고, 그 외의 경로 문제는 PATH나 DOCBOOK_HOME에 따옴표를 포함시키는 것보다는 docbook2html.bat 등에서 xsltproc을 실행할 때 따옴표를 추가하는 게 깔끔할 것 같습니다.

그러나 카탈로그 문제가 해결되지 않는다면 위의 경로 문제도 무의미하겠죠. 그러면 결국 디렉터리에 제한을 가하는 쪽으로 결론이 날 것 같습니다(command.com도 본질적으로는 디렉터리에 빈칸이 포함되지 않게 만드는 것이겠구요...)
류광
사용자
 
전체글: 433
가입일: 2003-12-27 12:02 am

다음

다시 돌아감: 자유 게시판

접속 중인 사용자

이 포럼에 접속 중인 사용자: 접속한 회원이 없음 그리고 손님들 7 명

cron