본문으로 건너뛰기
더시드위키
최근 변경
최근 토론
도구 모음
the seed/the tree와의 차이점
(r85판 RAW)
보기
RAW
역사
[[분류:the seed]][[분류:the tree]]{{{#!if ms='style="display: inline; font-family: monospace;"', bean='double space', bl='차단 내역 숨김' }}} [Include(틀:the seed/둘러보기)] [목차] == 개요 == 본 문서는 [[the tree]]엔진과 [[the seed]]엔진의 기술적인 차이점을 적어놓은 문서이다. the tree엔진은 the seed의 기본적인 구조를 구현하되 편의적인 기능을 하나씩 추가해나가고 있어 the seed 엔진과 차이가 있다. 경우에 따라 피드백을 [[더시드포럼|the seed forum]]에든 [[https://github.com/wjdgustn/thetree/issues|the tree issue tracker]]에든 제시함으로써 상호 업데이트가 필요한 내역으로 이용될 수도 있다. == 권한 == * [[disable_two_factor_login]], grant_hidelog[*@bl@ 차단내역에 기록(log)이 표시되지 않는 권한], login_history_hidelog[*@bl@], batch_revert_hidelog[*@bl@], engine_developer 권한이 추가로 존재한다. * the seed에는 [[member]] 권한을 회수할 수 있지만 the tree에는 제시된 grant를 통한 인터페이스만 보면 member 권한 회수가 불가능하다. == [[네임스페이스|이름공간]] == * 공통적으로 {{{문서}}}, {{{틀}}}, {{{분류}}}, {{{파일}}}, {{{사용자}}}, {{{삭제된사용자}}} 이름공간이 기본으로 탑재되어 있다. * the tree에는 기본값으로 the seed와 다르게 {{{토론}}}, {{{투표}}}, {{{특수기능}}}, {{{시스템}}}이 탑재되어 있지 않다. * the seed는 이름공간을 추가하려면 서버에 접근해야 하지만, the tree는 config 권한으로 추가할 수 있다. == 네비게이션 바 == * 최근 변경 : the tree에는 최근 변경 중 전체 내역에서 사용자 문서 변경내역을 보기/숨기기{{{#gray (기본값:숨기기)}}} 기능을 이용하여 사용자 문서를 포함한 문서 전체의 최근 변경 내역을 볼 수 있다. * RandomPage : 기능은 동일하게 무작위로 출력된다. 그러나 목록을 뽑는 방식에서 차이가 있다. the seed는 문서 수가 0개인 경우를 제외하고는 중복을 포함하여 무조건 --내 손에 쥘 패를-- 20개가 될 때까지 뽑지만, the tree에는 중복이 배제된다. 문서 수가 20개 미만인 네임스페이스를 대상으로 새로 목록을 뽑을 때마다 순서만 바뀌어 나온다. * 차단 내역(BlockHistory) : 기능은 동일하다. the tree에는 ACL 그룹에 등록, ACL 그룹에서 제거, 권한 설정, 로그인 내역 조회, 일괄 되돌리기의 기록만을 골라 볼 수 있는 분류 기능이 추가되어 있다. [[aclgroup_hidelog]]으로 숨겨진 기록은 두 엔진 공통적으로 당연히 안 보인다. == 문법 == === 공통점 === * \{{{ \}}} 계열 문법 : 다음 문법은 공통적으로 지원된다. * -5, -4, ... , +4, +5 의 글자 크기 * #color,#color 로 글자 색상 주기 * #!wiki style=""을 이용한 css * #!if 문법. 연계되는 기능 없이 일부만. * #!html 문법 * #!syntax 문법 === 차이점 === * the seed에 구현되지 않은 문법이 존재한다. ##)] * {{{#!wiki @ms@ \[vote({{{#green,#green 제목}}}, {{{#teal,#teal 선택지1}}}, {{{#teal,#teal 선택지2}}}, {{{#teal,#teal 선택지3}}}, ... )\]}}} 문법으로 설문조사 또는 투표를 할 수 있다. ---[[투표:???]]--- ##)] 토론 스레드에서만 사용할 수 있으며 댓글 추가가 허용되지 않는 조건에서는 투표가 반영되지 않는다. 그리고 질문지와 선택지에 text-align 등 일부 종류를 제외하고 wiki style 을 이용한 CSS 문법을 쓸 수 있으며, 링크 문법도 지원된다. 반점({{{,}}})을 텍스트로 나오게 할 곳은 텍스트 처리로 나오게만 해주면 문법이 깨지지 않게 충분히 긴 문장도 넣을 수 있다. * the tree에 구현되지 않은 문법이 존재한다. * 기본적인 글자 강조 표현 문법에 소소한 차이점이 있지만 문서를 편집하고 읽기에 큰 문제되는 부분은 없다. 기본적인 글자 강조 표현으로 쓰이는 문법은 양쪽에 같은 기호를 2개씩 연속으로 쓰면 동작되는데 the seed에는 3개를 연속으로 쓰더라도 동작되지만 the tree에는 3개가 인식되지 않는다. 이를테면 {{{#!wiki @ms@ \^\^\^윗첨자\^\^\^}}}, {{{#!wiki @ms@ \,\,\,아랫첨자\,\,\,}}}, 등등은 the seed에서는 정상적으로 나오는데 the tree에서는 2개까지만 읽기 때문에 {{{#!wiki @ms@ \^\^\^윗첨자\^\^\^}}}는 {{{#!wiki @ms@ {{{#orange \^\^}}}\^윗첨자{{{#orange \^\^}}}\^}}}처럼 인식되어 {{{#!wiki @ms@ ^^\^윗첨자^^\^}}}로 나온다. 단, {{{#!wiki @ms@ \'\'\'볼드체\'\'\'}}}는 정상적으로 인식된다. * if 문법 중 the tree는 다음 문법이 지원되지 않는다. * 등호 1개로 만드는 변수값 정의 또는 재정의(예 : 변수=값) * {{{#!if 설명서='if 문법으로 변수=값 으로 정의한 변수를 @변수@ 식으로 호출하는 방법도 마찬가지로 지원되지 않는다.' }}}@설명서@ * {{{#!if "0"[0]>0 "문자열"[index]를 프로그래밍용 정수값으로 불러오는 문법 ([[https://feedback.theseed.io/posts/1604/string-prototype-charcodeat-meseodeu-heoyong|참고]]{{{-3 ^^더시드포럼^^}}}) }}} * {{{#!if "더"[0]==0xb354 문자의 0x○○○○식 유니코드 16진법 계산.}}} * indexOf, lastIndexOf, substring, substr 등 the seed에 지원되는 문자열 메서드(method)가 the tree에는 지원되지 않는다. 관련 문서 : [[https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/String|Mozilla MDN Web Docs, JavaScript/Reference/Global_Objects/String]] * --the tree에는 [[틀:구 계산기]]를 돌릴 수 있으나 [[틀:구 계산기2]]는 못 돌린다.-- == ACL == the tree에 다음과 같은 기능이 더 추가되어 있다. * the seed 구버전 같이 네임스페이스만이 아니라 문서에 읽기 ACL을 걸 수 있다.[* {{{#gray,#gray ''(insert,read,deny,perm:any으로 ACL 변경)''}}}] [[위키운영]] 같은 보안 문서가 있다면 여기에 read ACL을 허용시키는 규칙을 넣는 트롤링을 잘 막아야 한다. * 토론 ACL이 있다. 스레드에 해당하는 ACL 규칙이 없으면 문서 ACL을 적용한다. --문서 ACL 실행이라고 gotopage 같은 기능이 생길 것 같다.-- 다만 누가 슬쩍 ACL을 바꿔도 내역이 표시되지 않아 누가 ACL을 바꿨는지 추적하기 어렵다는 문제점이 남아있다. * 파일 이름공간의 역사가 없는 문서에도 ACL을 걸 수 있다. * NOT Condition으로 해당 사용자가 아닌 사용자를 대상으로 ACL을 설정할 수 있다. 집합(set)으로 보자면, 이용자로서 접근 가능한 모든 이름을 모아놓은 집합에서 해당 집합의 여집합에 해당하는 대상으로 둔다. --NOT perm:human 거부-- NOT 대상 허용, NOT 대상 gotons 같은 ACL 규칙만을 다 만들어놓고 마지막으로 perm:any 허용을 달아놓았다면 고생을 해야 할 수 있으니 NOT Condition을 잘 써야 한다. NOT를 응용해 여러 조건을 만족해야 하는 규칙을 만들 수 있다. 예시) {{{#!wiki style="word-break: keep-all" ||<tablewidth=500>No ||Condition ||Action ||Expiration || ||1 ||NOT 자동 인증된 사용자 ||거부 ||영구 || ||2 ||NOT 해당 문서 기여자 ||거부 ||영구 || ||3 ||가입한지 15일 지난 사용자 ||이름공간ACL 실행 ||영구 ||}}} * 다른 이름공간(네임스페이스) ACL을 따르도록 설정할 수 있다. 문서 역사에 gotootherns(go to other n{{{#gray ame}}}s{{{#gray pace}}})로 나온다. 다만 어느 네임스페이스를 차용했는지는 문서 역사에 표기되지 않으며 문서의 ACL 목록을 들어가서야 볼 수 있다. * 없는 이름공간으로 시도하면 {{{#!wiki @ms@ '''[오류!]''' ,,,,,, ○○○ 이름공간은 존재하지 않습니다!}}}[*@bean@ 띄어쓰기가 2칸이다.] 라는 오류를 반환한다. * 설정하려는 문서의 이름공간과 같은 이름의 이름공간으로 시도해보면 {{{#!wiki @ms@ '''[오류!]''' ,,,,,, 같은 이름공간으로 이동할 수 없습니다.}}}[*@bean@ 띄어쓰기가 2칸이다.] 라는 오류를 반환한다. == 토론 == * 토론 댓글 권한이 부족하다면 토론 관리 도구[* manage_thread의 기능]을 사용할 수 없다. == 알림 == the tree에는 알림이 별도 페이지로 구현되어 있다.({{{#blue 도메인}}}/member/notifications) 토론에서 사용자 문서를 링크할 때 알림이 전송된다. == 일괄 되돌리기 == * the seed에서는 Duration 값을 변경할 수 없지만[* 24시간으로 고정됨], the tree에서는 변경이 가능하다.[* 단, 24시간보다 더 긴 값으로 변경할 수는 없다.] == 버그 == === the tree에만 있는 버그 === === the seed에만 있는 버그 === 차단 내역에서 UUID로 권한 설정, 로그인 기록 조회 내역이 검색되지 않는다. 차단 내역에서 사용자명으로 일괄 되돌리기 내역이 검색되지 않는다. == 기타 == * 생성되는 그라바타(gravatar)가 the seed엔진 위키에서 생성되는 그라바타와는 다르다. (나무위키 게시판과도 다르다.) 단, 동일한 엔진에 같은 계정명이라면 어느 위키에서 로그인을 하든 그라바타가 동일하게 나타난다. * 문서 이름으로 볼 수 있는 미세한 차이점 * {{{#!wiki @ms@ {{{#blue 도메인}}}/w/}}}으로 들어갈 경우 the seed 엔진에는 User Interface를 벗어난 404 오류 페이지로 넘어가지만 the tree 엔진에는 {{{#!wiki @ms@ 문서 이름이 없습니다.}}} 라는 오류 문구와 {{{이전 화면}}} 단추를 보여준다. * {{{#!if " "[0]==0x00A0 {{{#!wiki @ms@ 문서: }}}(%C2%A0==0x00A0, No-Break Space)을 편집해보고자 {{{#!wiki @ms@ {{{#blue 도메인}}}/edit/%C2%A0}}}주소로 들어가 편집기를 열 경우 the seed에서는 {{{문서 이름이 올바르지 않습니다.}}}라는 오류 문구를 보여주고 편집기가 열리지 않는다. the tree에서는 편집기가 정상적으로 열리지만 저장을 시도할 경우 {{{invalid_captcha}}} 라는 오류 문구가 나오고 저장되지 않는다.}}} * the seed 엔진에서 {{{#!wiki @ms@ %EF%B8%8F}}}를 이용한 [[️|이 문서]]의 편집은 저장되나 the tree 엔진에서 해당 제목의 문서를 개설하려고 시도해보면 마찬가지로 {{{invalid_captcha}}} 라는 오류 문구가 나오고 저장되지 않는다. * 반달 표시된 리비전에도 리비전 숨기기 버튼이 표시된다. * 감사 로그({{{#blue 도메인}}}/admin/audit_log) 기능이 있으며 [[config]] 권한으로 사용할 수 있다. * 이름공간 ACL 편집, 스레드 삭제, ACL 그룹 생성 및 삭제, 개발자 지원 내역이 기록된다. * 약관에 HTML을 사용할 수 있다. * ACL 그룹의 이름을 변경할 수 있다. * the tree에는 the seed와 달리 '비밀번호 없이 패스키만 이용해 로그인' 기능이 있다. [각주] [Include(틀:문서 가져옴/the seed, 위키=더시드위키, 문서명=the tree, 버전=19, uuid=57eff439-d9e7-461c-8a84-e7108cd4f488)]