Skip to content

Commit 0189e2b

Browse files
committed
add some buffer functions
1 parent 20fb1a9 commit 0189e2b

File tree

3 files changed

+112
-33
lines changed

3 files changed

+112
-33
lines changed

vim/buffer.ts

Lines changed: 0 additions & 30 deletions
This file was deleted.

vim/function.ts

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
import { Denops } from "../deps.ts";
2+
3+
export async function bufadd(denops: Denops, name: string): Promise<number> {
4+
const bufnr = await denops.eval("bufadd(name)", { name: name });
5+
return bufnr as number;
6+
}
7+
8+
export async function bufexists(
9+
denops: Denops,
10+
name: string | number,
11+
): Promise<boolean> {
12+
const result = await denops.eval("bufexists(name)", { name: name }) as number;
13+
return result ? true : false;
14+
}
15+
16+
export async function buflisted(
17+
denops: Denops,
18+
name: string | number,
19+
): Promise<boolean> {
20+
const result = await denops.eval("buflisted(name)", { name: name }) as number;
21+
return result ? true : false;
22+
}
23+
24+
export async function bufload(
25+
denops: Denops,
26+
name: string | number,
27+
): Promise<void> {
28+
await denops.eval("bufload(name)", { name: name });
29+
}
30+
31+
export async function bufloaded(
32+
denops: Denops,
33+
name: string | number,
34+
): Promise<boolean> {
35+
const result = await denops.eval("bufloaded(name)", { name: name }) as number;
36+
return result ? true : false;
37+
}
38+
39+
export async function bufname(
40+
denops: Denops,
41+
name?: string | number,
42+
): Promise<string> {
43+
return await denops.eval("bufname(name)", { name: name }) as string;
44+
}
45+
46+
export async function bufnr(
47+
denops: Denops,
48+
name: string | number,
49+
): Promise<number> {
50+
return await denops.eval("bufnr(name)", { name: name }) as number;
51+
}
52+
53+
export async function bufwinid(
54+
denops: Denops,
55+
name: string | number,
56+
): Promise<number> {
57+
return await denops.eval("bufwinid(name)", { name: name }) as number;
58+
}
59+
60+
export async function bufwinnr(
61+
denops: Denops,
62+
name: string | number,
63+
): Promise<number> {
64+
return await denops.eval("bufwinnr(name)", { name: name }) as number;
65+
}
66+
67+
export class FuctionHelper {
68+
#denops: Denops;
69+
70+
constructor(denops: Denops) {
71+
this.#denops = denops;
72+
}
73+
74+
async bufadd(name: string): Promise<number> {
75+
return await bufadd(this.#denops, name);
76+
}
77+
78+
async bufexists(name: string | number): Promise<boolean> {
79+
return await bufexists(this.#denops, name);
80+
}
81+
82+
async buflisted(name: string | number): Promise<boolean> {
83+
return await buflisted(this.#denops, name);
84+
}
85+
86+
async bufload(name: string | number): Promise<void> {
87+
await bufload(this.#denops, name);
88+
}
89+
90+
async bufloaded(name: string | number): Promise<boolean> {
91+
return await bufloaded(this.#denops, name);
92+
}
93+
94+
async bufname(name: string | number): Promise<string> {
95+
return await bufname(this.#denops, name);
96+
}
97+
98+
async bufnr(name: string | number): Promise<number> {
99+
return await bufnr(this.#denops, name);
100+
}
101+
102+
async bufwinid(name: string | number): Promise<number> {
103+
return await bufwinid(this.#denops, name);
104+
}
105+
106+
async bufwinnr(name: string | number): Promise<number> {
107+
return await bufwinnr(this.#denops, name);
108+
}
109+
}

vim/vim.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Context, Denops, Dispatcher } from "../deps.ts";
22
import { execute } from "./execute.ts";
33
import { autocmd, AutocmdHelper } from "./autocmd.ts";
44
import { VariableHelper } from "./variable.ts";
5-
import { BufferHelper } from "./buffer.ts";
5+
import { FuctionHelper } from "./function.ts";
66
import { load } from "./load.ts";
77

88
/**
@@ -24,7 +24,7 @@ export class Vim {
2424
readonly t: VariableHelper;
2525
readonly v: VariableHelper;
2626

27-
readonly buffer: BufferHelper;
27+
readonly fn: FuctionHelper;
2828

2929
constructor(denops: Denops) {
3030
this.#denops = denops;
@@ -33,7 +33,7 @@ export class Vim {
3333
this.w = new VariableHelper(denops, "w");
3434
this.t = new VariableHelper(denops, "t");
3535
this.v = new VariableHelper(denops, "v");
36-
this.buffer = new BufferHelper(denops);
36+
this.fn = new FuctionHelper(denops);
3737
}
3838

3939
/**

0 commit comments

Comments
 (0)