Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
- 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
- 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
- 최소 예제는 "Minimal working example"을 읽어 보세요.
- 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
- 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 사용하는 편집기는 CKeditor입니다.
- 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
- 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
- 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.
.cls 파일 제작 관련
2015.11.09 15:38
안녕하세요.
최근 한 저널에서 class 파일 (.cls)을 만들어달라는 요청을 받았습니다.
기존에는 TeX를 논문 투고를 위해서만 사용했었지 class 파일 자체를 건드려본적이 없어서 쉽지가 않네요.
왠만한 저널에서 배포하는 cls는 다 copyright가 걸려있는 듯 합니다.
혹시 참고할만한 free license 파일이 있을지요?
댓글 13
-
메타
2015.11.09 17:05
-
yihoze
2015.11.09 22:03
클래스 파일을 열어 보면 이런 구절이 있습니다.
%% It may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
이와 같은 표기만 하면 문제 없다는 것으로 이해됩니다. 공식적으로 그리고 공개적으로 배포할 게 아니라면 굳이 이런 것도 필요없지 않을까 싶습니다. -
simpleis
2015.11.10 16:25
답변에 감사드립니다.
몇가지 추가적인 질문이 있어서 문의드립니다.
1. 저널에서 cls 파일을 만들어서, 앞으로 이를 이용해 투고를 받겠다고 공지하면 공식적으로 배포하게 되는 것이 아닌지요?
2. article.cls 파일 자체에 위의 말씀하신 구절들이 있지만, elseviers의 latex template 사이트에서는 이를 elseviers의 자산으로 명기하여, 배포를 금지하고 있습니다...
이 경우 제가 article.cls를 수정해서 타 저널용 cls를 만들었을시에 문제가 될 소지가 있지 않을까요?
-
어떤이
2015.11.10 17:36
article.cls의 라이선스인 lppl1.3에 관한 내용을 다음 링크에서 직접 확인하시고 판단하십시오.
http://www쩜latex-project쩜org/lppl.txt
-
yihoze
2015.11.10 17:39
남의 것을 가져다 쓸 때, 그것을 수정하거나 배포할 수 없다고 하면 그것이 원래 것의 라이선스 위반입니다. 그러니 동일한 라이선스를 따라 수정하고 배포 가능한다고 선언하는 것은 문제가 되지 않는다고 봅니다. 수정과 배포를 금지하는 클래스를 만들어야 한다면 남의 것을 사용하지 말아야 하겠지요. 그런데 elseviers가 제공하는 것도 레이텍 클래스라면 latex.ltx를 이용했을 것 같은데 어떻게 그렇게 선언할 수 있는지 이해되지 않습니다.
-
어떤이
2015.11.10 18:06
elseviers latex template은 어떤 것을 말씀하시는지 모르겠습니다만, elsarticle.cls와 관련 파일들은 CTAN을 통해 배포되고 있습니다.
http://www쩜ctan쩜org/tex-archive/macros/latex/contrib/elsarticle
함께 포함된 manifest.txt의 내용을 보면
% It may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.2 % of this license or (at your option) any later version. % The latest version of this license is in % http://www쩜latex-project쩜org/lppl.txt % and version 1.2 or later is part of all distributions of LaTeX % version 1999/12/01 or later.
라고 되어 있습니다. LPPL 1.2 라이선스하에서 배포/수정될 수 있습니다.
-
메타
2015.11.10 19:34
1. 네, 배포하는 것 맞습니다.
2. elseviers나 springer 같은 출판사의 소유인 경우에는 개조해서 쓸 경우 문제가 될 수 있습니다.
반면 article은 괜찮습니다. 학회에서 쓰는 revtex 같은 것도 괜찮습니다.
(대체적으로 출판사에서 만든 상용 클래스들이 품질은 더 좋습니다.)
article.cls의 라이센스는 사실상 자유입니다. 다만 이름에만 제약이 있습니다.
개조한 것을 article..cls라는 동일한 이름으로 배포하는 것에는 제약이 있습니다. 혼란을 방지하기 위한 것이겠죠.
-
어떤이
2015.11.10 21:28
article.cls의 앞 부분입니다.
%%
%% This is file `article.cls',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% classes.dtx (with options: `article')
%%
%% This is a generated file.
%%
%% The source is maintained by the LaTeX Project team and bug
%% reports for it can be opened at http://latex-project쩜org/bugs.html
%% (but please observe conditions on bug reports sent to that address!)
%%
%%
%% Copyright 1993-2015
%% The LaTeX3 Project and any individual authors listed elsewhere
%% in this file.
%%
%% This file was generated from file(s) of the LaTeX base system.
%% --------------------------------------------------------------
%%
%% It may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3c
%% of this license or (at your option) any later version.
%% The latest version of this license is in
%% http://www쩜latex-project쩜org/lppl.txt
%% and version 1.3c or later is part of all distributions of LaTeX
%% version 2005/12/01 or later.
elsarticle.cls의 앞 부분입니다.
%%
%% This is file `elsarticle.cls',
%% generated with the docstrip utility.
%%
%% The original source files were:
%%
%% elsarticle.dtx (with options: `class')
%%
%% Copyright 2007, 2008, 2009 Elsevier Ltd
%%
%% This file is part of the 'Elsarticle Bundle'.
%% -------------------------------------------
%%
%% It may be distributed under the conditions of the LaTeX Project Public
%% License, either version 1.2 of this license or (at your option) any
%% later version. The latest version of this license is in
%% http://www쩜latex-project쩜org/lppl.txt
%% and version 1.2 or later is part of all distributions of LaTeX
%% version 1999/12/01 or later.
%%
%% The list of all files belonging to the 'Elsarticle Bundle' is
%% given in the file `manifest.txt'.
%%
%%
%% $Id: elsarticle.cls,v 1.20 2008-10-13 04:24:12 cvr Exp $
%%
두 클래스의 라이선스가 (버전은 다르지만) 같습니다.
-
메타
2015.11.10 22:24
질문하신 분이 elsevier에 저작권 문제가 있다고 이야기해서출판사 소유의 클래스일 경우 그럴 수도 있다고 이야기한 것입니다.라이선스 설정은 저작권자 마음대로이니까요.질문하신 분이 라이선스를 잘못 인식했을 수도 있고언급한 것이 elsarticle.cls이 아닐 수도 있습니다. -
simpleis
2015.11.11 01:22
결과적으로 article.cls 파일을 수정해서 배포해도 문제가 없다는 것으로 이해해도 될런지요?
많은 분들의 도움에 감사드립니다.
-
likesam
2015.11.11 11:37
위에서 언급된 LaTeX Project Public License 를 읽어 보시고 판단하셔야 할 듯 합니다.
https://en.wikipedia.org/wiki/LaTeX_Project_Public_License 에 해설이 있으니 참조하셔도 될 듯 합니다.
-
그로몹
2015.11.11 13:05
article.cls를 수정해서 배포하시기보다는, oblivoir가 memoir를 부르고 (수정 등) 명령을 넣은 것처럼, article.cls를 부르고 몇 가지를 새로 정의하는 파일을 만들어 배포하시는 것이 좋아 보입니다.
-
메타
2015.11.11 18:28
그로몹님의 제안이 좋은 생각입니다.
저작권표시란에 article.cls를 불러와서 쓴다고 밝히고 article.cls와 동일한 라이선스를 붙이면 됩니다.
물론 법적인 문제점은 없습니다.
elsarticle.cls도 article.cls를 바탕으로 하고 있습니다.
참고할 만한 클래스로는 article.cls가 가장 무난합니다.
실제로 article.cls를 개조해서 쓰는 학술지가 꾀 있는 것으로 알고 있습니다.
LaTeX 클래스는 두 가지 종류가 있습니다.
첫째는 오리지날로 제작된 클래스입니다.
둘째는 \loadclass 명령어를 써서 이미 있던 클래스에 살짝 덧붙이거나 변형해서 쓰는 방식입니다.
첫째의 방식은 article이나 memoir 같은 것이 있고
두번째의 방식은 oblivoir가 있습니다.
oblivoir처럼 기존의 클래스를 활용하는 방식은 나쁜 방식이 아닙니다.
버그가 적고 검증된 기능이 있는 것을 다시 쓰는 것은 좋은 생각입니다.
다만, 저는 최종 사용자들에게 oblivoir를 권하지 않고,
클래스 제작자에게 기본 바탕으로써 memoir의 사용을 권하지 않습니다.
memoir는 덩치가 너무 큰 데다가, LaTeX의 원래 개발지침과는 이질적인 성격이 있습니다.
폰트나 자간 장절의 구조는 클래스 설계자가 만들고
사용자는 그것을 편하게 사용하는 것이
원래 LaTeX의 기본 바탕인데,
memoir는 최종 사용자가 폰트, 자간, 장절의 구조를 결정하고 콘트롤하는 식입니다.
삽질 보존의 법칙이라는 것이 있습니다.
전문가의 삽질 강도 + 최종사용자의 삽질 강도 = constant
simpleis님은 클래스를 설계하시는 입장이라
최종사용자의 포지션이 아닌 전문가의 포지션입니다.
저는 지금까지 ktug에서 삽질하지 말고 평이하게 쓰자는 이야기를 해왔지만
질문하신 분에게는 해당하는 이야기가 아닙니다.
클래스 제작자는 삽질을 해야 합니다.