conf

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 30, 2023 License: AGPL-3.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ProviderSiYuan = 0 // ProviderSiYuan 为思源官方提供的云端存储服务
	ProviderS3     = 2 // ProviderS3 为 S3 协议对象存储提供的云端存储服务
	ProviderWebDAV = 3 // ProviderWebDAV 为 WebDAV 协议提供的云端存储服务
)

Variables

This section is empty.

Functions

This section is empty.

Types

type API

type API struct {
	Token string `json:"token"`
}

func NewAPI

func NewAPI() *API

type Account

type Account struct {
	DisplayTitle bool `json:"displayTitle"`
	DisplayVIP   bool `json:"displayVIP"`
}

func NewAccount

func NewAccount() *Account

type Appearance

type Appearance struct {
	Mode                int      `json:"mode"`                // 模式:0:明亮,1:暗黑
	ModeOS              bool     `json:"modeOS"`              // 模式是否跟随系统
	DarkThemes          []string `json:"darkThemes"`          // 暗黑模式外观主题列表
	LightThemes         []string `json:"lightThemes"`         // 明亮模式外观主题列表
	ThemeDark           string   `json:"themeDark"`           // 选择的暗黑模式外观主题
	ThemeLight          string   `json:"themeLight"`          // 选择的明亮模式外观主题
	ThemeVer            string   `json:"themeVer"`            // 选择的主题版本
	Icons               []string `json:"icons"`               // 图标列表
	Icon                string   `json:"icon"`                // 选择的图标
	IconVer             string   `json:"iconVer"`             // 选择的图标版本
	NativeEmoji         bool     `json:"nativeEmoji"`         // 文档图标是否使用系统原生 Emoji
	CodeBlockThemeLight string   `json:"codeBlockThemeLight"` // 明亮模式下代码块主题
	CodeBlockThemeDark  string   `json:"codeBlockThemeDark"`  // 暗黑模式下代码块主题
	Lang                string   `json:"lang"`                // 选择的界面语言,同 AppConf.Lang
	CustomCSS           bool     `json:"customCSS"`           // 是否启用自定义主题
	ThemeJS             bool     `json:"themeJS"`             // 是否启用了主题 JavaScript
	CloseButtonBehavior int      `json:"closeButtonBehavior"` // 关闭按钮行为,0:退出,1:最小化到托盘
	HideStatusBar       bool     `json:"hideStatusBar"`       // 是否隐藏底部状态栏
}

func NewAppearance

func NewAppearance() *Appearance

type BoxConf

type BoxConf struct {
	Name                  string `json:"name"`                  // 笔记本名称
	Sort                  int    `json:"sort"`                  // 排序字段
	Icon                  string `json:"icon"`                  // 图标
	Closed                bool   `json:"closed"`                // 是否处于关闭状态
	RefCreateSavePath     string `json:"refCreateSavePath"`     // 块引时新建文档存储文件夹路径
	CreateDocNameTemplate string `json:"createDocNameTemplate"` // 新建文档名模板
	DailyNoteSavePath     string `json:"dailyNoteSavePath"`     // 新建日记存储路径
	DailyNoteTemplatePath string `json:"dailyNoteTemplatePath"` // 新建日记使用的模板路径
}

BoxConf 维护 .siyuan/conf.json 笔记本配置。

func NewBoxConf

func NewBoxConf() *BoxConf

type D3

type D3 struct {
	NodeSize        float64 `json:"nodeSize"`
	LineWidth       float64 `json:"linkWidth"`
	LineOpacity     float64 `json:"lineOpacity"`
	CenterStrength  float64 `json:"centerStrength"`
	CollideRadius   float64 `json:"collideRadius"`
	CollideStrength float64 `json:"collideStrength"`
	LinkDistance    int     `json:"linkDistance"`
	Arrow           bool    `json:"arrow"`
}

type Editor

type Editor struct {
	FontSize                        int      `json:"fontSize"`                        // 字体大小
	FontFamily                      string   `json:"fontFamily"`                      // 字体
	CodeSyntaxHighlightLineNum      bool     `json:"codeSyntaxHighlightLineNum"`      // 代码块是否显示行号
	CodeTabSpaces                   int      `json:"codeTabSpaces"`                   // 代码块中 Tab 转换空格数,配置为 0 则表示不转换
	CodeLineWrap                    bool     `json:"codeLineWrap"`                    // 代码块是否自动折行
	CodeLigatures                   bool     `json:"codeLigatures"`                   // 代码块是否连字
	DisplayBookmarkIcon             bool     `json:"displayBookmarkIcon"`             // 是否显示书签图标
	DisplayNetImgMark               bool     `json:"displayNetImgMark"`               // 是否显示网络图片角标
	GenerateHistoryInterval         int      `json:"generateHistoryInterval"`         // 生成历史时间间隔,单位:分钟
	HistoryRetentionDays            int      `json:"historyRetentionDays"`            // 历史保留天数
	Emoji                           []string `json:"emoji"`                           // 常用表情
	VirtualBlockRef                 bool     `json:"virtualBlockRef"`                 // 是否启用虚拟引用
	VirtualBlockRefExclude          string   `json:"virtualBlockRefExclude"`          // 虚拟引用关键字排除列表
	VirtualBlockRefInclude          string   `json:"virtualBlockRefInclude"`          // 虚拟引用关键字包含列表
	BlockRefDynamicAnchorTextMaxLen int      `json:"blockRefDynamicAnchorTextMaxLen"` // 块引动态锚文本最大长度
	PlantUMLServePath               string   `json:"plantUMLServePath"`               // PlantUML 伺服地址
	FullWidth                       bool     `json:"fullWidth"`                       // 是否使用最大宽度
	KaTexMacros                     string   `json:"katexMacros"`                     // KeTex 宏定义
	ReadOnly                        bool     `json:"readOnly"`                        // 只读模式
	EmbedBlockBreadcrumb            bool     `json:"embedBlockBreadcrumb"`            // 嵌入块是否显示面包屑
	ListLogicalOutdent              bool     `json:"listLogicalOutdent"`              // 列表逻辑反向缩进
	FloatWindowMode                 int      `json:"floatWindowMode"`                 // 浮窗触发模式,0:光标悬停,1:按住 Ctrl 悬停
	DynamicLoadBlocks               int      `json:"dynamicLoadBlocks"`               // 块动态数,可配置区间 [48, 1024]
	Justify                         bool     `json:"justify"`                         // 是否两端对齐
	RTL                             bool     `json:"rtl"`                             // 是否从右到左显示
	Spellcheck                      bool     `json:"spellcheck"`                      // 是否启用拼写检查
	BacklinkExpandCount             int      `json:"backlinkExpandCount"`             // 反向链接默认展开数量
}

func NewEditor

func NewEditor() *Editor

type Export

type Export struct {
	ParagraphBeginningSpace bool   `json:"paragraphBeginningSpace"` // 是否使用中文排版段落开头空两格
	AddTitle                bool   `json:"addTitle"`                // 是否添加标题
	AddFooter               bool   `json:"addFooter"`               // 是否添加页脚
	BlockRefMode            int    `json:"blockRefMode"`            // 内容块引用导出模式,2:锚文本块链,3:仅锚文本,4:块引转脚注,(0:使用原始文本,1:使用 Blockquote。0 和 1 都已经废弃 https://github.com/siyuan-note/siyuan/issues/3155
	BlockEmbedMode          int    `json:"blockEmbedMode"`          // 内容块引用导出模式,0:使用原始文本,1:使用 Blockquote
	BlockRefTextLeft        string `json:"blockRefTextLeft"`        // 内容块引用导出锚文本左侧符号,默认留空
	BlockRefTextRight       string `json:"blockRefTextRight"`       // 内容块引用导出锚文本右侧符号,默认留空
	TagOpenMarker           string `json:"tagOpenMarker"`           // 标签开始标记符,默认是 #
	TagCloseMarker          string `json:"tagCloseMarker"`          // 标签结束标记符,默认是 #
	FileAnnotationRefMode   int    `json:"fileAnnotationRefMode"`   // 文件标注引用导出模式,0:文件名 - 页码 - 锚文本,1:仅锚文本
	PandocBin               string `json:"pandocBin"`               // Pandoc 可执行文件路径
}

func NewExport

func NewExport() *Export

type FileTree

type FileTree struct {
	AlwaysSelectOpenedFile  bool   `json:"alwaysSelectOpenedFile"`  // 是否自动选中当前打开的文件
	OpenFilesUseCurrentTab  bool   `json:"openFilesUseCurrentTab"`  // 在当前页签打开文件
	RefCreateSavePath       string `json:"refCreateSavePath"`       // 块引时新建文档存储文件夹路径
	CreateDocNameTemplate   string `json:"createDocNameTemplate"`   // 新建文档名模板
	MaxListCount            int    `json:"maxListCount"`            // 最大列出数量
	MaxOpenTabCount         int    `json:"maxOpenTabCount"`         // 最大打开页签数量
	AllowCreateDeeper       bool   `json:"allowCreateDeeper"`       // 允许创建超过 7 层深度的子文档
	RemoveDocWithoutConfirm bool   `json:"removeDocWithoutConfirm"` // 删除文档时是否不需要确认
	CloseTabsOnStart        bool   `json:"closeTabsOnStart"`        // 启动时关闭所有页签

	Sort int `json:"sort"` // 排序方式
}

func NewFileTree

func NewFileTree() *FileTree

type GlobalGraph

type GlobalGraph struct {
	MinRefs     int  `json:"minRefs"` // 引用次数
	DailyNote   bool `json:"dailyNote"`
	*TypeFilter `json:"type"`
	*D3         `json:"d3"`
}

func NewGlobalGraph

func NewGlobalGraph() *GlobalGraph

type Graph

type Graph struct {
	MaxBlocks int `json:"maxBlocks"` // 内容块最大显示数

	Local  *LocalGraph  `json:"local"`  // 局部图
	Global *GlobalGraph `json:"global"` // 全局图
}

func NewGraph

func NewGraph() *Graph

type Keymap

type Keymap map[string]interface{} // 快捷键

type Lang

type Lang struct {
	Label string `json:"label"` // 简体中文
	Name  string `json:"name"`  // zh_CN
}

type LocalGraph

type LocalGraph struct {
	DailyNote   bool `json:"dailyNote"`
	*TypeFilter `json:"type"`
	*D3         `json:"d3"`
}

func NewLocalGraph

func NewLocalGraph() *LocalGraph

type NetworkProxy

type NetworkProxy struct {
	Scheme string `json:"scheme"`
	Host   string `json:"host"`
	Port   string `json:"port"`
}

func (*NetworkProxy) String

func (np *NetworkProxy) String() string

type Repo

type Repo struct {
	Key []byte `json:"key"` // AES 密钥
}

func NewRepo

func NewRepo() *Repo

func (*Repo) GetSaveDir

func (*Repo) GetSaveDir() string

type S3

type S3 struct {
	Endpoint      string `json:"endpoint"`      // 服务端点
	AccessKey     string `json:"accessKey"`     // Access Key
	SecretKey     string `json:"secretKey"`     // Secret Key
	Bucket        string `json:"bucket"`        // 存储空间
	Region        string `json:"region"`        // 存储区域
	PathStyle     bool   `json:"pathStyle"`     // 是否使用路径风格
	SkipTlsVerify bool   `json:"skipTlsVerify"` // 是否跳过 TLS 验证
	Timeout       int    `json:"timeout"`       // 超时时间,单位:秒
}
type Search struct {
	Document   bool `json:"document"`
	Heading    bool `json:"heading"`
	List       bool `json:"list"`
	ListItem   bool `json:"listItem"`
	CodeBlock  bool `json:"codeBlock"`
	MathBlock  bool `json:"mathBlock"`
	Table      bool `json:"table"`
	Blockquote bool `json:"blockquote"`
	SuperBlock bool `json:"superBlock"`
	Paragraph  bool `json:"paragraph"`
	HTMLBlock  bool `json:"htmlBlock"`

	Limit         int  `json:"limit"`
	CaseSensitive bool `json:"caseSensitive"`

	Name   bool `json:"name"`
	Alias  bool `json:"alias"`
	Memo   bool `json:"memo"`
	Custom bool `json:"custom"`

	BacklinkMentionName          bool `json:"backlinkMentionName"`
	BacklinkMentionAlias         bool `json:"backlinkMentionAlias"`
	BacklinkMentionAnchor        bool `json:"backlinkMentionAnchor"`
	BacklinkMentionDoc           bool `json:"backlinkMentionDoc"`
	BacklinkMentionKeywordsLimit int  `json:"backlinkMentionKeywordsLimit"`

	VirtualRefName          bool `json:"virtualRefName"`
	VirtualRefAlias         bool `json:"virtualRefAlias"`
	VirtualRefAnchor        bool `json:"virtualRefAnchor"`
	VirtualRefDoc           bool `json:"virtualRefDoc"`
	VirtualRefKeywordsLimit int  `json:"virtualRefKeywordsLimit"`
}

func NewSearch

func NewSearch() *Search

func (*Search) NAMFilter

func (s *Search) NAMFilter(keyword string) string

func (*Search) TypeFilter

func (s *Search) TypeFilter() string

type Snippet

type Snippet struct {
	ID      string `json:"id"`
	Name    string `json:"name"`
	Memo    string `json:"memo"`
	Type    string `json:"type"` // js/css
	Enabled bool   `json:"enabled"`
	Content string `json:"content"`
}

type Stat

type Stat struct {
	TreeCount   int   `json:"treeCount"`
	CTreeCount  int   `json:"cTreeCount"`
	BlockCount  int   `json:"blockCount"`
	CBlockCount int   `json:"cBlockCount"`
	DataSize    int64 `json:"dataSize"`
	CDataSize   int64 `json:"cDataSize"`
	AssetsSize  int64 `json:"assetsSize"`
	CAssetsSize int64 `json:"cAssetsSize"`
}

func NewStat

func NewStat() *Stat

type Sync

type Sync struct {
	CloudName           string  `json:"cloudName"`           // 云端同步目录名称
	Enabled             bool    `json:"enabled"`             // 是否开启同步
	Mode                int     `json:"mode"`                // 同步模式,0:未设置(为兼容已有配置,initConf 函数中会转换为 1),1:自动,2:手动 https://github.com/siyuan-note/siyuan/issues/5089
	Synced              int64   `json:"synced"`              // 最近同步时间
	Stat                string  `json:"stat"`                // 最近同步统计信息
	GenerateConflictDoc bool    `json:"generateConflictDoc"` // 云端同步冲突时是否生成冲突文档
	Provider            int     `json:"provider"`            // 云端存储服务提供者
	S3                  *S3     `json:"s3"`                  // S3 对象存储服务配置
	WebDAV              *WebDAV `json:"webdav"`              // WebDAV 服务配置
}

func NewSync

func NewSync() *Sync

type System

