SYMBOL INDEX (645 symbols across 52 files) FILE: src/automaticsManager.ts class AutomaticsManager (line 4) | class AutomaticsManager { method constructor (line 9) | constructor(private readonly plugin: ObsidianGit) {} method saveLastAuto (line 11) | private saveLastAuto(date: Date, mode: "backup" | "pull" | "push") { method loadLastAuto (line 21) | private loadLastAuto(): { backup: Date; pull: Date; push: Date } { method init (line 31) | async init() { method unload (line 54) | unload() { method reload (line 66) | reload(...type: ("commit" | "push" | "pull")[]) { method setUpAutoCommitAndSync (line 100) | private async setUpAutoCommitAndSync() { method startAutoCommitAndSync (line 123) | private startAutoCommitAndSync(minutes?: number) { method doAutoCommitAndSync (line 146) | private doAutoCommitAndSync(): void { method startAutoPull (line 189) | private startAutoPull(minutes?: number) { method doAutoPull (line 197) | private doAutoPull(): void { method startAutoPush (line 207) | private startAutoPush(minutes?: number) { method doAutoPush (line 215) | private doAutoPush(): void { method clearAutoCommitAndSync (line 225) | private clearAutoCommitAndSync(): boolean { method clearAutoPull (line 240) | private clearAutoPull(): boolean { method clearAutoPush (line 249) | private clearAutoPush(): boolean { method diff (line 263) | private diff(setting: number, lastAuto: Date) { FILE: src/commands.ts function addCommmands (line 12) | function addCommmands(plugin: ObsidianGit) { FILE: src/constants.ts constant DATE_FORMAT (line 3) | const DATE_FORMAT = "YYYY-MM-DD"; constant DATE_TIME_FORMAT_MINUTES (line 4) | const DATE_TIME_FORMAT_MINUTES = `${DATE_FORMAT} HH:mm`; constant DATE_TIME_FORMAT_SECONDS (line 5) | const DATE_TIME_FORMAT_SECONDS = `${DATE_FORMAT} HH:mm:ss`; constant GIT_LINE_AUTHORING_MOVEMENT_DETECTION_MINIMAL_LENGTH (line 7) | const GIT_LINE_AUTHORING_MOVEMENT_DETECTION_MINIMAL_LENGTH = 40; constant CONFLICT_OUTPUT_FILE (line 9) | const CONFLICT_OUTPUT_FILE = "conflict-files-obsidian-git.md"; constant DEFAULT_SETTINGS (line 11) | const DEFAULT_SETTINGS: ObsidianGitSettings = { constant SOURCE_CONTROL_VIEW_CONFIG (line 72) | const SOURCE_CONTROL_VIEW_CONFIG = { constant HISTORY_VIEW_CONFIG (line 78) | const HISTORY_VIEW_CONFIG = { constant SPLIT_DIFF_VIEW_CONFIG (line 84) | const SPLIT_DIFF_VIEW_CONFIG = { constant DIFF_VIEW_CONFIG (line 89) | const DIFF_VIEW_CONFIG = { constant DEFAULT_WIN_GIT_PATH (line 95) | const DEFAULT_WIN_GIT_PATH = "C:\\Program Files\\Git\\cmd\\git.exe"; constant ASK_PASS_INPUT_FILE (line 96) | const ASK_PASS_INPUT_FILE = ".git_credentials_input"; constant ASK_PASS_SCRIPT_FILE (line 97) | const ASK_PASS_SCRIPT_FILE = "obsidian_askpass.sh"; constant ASK_PASS_SCRIPT (line 99) | const ASK_PASS_SCRIPT = `#!/bin/sh constant BINARY_EXTENSIONS (line 127) | const BINARY_EXTENSIONS = [ FILE: src/editor/control.ts class FileSubscriber (line 24) | class FileSubscriber { method constructor (line 27) | constructor(private state: EditorState) { method notifyLineAuthoring (line 31) | public notifyLineAuthoring(id: LineAuthoringId, la: LineAuthoring) { method notifyGitCompare (line 45) | public notifyGitCompare(data: GitCompareResult) { method updateToNewState (line 73) | public updateToNewState(state: EditorState) { method removeIfStale (line 86) | public removeIfStale(): boolean { method changeToNewFilepath (line 102) | public changeToNewFilepath(filepath: string) { method subscribeMe (line 109) | private subscribeMe(filepath?: string) { method unsubscribeMe (line 120) | private unsubscribeMe(oldFilepath: string) { method filepath (line 127) | private get filepath(): string | undefined { method view (line 131) | private get view(): EditorView | undefined { type FileSubscribers (line 136) | type FileSubscribers = Set; FILE: src/editor/editorIntegration.ts class EditorIntegration (line 6) | class EditorIntegration { method constructor (line 7) | constructor(private plg: ObsidianGit) {} method onUnloadPlugin (line 14) | onUnloadPlugin() { method onLoadPlugin (line 19) | onLoadPlugin() { method onReady (line 25) | onReady() { method activateLineAuthoring (line 30) | activateLineAuthoring() { method deactiveLineAuthoring (line 33) | deactiveLineAuthoring() { method refreshSignsSettings (line 37) | refreshSignsSettings() { FILE: src/editor/eventsPerFilepath.ts constant SECONDS (line 3) | const SECONDS = 1000; constant REMOVE_STALES_FREQUENCY (line 4) | const REMOVE_STALES_FREQUENCY = 60 * SECONDS; class EventsPerFilePath (line 12) | class EventsPerFilePath { method constructor (line 16) | constructor() { method ifFilepathDefinedTransformSubscribers (line 23) | public ifFilepathDefinedTransformSubscribers( method forEachSubscriber (line 34) | public forEachSubscriber(handler: (las: FileSubscriber) => void): void { method ensureInitialized (line 38) | private ensureInitialized(filepath: string) { method startRemoveStalesSubscribersInterval (line 43) | private startRemoveStalesSubscribersInterval() { method clear (line 50) | public clear() { FILE: src/editor/lineAuthor/lineAuthorIntegration.ts class LineAuthoringFeature (line 21) | class LineAuthoringFeature { method constructor (line 32) | constructor(private plg: ObsidianGit) {} method onLoadPlugin (line 36) | public onLoadPlugin() { method conditionallyActivateBySettings (line 47) | public conditionallyActivateBySettings() { method activateFeature (line 53) | public activateFeature() { method deactivateFeature (line 76) | public deactivateFeature() { method isAvailableOnCurrentPlatform (line 87) | public isAvailableOnCurrentPlatform(): { method refreshLineAuthorViews (line 102) | public refreshLineAuthorViews() { method activateCodeMirrorExtensions (line 111) | private activateCodeMirrorExtensions() { method deactivateCodeMirrorExtensions (line 121) | private deactivateCodeMirrorExtensions() { method createEventHandlers (line 132) | private createEventHandlers() { method destroyEventHandlers (line 152) | private destroyEventHandlers() { method createFileOpenEvent (line 184) | private createFileOpenEvent(): EventRef { method createWorkspaceLeafChangeEvent (line 194) | private createWorkspaceLeafChangeEvent(): EventRef { method createFileRenameEvent (line 201) | private createFileRenameEvent(): EventRef { method createVaultFileModificationHandler (line 210) | private createVaultFileModificationHandler() { method createHeadChangeEvent (line 219) | private createHeadChangeEvent(): EventRef { method createCssRefreshHandler (line 225) | private createCssRefreshHandler(): EventRef { method createGutterContextMenuHandler (line 231) | private createGutterContextMenuHandler() { FILE: src/editor/lineAuthor/lineAuthorProvider.ts class LineAuthorProvider (line 22) | class LineAuthorProvider { method constructor (line 30) | constructor(private plugin: ObsidianGit) {} method trackChanged (line 32) | public async trackChanged(file: TFile) { method trackChangedHelper (line 40) | private async trackChangedHelper(file: TFile) { method destroy (line 53) | public destroy() { method computeLineAuthorInfo (line 58) | private async computeLineAuthorInfo(filepath: string) { method notifyComputationResultToSubscribers (line 90) | private notifyComputationResultToSubscribers( FILE: src/editor/lineAuthor/model.ts type LineAuthoring (line 17) | type LineAuthoring = Blame | "untracked"; type LineAuthoringId (line 44) | type LineAuthoringId = string; function lineAuthoringId (line 46) | function lineAuthoringId( type LineAuthoringWithChanges (line 59) | type LineAuthoringWithChanges = { function newComputationResultAsTransaction (line 78) | function newComputationResultAsTransaction( function laStateDigest (line 134) | function laStateDigest( type LineAuthorSettings (line 150) | type LineAuthorSettings = { type LineAuthorFollowMovement (line 168) | type LineAuthorFollowMovement = type LineAuthorDisplay (line 173) | type LineAuthorDisplay = type LineAuthorDateTimeFormatOptions (line 180) | type LineAuthorDateTimeFormatOptions = type LineAuthorTimezoneOption (line 187) | type LineAuthorTimezoneOption = function provideSettingsAccess (line 209) | function provideSettingsAccess( function maxAgeInDaysFromSettings (line 217) | function maxAgeInDaysFromSettings(settings: LineAuthorSettings) { function enrichUnsavedChanges (line 239) | function enrichUnsavedChanges( FILE: src/editor/lineAuthor/view/cache.ts function clearViewCache (line 21) | function clearViewCache() { type LongestGutterCache (line 38) | type LongestGutterCache = { function conditionallyUpdateLongestRenderedGutter (line 53) | function conditionallyUpdateLongestRenderedGutter( constant ADAPTIVE_INITIAL_COLORING_AGE_CACHE_SIZE (line 85) | const ADAPTIVE_INITIAL_COLORING_AGE_CACHE_SIZE = 15; function recordRenderedAgeInDays (line 88) | function recordRenderedAgeInDays(age: number) { function computeAdaptiveInitialColoringAgeInDays (line 93) | function computeAdaptiveInitialColoringAgeInDays(): number | undefined { FILE: src/editor/lineAuthor/view/contextMenu.ts type ContextMenuConfigurableSettingsKeys (line 9) | type ContextMenuConfigurableSettingsKeys = type CtxMenuCommitInfo (line 14) | type CtxMenuCommitInfo = Pick & { constant COMMIT_ATTR (line 17) | const COMMIT_ATTR = "data-commit"; function handleContextMenu (line 19) | function handleContextMenu( function addCopyHashMenuItem (line 43) | function addCopyHashMenuItem(commit: CtxMenuCommitInfo, menu: Menu) { function addConfigurableLineAuthorSettings (line 53) | function addConfigurableLineAuthorSettings( function enrichCommitInfoForContextMenu (line 100) | function enrichCommitInfoForContextMenu( function getCommitInfo (line 115) | function getCommitInfo(elt: HTMLElement): CtxMenuCommitInfo | undefined { FILE: src/editor/lineAuthor/view/gutter/coloring.ts function previewColor (line 10) | function previewColor( function coloringBasedOnCommitAge (line 34) | function coloringBasedOnCommitAge( function lin (line 71) | function lin(z0: number, z1: number, x: number): number { function isDarkMode (line 75) | function isDarkMode() { function setTextColorCssBasedOnSetting (line 84) | function setTextColorCssBasedOnSetting(settings: LineAuthorSettings) { FILE: src/editor/lineAuthor/view/gutter/commitChoice.ts function chooseNewestCommit (line 8) | function chooseNewestCommit( function isNewerThan (line 31) | function isNewerThan(left: BlameCommit, right: BlameCommit): boolean { FILE: src/editor/lineAuthor/view/gutter/gutter.ts constant VALUE_NOT_FOUND_FALLBACK (line 31) | const VALUE_NOT_FOUND_FALLBACK = "-"; constant NEW_CHANGE_CHARACTER (line 33) | const NEW_CHANGE_CHARACTER = "+"; constant NEW_CHANGE_NUMBER_OF_CHARACTERS (line 34) | const NEW_CHANGE_NUMBER_OF_CHARACTERS = 3; constant DIFFERING_AUTHOR_COMMITTER_MARKER (line 36) | const DIFFERING_AUTHOR_COMMITTER_MARKER = "*"; constant NON_WHITESPACE_REGEXP (line 38) | const NON_WHITESPACE_REGEXP = /\S/g; constant UNINTRUSIVE_CHARACTER_FOR_WAITING_RENDERING (line 39) | const UNINTRUSIVE_CHARACTER_FOR_WAITING_RENDERING = "%"; class TextGutter (line 44) | class TextGutter extends GutterMarker { method constructor (line 45) | constructor(public text: string) { method eq (line 49) | eq(other: TextGutter): boolean { method toDOM (line 53) | toDOM() { method destroy (line 57) | destroy(dom: HTMLElement): void { class LineAuthoringGutter (line 68) | class LineAuthoringGutter extends GutterMarker { method constructor (line 78) | constructor( method eq (line 90) | public eq(other: GutterMarker): boolean { method toDOM (line 113) | public toDOM() { method destroy (line 119) | public destroy(dom: HTMLElement): void { method computeDom (line 133) | private computeDom() { method createHtmlNode (line 166) | private createHtmlNode( method renderNonZeroCommit (line 205) | private renderNonZeroCommit(commit: BlameCommit) { method renderHash (line 237) | private renderHash(nonZeroCommit: BlameCommit) { method renderAuthorName (line 241) | private renderAuthorName( method renderAuthoringDate (line 274) | private renderAuthoringDate( method adaptTextForFakeCommit (line 342) | private adaptTextForFakeCommit( function lineAuthoringGutterMarker (line 399) | function lineAuthoringGutterMarker( FILE: src/editor/lineAuthor/view/gutter/gutterElementSearch.ts function prepareGutterSearchForContextMenuHandling (line 14) | function prepareGutterSearchForContextMenuHandling() { function findGutterElementUnderMouse (line 24) | function findGutterElementUnderMouse(): HTMLElement | undefined { function contains (line 30) | function contains(elt: HTMLElement, pt: { x: number; y: number }): boole... FILE: src/editor/lineAuthor/view/gutter/initial.ts function initialSpacingGutter (line 24) | function initialSpacingGutter() { function initialLineAuthoringGutter (line 36) | function initialLineAuthoringGutter(settings: LineAuthorSettings) { function adaptiveInitialColoredWaitingLineAuthoring (line 59) | function adaptiveInitialColoredWaitingLineAuthoring( FILE: src/editor/lineAuthor/view/gutter/untrackedFile.ts function newUntrackedFileGutter (line 9) | function newUntrackedFileGutter( FILE: src/editor/lineAuthor/view/view.ts constant UNDISPLAYED (line 35) | const UNDISPLAYED = new TextGutter(""); method markers (line 44) | markers(view) { method lineMarkerChange (line 49) | lineMarkerChange(update) { function lineAuthoringGutterMarkersRangeSet (line 75) | function lineAuthoringGutterMarkersRangeSet( function computeLineAuthoringGutterMarkersRangeSet (line 115) | function computeLineAuthoringGutterMarkersRangeSet( function computeLineMappingForUnsavedChanges (line 223) | function computeLineMappingForUnsavedChanges( function temporaryWorkaroundGutterSpacingForRenderedLineAuthoring (line 268) | function temporaryWorkaroundGutterSpacingForRenderedLineAuthoring( FILE: src/editor/signs/changesStatusBar.ts class ChangesStatusBar (line 5) | class ChangesStatusBar { method constructor (line 6) | constructor( method display (line 28) | display(hunks: Hunk[], file: TFile | null): void { method remove (line 64) | remove() { FILE: src/editor/signs/diff.ts type RawHunk (line 32) | type RawHunk = { function rawHunksToHunks (line 127) | function rawHunksToHunks( function rawHunkFromChunk (line 159) | function rawHunkFromChunk( function diffViaCMMerge (line 197) | function diffViaCMMerge( function computeHunks (line 222) | function computeHunks( FILE: src/editor/signs/gutter.ts class GitGutterMarker (line 12) | class GitGutterMarker extends GutterMarker { method constructor (line 13) | constructor( method toDOM (line 20) | toDOM(_: EditorView) { function getMarkers (line 70) | function getMarkers( FILE: src/editor/signs/hunkActions.ts class HunkActions (line 8) | class HunkActions { method constructor (line 9) | constructor(private readonly plugin: ObsidianGit) {} method editor (line 11) | get editor(): { obEditor: Editor; editor: EditorView } | undefined { method gitManager (line 22) | private get gitManager(): SimpleGit { method resetHunk (line 26) | resetHunk(pos?: number): void { method stageHunk (line 61) | async stageHunk(pos?: number): Promise { method goToHunk (line 89) | goToHunk(direction: "first" | "last" | "next" | "prev"): void { FILE: src/editor/signs/hunkState.ts function lineFromPos (line 24) | function lineFromPos(doc: Text, pos: number): number { method hasHunksData (line 34) | static hasHunksData(state: EditorState): boolean { method getHunks (line 39) | static getHunks(state: EditorState, staged: boolean): Hunk[] { method getHunkAtPos (line 45) | static getHunkAtPos( method getCursorHunk (line 58) | static getCursorHunk( method getHunk (line 68) | static getHunk( function applyHunkComputation (line 206) | function applyHunkComputation( function computeHunksTimed (line 277) | function computeHunksTimed( function scheduleHunkComputation (line 296) | function scheduleHunkComputation( type ComputedHunksData (line 338) | type ComputedHunksData = { type HunksData (line 344) | type HunksData = { type GitCompareResult (line 352) | type GitCompareResult = { function newGitCompareResultAsTransaction (line 357) | function newGitCompareResultAsTransaction( FILE: src/editor/signs/hunks.ts type HunkType (line 10) | type HunkType = "add" | "change" | "delete"; type HunkNode (line 12) | interface HunkNode { type Hunk (line 19) | interface Hunk { type SignType (line 27) | type SignType = HunkType | "topdelete" | "changedelete" | "untracked"; type Sign (line 29) | interface Sign { type StatusObj (line 36) | interface StatusObj { method createHunk (line 43) | static createHunk( method createPartialHunk (line 60) | static createPartialHunk( method patchLines (line 116) | patchLines(hunk: Hunk, stripCr: boolean = false): string[] { method parseDiffLine (line 132) | static parseDiffLine(line: string): Hunk { method changeEnd (line 152) | private static changeEnd(hunk: Hunk): number { method calcSigns (line 166) | static calcSigns( method createPatch (line 252) | static createPatch( method getSummary (line 316) | getSummary(hunks: Hunk[]): StatusObj { method findHunk (line 337) | static findHunk( method findNearestHunk (line 357) | static findNearestHunk( method compareHeads (line 402) | compareHeads(a?: Hunk[], b?: Hunk[]): boolean { method compare (line 416) | private static compare(a: Hunk, b: Hunk): boolean { method filterCommon (line 434) | private static filterCommon(a?: Hunk[], b?: Hunk[]): Hunk[] | undefined { method computeStagedHunks (line 517) | static computeStagedHunks( FILE: src/editor/signs/signsIntegration.ts class SignsFeature (line 19) | class SignsFeature { method constructor (line 29) | constructor(private plg: ObsidianGit) {} method onLoadPlugin (line 33) | public onLoadPlugin() { method conditionallyActivateBySettings (line 37) | public conditionallyActivateBySettings() { method activateFeature (line 47) | public activateFeature() { method deactivateFeature (line 74) | public deactivateFeature() { method isAvailableOnCurrentPlatform (line 85) | public isAvailableOnCurrentPlatform(): { method refresh (line 100) | public refresh() { method activateCodeMirrorExtensions (line 108) | private activateCodeMirrorExtensions() { method deactivateCodeMirrorExtensions (line 121) | private deactivateCodeMirrorExtensions() { method createEventHandlers (line 132) | private createEventHandlers() { method destroyEventHandlers (line 145) | private destroyEventHandlers() { method createWorkspaceLeafChangeEvent (line 170) | private createWorkspaceLeafChangeEvent(): EventRef { method createFileRenameEvent (line 177) | private createFileRenameEvent(): EventRef { method createPluginRefreshedEvent (line 194) | private createPluginRefreshedEvent(): EventRef { method createIntervalRefreshEvent (line 200) | private createIntervalRefreshEvent(): number { FILE: src/editor/signs/signsProvider.ts class SignsProvider (line 18) | class SignsProvider { method constructor (line 19) | constructor(private plugin: ObsidianGit) {} method trackChanged (line 21) | public async trackChanged(file: TFile) { method trackChangedHelper (line 29) | private async trackChangedHelper(file: TFile) { method destroy (line 42) | public destroy() {} method computeSigns (line 44) | private async computeSigns(filepath: string) { method notifySignComputationResultToSubscribers (line 67) | private notifySignComputationResultToSubscribers( FILE: src/editor/signs/tooltip.ts function togglePreviewHunk (line 20) | function togglePreviewHunk(editor: EditorView, pos?: number) { method update (line 41) | update(value, transaction) { method update (line 63) | update(value, transaction) { function getTooltips (line 92) | function getTooltips(state: EditorState): Tooltip[] { function createTooltip (line 118) | function createTooltip( FILE: src/externalLibTypes.d.ts class Color (line 4) | class Color { FILE: src/gitManager/gitManager.ts method constructor (line 17) | constructor(plugin: ObsidianGit) { method getRelativeVaultPath (line 137) | getRelativeVaultPath(path: string): string { method getRelativeRepoPath (line 148) | getRelativeRepoPath( method unload (line 163) | unload(): void {} method _getTreeStructure (line 165) | private _getTreeStructure( method simplify (line 214) | private simplify(tree: TreeItem[]): TreeItem[] { method getTreeStructure (line 261) | getTreeStructure( method formatCommitMessage (line 270) | async formatCommitMessage(template: string): Promise { FILE: src/gitManager/isomorphicGit.ts class IsomorphicGit (line 30) | class IsomorphicGit extends GitManager { method constructor (line 57) | constructor(plugin: ObsidianGit) { method getRepo (line 61) | getRepo(): { method wrapFS (line 140) | async wrapFS(call: Promise): Promise { method status (line 151) | async status(opts?: { path?: string }): Promise { method commitAll (line 197) | async commitAll({ method commit (line 217) | async commit({ method stage (line 250) | async stage(filepath: string, relativeToVault: boolean): Promise { method stageAll (line 275) | async stageAll({ method unstage (line 320) | async unstage(filepath: string, relativeToVault: boolean): Promise { method discardAll (line 377) | async discardAll({ method getUntrackedPaths (line 418) | async getUntrackedPaths(opts: { method getProgressText (line 446) | getProgressText(action: string, event: GitProgressEvent): string { method resolveRef (line 460) | resolveRef(ref: string): Promise { method pull (line 464) | async pull(): Promise { method push (line 560) | async push(): Promise { method getUnpushedCommits (line 598) | async getUnpushedCommits(): Promise { method canPush (line 618) | async canPush(): Promise { method checkRequirements (line 629) | async checkRequirements(): Promise<"valid" | "missing-repo"> { method branchInfo (line 637) | async branchInfo(): Promise { method getCurrentRemote (line 666) | async getCurrentRemote(): Promise { method checkout (line 674) | async checkout(branch: string, remote?: string): Promise { method createBranch (line 690) | async createBranch(branch: string): Promise { method deleteBranch (line 701) | async deleteBranch(branch: string): Promise { method branchIsMerged (line 712) | branchIsMerged(_: string): Promise { method init (line 716) | async init(): Promise { method clone (line 725) | async clone(url: string, dir: string, depth?: number): Promise { method setConfig (line 750) | async setConfig( method getConfig (line 768) | async getConfig(path: string): Promise { method fetch (line 782) | async fetch(remote?: string): Promise { method setRemote (line 806) | async setRemote(name: string, url: string): Promise { method getRemoteBranches (line 822) | async getRemoteBranches(remote: string): Promise { method getRemotes (line 837) | async getRemotes(): Promise { method removeRemote (line 843) | async removeRemote(remoteName: string): Promise { method getRemoteUrl (line 849) | async getRemoteUrl(remote: string): Promise { method log (line 855) | async log( method updateBasePath (line 902) | updateBasePath(basePath: string): Promise { method updateUpstreamBranch (line 907) | async updateUpstreamBranch(remoteBranch: string): Promise { method updateGitPath (line 925) | updateGitPath(_: string): Promise { method getFileChangesCount (line 930) | async getFileChangesCount( method walkDifference (line 942) | async walkDifference({ method getStagedFiles (line 1001) | async getStagedFiles( method getUnstagedFiles (line 1016) | async getUnstagedFiles(base = "."): Promise { method getDiffString (line 1129) | async getDiffString( method getLastCommitTime (line 1227) | async getLastCommitTime(): Promise { method getFileStatusResult (line 1235) | private getFileStatusResult( method checkAuthorInfo (line 1252) | private async checkAuthorInfo(): Promise { method showNotice (line 1262) | private showNotice(message: string, infinity = true): Notice | undefin... function fromValue (line 1278) | function fromValue(value: any) { function asyncIteratorToArrayBuffer (line 1303) | async function asyncIteratorToArrayBuffer( FILE: src/gitManager/myAdapter.ts class MyAdapter (line 10) | class MyAdapter { method constructor (line 19) | constructor( method readFile (line 38) | async readFile(path: string, opts: any) { method writeFile (line 68) | async writeFile(path: string, data: string | ArrayBuffer) { method readdir (line 93) | async readdir(path: string) { method mkdir (line 107) | async mkdir(path: string) { method rmdir (line 110) | async rmdir(path: string, opts: any) { method stat (line 114) | async stat(path: string) { method unlink (line 180) | async unlink(path: string) { method lstat (line 183) | async lstat(path: string) { method readlink (line 186) | async readlink(path: string) { method symlink (line 189) | async symlink(path: string) { method saveAndClear (line 193) | async saveAndClear(): Promise { method clearIndex (line 209) | clearIndex() { method gitDir (line 215) | private get gitDir(): string { method maybeLog (line 219) | private maybeLog(_: string) { FILE: src/gitManager/simpleGit.ts class SimpleGit (line 32) | class SimpleGit extends GitManager { method constructor (line 37) | constructor(plugin: ObsidianGit) { method setGitInstance (line 41) | async setGitInstance(ignoreError = false): Promise { method getRelativeVaultPath (line 150) | getRelativeVaultPath(filePath: string): string { method getRelativeRepoPath (line 166) | getRelativeRepoPath( method absPluginConfigPath (line 184) | private get absPluginConfigPath(): string { method relPluginConfigPath (line 195) | private get relPluginConfigPath(): string { method askpass (line 198) | async askpass(): Promise { method addAskPassScriptToExclude (line 280) | async addAskPassScriptToExclude(): Promise { method unload (line 325) | unload(): void { method status (line 329) | async status(opts?: { path?: string }): Promise { method submoduleAwareHeadRevisonInContainingDirectory (line 359) | async submoduleAwareHeadRevisonInContainingDirectory( method getSubmodulePaths (line 374) | async getSubmodulePaths(): Promise { method formatPath (line 421) | formatPath(path: { from?: string; path: string }): { method blame (line 446) | async blame( method isTracked (line 483) | async isTracked(path: string): Promise { method commitAll (line 492) | async commitAll({ message }: { message: string }): Promise { method commit (line 517) | async commit({ method stage (line 538) | async stage(path: string, relativeToVault: boolean): Promise { method stageAll (line 547) | async stageAll({ dir }: { dir?: string }): Promise { method unstageAll (line 553) | async unstageAll({ dir }: { dir?: string }): Promise { method unstage (line 559) | async unstage(path: string, relativeToVault: boolean): Promise { method discard (line 568) | async discard(filepath: string): Promise { method applyPatch (line 576) | async applyPatch(patch: string): Promise { method getUntrackedPaths (line 587) | async getUntrackedPaths(opts: { path?: string }): Promise { method hashObject (line 603) | async hashObject(filepath: string): Promise { method discardAll (line 619) | async discardAll({ dir }: { dir?: string }): Promise { method pull (line 623) | async pull(): Promise { method push (line 721) | async push(): Promise { method getUnpushedCommits (line 761) | async getUnpushedCommits(): Promise { method canPush (line 785) | async canPush(): Promise { method checkRequirements (line 803) | async checkRequirements(): Promise< method branchInfo (line 815) | async branchInfo(): Promise { method getRemoteUrl (line 826) | async getRemoteUrl(remote: string): Promise { method log (line 840) | async log( method show (line 893) | async show( method checkout (line 903) | async checkout(branch: string, remote?: string): Promise { method createBranch (line 923) | async createBranch(branch: string): Promise { method deleteBranch (line 927) | async deleteBranch(branch: string, force: boolean): Promise { method branchIsMerged (line 931) | async branchIsMerged(branch: string): Promise { method init (line 936) | async init(): Promise { method clone (line 940) | async clone(url: string, dir: string, depth?: number): Promise { method setConfig (line 954) | async setConfig(path: string, value: string | undefined): Promise { method getConfig (line 962) | async getConfig( method fetch (line 973) | async fetch(remote?: string): Promise { method setRemote (line 977) | async setRemote(name: string, url: string): Promise { method getRemoteBranches (line 985) | async getRemoteBranches(remote: string): Promise { method getRemotes (line 995) | async getRemotes() { method removeRemote (line 1004) | async removeRemote(remoteName: string) { method updateUpstreamBranch (line 1011) | async updateUpstreamBranch(remoteBranch: string) { method updateGitPath (line 1033) | updateGitPath(_: string): Promise { method updateBasePath (line 1037) | updateBasePath(_: string): Promise { method getDiffString (line 1041) | async getDiffString( method diff (line 1052) | async diff( method rawCommand (line 1060) | async rawCommand(command: string): Promise { method getSubmoduleOfFile (line 1066) | async getSubmoduleOfFile( method getLastCommitTime (line 1117) | async getLastCommitTime(): Promise { method isGitInstalled (line 1134) | private async isGitInstalled(): Promise { method convertErrors (line 1163) | private convertErrors(error: unknown): never { method isFileTrackedByLFS (line 1186) | async isFileTrackedByLFS(filePath: string): Promise { function parseBlame (line 1213) | function parseBlame(blameOutputUnnormalized: string): Blame { function parseLineInfoInto (line 1255) | function parseLineInfoInto(lineInfo: string[], line: number, result: Bla... function parseHeaderInto (line 1272) | function parseHeaderInto(header: string[], out: Blame, line: number) { function finalizeBlameCommitInfo (line 1326) | function finalizeBlameCommitInfo(commit: BlameCommit) { function isUndefinedOrEmptyObject (line 1344) | function isUndefinedOrEmptyObject(obj: object | undefined | null): boole... function startsWithNonWhitespace (line 1348) | function startsWithNonWhitespace(str: string): boolean { function removeEmailBrackets (line 1352) | function removeEmailBrackets(gitEmail: string) { FILE: src/main.ts class ObsidianGit (line 66) | class ObsidianGit extends Plugin { method setPluginState (line 99) | setPluginState(state: Partial): void { method updateCachedStatus (line 104) | async updateCachedStatus(): Promise { method refresh (line 122) | async refresh() { method refreshUpdatedHead (line 147) | refreshUpdatedHead() {} method onload (line 149) | async onload() { method onExternalSettingsChange (line 177) | onExternalSettingsChange() { method reloadSettings (line 184) | async reloadSettings(): Promise { method registerStuff (line 222) | registerStuff(): void { method setRefreshDebouncer (line 325) | setRefreshDebouncer(): void { method addFileToGitignore (line 338) | async addFileToGitignore( method handleFileMenu (line 358) | handleFileMenu( method migrateSettings (line 473) | async migrateSettings(): Promise { method unloadPlugin (line 497) | unloadPlugin() { method onunload (line 517) | onunload() { method loadSettings (line 523) | async loadSettings() { method saveSettings (line 533) | async saveSettings() { method useSimpleGit (line 538) | get useSimpleGit(): boolean { method init (line 542) | async init({ fromReload = false }): Promise { method createNewRepo (line 637) | async createNewRepo() { method cloneNewRepo (line 647) | async cloneNewRepo() { method isAllInitialized (line 753) | async isAllInitialized(): Promise { method pullChangesFromRemote (line 761) | async pullChangesFromRemote(): Promise { method commitAndSync (line 788) | async commitAndSync({ method commit (line 840) | async commit({ method push (line 1055) | async push(): Promise { method pull (line 1119) | async pull(): Promise { method fetch (line 1144) | async fetch(): Promise { method mayDeleteConflictFile (line 1159) | async mayDeleteConflictFile(): Promise { method stageFile (line 1174) | async stageFile(file: TFile): Promise { method unstageFile (line 1185) | async unstageFile(file: TFile): Promise { method switchBranch (line 1196) | async switchBranch(): Promise { method switchRemoteBranch (line 1214) | async switchRemoteBranch(): Promise { method createBranch (line 1229) | async createBranch(): Promise { method deleteBranch (line 1243) | async deleteBranch(): Promise { method remotesAreSet (line 1283) | async remotesAreSet(): Promise { method setUpstreamBranch (line 1301) | async setUpstreamBranch(): Promise { method discardAll (line 1316) | async discardAll(path?: string): Promise { method handleConflict (line 1384) | async handleConflict(conflicted?: string[]): Promise { method editRemotes (line 1422) | async editRemotes(): Promise { method selectRemoteBranch (line 1453) | async selectRemoteBranch(): Promise { method removeRemote (line 1491) | async removeRemote() { method onActiveLeafChange (line 1507) | onActiveLeafChange(leaf: WorkspaceLeaf | null): void { method handleNoNetworkError (line 1558) | handleNoNetworkError(_: NoNetworkError): void { method displayMessage (line 1574) | displayMessage(message: string, timeout: number = 4 * 1000): void { method displayError (line 1589) | displayError(data: unknown, timeout: number = 10 * 1000): void { method log (line 1609) | log(...data: unknown[]) { FILE: src/openInGitHub.ts function openLineInGitHub (line 6) | async function openLineInGitHub( function openHistoryInGitHub (line 36) | async function openHistoryInGitHub(file: TFile, manager: GitManager) { function getData (line 55) | async function getData( FILE: src/promiseQueue.ts class PromiseQueue (line 3) | class PromiseQueue { method constructor (line 9) | constructor(private readonly plugin: ObsidianGit) {} method addTask (line 17) | addTask( method handleTask (line 27) | private handleTask(): void { method clear (line 46) | clear(): void { FILE: src/setting/localStorageSettings.ts class LocalStorageSettings (line 3) | class LocalStorageSettings { method constructor (line 6) | constructor(private readonly plugin: ObsidianGit) { method migrate (line 11) | migrate(): void { method getPassword (line 36) | getPassword(): string | null { method setPassword (line 40) | setPassword(value: string): void { method getUsername (line 44) | getUsername(): string | null { method setUsername (line 48) | setUsername(value: string): void { method getHostname (line 52) | getHostname(): string | null { method setHostname (line 56) | setHostname(value: string): void { method getConflict (line 60) | getConflict(): boolean { method setConflict (line 64) | setConflict(value: boolean): void { method getLastAutoPull (line 68) | getLastAutoPull(): string | null { method setLastAutoPull (line 72) | setLastAutoPull(value: string): void { method getLastAutoBackup (line 76) | getLastAutoBackup(): string | null { method setLastAutoBackup (line 80) | setLastAutoBackup(value: string): void { method getLastAutoPush (line 84) | getLastAutoPush(): string | null { method setLastAutoPush (line 88) | setLastAutoPush(value: string): void { method getGitPath (line 92) | getGitPath(): string | null { method setGitPath (line 96) | setGitPath(value: string): void { method getPATHPaths (line 100) | getPATHPaths(): string[] { method setPATHPaths (line 107) | setPATHPaths(value: string[]): void { method getEnvVars (line 114) | getEnvVars(): string[] { method setEnvVars (line 120) | setEnvVars(value: string[]): void { method getPluginDisabled (line 127) | getPluginDisabled(): boolean { method setPluginDisabled (line 133) | setPluginDisabled(value: boolean): void { method getPausedAutomatics (line 144) | getPausedAutomatics(): boolean { method setPausedAutomatics (line 151) | setPausedAutomatics(value: boolean): void { FILE: src/setting/settings.ts constant FORMAT_STRING_REFERENCE_URL (line 34) | const FORMAT_STRING_REFERENCE_URL = constant LINE_AUTHOR_FEATURE_WIKI_LINK (line 36) | const LINE_AUTHOR_FEATURE_WIKI_LINK = class ObsidianGitSettingsTab (line 39) | class ObsidianGitSettingsTab extends PluginSettingTab { method constructor (line 41) | constructor( method settings (line 50) | private get settings() { method display (line 54) | display(): void { method mayDisableSetting (line 1017) | mayDisableSetting(setting: Setting, disable: boolean) { method configureLineAuthorShowStatus (line 1024) | public configureLineAuthorShowStatus(show: boolean) { method lineAuthorSettingHandler (line 1036) | public async lineAuthorSettingHandler< method beforeSaveSettings (line 1049) | public beforeSaveSettings() { method addLineAuthorInfoSettings (line 1060) | private addLineAuthorInfoSettings() { method createColorSetting (line 1302) | private createColorSetting(which: "oldest" | "newest") { method refreshColorSettingsName (line 1332) | private refreshColorSettingsName(which: "oldest" | "newest") { method refreshColorSettingsDesc (line 1343) | private refreshColorSettingsDesc(which: "oldest" | "newest", rgb?: RGB) { method colorSettingPreviewDescHtml (line 1354) | private colorSettingPreviewDescHtml( method previewCustomDateTimeDescriptionHtml (line 1375) | private previewCustomDateTimeDescriptionHtml( method previewOldestAgeDescriptionHtml (line 1382) | private previewOldestAgeDescriptionHtml(coloringMaxAge: string) { method setNonDefaultValue (line 1397) | private setNonDefaultValue({ method refreshDisplayWithDelay (line 1426) | private refreshDisplayWithDelay(timeout = 80): void { function pickColor (line 1431) | function pickColor( function parseColoringMaxAgeDuration (line 1438) | function parseColoringMaxAgeDuration( FILE: src/statusBar.ts type StatusBarMessage (line 5) | interface StatusBarMessage { class StatusBar (line 10) | class StatusBar { method constructor (line 22) | constructor( method displayMessage (line 35) | public displayMessage(message: string, timeout: number) { method display (line 43) | public display() { method displayState (line 62) | private displayState() { method displayFromNow (line 145) | private displayFromNow(): void { method refreshCommitTimestamp (line 179) | private async refreshCommitTimestamp() { method remove (line 186) | public remove() { FILE: src/tools.ts class Tools (line 13) | class Tools { method constructor (line 14) | constructor(private readonly plugin: ObsidianGit) {} method hasTooBigFiles (line 16) | async hasTooBigFiles( method writeAndOpenFile (line 78) | async writeAndOpenFile(text?: string) { method openDiff (line 103) | openDiff({ method runRawCommand (line 143) | async runRawCommand() { FILE: src/types.ts type ObsidianGitSettings (line 3) | interface ObsidianGitSettings { function mergeSettingsByPriority (line 79) | function mergeSettingsByPriority( type SyncMethod (line 87) | type SyncMethod = "rebase" | "merge" | "reset"; type MergeStrategy (line 89) | type MergeStrategy = "none" | "ours" | "theirs"; type ShowAuthorInHistoryView (line 91) | type ShowAuthorInHistoryView = "full" | "initials" | "hide"; type Author (line 93) | interface Author { type Status (line 98) | interface Status { type GitTimestamp (line 109) | interface GitTimestamp { type UserEmail (line 121) | interface UserEmail { type BlameCommit (line 126) | interface BlameCommit { type Blame (line 139) | interface Blame { type FileStatusResult (line 211) | interface FileStatusResult { type PluginState (line 225) | interface PluginState { type CurrentGitAction (line 230) | enum CurrentGitAction { type LogEntry (line 239) | interface LogEntry { type DiffEntry (line 252) | interface DiffEntry { type DiffFile (line 257) | interface DiffFile { type WalkDifference (line 267) | interface WalkDifference { type UnstagedFile (line 272) | type UnstagedFile = WalkDifference; type BranchInfo (line 274) | interface BranchInfo { type TreeItem (line 280) | interface TreeItem { type RootTreeItem (line 288) | type RootTreeItem = TreeItem & { children: TreeItem[] }; type StatusRootTreeItem (line 290) | type StatusRootTreeItem = RootTreeItem; type HistoryRootTreeItem (line 292) | type HistoryRootTreeItem = RootTreeItem; type DiffViewState (line 294) | type DiffViewState = { type FileType (line 320) | enum FileType { class NoNetworkError (line 326) | class NoNetworkError extends Error { method constructor (line 327) | constructor(public readonly originalError: string) { type App (line 333) | interface App { type View (line 340) | interface View { type ViewRegistry (line 344) | interface ViewRegistry { type Workspace (line 352) | interface Workspace { FILE: src/ui/diff/diffView.ts class DiffView (line 9) | class DiffView extends ItemView { method constructor (line 16) | constructor( method getViewType (line 32) | getViewType(): string { method getDisplayText (line 36) | getDisplayText(): string { method getIcon (line 46) | getIcon(): string { method setState (line 50) | async setState(state: DiffViewState, _: ViewStateResult): Promise { method getState (line 61) | getState(): Record { method onClose (line 65) | onClose(): Promise { method onOpen (line 71) | async onOpen(): Promise { method refresh (line 76) | async refresh(): Promise { FILE: src/ui/diff/splitDiffView.ts class SplitDiffView (line 24) | class SplitDiffView extends ItemView { method constructor (line 37) | constructor( method getViewType (line 125) | getViewType(): string { method getDisplayText (line 129) | getDisplayText(): string { method getIcon (line 147) | getIcon(): string { method setState (line 151) | async setState(state: DiffViewState, _: ViewStateResult): Promise { method getState (line 163) | getState(): Record { method onClose (line 167) | onClose(): Promise { method onOpen (line 172) | async onOpen(): Promise { method gitShow (line 177) | async gitShow(commitHash: string, file: string): Promise { method bShouldBeEditable (line 204) | async bShouldBeEditable(): Promise { method updateModifiableEditor (line 214) | async updateModifiableEditor() { method updateRefEditors (line 241) | async updateRefEditors() { method renderButtons (line 278) | renderButtons(): HTMLElement { method createMergeView (line 364) | async createMergeView() { FILE: src/ui/history/historyView.ts class HistoryView (line 8) | class HistoryView extends ItemView implements HoverParent { method constructor (line 13) | constructor(leaf: WorkspaceLeaf, plugin: ObsidianGit) { method getViewType (line 19) | getViewType(): string { method getDisplayText (line 23) | getDisplayText(): string { method getIcon (line 27) | getIcon(): string { method onClose (line 31) | onClose(): Promise { method reload (line 39) | reload(): void { method onOpen (line 53) | onOpen(): Promise { FILE: src/ui/modals/branchModal.ts class BranchModal (line 4) | class BranchModal extends FuzzySuggestModal { method constructor (line 9) | constructor( method getItems (line 17) | getItems(): string[] { method getItemText (line 20) | getItemText(item: string): string { method onChooseItem (line 23) | onChooseItem(item: string, _: MouseEvent | KeyboardEvent): void { method openAndGetReslt (line 27) | openAndGetReslt(): Promise { method onClose (line 34) | onClose() { FILE: src/ui/modals/changedFilesModal.ts class ChangedFilesModal (line 5) | class ChangedFilesModal extends FuzzySuggestModal { method constructor (line 9) | constructor(plugin: ObsidianGit, changedFiles: FileStatusResult[]) { method getItems (line 18) | getItems(): FileStatusResult[] { method getItemText (line 22) | getItemText(item: FileStatusResult): string { method onChooseItem (line 37) | onChooseItem(item: FileStatusResult, _: MouseEvent | KeyboardEvent): v... FILE: src/ui/modals/customMessageModal.ts class CustomMessageModal (line 4) | class CustomMessageModal extends SuggestModal { method constructor (line 8) | constructor(private readonly plugin: ObsidianGit) { method openAndGetResult (line 15) | openAndGetResult(): Promise { method onClose (line 22) | onClose() { method getSuggestions (line 29) | getSuggestions(query: string): string[] { method renderSuggestion (line 35) | renderSuggestion(value: string, el: HTMLElement): void { method onChooseSuggestion (line 39) | onChooseSuggestion(value: string, __: MouseEvent | KeyboardEvent) { FILE: src/ui/modals/discardModal.ts type DiscardResult (line 5) | type DiscardResult = false | "delete" | "discard"; class DiscardModal (line 7) | class DiscardModal extends Modal { method constructor (line 11) | constructor({ method openAndGetResult (line 35) | openAndGetResult(): Promise { method onOpen (line 42) | onOpen() { method onClose (line 115) | onClose() { FILE: src/ui/modals/generalModal.ts type OptionalGeneralModalConfig (line 4) | interface OptionalGeneralModalConfig { type GeneralModalConfig (line 12) | interface GeneralModalConfig { class GeneralModal (line 30) | class GeneralModal extends SuggestModal { method constructor (line 36) | constructor(plugin: ObsidianGit, config: OptionalGeneralModalConfig) { method openAndGetResult (line 65) | openAndGetResult(): Promise { method onClose (line 76) | onClose() { method getSuggestions (line 82) | getSuggestions(query: string): string[] { method renderSuggestion (line 92) | renderSuggestion(value: string, el: HTMLElement): void { method onChooseSuggestion (line 100) | onChooseSuggestion(value: string, _: MouseEvent | KeyboardEvent) { FILE: src/ui/modals/ignoreModal.ts class IgnoreModal (line 4) | class IgnoreModal extends Modal { method constructor (line 8) | constructor( method openAndGetReslt (line 15) | openAndGetReslt(): Promise { method onOpen (line 22) | onOpen() { method onClose (line 42) | onClose() { FILE: src/ui/sourceControl/sourceControl.ts class GitView (line 8) | class GitView extends ItemView implements HoverParent { method constructor (line 13) | constructor(leaf: WorkspaceLeaf, plugin: ObsidianGit) { method getViewType (line 19) | getViewType(): string { method getDisplayText (line 23) | getDisplayText(): string { method getIcon (line 27) | getIcon(): string { method onClose (line 31) | onClose(): Promise { method reload (line 39) | reload(): void { method onOpen (line 53) | onOpen(): Promise { FILE: src/ui/statusBar/branchStatusBar.ts class BranchStatusBar (line 3) | class BranchStatusBar { method constructor (line 4) | constructor( method display (line 14) | async display() { method remove (line 27) | remove() { FILE: src/utils.ts function assertNever (line 8) | function assertNever(x: never): never { function plural (line 13) | function plural( function getNewLeaf (line 36) | function getNewLeaf( function mayTriggerFileMenu (line 52) | function mayTriggerFileMenu( function impossibleBranch (line 86) | function impossibleBranch(x: never): never { function rgbToString (line 91) | function rgbToString(rgb: RGB): string { function convertToRgb (line 95) | function convertToRgb(str: string): RGB | undefined { function momentToEpochSeconds (line 104) | function momentToEpochSeconds(instant: moment.Moment): number { function median (line 108) | function median(array: number[]): number | undefined { function strictDeepEqual (line 113) | function strictDeepEqual(a: T, b: T): boolean { function arrayProxyWithNewLength (line 117) | function arrayProxyWithNewLength(array: T[], length: number): T[] { function resizeToLength (line 128) | function resizeToLength( function prefixOfLengthAsWhitespace (line 143) | function prefixOfLengthAsWhitespace( function between (line 159) | function between(l: number, x: number, r: number) { function splitRemoteBranch (line 162) | function splitRemoteBranch( function getDisplayPath (line 169) | function getDisplayPath(path: string): string { function formatMinutes (line 174) | function formatMinutes(minutes: number): string { function getExtensionFromPath (line 179) | function getExtensionFromPath(path: string): string { function fileIsBinary (line 187) | function fileIsBinary(path: string): boolean { function formatRemoteUrl (line 196) | function formatRemoteUrl(url: string): string { function fileOpenableInObsidian (line 208) | function fileOpenableInObsidian( function convertPathToAbsoluteGitignoreRule (line 228) | function convertPathToAbsoluteGitignoreRule({ function hoverPreview (line 263) | function hoverPreview( function spawnAsync (line 280) | function spawnAsync(