마크다운 위키 MDwiki

흔히 생각하는 위키의 기능이 다 들어있는 것은 아니다.

하지만 html 파일 하나 만으로 .md 파일을 해석하여 html 로 뿌려줄 수 있다.

  • 실시간  markdown to html 변환기 정도로 생각하면 된다.

설치는 mdwiki.html 하나만 웹서버에 던져 넣으면 된다.

그러니까… 폴더 구조는

mdwiki.html

index.md

doc1.md

doc2.md

namespace/doc3.md

이런 식이면 된다.

php 필요없고, mysql도 필요 없고, 설치과정도 필요없다.

부트스트랩을 이용해서 모바일에서 역동적으로 보여준다.

www.mdwiki.info/

를 참조한다.

네비게이션과 메뉴를 만들 수 있다.

단점은 이미 봐왔던 위키의 기능은 거의 없다.

  • 일단 자체편집기능이 없고, .md 파일은 따로 만들어 올려야 한다.
  • 협업이 없다.
  • 이미지나 미디어 관리기능이 없다 (표시는 가능)
  • 기타 다른 기능은 다 없다.

깃헙(Github)에서 쓰기에 좋다. 깃헙은 .md도 지원하고, 수정도 할 수 있으니.

현재로서는 그냥 빠르게 튜토리얼 페이지나 설명서 등을 만드는데 쓰면 좋겠다.

stackedit.io/ 와 같이 쓰면 좋을 수 있다.

왜.. 도쿠위키 였지?

왜 도쿠위키를 쓰게 되었나를 가만 생각해보니…

당시에 게임 공략 블로그질을 하려다가, 위키! 라는 것을 알게되어

위키스페이스 에 열심히 정리했었는데,
뭔가 불만이 생겼었나보다… (기억이 잘 안난다…)

암튼, 설치형 위키를 알아보다가

모니위키 는 설치가 잘 안되었던 것 같고,
미디어위키 는 설치는 잘 되었었는데, 좀 많이 느렸었다.

jspwiki 는 깔끔하긴 한데, 자바였나 그래서, 호스팅에 올리기가 어려웠고, xwiki 는 지금 만큼 번창하지 않았을 때인데가 위키 자체라기 보다, cms 성격이 강해서 제끼고… phpwiki는 템플릿도 없고 뭔가 부실…

결국 설치 쉽고, 반응 빠른 도쿠위키… 게다가 자료구조가 텍스트 파일 형식이라, 이전의 위키스페이스의 내용을 가져오기도 쉬웠다.

이후에 관리도 그냥 notepad++를 이용해서 파일에서 찾기 & 바꾸기 이런식으로

결국 도쿠위키 5년차가 되었다.

크레올레 탈출하기… 도쿠위키…

