feat: basic nvim setup and other partially working stuff
This commit is contained in:
19
src/components/Nvim/Nvim.tsx
Normal file
19
src/components/Nvim/Nvim.tsx
Normal file
@@ -0,0 +1,19 @@
|
||||
import { NvimStatusBar } from "./NvimStatusBar";
|
||||
import { NvimTree } from "./NvimTree";
|
||||
|
||||
export const Nvim = () => {
|
||||
return (
|
||||
<div>
|
||||
<div className="flex">
|
||||
<div className="w-fit bg-green-500">
|
||||
<NvimTree />
|
||||
</div>
|
||||
<div className="flex-1 bg-blue-500"></div>
|
||||
</div>
|
||||
|
||||
<div className="h-fit bg-red-500">
|
||||
<NvimStatusBar />
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
};
|
||||
12
src/components/Nvim/NvimStatusBar.tsx
Normal file
12
src/components/Nvim/NvimStatusBar.tsx
Normal file
@@ -0,0 +1,12 @@
|
||||
import { useTerminal } from "~/context/TerminalContext";
|
||||
import { TerminalRenderer } from "~/utils/terminal/renderer";
|
||||
|
||||
export const NvimStatusBar = () => {
|
||||
const { cols: width } = useTerminal();
|
||||
const canvas = new TerminalRenderer(width, 2);
|
||||
|
||||
canvas.write(0, 0, "status line 1");
|
||||
canvas.write(0, 1, "status line 2");
|
||||
|
||||
return <p>{canvas.render()}</p>;
|
||||
};
|
||||
11
src/components/Nvim/NvimTree.tsx
Normal file
11
src/components/Nvim/NvimTree.tsx
Normal file
@@ -0,0 +1,11 @@
|
||||
import { useTerminal } from "~/context/TerminalContext";
|
||||
import { TerminalRenderer } from "~/utils/terminal/renderer";
|
||||
|
||||
export const NvimTree = () => {
|
||||
const { cols: width, rows: height } = useTerminal();
|
||||
const canvas = new TerminalRenderer(width * 0.15, height - 2);
|
||||
|
||||
canvas.write(0, 0, "ijirjginrgi");
|
||||
|
||||
return <p>{canvas.render()}</p>;
|
||||
};
|
||||
Reference in New Issue
Block a user