aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dotfiles/ghostty/config24
-rw-r--r--dotfiles/ghostty/retro.glsl45
-rw-r--r--dotfiles/nvim/init.lua47
-rwxr-xr-xinstall.sh1
4 files changed, 98 insertions, 19 deletions
diff --git a/dotfiles/ghostty/config b/dotfiles/ghostty/config
index 7dbb0d2..08663a6 100644
--- a/dotfiles/ghostty/config
+++ b/dotfiles/ghostty/config
@@ -1,13 +1,24 @@
# theme = "Gruvbox Light"
theme = "Gruvbox Dark"
# theme = "Nord"
-
+# theme = "3024 Night"
+# theme = "CGA"
+# theme = "Deep"
+# theme = "IBM 5153 CGA (Black)"
+# theme = "IRIX Console"
+# theme = "IRIX Terminal"
font-family = "IBM 3270"
-# Linux
+font-size = 14
+
+# font-family = "IBM 3270 Condensed"
+# font-size = 16
+
+# font-family = "IBM Plex Mono"
# font-size = 13
-# Mac
-font-size = 14
+
+# font-family = "Monofonto"
+# font-size = 14
# window-theme = ghostty
# gtk-titlebar = false
@@ -16,3 +27,8 @@ gtk-wide-tabs = false
cursor-style = block
cursor-style-blink = false
shell-integration-features = no-cursor
+mouse-hide-while-typing = true
+
+# custom-shader = ~/.config/ghostty/retro.glsl
+# Works well with:
+# theme = "IBM 5153 CGA (Black)"
diff --git a/dotfiles/ghostty/retro.glsl b/dotfiles/ghostty/retro.glsl
new file mode 100644
index 0000000..e9c7ab9
--- /dev/null
+++ b/dotfiles/ghostty/retro.glsl
@@ -0,0 +1,45 @@
+// Original shader collected from: https://www.shadertoy.com/view/WsVSzV
+// Licensed under Shadertoy's default since the original creator didn't provide any license. (CC BY NC SA 3.0)
+
+// float warp = 0.5; // Strong curve
+// float warp = 0.0; // no curve
+// float warp = 0.25;
+
+// float warp = 0.15;
+// float scan = .1; // simulate darkness between scanlines
+
+float warp = 0.25;
+float scan = .25; // simulate darkness between scanlines
+
+void mainImage(out vec4 fragColor, in vec2 fragCoord)
+{
+ // squared distance from center
+ vec2 uv = fragCoord / iResolution.xy;
+ vec2 dc = abs(0.5 - uv);
+ dc *= dc;
+
+ // warp the fragment coordinates
+ uv.x -= 0.5; uv.x *= 1.0 + (dc.y * (0.3 * warp)); uv.x += 0.5;
+ uv.y -= 0.5; uv.y *= 1.0 + (dc.x * (0.4 * warp)); uv.y += 0.5;
+
+ // sample inside boundaries, otherwise set to black
+ if (uv.y > 1.0 || uv.x < 0.0 || uv.x > 1.0 || uv.y < 0.0)
+ fragColor = vec4(0.0, 0.0, 0.0, 1.0);
+ else
+ {
+ // determine if we are drawing in a scanline
+ float apply = abs(sin(fragCoord.y) * 0.5 * scan);
+
+ // sample the texture and apply a teal tint
+ vec3 color = texture(iChannel0, uv).rgb;
+ vec3 tint = vec3(1, 1, 1); // No tint
+ // vec3 tint = vec3(1.152, 0.864, 0.3); // Amber color
+ // vec3 tint = vec3(0.0, 0.8, 0.6); // teal color (slightly more green than blue)
+ // vec3 tint = vec3(0.8, 0.3, 1.4); // Lavender
+ // vec3 tint = vec3(0.3, 0.5, 1.3); // Blue
+
+ // mix the sampled color with the teal tint based on scanline intensity
+ fragColor = vec4(mix(color * tint, vec3(0.0), apply), 1.0);
+ }
+}
+
diff --git a/dotfiles/nvim/init.lua b/dotfiles/nvim/init.lua
index 3186fe0..8770e83 100644
--- a/dotfiles/nvim/init.lua
+++ b/dotfiles/nvim/init.lua
@@ -1,8 +1,36 @@
+-- Quick ref for useful nvim things
+-- :help netrw -- File listing, e.g. when you do `: e.`
+-- :help fold -- Also, `set fdm?`
+
-- Configuration for nvim 0.12+
+-- To reset pack:
+-- rm -rf ~/.config/nvim/nvim-pack-lock.json ~/.local/share/nvim/site/pack
--- Themes
+-- Nord
vim.pack.add({'https://github.com/shaunsingh/nord.nvim'})
+-- vim.g.nord_contrast = true
+-- vim.g.nord_borders = false
+vim.g.nord_disable_background = true
+vim.g.nord_italic = false
+-- vim.g.nord_uniform_diff_background = true
+vim.g.nord_bold = false
+-- Load the colorscheme
+require('nord').set()
+
+-- zenbones
+-- vim.pack.add({'https://github.com/rktjmp/lush.nvim'})
+-- vim.pack.add({'https://github.com/zenbones-theme/zenbones.nvim'})
+
vim.pack.add({'https://github.com/ellisonleao/gruvbox.nvim'})
+-- Gruvbox theme config
+require("gruvbox").setup({
+ transparent_mode = true
+})
+-- vim.cmd('set background=light')
+vim.cmd('colorscheme gruvbox')
+
+-- vim.pack.add({'https://github.com/metalelf0/black-metal-theme-neovim'})
+-- vim.cmd('colorscheme darkthrone')
vim.pack.add({'https://github.com/nvim-treesitter/nvim-treesitter'})
@@ -52,23 +80,15 @@ vim.keymap.set('n', '<leader>ps', function()
end)
--------------------------------------------------------------------------------
---------------------------------------------------------------------------------
--- Nord theme config
---------------------------------------------------------------------------------
--- vim.g.nord_contrast = true
--- vim.g.nord_borders = false
-vim.g.nord_disable_background = true
-vim.g.nord_italic = false
--- vim.g.nord_uniform_diff_background = true
-vim.g.nord_bold = false
--- Load the colorscheme
-require('nord').set()
+
--------------------------------------------------------------------------------
-- "Basic" nvim config:
+vim.g.netrw_liststyle = 3
+
vim.opt.nu = true
vim.opt.rnu = true
@@ -113,7 +133,6 @@ vim.opt.laststatus = 2
vim.cmd("set ea")
vim.cmd("autocmd VimResized * wincmd =")
-
vim.diagnostic.config({
virtual_text = true,
signs = true,
@@ -122,7 +141,6 @@ vim.diagnostic.config({
severity_sort = true
})
-
-- For LSP, :help lsp-defaults can be useful to get the keybindings down
-- clangd language server config...
@@ -142,4 +160,3 @@ vim.lsp.config['gopls'] = {
}
vim.lsp.enable('gopls')
-vim.cmd('colorscheme gruvbox')
diff --git a/install.sh b/install.sh
index 29b06cd..606e486 100755
--- a/install.sh
+++ b/install.sh
@@ -47,6 +47,7 @@ if ! [ -d "$_ghosttydir" ] ; then
mkdir "$_ghosttydir"
fi
setLink -s "$(pwd)/dotfiles/ghostty/config" -d "$_ghosttydir/config"
+setLink -s "$(pwd)/dotfiles/ghostty/retro.glsl" -d "$_ghosttydir/retro.glsl"
if ! [ -d "$bindir" ] ; then mkdir "$bindir" ; fi
for _f in bin/* ; do