Skip to content
Snippets Groups Projects
Commit 0d868860 authored by Jan Hensel's avatar Jan Hensel :penguin:
Browse files

Merge branch 'master' of gitlab.informatik.uni-bremen.de:ja_he/dotfiles

parents 3735da81 3afa4608
No related branches found
No related tags found
No related merge requests found
......@@ -36,15 +36,9 @@ bindsym $mod+Shift+q kill
# create and show a QR code for the current clipboard contents
bindsym $mod+q exec xclip -selection clipboard -o | qrencode -o - | feh --zoom fill --geometry 800x800 --force-aliasing -
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
# There also is the (new) i3-dmenu-desktop which only displays applications
# shipping a .desktop file. It is a wrapper around dmenu, so you need that
# installed.
# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop
# valid alternative programs are dmenu, rofi, tofi, ...
bindsym $mod+d exec rofi -show run
bindsym $mod+shift+d exec rofi -show window
# you could add a rofi window switcher as well...
# moving workspaces to other display
bindsym $mod+i move workspace to output $Display0
......@@ -81,7 +75,8 @@ bindsym $mod+Right focus right
# split in horizontal orientation
bindsym $mod+b split h
bindsym $mod+shift+b exec scripts/backlight-cycle.sh
bindsym $mod+shift+b exec scripts/backlight-cycle.sh up
bindsym $mod+shift+v exec scripts/backlight-cycle.sh down
# split in vertical orientation
bindsym $mod+v split v
......@@ -110,7 +105,8 @@ for_window [class="feh"] floating enable
# screenshot (select)
#bindsym --release $mod+z exec scrot -f
bindsym --release $mod+z exec scrot -s -f -q 100 '/home/ztf/images/screenshots/%Y-%m-%d_%H%M%S.jpg' && notify-send "screenshot saved" || notify-send "screenshot aborted"
#bindsym --release $mod+z exec scrot -s -f -q 100 '/home/ztf/Nextcloud/screenshots/%Y-%m-%d_%H%M%S.jpg' && notify-send "screenshot saved" || notify-send "screenshot aborted"
bindsym --release $mod+z exec grim -g "$(slurp)" "/home/ztf/Nextcloud/screenshots/$(date +%Y-%m-%d_%H%M%S).png" && notify-send "screenshot saved" || notify-send "screenshot aborted"
bindsym $mod+shift+z exec feh $(find Pictures/screenshots/ -name "`date '+%Y-%m-%d'`*.png" | sort -r | head -n1)
#bindsym --release $mod+z exec pactl set-source-mute bluez_source.4C_87_5D_0A_68_6C.headset_head_unit true
......@@ -282,6 +278,13 @@ bindsym $mod+c exec alacritty -e python3
#bindsym $mod+i exec xinput --disable "SynPS/2 Synaptics TouchPad"
#bindsym $mod+shift+i exec xinput --enable "SynPS/2 Synaptics TouchPad"
input "type:keyboard" {
xkb_layout de
xkb_variant nodeadkeys
}
input "9580:109:Tablet_Monitor_Pen" map_to_output "HDMI-A-1"
#bindsym XF86AudioPlay exec ~/scripts/micmutetoggle.sh
bindsym XF86AudioMicMute exec ~/scripts/micmutetoggle.sh
bindsym $mod+m exec ~/scripts/micmutetoggle.sh
......
......@@ -233,7 +233,34 @@ $env.config = {
use_ansi_coloring: true
bracketed_paste: true # enable bracketed paste, currently useless on windows
edit_mode: vi # emacs, vi
shell_integration: false # enables terminal shell integration. Off by default, as some terminals have issues with this.
shell_integration: {
# osc2 abbreviates the path if in the home_dir, sets the tab/window title, shows the running command in the tab/window title
osc2: true
# osc7 is a way to communicate the path to the terminal, this is helpful for spawning new tabs in the same directory
osc7: true
# osc8 is also implemented as the deprecated setting ls.show_clickable_links, it shows clickable links in ls output if your terminal supports it. show_clickable_links is deprecated in favor of osc8
osc8: true
# osc9_9 is from ConEmu and is starting to get wider support. It's similar to osc7 in that it communicates the path to the terminal
osc9_9: false
# osc133 is several escapes invented by Final Term which include the supported ones below.
# 133;A - Mark prompt start
# 133;B - Mark prompt end
# 133;C - Mark pre-execution
# 133;D;exit - Mark execution finished with exit code
# This is used to enable terminals to know where the prompt is, the command is, where the command finishes, and where the output of the command is
osc133: true
# osc633 is closely related to osc133 but only exists in visual studio code (vscode) and supports their shell integration features
# 633;A - Mark prompt start
# 633;B - Mark prompt end
# 633;C - Mark pre-execution
# 633;D;exit - Mark execution finished with exit code
# 633;E - NOT IMPLEMENTED - Explicitly set the command line with an optional nonce
# 633;P;Cwd=<path> - Mark the current working directory and communicate it to the terminal
# and also helps with the run recent menu in vscode
osc633: true
# reset_application_mode is escape \x1b[?1l and was added to help ssh work better
reset_application_mode: true
}
render_right_prompt_on_last_line: false # true or false to enable or disable right prompt to be rendered on last line of the prompt.
use_kitty_protocol: false # enables keyboard enhancement protocol implemented by kitty console, only if your terminal support this.
highlight_resolved_externals: false # true enables highlighting of external commands in the repl resolved by which.
......@@ -846,4 +873,7 @@ $env.config = {
]
}
alias l = ls
alias ll = ls -l
# use ~/.cache/starship/init.nu
......@@ -41,7 +41,6 @@ EOF
lua require('ztf.colorscheme').apply()
lua require("ztf.lsp")
lua require("ztf.dap")
lua require('ztf.treesitter')
......
......@@ -31,21 +31,35 @@ local plugins = {
'tpope/vim-characterize',
'tommcdo/vim-lion',
'neovim/nvim-lspconfig',
'mfussenegger/nvim-dap',
{
"rcarriga/nvim-dap-ui",
lazy = true,
config = function() require("ztf.configure.dapui") end,
dependencies = { "mfussenegger/nvim-dap" },
"williamboman/mason.nvim",
opts = {},
},
{
"williamboman/mason.nvim",
"williamboman/mason-lspconfig.nvim",
opts = {
ensure_installed = {
"tinymist",
"rust_analyzer",
"rust_analyzer",
"lua_ls",
},
},
dependencies = { "williamboman/mason.nvim" },
},
{
'neovim/nvim-lspconfig',
dependencies = { "williamboman/mason-lspconfig.nvim" },
config = function()
require("ztf.lsp")
end,
},
'mfussenegger/nvim-dap',
{
"rcarriga/nvim-dap-ui",
lazy = true,
config = function() require("ztf.configure.dapui") end,
dependencies = { "mfussenegger/nvim-dap" },
},
-- rust
{
......@@ -206,6 +220,188 @@ local plugins = {
'junegunn/fzf.vim',
config = function() vim.cmd("source ~/.config/nvim/configure/fzf.vim") end,
},
{
'stevearc/oil.nvim',
opts = {
-- Oil will take over directory buffers (e.g. `vim .` or `:e src/`)
-- Set to false if you still want to use netrw.
default_file_explorer = true,
-- Id is automatically added at the beginning, and name at the end
-- See :help oil-columns
columns = {
"icon",
-- "permissions",
-- "size",
-- "mtime",
},
-- Buffer-local options to use for oil buffers
buf_options = {
buflisted = false,
bufhidden = "hide",
},
-- Window-local options to use for oil buffers
win_options = {
wrap = false,
signcolumn = "no",
cursorcolumn = false,
foldcolumn = "0",
spell = false,
list = false,
conceallevel = 3,
concealcursor = "nvic",
},
-- Send deleted files to the trash instead of permanently deleting them (:help oil-trash)
delete_to_trash = false,
-- Skip the confirmation popup for simple operations (:help oil.skip_confirm_for_simple_edits)
skip_confirm_for_simple_edits = false,
-- Selecting a new/moved/renamed file or directory will prompt you to save changes first
-- (:help prompt_save_on_select_new_entry)
prompt_save_on_select_new_entry = true,
-- Oil will automatically delete hidden buffers after this delay
-- You can set the delay to false to disable cleanup entirely
-- Note that the cleanup process only starts when none of the oil buffers are currently displayed
cleanup_delay_ms = 2000,
lsp_file_methods = {
-- Time to wait for LSP file operations to complete before skipping
timeout_ms = 1000,
-- Set to true to autosave buffers that are updated with LSP willRenameFiles
-- Set to "unmodified" to only save unmodified buffers
autosave_changes = false,
},
-- Constrain the cursor to the editable parts of the oil buffer
-- Set to `false` to disable, or "name" to keep it on the file names
constrain_cursor = "editable",
-- Set to true to watch the filesystem for changes and reload oil
experimental_watch_for_changes = false,
-- Keymaps in oil buffer. Can be any value that `vim.keymap.set` accepts OR a table of keymap
-- options with a `callback` (e.g. { callback = function() ... end, desc = "", mode = "n" })
-- Additionally, if it is a string that matches "actions.<name>",
-- it will use the mapping at require("oil.actions").<name>
-- Set to `false` to remove a keymap
-- See :help oil-actions for a list of all available actions
keymaps = {
["g?"] = "actions.show_help",
["<CR>"] = "actions.select",
["<C-s>"] = "actions.select_vsplit",
["<C-h>"] = "actions.select_split",
["<C-t>"] = "actions.select_tab",
["<C-p>"] = "actions.preview",
["<C-c>"] = "actions.close",
["<C-l>"] = "actions.refresh",
["-"] = "actions.parent",
["_"] = "actions.open_cwd",
["`"] = "actions.cd",
["~"] = "actions.tcd",
["gs"] = "actions.change_sort",
["gx"] = "actions.open_external",
["g."] = "actions.toggle_hidden",
["g\\"] = "actions.toggle_trash",
},
-- Set to false to disable all of the above keymaps
use_default_keymaps = true,
view_options = {
-- Show files and directories that start with "."
show_hidden = false,
-- This function defines what is considered a "hidden" file
is_hidden_file = function(name, bufnr)
return vim.startswith(name, ".")
end,
-- This function defines what will never be shown, even when `show_hidden` is set
is_always_hidden = function(name, bufnr)
return false
end,
-- Sort file names in a more intuitive order for humans. Is less performant,
-- so you may want to set to false if you work with large directories.
natural_order = true,
sort = {
-- sort order can be "asc" or "desc"
-- see :help oil-columns to see which columns are sortable
{ "type", "asc" },
{ "name", "asc" },
},
},
-- Extra arguments to pass to SCP when moving/copying files over SSH
extra_scp_args = {},
-- EXPERIMENTAL support for performing file operations with git
git = {
-- Return true to automatically git add/mv/rm files
add = function(path)
return false
end,
mv = function(src_path, dest_path)
return false
end,
rm = function(path)
return false
end,
},
-- Configuration for the floating window in oil.open_float
float = {
-- Padding around the floating window
padding = 2,
max_width = 0,
max_height = 0,
border = "rounded",
win_options = {
winblend = 0,
},
-- This is the config that will be passed to nvim_open_win.
-- Change values here to customize the layout
override = function(conf)
return conf
end,
},
-- Configuration for the actions floating preview window
preview = {
-- Width dimensions can be integers or a float between 0 and 1 (e.g. 0.4 for 40%)
-- min_width and max_width can be a single value or a list of mixed integer/float types.
-- max_width = {100, 0.8} means "the lesser of 100 columns or 80% of total"
max_width = 0.9,
-- min_width = {40, 0.4} means "the greater of 40 columns or 40% of total"
min_width = { 40, 0.4 },
-- optionally define an integer/float for the exact width of the preview window
width = nil,
-- Height dimensions can be integers or a float between 0 and 1 (e.g. 0.4 for 40%)
-- min_height and max_height can be a single value or a list of mixed integer/float types.
-- max_height = {80, 0.9} means "the lesser of 80 columns or 90% of total"
max_height = 0.9,
-- min_height = {5, 0.1} means "the greater of 5 columns or 10% of total"
min_height = { 5, 0.1 },
-- optionally define an integer/float for the exact height of the preview window
height = nil,
border = "rounded",
win_options = {
winblend = 0,
},
-- Whether the preview window is automatically updated when the cursor is moved
update_on_cursor_moved = true,
},
-- Configuration for the floating progress window
progress = {
max_width = 0.9,
min_width = { 40, 0.4 },
width = nil,
max_height = { 10, 0.9 },
min_height = { 5, 0.1 },
height = nil,
border = "rounded",
minimized_border = "none",
win_options = {
winblend = 0,
},
},
-- Configuration for the floating SSH window
ssh = {
border = "rounded",
},
-- Configuration for the floating keymaps help window
keymaps_help = {
border = "rounded",
},
},
-- Optional dependencies
dependencies = { "nvim-tree/nvim-web-devicons" },
},
-- ui stuff
'stevearc/dressing.nvim',
......
......@@ -16,25 +16,6 @@ lspconfig.gopls.setup {}
lspconfig.vimls.setup {}
-- lspconfig.typst_lsp.setup {
-- root_dir = function(path)
-- local strip_dir_pat = '/([^/]+)$'
-- local strip_sep_pat = '/$'
-- if not path or #path == 0 then
-- return
-- end
-- local result = path:gsub(strip_sep_pat, ''):gsub(strip_dir_pat, '')
-- if #result == 0 then
-- if vim.loop.os_uname().version:match 'Windows' then
-- return path:sub(1, 2):upper()
-- else
-- return '/'
-- end
-- end
-- return result
-- end,
-- }
-- tinymist is an LS for typst
lspconfig.tinymist.setup {
settings = {
......
......@@ -162,6 +162,7 @@ keybinds {
bind "Ctrl r" { SwitchToMode "Resize"; }
bind "Ctrl p" { SwitchToMode "Pane"; }
bind "Ctrl t" { SwitchToMode "Tab"; }
bind "Ctrl h" { SwitchToMode "Move"; }
bind "Ctrl o" { SwitchToMode "Session"; }
}
shared_except "locked" {
......
......@@ -120,3 +120,7 @@ scripts/quicktexfiles/content.tex
/.config/Code - OSS/
/.config/Signal/
/.config/LanguageTool/
/.config/Podman Desktop/
/.config/autostart/
/.config/cat_installer/
/.config/cni/
......@@ -5,8 +5,25 @@ set -x
current=$(xbacklight -get)
next=$(( $current + 10))
# can take args 'up' or 'down'
case $1 in
up)
next=$(( $current + 10))
;;
down)
next=$(( $current - 10))
;;
*)
echo "Usage: backlight-cycle.sh [up|down]"
exit 1
;;
esac
# clamping
if (( next > 100 )); then
next=100
fi
if (( next < 0 )); then
next=0
fi
......
......@@ -7,7 +7,7 @@ _exit_because_monitor() {
}
pactl get-default-source | grep -i "monitor" && _exit_because_monitor
if pactl list | grep loopback; then
if pactl list short modules | grep module-loopback; then
pactl unload-module module-loopback
notify-send -t 1000 "loopback off"
else
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment