새로운 모습으로 다시 돌아오겠습니다
북트레싱
  • 홈
  • 세컨드 브레인
  • 책 추천
  • 책 리뷰
  • 자기계발
  • 독서 관련 팁
  • 소식&이벤트
북트레싱
  • 홈
  • 세컨드 브레인
  • 책 추천
  • 책 리뷰
  • 자기계발
  • 독서 관련 팁
  • 소식&이벤트
No Result
View All Result
북트레싱
No Result
View All Result
  • 홈
  • 세컨드 브레인
  • 책 추천
  • 책 리뷰
  • 자기계발
  • 독서 관련 팁
  • 소식&이벤트
Home 세컨드 브레인

옵시디언 주간 계획을 자동화해서 더욱 강력한 생산성 향상

북트레싱 by 북트레싱
1월 14, 2024
in 세컨드 브레인, 옵시디언
A A
0
옵시디언 주간 계획 위클리 노트

Table of Contents

  • 1. 옵시디언 주간 계획 소개
  • 2. 위클리 노트 영상
  • 3. dataview, templater 코드 공유

1 옵시디언 주간 계획 소개

안녕하세요 북트레싱입니다.
시간 관리 프로젝트 두 번째인 위클리 노트를 살펴보겠습니다.

옵시디언 주간 계획은 단순히 계획을 적어놓는 것이 아닌 옵시디언의 데이터뷰, 템플레이터 플러그인을 사용하여, 우리가 매일 쓰는 데일리 노트와 연결하여 더욱 편하게 기록하고 관리할 수 있습니다.

영상에서는 총 3개의 코드에 대한 설명을 드렸는데, 그외에도 많은 내용을 포함하였으니, 아직 영상 시청을 하지 않았다면 시청 부탁드립니다.

2 위클리 노트 영상

3 dataview, templater 코드 공유

소스 코드 #1

옵시디언 주간 계획을 자동화해서 더욱 강력한 생산성 향상

코드는 자유롭게 사용 가능하나 수정 및 재배포 시에는 출처를 남겨주시기 바랍니다.


<%*
function getPreviousWeek(year, week) {
    if (week === 1) {
        year -= 1;
        let lastWeekOfYear = getISOWeekNumber(new Date(year, 11, 28));
        return `${year}-W${String(lastWeekOfYear).padStart(2, '0')}`;
    } else {
        week -= 1;
        return `${year}-W${String(week).padStart(2, '0')}`;
    }
}

function getISOWeekNumber(date) {
    let day = new Date(date.getFullYear(), date.getMonth(), date.getDate());
    let dayNum = day.getDay() || 7;
    day.setDate(day.getDate() + 4 - dayNum);
    let yearStart = new Date(day.getFullYear(), 0, 1);
    return Math.ceil((((day - yearStart) / 86400000) + 1) / 7);
}

let [year, week] = tp.file.title.split("-W").map(Number);
let lastWeek = getPreviousWeek(year, week);
let lastWeekPath = "10. Planner/12. Weekly/" + lastWeek;
let section = "## 다음 주 계획";
let should_include = false;
let sectionContent = "";

let lwfile = tp.file.find_tfile(lastWeekPath);
if(lwfile) {
    const content = await app.vault.read(lwfile);
    if(content.includes(section)) {
        let startIndex = content.indexOf(section) + section.length;
        let endIndex = content.indexOf('\n##', startIndex);
        endIndex = endIndex === -1 ? content.length : endIndex;
        sectionContent = content.substring(startIndex, endIndex).trim();
        should_include = sectionContent.length > 0;
    }
}

tR += should_include ? sectionContent : "없습니다😀";
%>

소스 코드 #2

옵시디언 주간 계획을 자동화해서 더욱 강력한 생산성 향상

코드는 자유롭게 사용 가능하나 수정 및 재배포 시에는 출처를 남겨주시기 바랍니다.