도쿠위키 ( vaslor.net/tech/doku…😉 에서 제목을 나타내려면 두개이상의 ‘=‘로 둘러싸면 된다. 

 

에를 들자면…

 

====== 도쿠위키 ======

 

반면에, 도쿠위키의 크레올레( vaslor.net/tech/creo…😉 문법은

제목을 나타내는 === 을 앞에만 해도 된다. 

 

즉, 

 

====== 도쿠위키 크레올레

 

쓰다보면 편하긴 한데,

호환성에서 문제가 생길 수 있다. 

 

저장 할 때 검사하여

앞에만 = 가 있으면 같은 개수 만큼 뒤에도 붙여주도록 해보았다.

 

function register(&$controller)
{
$controller->register_hook(‘IO_WIKIPAGE_WRITE’, ‘BEFORE’, $this, ‘codebutton__headercheck’);
}

function codebutton__headercheck(&$event, $args) {

global $ID;
$lines=explode(“\n”,$event->data[0][1]);
$modified=false;
foreach ($lines as &$line ) {
$num=substr_count($line,”=”);
if ($num>0 ) {
if (substr_count(substr(trim($line),0,$num),”=”)==$num) {
$line.=str_repeat(“=”,$num);
$modified=true;
}
}
} unset($line);

if ($modified) $event->data[0][1]=implode(“\n”,$lines);
return ;
}

 

이런 식이다.

 

 

 

 

 

아작스쳇… AJAXCHAT

AJAXCHAT

아작스 쳇 입니다. 베슬로 위키에서는 초기에 가가라이브 채팅을 넣었다가 가가라이브이 사용자가 폭발적으로 증가하면서 서버 불안정이 있던 시기에 잠시 PHPfreeChat으로 전환하였다가, 현재까지 장기간 Blueimp의 Ajaxchat을 고쳐서 사용하고 있습니다.

아작스쳇은

  • BB code 형식을 지원하며
  • 쉽게 변형할 수 있으며
  • 이미지도 쳇으로 넣을 수 있어서 좋습니다.
  • 아작스쳇 사이트의 링크와 이름만 넣으면 무료로 사용할 수 있습니다.

vaslorchat.jpg

자세한 내용은 vaslor.net/tech/ajax… 참조.

쓸만한 위키위키…

www.wikimatrix.org/c…

가입형으로는
www.wikispaces.com 이 있습니다.
강력한 위지윅이 특징입니다.
그냥 웹문서를 잘라 붙여도 위키로 잘 정리해 줍니다…

참고로 제가 관리하는 위키들입니다.
fallout3.wikispaces….
evecodex.wikispaces….
me-korea.wikispaces….
무료 위키는 옆에 구글광고가 뜹니다.

설치형은 Dokuwiki가 제일 좋은 것 같습니다.
www.dokuwiki.org/ko:…

한국 위키 wiki.edple.com/

www.dokuwiki.org/plu…
www.dokuwiki.org/plu…

www.dokuwiki.org/plu…
www.dokuwiki.org/plu…
www.dokuwiki.org/plu…
www.dokuwiki.org/plu…
참고 사이트
foosel.org/snippets/…; — 스킨이너무예쁘다.

위키로 블로그질 하기…www.dokuwiki.org/tip…
First of all you have to install a set of plugins. The basic blog setup consists of the blog, include and the pagelist plugins, which represent the minimal install of the blog suite.

In addition to these, you may complete your blog setup using the discussion, linkback, bloglinks, feedmod, avatar, and tag plugins.

www.dokuwiki.org/tip…

도쿠위키 dokuwiki

위키위키의 매력에 빠져서 한동안 wikispaces에서 살고 있었는데,

개인용 위키위키를 만들어 보려고 이것 저것 알아보았다.

* Mediawiki는 사용자층이 넓으나, 속도가 느리다고 하고, 무엇보다 설치에 실패 –;

* 모인모인은 예쁜 스킨이 없어서..–;

* 결국 도쿠위키로 결정하고

www.oranc.co.kr 무료 호스팅에 설치하였습니다. 

퍼미션을 777로 하고 설치해야 되는 문제가 있지만, 작동은 잘 한다고 생각하고 있었는데…

퍼미션 문제가 발목을 잡네요…

이것 저것 알아보다가 결국 홈피에 질문날리고 기다리는 중입니다.

좋은 호스팅 환경을 제공해 주셔서 감사합니다.

오란씨에 Dokuwiki를 깔아서 blog처럼 운영하려고 합니다.

설치와 실행은 잘 되는데,

dokuwiki가 php 언어로 되어 있고, 그 프로세스가 user id: 2, group: 2 로 실행이 됩니다.

제가 ftp로 접속을 하면 다른 user ID와 group로 접속이 되는데요.

문제는 dokuwiki가 만든 파일이나 폴더를 제가 ftp로 접속해서 삭제나 변경을 할 수 가 없습니다.

많이 불편한데요.

혹시 php process의 id 나 GROUP (안되면 GROUP만이라도) 제가 접속할 때 받는 것으로 되도록 할 수 없을 까요?

이게 안되면, DOKU WIKI가 문서를 생성할 때 퍼미션을 777로 하도록 해야되는데, 아시겠지만 이것은 누구나 만질 수 있는 것이기 때문에 너무 위험합니다.

답변 기다리겠습니다 감사합니다.

 오란씨의 답변입니다.

안녕하세요..

user id: 2, group: 2 는 daemon 권한으로 웹권한입니다.

웹권한은 웹에서 어떠한 프로그램을 실행했을때 웹권한으로 생성되는것입니다.

(예를 들면 제로보드4 의 data 같은 폴더)

이럴때 ftp 에서 제어가 불가능하게 됩니다. (계정권한이 아니라 웹권한으로 생성되기때문에)

하지만 약간 불편하지만 웹프로그램을 만들어서 웹에서 제어를 할수가 있습니다.

현재로서는 웹권한으로 생성되는 폴더나 파일제한은 이방법뿐이네요.

더 궁금한 사항 있으시면 문의 주세요..

원하던 것을 얻지는 못하였지만 한나절도 지나가기 전에 답변을 해주네요… 서비스는 좋습니다.

파란 호스팅으로 해결했습니다. 퍼미션 문제도 없고, User ID 문제도 없네요. 오란씨는 안녕…^;

배포 및 설명 사이트
퍼미션설정법

The following permissions must be modified for the respective DokuWiki functions to work:

  • data/ and data/tmp/ directory: All files in and below these directories must be writable by the web process for DokuWiki to work.
  • lib/plugins/ directory: This directory must be writable by the web process for the plugin-Manager to work
  • lib/ directory: This directory must be readable by the public for style sheets to display. 755 works fine.

The following files are copied by the installer.php from the respective*.dist files and given the correct permissions for the web processautomatically:

  • conf/ directory, following files must be writable by the web process:
    • local.php for the installer and for subsequent web configuration to work.
    • users.auth.php and acl.auth.php for the ACL web configuration and usermanager to work.

www.splitbrain.org/b…

wiki.splitbrain.org/…

파란.
Your PHP process seems to run with the UID 3344 () and the GID 1000 ()

도쿠위키설치기

즉시이동 하기 index.html
<script type=”text/javascript”>
location.replace(“URL”);
</script>

위치로그 사용하지를 않아서 소스 몇개 추가해서 제로보드 게시판 넣어습니다.
이소스는 내용물이 많아지면 자동으로 스크롤 된다는 점입니다.
사용하고 있는 스킨의 skin.html을 열어서 아래 소스를 넣어줍니다.

<script Language=’javascript’>
var ifrmHeight;
var objFrame;
var str;
var cstr;

function init() {
                try{
                        objFrame = document.all[“ifrm”];
                        str = window.clipboardData.getData(“Text”);
                        cstr = str.split(“|”);
                        ifrmHeight= eval(cstr[1]);        
        }catch(e){
                }
}

function reSize() {
                try{                        
                        if (ifrmHeight > 240) {
                                        objFrame.style.height = ifrmHeight;
                        }else{
                                        objFrame.style.height = 240;
                        }                       
        }catch(e){
                }
}

function init_iframe() {        
        reSize();        
        setTimeout(“init_iframe()”,100);
}

init_iframe();
</script>

두번째 변경하고자 하는 위치에 아래 소스를 넣어 줍니다.
<iframesrc=”게시판 주소” name=”ifrm” width=”100%” height=”100%” marginwidth=”0″marginheight=”0″ frameborder=”no” onload=”init()”scrolling=”no”></iframe>

게시판 관리에 들어가서게시판 하단에 출력될 내용에 아래 소스를 추가해 줍니다.
<script language=”javascript”>
window.clipboardData.setData(‘Text’, document.body.scrollWidth+”|”+document.body.scrollHeight);
</script>
그럼 끝입니다.