Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
// Set *default* container specific settings.json values on container create.
"settings": {
"eslint.validate": ["javascript", "javascriptreact", "vue"],
"eslint.workingDirectories": ["./", "./.vuepress"],
"eslint.workingDirectories": ["./", "./.vitepress"],
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
}
Expand Down
24 changes: 11 additions & 13 deletions .github/workflows/GHPages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,41 +10,39 @@ jobs:
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 14
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forJava/Javaコーディング規約.md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./.vuepress/public/resources/Javaコーディング規約.html"
args: "pandoc ./documents/forJava/Javaコーディング規約.md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./public/resources/Javaコーディング規約.html"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forJava/Javaコーディング規約.md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./.vuepress/public/resources/Javaコーディング規約.docx"
args: "pandoc ./documents/forJava/Javaコーディング規約.md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./public/resources/Javaコーディング規約.docx"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forSQL/SQLコーディング規約(Oracle).md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./.vuepress/public/resources/SQLコーディング規約(Oracle).html"
args: "pandoc ./documents/forSQL/SQLコーディング規約(Oracle).md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./public/resources/SQLコーディング規約(Oracle).html"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forSQL/SQLコーディング規約(Oracle).md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./.vuepress/public/resources/SQLコーディング規約(Oracle).docx"
args: "pandoc ./documents/forSQL/SQLコーディング規約(Oracle).md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./public/resources/SQLコーディング規約(Oracle).docx"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forSQL/SQLコーディング規約(PostgreSQL).md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./.vuepress/public/resources/SQLコーディング規約(PostgreSQL).html"
args: "pandoc ./documents/forSQL/SQLコーディング規約(PostgreSQL).md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./public/resources/SQLコーディング規約(PostgreSQL).html"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forSQL/SQLコーディング規約(PostgreSQL).md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./.vuepress/public/resources/SQLコーディング規約(PostgreSQL).docx"
args: "pandoc ./documents/forSQL/SQLコーディング規約(PostgreSQL).md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./public/resources/SQLコーディング規約(PostgreSQL).docx"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forAWSResource/AWSインフラリソース命名規約.md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./.vuepress/public/resources/AWSインフラリソース命名規約.html"
args: "pandoc ./documents/forAWSResource/AWSインフラリソース命名規約.md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./public/resources/AWSインフラリソース命名規約.html"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forAWSResource/AWSインフラリソース命名規約.md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./.vuepress/public/resources/AWSインフラリソース命名規約.docx"
args: "pandoc ./documents/forAWSResource/AWSインフラリソース命名規約.md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./public/resources/AWSインフラリソース命名規約.docx"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forOpenAPISpecification/OpenAPI_Specification_2.0.md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./.vuepress/public/resources/OpenAPI_Specification_2.0.html"
args: "pandoc ./documents/forOpenAPISpecification/OpenAPI_Specification_2.0.md -s --self-contained --number-sections --toc -t html5 -c ./documents/common/pandoc_styles/css/style.css -o ./public/resources/OpenAPI_Specification_2.0.html"
- uses: docker://pandoc/latex:2.9
with:
args: "pandoc ./documents/forOpenAPISpecification/OpenAPI_Specification_2.0.md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./.vuepress/public/resources/OpenAPI_Specification_2.0.docx"
args: "pandoc ./documents/forOpenAPISpecification/OpenAPI_Specification_2.0.md --toc --reference-doc=./documents/common/pandoc_styles/スタイル.docx -s -o ./public/resources/OpenAPI_Specification_2.0.docx"
- name: Install Packages
run: |
npm i --legacy-peer-deps
npm i -f
npm i --global mermaid-filter
- name: Build all
run: |
Expand Down
18 changes: 18 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: ci

on:
pull_request:
branches: [master]

jobs:
build-docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- name: Install Packages
run: |
npm i -f
- name: Build all
run: |
npm run build
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,5 @@ node_modules

# WSL
*:Zone.Identifier

/.vitepress/cache
180 changes: 131 additions & 49 deletions .vuepress/config.js → .vitepress/config.mjs
Original file line number Diff line number Diff line change
@@ -1,78 +1,152 @@
"use strict";
import { fileURLToPath } from "url";
import { defineConfig as defineConfigBase } from "vitepress";
import { withMermaid } from "vitepress-plugin-mermaid";
import { Module } from "module";
import markdownItTaskLists from "markdown-it-task-lists";
import markdownItFootnote from "markdown-it-footnote";
import markdownItHeaderShift from "./lib/markdown-it-plugin-header-shift.mjs";
import * as plantumlLanguage from "./lib/plantuml.tmlanguage.mjs";
const __filename = fileURLToPath(import.meta.url);
const pkg = Module.createRequire(__filename)("../package.json");

const repoUrl = pkg.repository.url
.replace(/\.git$/u, "")
.replace(/^git\+/u, "");

/** @type {import("vitepress").DefaultTheme.Sidebar} */
const links = {
"/documents/forJava/Javaコーディング規約_for_11.html": [
"/documents/forJava/",
"/documents/forJava/Javaコーディング規約.html",
"/documents/forJava/Javaコーディング規約_for_11.html",
],
"/documents/forJava/Javaコーディング規約_for_8.html": [
"/documents/forJava/",
"/documents/forJava/Javaコーディング規約.html",
"/documents/forJava/Javaコーディング規約_for_8.html",
],
"/documents/forJava/": [
"/documents/forJava/",
"/documents/forJava/Javaコーディング規約.html",
{ text: "Home", link: "/documents/forJava/" },
{
text: "Javaコーディング規約",
link: "/documents/forJava/Javaコーディング規約.html",
},
{
text: "For Java11",
link: "/documents/forJava/Javaコーディング規約_for_11.html",
},
{
text: "For Java8",
link: "/documents/forJava/Javaコーディング規約_for_8.html",
},
],
"/documents/forSQL/": [
"/documents/forSQL/",
"/documents/forSQL/SQLコーディング規約(Oracle).html",
"/documents/forSQL/SQLコーディング規約(PostgreSQL).html",
{ text: "Home", link: "/documents/forSQL/" },
{
text: "SQLコーディング規約(PostgreSQL)",
link: "/documents/forSQL/SQLコーディング規約(PostgreSQL).html",
},
{
text: "SQLコーディング規約(Oracle)",
link: "/documents/forSQL/SQLコーディング規約(Oracle).html",
},
],
"/documents/forAWSResource/": [
"/documents/forAWSResource/",
"/documents/forAWSResource/AWSインフラリソース命名規約.html",
{ text: "Home", link: "/documents/forAWSResource/" },
{
text: "AWSインフラ命名規約",
link: "/documents/forAWSResource/AWSインフラリソース命名規約.html",
},
],
"/documents/forOpenAPISpecification/": [
"/documents/forOpenAPISpecification/",
"/documents/forOpenAPISpecification/OpenAPI_Specification_2.0.html",
"/documents/forOpenAPISpecification/OpenAPI_Specification_3.0.3.html",
{ text: "Home", link: "/documents/forOpenAPISpecification/" },
{
text: "OpenAPI Specification 2.0規約",
link: "/documents/forOpenAPISpecification/OpenAPI_Specification_2.0.html",
},
{
text: "OpenAPI Specification 3.0.3規約",
link: "/documents/forOpenAPISpecification/OpenAPI_Specification_3.0.3.html",
},
],
"/documents/forGitBranch/": [
"/documents/forGitBranch/",
"/documents/forGitBranch/git_branch_standards.html",
"/documents/forGitBranch/merge_develop_to_feature.html",
"/documents/forGitBranch/merge_feature_to_develop.html",
"/documents/forGitBranch/commit_message_rule.html",
"/documents/forGitBranch/vscode_git_ope.html",
{ text: "Home", link: "/documents/forGitBranch/" },
{
text: "Gitブランチフロー規約",
link: "/documents/forGitBranch/git_branch_standards.html",
},
{
text: "機能ブランチに開発ブランチの変更を取り込む方法",
link: "/documents/forGitBranch/merge_develop_to_feature.html",
},
{
text: "開発ブランチに機能ブランチの変更を取り込む方法",
link: "/documents/forGitBranch/merge_feature_to_develop.html",
},
{
text: "コミットメッセージ規約",
link: "/documents/forGitBranch/commit_message_rule.html",
},
{
text: "VSCode上でのGit操作",
link: "/documents/forGitBranch/vscode_git_ope.html",
},
],
"/documents/forSlack/": [
"/documents/forSlack/",
"/documents/forSlack/slack_usage_guidelines.html",
{ text: "Home", link: "/documents/forSlack/" },
{
text: "Slack利用ガイドライン",
link: "/documents/forSlack/slack_usage_guidelines.html",
},
],
};
console.log(links);

module.exports = {
base: "/coding-standards/",
/**
* @typedef {import('vitepress').UserConfig<import('vitepress').DefaultTheme.Config>} VitepressConfig
*/
/**
* @param {VitepressConfig} config config
* @returns {VitepressConfig} config
*/
function defineConfig(config) {
return withMermaid(defineConfigBase(config));
}

export default defineConfig({
title: "Future Enterprise Coding Standards",
description:
"フューチャー株式会社が作成するエンタープライズ領域に特化したコーディング規約",
dest: "docs",
serviceWorker: false,
outDir: "docs",
ignoreDeadLinks: "localhostLinks",
markdown: {
lineNumbers: true,
extendMarkdown: (md) => {
md.use(require("./markdown-it-plugin-header-shift"));
md.use(require("markdown-it-task-lists"));
config(md) {
md.use(markdownItHeaderShift);
md.use(markdownItTaskLists);
md.use(markdownItFootnote);
},
plugins: ["vuepress-plugin-mermaidjs"],
languages: [plantumlLanguage],
},
head: [],
locales: {
"/": {
root: {
lang: "ja",
},
},
plugins: ["vuepress-plugin-mermaidjs"],
head: [["link", { rel: "icon", href: `/coding-standards/logo.png` }]],
srcExclude: ["./README.md"],
base: "/coding-standards/",
themeConfig: {
logo: "/images/logo.svg",
repo: "https://github.com/future-architect/coding-standards",
docsRepo: "https://github.com/future-architect/coding-standards",
docsBranch: "master",
editLinks: true,
lastUpdated: true,
siteTitle: "Future Enterprise <wbr>Coding Standards",
logo: {
light: "/images/logo.svg",
dark: "/images/logo-dark.svg",
},
footer: {
copyright:
"©2015 - 2024 Future Enterprise Coding Standards - Future Corporation",
},
search: {
provider: "local",
options: {
detailedView: true,
},
},
editLink: {
pattern: repoUrl + "/edit/master/:path",
},
outline: {
level: "deep",
},
nav: [
{
text: "Java",
Expand Down Expand Up @@ -167,7 +241,7 @@ module.exports = {
},
{
text: "サンプルプロジェクト",
link: "/documents/forGitBranch/future_muscle_partner/",
link: "/documents/forMarkdown/future_muscle_partner/",
},
],
},
Expand Down Expand Up @@ -216,6 +290,14 @@ module.exports = {
],
},
],

sidebar: links,

socialLinks: [
{
icon: "github",
link: repoUrl,
},
],
},
};
});
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/**
* headerタグを1つづつずらします。
* Pandocでも利用できるMarkdownファイルにしたいので、`# header`を一つしかつくれないvuepress制約がうまく共存できないため
* vuepressではhタグの番号をずらし、無理やり共存できるようにします。
* Pandocでも利用できるMarkdownファイルにしたいので、`# header`を一つしかつくれないvitepress制約がうまく共存できないため
* vitepressではhタグの番号をずらし、無理やり共存できるようにします。
*/
module.exports = function headerSections(md) {
export default function headerSections(md) {
function shiftHeaders(state) {
state.tokens.forEach((t, i) => {
if (t.type.includes("heading")) {
Expand All @@ -13,4 +13,4 @@ module.exports = function headerSections(md) {
}

md.core.ruler.push("header_shift", shiftHeaders);
};
}
Loading
Loading