Skip to content

Commit 00fde17

Browse files
benelogclaude
andcommitted
content-directory 설정 속성 추가
마크다운 파일 디렉토리를 site.yaml에서 지정 가능하도록 변경 (기본값 content) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 9279290 commit 00fde17

3 files changed

Lines changed: 10 additions & 8 deletions

File tree

obsidian-site-action/build.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,12 +29,13 @@ export interface SiteConfig {
2929
title: string;
3030
subtitle: string;
3131
lang: string;
32+
'content-directory': string;
3233
'output-directory': string;
3334
gitHub?: GitHubConfig;
3435
}
3536

3637
function loadConfig(source: string): SiteConfig {
37-
const config: SiteConfig = { title: basename(source), subtitle: '', lang: 'en', 'output-directory': 'public' };
38+
const config: SiteConfig = { title: basename(source), subtitle: '', lang: 'en', 'content-directory': 'content', 'output-directory': 'public' };
3839
const configPath = join(source, 'site.yaml');
3940
if (existsSync(configPath)) {
4041
const data = parseYaml(readFileSync(configPath, 'utf-8'));
@@ -43,8 +44,8 @@ function loadConfig(source: string): SiteConfig {
4344
return config;
4445
}
4546

46-
function scanVault(source: string): Map<string, PageInfo> {
47-
const contentDir = join(source, 'content');
47+
function scanVault(source: string, contentDirectory: string): Map<string, PageInfo> {
48+
const contentDir = join(source, contentDirectory);
4849
const scanDir = existsSync(contentDir) ? contentDir : source;
4950
const pages = new Map<string, PageInfo>();
5051

@@ -93,7 +94,7 @@ function main(): void {
9394
const indexTemplate = readFileSync(join(TOOL_DIR, 'layouts', 'index.html'), 'utf-8');
9495

9596
// Scan vault
96-
const pages = scanVault(source);
97+
const pages = scanVault(source, config['content-directory']);
9798
console.log(`Found ${pages.size} pages`);
9899

99100
// Build graph and backlinks

obsidian-site-action/render.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,10 @@ export function renderBacklinks(stem: string, backlinks: Map<string, string[]>,
6262
return '<section class="backlinks"><h2>Backlinks</h2><ul>' + items.join('\n') + '</ul></section>';
6363
}
6464

65-
export function renderEditLink(stem: string, gitHub?: GitHubConfig): string {
65+
export function renderEditLink(stem: string, contentDirectory: string, gitHub?: GitHubConfig): string {
6666
if (!gitHub?.['repository-url']) return '';
6767
const branch = gitHub['content-branch'] || 'main';
68-
const url = `${gitHub['repository-url']}/edit/${branch}/content/${stem}.md`;
68+
const url = `${gitHub['repository-url']}/edit/${branch}/${contentDirectory}/${stem}.md`;
6969
return `<a href="${url}" class="edit-link" target="_blank" rel="noopener noreferrer">Edit</a>`;
7070
}
7171

@@ -89,7 +89,7 @@ export function buildPage(
8989
const relatedHtml = renderRelated(wikilinks, pages);
9090
const backlinksHtml = renderBacklinks(stem, backlinks, pages);
9191

92-
const editLinkHtml = renderEditLink(stem, config.gitHub);
92+
const editLinkHtml = renderEditLink(stem, config['content-directory'], config.gitHub);
9393

9494
return template
9595
.replaceAll('{title}', title)

site.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
title: Devnote
22
subtitle: Benelog의 개발수첩
33
lang: ko
4+
content-directory: content
45
output-directory: public
56
gitHub:
67
repository-url: https://github.com/benelog/devnote
7-
content-branch: main
8+
content-branch: master

0 commit comments

Comments
 (0)