docs: 한글화 운영 적용본과 도움말 100개 작업 기록 보관
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
const words={
|
||||
'Mind Map Core':'마인드맵 엔진','What is Mind Elixir':'Mind Elixir 소개','A mind map core':'마인드맵을 만드는 엔진','Free':'무료','Open-Source':'오픈 소스','Use without JavaScript framework':'별도 JavaScript 프레임워크 없이 사용','Use in your own project':'내 프로젝트에 적용','Easy to use':'쉬운 사용법','Use it like other mind map application':'다른 마인드맵 앱처럼 사용할 수 있습니다','Basics':'기본 조작','tab - Create a child node':'Tab — 하위 항목 만들기','enter - Create a sibling node':'Enter — 같은 단계의 항목 만들기','del - Remove a node':'Delete — 항목 삭제','Focus mode':'집중 모드','Right click and select Focus Mode':'마우스 오른쪽 버튼을 누르고 집중 모드 선택','Right click and select Cancel Focus Mode':'마우스 오른쪽 버튼을 누르고 집중 모드 해제 선택','Left menu':'왼쪽 메뉴','Node distribution':'항목 배치','Left':'왼쪽','Right':'오른쪽','Both l & r':'양쪽','Bottom menu':'아래쪽 메뉴','Full screen':'전체 화면','Return to Center':'중앙으로 이동','Zoom in':'확대','Zoom out':'축소','Link':'연결','Right click and select Link':'마우스 오른쪽 버튼을 누르고 연결 선택','Click the target you want to link':'연결할 대상 항목 클릭','Modify link with control points':'조절점을 움직여 연결선 수정','Node style':'항목 모양','Font Size':'글자 크기','Font Color':'글자 색상','Background Color':'배경색','Add tags':'태그 추가','Completed':'완료','Add icons':'아이콘 추가','Bolder':'굵게','Hyper link':'웹페이지 링크','Draggable':'끌어서 이동','Drag a node to another node\nand the former one will become a child node of latter one':'항목을 다른 항목 위로 끌어 놓으면\n그 항목의 하위 항목으로 이동합니다','Export data':'데이터 내보내기','Caution':'주의 사항','Only save manually':'직접 저장해야 합니다','Save button in the top-right corner':'오른쪽 위의 저장 버튼','Render':'화면으로 표시','summary':'요약',
|
||||
'convert':'변환','List :\n- one\n- two':'목록:\n- 하나\n- 둘','Rotated text':'회전한 글자','> some code':'> 코드 예제','Big text':'큰 글자'
|
||||
};
|
||||
export function translateStructured(n){
|
||||
const obj=JSON.parse(n.content);
|
||||
function walk(o){
|
||||
if(!o||typeof o!=='object')return;
|
||||
for(const [k,v] of Object.entries(o)){
|
||||
if(['text','originalText','topic','label'].includes(k)&&typeof v==='string'&&words[v])o[k]=words[v];
|
||||
else if(k==='tags'&&Array.isArray(v))o[k]=v.map(s=>words[s]||s);
|
||||
else if(typeof v==='object')walk(v);
|
||||
}
|
||||
}
|
||||
walk(obj);
|
||||
if(n.type==='canvas')for(const e of obj.elements.filter(e=>e.type==='text')){e.fontFamily=2;e.height=e.text.split('\n').length*e.fontSize*1.25;e.width=Math.max(e.width,...e.text.split('\n').map(s=>[...s].reduce((a,c)=>a+(/[가-힣]/.test(c)?e.fontSize:e.fontSize*.6),0)));e.version++;}
|
||||
return JSON.stringify(obj);
|
||||
}
|
||||
export function translateCode(n,c){
|
||||
const replacements={
|
||||
'This is a demo of how you can create custom theme for Trilium. You can activate it by going':'Trilium의 사용자 지정 테마를 만드는 예제입니다. 설정의 화면 모양 항목에서',
|
||||
'into options in first tab "Appearance".':'이 테마를 선택하면 적용됩니다.',
|
||||
'You can read some details on theming here:':'테마에 관한 자세한 내용:',
|
||||
'This will be used as main UI font (see below)':'화면의 기본 글꼴로 사용합니다. 아래 설정을 참고하세요.',
|
||||
'This will be used as text content font (see below)':'본문의 기본 글꼴로 사용합니다. 아래 설정을 참고하세요.',
|
||||
'Garamond is subjectively smaller':'Garamond는 시각적으로 작게 느껴집니다',
|
||||
'will add a launcher to the left sidebar':'왼쪽 사이드바에 실행 버튼을 추가합니다',
|
||||
'creating notes is backend (server) responsibility so we need to pass':'노트 생성은 서버에서 처리하므로 실행을 서버로 넘깁니다.',
|
||||
'the control there':'서버에서 새 노트를 만든 뒤 노트 ID를 돌려줍니다.',
|
||||
'wait until the frontend is fully synced with the changes made on the backend above':'서버에서 변경한 내용이 화면에 모두 동기화될 때까지 기다립니다',
|
||||
'we got an ID of newly created note and we want to immediatelly display it':'새로 만든 노트의 ID를 이용해 바로 화면에 표시합니다',
|
||||
'This defines a custom widget which displays number of words and characters in a current text note.':'현재 텍스트 노트의 단어 수와 글자 수를 표시하는 사용자 지정 위젯입니다.',
|
||||
"To be activated for a given note, add label 'wordCount' to the note, you can also make it inheritable and thus activate it for the whole subtree.":"노트에 'wordCount' 라벨을 추가하면 작동합니다. 상속을 켜면 하위 노트 전체에 적용됩니다.",
|
||||
'See it in action in "Books" and its subtree.':'책 노트와 그 하위 노트에서 작동하는 모습을 확인할 수 있습니다.',
|
||||
'higher value means position towards the bottom/right':'값이 클수록 아래쪽 또는 오른쪽에 배치됩니다',
|
||||
'get plain text only':'서식 없는 텍스트만 가져옵니다',
|
||||
'One of the tagRootNote, doneRootNote or todoRootNote does not exist':'태그 또는 완료 목록 또는 할 일 목록의 기준 노트를 찾을 수 없습니다.',
|
||||
'One or both dates - ${todoDate}, ${doneDate} - is outside of expected range':'날짜가 허용 범위를 벗어났습니다. 예정일: ${todoDate} / 완료일: ${doneDate}',
|
||||
'To activate this demo, comment (or remove) the very first line of this code note.':'이 예제를 사용하려면 첫 번째 줄을 주석으로 바꾸거나 제거해야 합니다.',
|
||||
'This is deactivated because custom request handler like this one can be a security risk.':'이러한 사용자 지정 요청 처리기는 보안 위험이 있을 수 있어 기본적으로 작동하지 않도록 해 두었습니다.',
|
||||
'To test this, execute the following curl request:':'시험하려면 다음 curl 요청을 실행합니다:',
|
||||
'(host and port might have to be adjusted based on your setup)':'(서버 주소와 포트는 사용 환경에 맞게 조정하세요)',
|
||||
'See https://github.com/zadam/trilium/wiki/Custom-request-handler for details.':'자세한 내용: https://github.com/zadam/trilium/wiki/Custom-request-handler',
|
||||
'notes must be saved somewhere in the tree hierarchy specified by a parent note.':'노트는 상위 노트로 지정한 위치 아래에 저장해야 합니다.',
|
||||
'This is defined by a relation from this code note to the "target" parent note':'이 코드 노트에서 저장 대상 상위 노트를 가리키는 관계로 지정합니다.',
|
||||
'alternetively you can just use constant noteId for simplicity (get that from "Note Info" dialog of the desired parent note)':'간단히 고정된 noteId를 사용해도 됩니다. 대상 상위 노트의 노트 정보에서 확인할 수 있습니다.',
|
||||
'# This script opens 4 terminal windows.':'# 터미널 창 네 개를 여는 스크립트입니다.'
|
||||
};
|
||||
for(let[k,v]of Object.entries(replacements))c=c.replaceAll(k,v);
|
||||
return c;
|
||||
}
|
||||
Reference in New Issue
Block a user