type System struct {
	ID               string `json:"id"`
	KernelVersion    string `json:"kernelVersion"`
	OS               string `json:"os"`
	Container        string `json:"container"` // docker, android, ios, std
	IsMicrosoftStore bool   `json:"isMicrosoftStore"`
	IsInsider        bool   `json:"isInsider"`

	HomeDir      string `json:"homeDir"`
	WorkspaceDir string `json:"workspaceDir"`
	AppDir       string `json:"appDir"`
	ConfDir      string `json:"confDir"`
	DataDir      string `json:"dataDir"`

	NetworkServe bool          `json:"networkServe"` // 是否开启网络伺服
	NetworkProxy *NetworkProxy `json:"networkProxy"`

	UploadErrLog           bool `json:"uploadErrLog"`
	DisableGoogleAnalytics bool `json:"disableGoogleAnalytics"`
	DownloadInstallPkg     bool `json:"downloadInstallPkg"`
	AutoLaunch             bool `json:"autoLaunch"`
}

func NewSystem

func NewSystem() *System

type Tag

type Tag struct {
	Sort int `json:"sort"` // 排序方式
}

func NewTag

func NewTag() *Tag

type TypeFilter

type TypeFilter struct {
	Tag        bool `json:"tag"`
	Paragraph  bool `json:"paragraph"`
	Heading    bool `json:"heading"`
	Math       bool `json:"math"`
	Code       bool `json:"code"`
	Table      bool `json:"table"`
	List       bool `json:"list"`
	ListItem   bool `json:"listItem"`
	Blockquote bool `json:"blockquote"`
	Super      bool `json:"super"`
}

type UILayout

type UILayout map[string]interface{} // 界面布局

type User

type User struct {
	UserId                          string       `json:"userId"`
	UserName                        string       `json:"userName"`
	UserAvatarURL                   string       `json:"userAvatarURL"`
	UserHomeBImgURL                 string       `json:"userHomeBImgURL"`
	UserTitles                      []*UserTitle `json:"userTitles"`
	UserIntro                       string       `json:"userIntro"`
	UserNickname                    string       `json:"userNickname"`
	UserCreateTime                  string       `json:"userCreateTime"`
	UserPaymentSum                  string       `json:"userPaymentSum"`
	UserSiYuanProExpireTime         float64      `json:"userSiYuanProExpireTime"`
	UserToken                       string       `json:"userToken"`
	UserTokenExpireTime             string       `json:"userTokenExpireTime"`
	UserSiYuanRepoSize              float64      `json:"userSiYuanRepoSize"`
	UserSiYuanPointExchangeRepoSize float64      `json:"userSiYuanPointExchangeRepoSize"`
	UserSiYuanAssetSize             float64      `json:"userSiYuanAssetSize"`
	UserTrafficUpload               float64      `json:"userTrafficUpload"`
	UserTrafficDownload             float64      `json:"userTrafficDownload"`
	UserTrafficTime                 float64      `json:"userTrafficTime"`
	UserSiYuanSubscriptionPlan      float64      `json:"userSiYuanSubscriptionPlan"`   // -1:未订阅,0:标准订阅,1:教育订阅,2:试用
	UserSiYuanSubscriptionStatus    float64      `json:"userSiYuanSubscriptionStatus"` // -1:未订阅,0:订阅可用,1:订阅封禁,2:订阅过期
	UserSiYuanSubscriptionType      float64      `json:"userSiYuanSubscriptionType"`   // 0 年付;1 终生;2 月付
}

func (*User) GetCloudRepoAvailableSize

func (user *User) GetCloudRepoAvailableSize() int64

type UserTitle

type UserTitle struct {
	Name string `json:"name"`
	Desc string `json:"desc"`
	Icon string `json:"icon"`
}

type WebDAV

type WebDAV struct {
	Endpoint      string `json:"endpoint"`      // 服务端点
	Username      string `json:"username"`      // 用户名
	Password      string `json:"password"`      // 密码
	SkipTlsVerify bool   `json:"skipTlsVerify"` // 是否跳过 TLS 验证
	Timeout       int    `json:"timeout"`       // 超时时间,单位:秒
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL