8 lines
8.8 KiB
JavaScript
8 lines
8.8 KiB
JavaScript
const p=s=>'<p>'+s+'</p>';const ul=xs=>'<ul>'+xs.map(s=>'<li>'+s+'</li>').join('')+'</ul>';
|
|
export default {
|
|
121:({a})=>p('상속은 '+a(0,'라벨')+'이나 '+a(1,'관계')+'를 여러 노트에 공통으로 적용하는 기능입니다. 주로 상위·하위 노트 사이에 적용하며 템플릿으로도 사용할 수 있습니다.')+'<h2>일반 상속</h2>'+p('<code>isInheritable</code>을 <code>true</code>로 지정하면 해당 속성을 현재 노트와 모든 하위 노트에 적용합니다. '+a(2,'라벨')+'과 '+a(3,'관계')+' 편집 화면에서 설정하거나 <code>#myLabel(inheritable)=value</code>처럼 작성할 수 있습니다.')+p('예를 들어 <code>archived</code> 라벨의 상속을 켜면 하위 트리 전체를 검색 등의 목록에서 숨길 수 있습니다. 일반 상속은 모든 하위 노트에 적용됩니다. 일부 노트에서 개별적으로 바꿔야 한다면 복사 상속이나 템플릿 방식을 사용하세요.')+'<h2>복사 상속</h2>'+p('속성 이름 앞에 <code>child:</code>를 붙이면 새 하위 노트에 해당 속성을 복사합니다. 복사된 속성은 독립적이며 노트를 다른 위치로 옮겨도 유지됩니다.')+p('<code>#child:exampleAttribute</code>를 상위 노트에 지정하면 새로 만드는 바로 아래 노트에 <code>#exampleAttribute</code>가 생깁니다. 관계는 <code>~child:myRelation</code>처럼 지정합니다. 기존 노트에는 소급 적용되지 않습니다. 무한한 하위 단계에 적용하려면 일반 상속이나 템플릿을 사용하세요.')+'<h3>여러 단계로 복사하기</h3>'+p('<code>#child:child:child:foo</code>를 지정하면 첫 단계에는 <code>#child:child:foo</code>가 생기고 다음 단계에는 <code>#child:foo</code>가 생기며 세 번째 단계에는 <code>#foo</code>가 생깁니다. 관계도 <code>~child:child:child:foo</code>로 같은 방식을 사용할 수 있습니다. 새로 만드는 노트에만 적용됩니다.')+'<h2>템플릿 상속</h2>'+p(a(4,'템플릿')+'의 속성도 물려받을 수 있습니다. 비슷한 구조와 역할을 가진 노트에 공통 설정을 유지할 때 유용합니다.'),
|
|
122:({a,img,pre})=>p('할 일 관리는 '+a(0,'주요 속성')+'과 '+a(1,'스크립트')+'를 활용하는 '+a(2,'기본 예제')+'입니다.')+'<h2>동작 예시</h2>'+p(img(0,'할 일 관리 예제'))+p('할 일과 완료된 일을 구분합니다. <code>doneDate</code>에 값이 있으면 완료된 일로 처리합니다. 아직 하지 않은 일은 장소와 태그로 분류하며 속성을 바꾸면 알맞은 위치로 자동 이동합니다.')+p(a(3,'날짜별 노트')+'와도 연동합니다. 예정일인 <code>todoDate</code>와 완료일인 <code>doneDate</code>에 해당하는 날짜 노트 아래에 같은 작업을 '+a(4,'복제')+'하고 원본 예제에서는 TODO와 DONE '+a(5,'접두사')+'로 구분합니다.')+'<h2>구현</h2>'+p('새 작업을 넣는 노트의 <code>~child:template</code> '+a(6,'관계')+'가 작업 템플릿을 가리킵니다. '+a(7,'속성 상속')+'을 참고하세요.')+'<h3>속성</h3>'+p('템플릿에서 예정일과 완료일 및 태그와 장소를 '+a(8,'주요 속성')+'으로 표시합니다. <code>~runOnAttributeChange</code>는 속성이 바뀔 때 실행할 '+a(9,'이벤트')+' 처리기를 연결합니다. 이 '+a(10,'스크립트')+'는 완료일을 입력하면 완료 목록으로 옮기고 할 일과 장소 및 태그 목록에서 제거합니다.')+'<h3>새 할 일 버튼</h3>'+pre(0).replace("title: 'New task'","title: '새 할 일'").replace("'new task'","'새 할 일'").replace('// creating notes is backend (server) responsibility so we need to pass\n // the control there','// 노트 생성은 백엔드에서 처리합니다.').replace('// we got an ID of newly created note and we want to immediatelly display it','// 생성한 노트를 바로 엽니다.')+'<h3>색상</h3>'+p('다음 CSS '+a(11,'코드 노트')+'는 할 일을 빨간색으로 표시하고 완료한 일을 초록색으로 표시합니다.')+pre(1)+p('이 '+a(12,'코드 노트')+'에 <code>#appCss</code> '+a(13,'라벨')+'을 지정하면 시작할 때 적용됩니다. 이벤트 처리기는 상태에 따라 <code>#cssClass</code> 값으로 <code>todo</code>나 <code>done</code>을 지정합니다.'),
|
|
123:({a,img,pre})=>'<h2>인용문</h2>'+p('한 문단 이상을 인용할 때 사용할 수 있습니다. '+a(0,'서식 도구 모음')+'의 '+img(0,'인용문 버튼')+'을 누르거나 줄 시작에서 <code>></code> 뒤에 공백을 입력하세요. 인용문 안에는 표와 이미지 및 다른 인용문이나 안내 상자도 넣을 수 있습니다.')+'<h2>안내 상자</h2>'+p('독자가 알아야 할 내용을 눈에 띄게 표시하는 상자입니다.')+p(img(1,'안내 상자의 종류'))+p('동작은 인용문과 비슷하며 제목과 표 및 이미지 등을 안에 넣을 수 있습니다.')+'<h3>만들기</h3>'+p(a(1,'서식 도구 모음')+'에서 안내 상자를 선택하세요.')+p(img(2,'안내 상자 메뉴'))+p('<code>!!! note</code>는 참고 상자를 만듭니다. <code>!!! tip</code>은 도움말이며 <code>!!! important</code>는 중요입니다. <code>!!! caution</code>은 주의이며 <code>!!! warning</code>은 경고입니다. <code>!!!</code> 뒤에 다른 글자를 입력하면 참고 상자 안에 그 글자가 들어갑니다.')+'<h3>사용 방법</h3>'+ul(['글자를 선택하고 안내 상자 버튼을 누르면 선택한 내용을 상자로 바꿉니다.','여러 상자를 선택한 뒤 버튼을 누르면 하나로 합칩니다.','빈 상자에서 <kbd>Backspace</kbd>를 누르면 삭제합니다.','<kbd>Enter</kbd>는 새 문단을 만들며 두 번 누르면 상자 밖으로 나옵니다.','제목과 표 등 블록 요소를 안에 넣을 수 있습니다.'])+'<h3>종류</h3>'+p('참고와 도움말 및 중요와 주의와 경고의 다섯 종류를 제공합니다. GitHub의 안내 상자를 참고한 구성이며 이 버전에서는 종류를 추가하거나 사용자가 바꾸는 기능을 제공하지 않습니다.')+'<h3>Markdown</h3>'+p('가져오기와 내보내기에서는 GitHub 형식을 사용합니다.')+pre(0).replace('This is a note.','참고할 내용입니다.').replace('This is a tip.','도움이 되는 설명입니다.').replace('This is a very important information.','중요한 내용입니다.').replace('This is a caution.','주의할 내용입니다.')+p('편집 중 자동 변환에 쓰는 <code>!!! note</code>와 Markdown 파일의 문법은 다릅니다. Markdown 파일에서는 위의 GitHub 형식을 사용하세요.'),
|
|
124:({a,img,pre})=>p('데이터 폴더에는 다음 자료가 들어 있습니다.')+ul(['<code>document.db</code> — '+a(0,'데이터베이스'),'<code>config.ini</code> — 접속 포트 등 인스턴스 설정','<code>backup</code> — 자동 '+a(1,'백업'),'<code>log</code> — 실행 로그'])+'<h2>위치 확인</h2>'+p('왼쪽 위 메뉴의 Trilium 정보에서 현재 데이터 폴더를 확인할 수 있습니다.')+p(img(0,'데이터 폴더 위치'))+p('기본 폴더 이름은 <code>trilium-data</code>입니다. Linux에서는 <code>/home/[사용자]/.local/share</code> 아래에 둡니다. Windows에서는 <code>C:\\Users\\[사용자]\\AppData\\Roaming</code> 아래이며 macOS에서는 <code>/Users/[사용자]/Library/Application Support</code> 아래입니다. 해당 경로를 사용할 수 없으면 사용자 홈 폴더를 사용합니다. Docker도 컨테이너 사용자 홈 아래에 데이터 폴더를 둡니다.')+p('노트와 설정은 이 폴더에 모여 있습니다. 실행 중 데이터베이스를 단순 복사하는 대신 일관성이 보장되는 백업 방법을 사용하세요.')+'<h3>위치 바꾸기</h3>'+p('<code>TRILIUM_DATA_DIR</code> 환경 변수로 지정할 수 있습니다. Linux 예시입니다.')+pre(0)+'<h4>macOS</h4>'+p('로그인할 때마다 적용하려면 <code>~/Library/LaunchAgents</code>에 plist 파일을 만듭니다. 직접 설정하려면 <code>launchctl setenv TRILIUM_DATA_DIR <경로></code>를 사용합니다. 아래는 원문에 남아 있는 값 목록입니다. XML 태그가 빠져 있어 완전한 plist 파일로 사용할 수는 없습니다.')+pre(1)+'<h3>실행할 때만 지정하기</h3>'+p('Trilium 프로세스에만 환경 변수를 지정하면 서로 다른 '+a(2,'데이터베이스')+'를 사용하거나 이동식 설치를 구성할 수 있습니다.')+pre(2)+p('필요하면 이 명령을 실행 스크립트로 저장하세요.')+'<h3>개별 경로 지정</h3>'+p('<code>TRILIUM_DOCUMENT_PATH</code>는 DB 파일 경로입니다. <code>TRILIUM_BACKUP_DIR</code>은 백업 폴더이며 <code>TRILIUM_LOG_DIR</code>은 로그 폴더입니다. <code>TRILIUM_ANONYMIZED_DB_DIR</code>은 익명화 DB 폴더이며 <code>TRILIUM_CONFIG_INI_PATH</code>는 설정 파일 경로입니다. 지정하지 않으면 데이터 폴더 안의 기본 위치를 사용합니다.')
|
|
};
|