|요일| 날짜 | 내용 |
|---|---|---|
|월|`$=moment("<% tp.file.title %>", "YYYY-[W]WW").startOf('isoWeek').format("MM-DD")`| ![[<%* const title0 = tp.file.title;    const [year0, week0] = title0.split("-W");    const mondayOfWeek = moment().isoWeekYear(year0).isoWeek(week0).startOf('isoWeek').add(0, 'days').format("YYYY-MM-DD(ddd)");    tR += mondayOfWeek; %>#^summary]] |   
|화|`$=moment("<% tp.file.title %>", "YYYY-[W]WW").startOf('isoWeek').add(1, 'days').format("MM-DD")`| ![[<%* const title1 = tp.file.title;    const [year1, week1] = title1.split("-W");    const tuesdayOfWeek = moment().isoWeekYear(year1).isoWeek(week1).startOf('isoWeek').add(1, 'days').format("YYYY-MM-DD(ddd)");    tR += tuesdayOfWeek; %>#^summary]] |   
|수|`$=moment("<% tp.file.title %>", "YYYY-[W]WW").startOf('isoWeek').add(2, 'days').format("MM-DD")`| ![[<%* const title2 = tp.file.title;    const [year2, week2] = title2.split("-W");    const wednesdayOfWeek = moment().isoWeekYear(year2).isoWeek(week2).startOf('isoWeek').add(2, 'days').format("YYYY-MM-DD(ddd)");    tR += wednesdayOfWeek; %>#^summary]] |  
|목|`$=moment("<% tp.file.title %>", "YYYY-[W]WW").startOf('isoWeek').add(3, 'days').format("MM-DD")`| ![[<%* const title3 = tp.file.title;    const [year3, week3] = title3.split("-W");    const thursdayOfWeek = moment().isoWeekYear(year3).isoWeek(week3).startOf('isoWeek').add(3, 'days').format("YYYY-MM-DD(ddd)");    tR += thursdayOfWeek; %>#^summary]] |   
|금|`$=moment("<% tp.file.title %>", "YYYY-[W]WW").startOf('isoWeek').add(4, 'days').format("MM-DD")`| ![[<%* const title4 = tp.file.title;    const [year4, week4] = title4.split("-W");    const fridayOfWeek = moment().isoWeekYear(year4).isoWeek(week4).startOf('isoWeek').add(4, 'days').format("YYYY-MM-DD(ddd)");    tR += fridayOfWeek; %>#^summary]] |   
|토|`$=moment("<% tp.file.title %>", "YYYY-[W]WW").startOf('isoWeek').add(5, 'days').format("MM-DD")`| ![[<%* const title5 = tp.file.title;    const [year5, week5] = title5.split("-W");    const saturdayOfWeek = moment().isoWeekYear(year5).isoWeek(week5).startOf('isoWeek').add(5, 'days').format("YYYY-MM-DD(ddd)");    tR += saturdayOfWeek; %>#^summary]] |   
|일|`$=moment("<% tp.file.title %>", "YYYY-[W]WW").startOf('isoWeek').add(6, 'days').format("MM-DD")`| ![[<%* const title6 = tp.file.title;    const [year6, week6] = title6.split("-W");    const sundayOfWeek = moment().isoWeekYear(year5).isoWeek(week5).startOf('isoWeek').add(6, 'days').format("YYYY-MM-DD(ddd)");    tR += sundayOfWeek; %>#^summary]] |  

소스코드 #3

옵시디언 주간 계획을 자동화해서 더욱 강력한 생산성 향상

코드는 자유롭게 사용 가능하나 수정 및 재배포 시에는 출처를 남겨주시기 바랍니다.

```dataviewjs
const currentNoteTitle = dv.current().file.name;
const weekNumberMatch = currentNoteTitle.match(/(\d{4}-W\d{2})/);

if (weekNumberMatch) {
    const weekNumber = weekNumberMatch[0];
    const dailyNoteFolder = '"10. Planner/11. Daily"';
    
    dv.pages(dailyNoteFolder)
        .where(page => {
            const pageDate = moment(page.file.name, "YYYY-MM-DD(ddd)");
            return pageDate.isValid() && pageDate.isoWeek() === moment(weekNumber, "YYYY-[W]WW").isoWeek();
        })
        .forEach(page => {
            const dailyReview = page.daily_review || "없음";
            dv.paragraph(`**${page.file.name}**: ${dailyReview}`);
        });
} else {
    dv.paragraph("이 노트의 제목에 ISO 주 정보가 포함되지 않았습니다.");
}
```
Tags: 데이터뷰 코드 소스옵시디언 위클리 노트옵시디언 자동화일정 관리
Previous Post

플러그인 중 가장 강력한 옵시디언 데이터뷰, dataview

Next Post

월간, 연간 계획 꾸준한 습관 기르기, Tracker 플러그인

관련 글 더 읽기

메타데이터 메뉴 플러그인

메타데이터 메뉴 (metadata menu) 플러그인, (데이터뷰 테이블)

by 북트레싱
7월 16, 2024
0

메타데이터 메뉴 플러그인 메타데이터 메뉴에 대한 기본적인 사용법에 대해 다뤘습니다. 이 플러그인은 여러 방법으로 활용이 가능하지만 다른 플러그인에 비해서 사용법이 조금 복잡한 편입니다. 아래 임베딩된 영상에서 메타데이터 메뉴 플러그인의 사용에...

지식관리시스템 CODE

지식관리시스템- CODE법칙

by 북트레싱
11월 1, 2023
0

세컨드 브레인을 통한 지식관리시스템 CODE 법칙은 '티아고 포르테'가 '세컨드 브레인' 이란 책에서 제시한 지식관리시스템 (KMS)법칙이다. '세컨드 브레인'이라는 단어가 조금은 생소할 수도 있지만, 그 의미는 어렵지 않다. 저자는 우리의 두뇌를 '첫...

옵시디언_tasks_필터링_구문

옵시디언 플러그인 Tasks 필터링 구문 할 일 목록

by 북트레싱
12월 24, 2023
0

옵시디언에서 할 일을 관리해주는 플러그인 Tasks 필터링 구문을 정리했습니다. 이 플러그인은 일상적인 작업이나 복잡한 업무 등에 사용이 되는데할 일을 명확하게 정리하고,우선순위를 설정하는 등 생산성과 효율성을 높일 수가 있습니다. https://youtu.be/Qok3EljgmbA 자이가르닉...

옵시디언 미니멀 테마

옵시디언 미니멀 테마 추천, 카드뷰, 갤러리뷰

by 북트레싱
1월 29, 2024
0

옵시디언을 커스터마이징하여 사용하는 방법은 크게 두 가지가 있습니다.미리 만들어진 테마를 다운받아서 옵시디언에 적용을 하는 방법과 CSS를 사용해서 변경할 수 있는데요. CSS를 사용하는 것은 구체적으로 내가 원하는 기능을 추가할 수는 있지만...

Load More
Next Post
옵시디언 Tracker 플러그인

월간, 연간 계획 꾸준한 습관 기르기, Tracker 플러그인

옵시디언-todoist-투두이스트

옵시디언 Todoist 연동하기, 투두이스트 할 일 어플

옵시디언 미니멀 테마

옵시디언 미니멀 테마 추천, 카드뷰, 갤러리뷰

책 정보 수집 플러그인

옵시디언 책 정보 수집 플러그인, korean book info 커스텀

옵시디언 대시보드, MOC 만들기

Leave Comment

태그

node.js (2) python (2) todoist api 토큰 (1) 갤러리뷰 (1) 계획 (2) 다이어리 (1) 데일리 노트 예시 (1) 데일리 노트 코드 소스 (1) 데일리 노트 템플릿 (1) 두려움 (2) 메모 (2) 메타인지 (2) 목표 (6) 목표달성 (4) 목표설정 (3) 베스트셀러 (7) 생산성 (3) 성공 (3) 세컨드브레인 (4) 습관기르기 (2) 습관 기르기 (1) 습관끊기 (2) 습관만들기 (2) 실패 (3) 연간 계획 (1) 옵시디언 (2) 옵시디언 todoist 사용법 (1) 옵시디언 데일리 노트 (1) 옵시디언 테마 (1) 옵시디언 투두이스트 연동 (1) 옵시디언 플러그인 (2) 월간 노트 (1) 자기계발 (12) 자바스크립트 (2) 지식관리 (4) 카드뷰 (1) 템플레이터 (1) 템플릿 예시 (1) 템플릿 플러그인 (1) 투두리스트 (2) 투두이스트 api (1) 파이썬 (2) 플래너 (1) 할일 달력 (1) 행동 (2)

키워드 검색

No Result
View All Result

구독하기

  • About Us
  • Blog
  • Contact Us
  • Disclosure
  • Home
  • Privacy Policy
  • Terms Of Use

Copyright 2024. Booktracing. All rights reserved. / 상호명 : 인사이트웨이브 / 사업자등록번호 : 636-22-01756

Welcome Back!

Login to your account below

Forgotten Password?

Retrieve your password

Please enter your username or email address to reset your password.

Log In
No Result
View All Result
  • About Us
  • Blog
  • Contact Us
  • Disclosure
  • Home
  • Privacy Policy
  • Terms Of Use

Copyright 2024. Booktracing. All rights reserved. / 상호명 : 인사이트웨이브 / 사업자등록번호 : 636-22-01756

This website uses cookies. By continuing to use this website you are giving consent to cookies being used. Visit our Privacy and Cookie Policy.