Commit graph

178 commits

Author SHA1 Message Date
1e3eb7f7e0 fish: functions: Improve pipewire dot graph functions
xdot is more convenient to use and allows viewing dot file directly.
Generate svg only if requested.
2022-10-10 14:00:18 +05:30
7cb29dbd17 fish: functions: Add a helper to bring up or tear down VPN 2022-10-04 20:54:53 +05:30
68da927ad3 fish: conf.d: Drop setting of some environment variables
These have now been moved to environment.d and get set by systemd.

https://wiki.archlinux.org/title/Systemd/User#Environment_variables
2022-10-03 11:48:16 +05:30
cb12ad28ab fish: Add fish-systemctl
https://github.com/wawa19933/fish-systemd

We do not use any plugin manager so just add this manually.
2022-10-01 09:56:18 +05:30
edf40d4e04 fish: functions: Delete not much used systemd aliases 2022-10-01 09:56:18 +05:30
e2880791b3 fish: functions: Add an alias for vale 2022-09-28 17:07:26 +05:30
ca2d092166 Revert "fish/git: Manually set file type to git when calling nvim"
This reverts commit 2102b9983b.

Guess this got fixed in upstream commit 927d4d2.
2022-09-05 16:20:01 +05:30
ee776a86a1 fish: functions: Add an alias for sudoedit 2022-09-01 09:30:04 +05:30
eecc7b4021 fish: functions: Enable details in pipewire dot graphs 2022-08-19 16:59:19 +05:30
2102b9983b fish/git: Manually set file type to git when calling nvim
This reverts 7b84c0e again. Seems the issue is back with upstream.
2022-08-06 11:18:12 +05:30
16251e5d4c fish: conf.d/setup: Enable XDG support for ghcup 2022-08-03 20:31:41 +05:30
8aeabd9473 fish: functions: Add fzf versions of vgrep 2022-05-19 09:44:51 +05:30
68581433e3 fish: functions: Add aliases for ninja build
We need this frequently working with GStreamer.
2022-05-14 17:44:33 +05:30
8fd4ae0da9 fish: Drop all fzf + git related functions
vim-fugitive is all that is needed. We wrote these functions before
getting well versed with fugitive. These are not required anymore.
2022-05-06 12:04:35 +05:30
0afe1044c1 fish: functions/tsd: Add a helper to analyse GStreamer timestamps 2022-04-16 14:27:22 +05:30
800ec4ca64 fish: functions/gts: Add a helper to get column of interest from log files 2022-04-16 14:27:22 +05:30
c936941188 fish: functions/fish_prompt: Update prompt symbol for unknown upstream
Use unicode symbol for replacement character to indicate upstream is
unknown.
2022-04-15 19:17:28 +05:30
2af3965179 fish: functions/rmdot: Add a helper to delete all dot files 2022-04-14 17:38:14 +05:30
e6b71916e8 fish: functions/fish_prompt: Drop virtualfish
It increases the load time which is just annoying. Fuck Python
anyways.
2022-04-13 20:41:12 +05:30
478fede9e4 fish: Clean up with fish_indent 2022-04-12 18:27:01 +05:30
c06bee9cb3 fish: Add an alias to transcode mkv to mp4 2022-04-09 13:17:55 +05:30
30245370ca fish: Add helper aliases for ffprobe 2022-04-08 21:20:26 +05:30
8a7567a8b1 Start tmux sessions using systemd
While starting the tmux sessions from fish worked some environment
variables were not getting picked up in tmux session.

For example DISPLAY is set after we log in and the graphical sway
session starts but since tmux sessions were started before that it
would be absent from the tmux session. We may be wrong about the
exact order and reasoning for this but atleast that is the observed
behaviour.

Fix this by defining a sway session target and making the tmux session
service dependent on it.
2022-04-04 18:07:50 +05:30
55685b3084 fish: Make life easier by setting GST_DEBUG_DUMP_DOT_DIR globally 2022-04-03 09:30:00 +05:30
59e7473bf3 fish: Add alias for difftastic as a difftool 2022-03-31 19:38:09 +05:30
8d44f5ced6 fish: functions/gdbt: Spawning GDB with tmux panes
Adapted from https://github.com/cyrus-and/gdb-dashboard/issues/63.
2022-03-29 15:16:02 +05:30
77f28cf4ba fish: functions/rgc/rgf: Do not colourise ripgrep output
This allows us to drop having to run AnsiEsc.
2022-03-28 17:10:31 +05:30
ab2d063759 fish: setup: Disable colouring in log and debug output for GStreamer 2022-03-27 19:26:17 +05:30
8d216bc1e6 fish: setup: Drop TERM setting for kitty 2022-03-27 18:16:10 +05:30
81bf6122dc fish: functions: Use a new alias for verbose git status 2022-03-22 14:10:04 +05:30
5ed0951392 fish: Start tmux sessions on login 2022-03-17 09:14:06 +05:30
f99925d532 fish: functions/ta: Rename to ta & allow selection via fzf 2022-03-17 09:03:21 +05:30
a319c28964 fish: functions/fish_prompt: Add virtualfish 2022-03-15 00:12:05 +05:30
66cda3ef9b fish: functions: Rename vf to vfv 2022-03-15 00:12:05 +05:30
7b84c0eb20 Revert "fish/functions/gl: git: Manually set the file type to git when calling nvim"
This reverts commit a30eda8531.

Fixed upstream with https://github.com/neovim/neovim/pull/17517.
2022-02-26 11:04:30 +05:30
2776d00572 fish: functions/lt: Add an exa alias with tree option 2022-02-17 20:58:36 +05:30
6bbc55a2c2 fish: functions/l/ll: Drop the -h option
exa prints human readable sizes by default, so the -h option no longer
applies.
2022-02-17 20:52:14 +05:30
cd95166cfb fish: functions/hf: Add an alias for htop with filter 2022-02-01 16:31:17 +05:30
371794dfc7 fish: functions/topf: Add an alias for top 2022-02-01 11:56:15 +05:30
674e3fa3f6 fish: conf.d/setup: Set environment variables required by wayland 2022-01-28 20:52:47 +05:30
3600310085 fish: conf.d/setup: Set environment variable required by ssh-agent 2022-01-28 12:07:10 +05:30
a6b2242260 Revert "fish: conf.d/setup: Add QT environment variables for Wayland"
This reverts commit ca802a885f.

Not required anymore since it is fixed with previous commit 3cd3e1e.
2022-01-28 12:06:39 +05:30
ca802a885f fish: conf.d/setup: Add QT environment variables for Wayland
See https://wiki.archlinux.org/title/Wayland#Qt.

For some reason, even after setting this in systemd environment
variables, QT_QPA_PLATFORM does not get set.
2022-01-26 20:55:39 +05:30
0f2e1d3d1e fish: functions/b: Take number of levels to go back up the directory 2022-01-24 13:23:35 +05:30
aa6c176757 fish: functions: Add aliases for fetch & merge 2022-01-22 17:16:38 +05:30
873f3643aa fish: functions: Add alias to switch git repo between HTTPS and SSH
Taken from
https://github.com/whonore/dotfiles/blob/main/fish/functions/git_remote_toggle.fish
2022-01-15 17:42:51 +05:30
ef84036ec3 fish: conf/setup: Set XDG base directory environment variables 2022-01-12 17:39:10 +05:30
389845a79e fish: functions/rfc: Enable preview support
RFC files are text files, using anything other than less like bat will
not add much value.
2022-01-10 14:23:49 +05:30
e3d3e8b986 fish: functions: Add an alias to coqtop
Wrap coqtop in rlwrap and create an alias for that.
2022-01-07 20:39:57 +05:30
426cdd7ee8 fish: functions: Add an alias to easily get neovim start up time 2022-01-07 14:05:21 +05:30
a30eda8531 fish/functions/gl: git: Manually set the file type to git when calling nvim
See discussion in
https://github.com/neovim/neovim/issues/16940
2022-01-06 15:15:20 +05:30
307ae9eb7f fish: functions: gd: Allow passing arguments 2022-01-05 13:03:59 +05:30
22b9c09391 fish: functions: Add aliases for git difftool 2022-01-04 19:35:56 +05:30
95a247891e fish: conf/setup: Pass the shell syntax to use for fnm
From the twitter discussion with fnm author, shell inference seems to be
slow. Passing the shell to use manually seems to speed this up.

fnm env --log-level=quiet | source

Executed in  534.50 millis    fish           external
   usr time    0.62 millis  620.00 micros    0.00 millis
   sys time    4.76 millis    0.00 micros    4.76 millis

fnm env --shell=fish --log-level=quiet | source

Executed in    1.51 millis    fish           external
   usr time    1.06 millis    0.00 micros    1.06 millis
   sys time    0.58 millis  579.00 micros    0.00 millis

Also, see the github issue
https://github.com/Schniz/fnm/issues/621
2022-01-03 20:26:47 +05:30
e541b2d745 fish: Refactor fish shell configuration
- Drop starship. This also helps us to get rid of ttf-font-nerd install
  which is a dependency of starship.
- Source fnm env only once on login. This makes fish shell/terminal load
  much much faster. Add an alias to invoke fnm use easily.
- Set path or environment variables only when required path or binary
  exists.
- Introduce a function to profile fish easily.
- Borrow the fish prompt logic from Alexis King's configuration.
- Factor out key binding related settings.
- Make su launch fish.

Prompt and other ideas for clean up taken from
https://github.com/lexi-lambda/dotfiles/tree/master/fish
2021-12-29 18:54:57 +05:30
dc00cca6ca fish: conf/fnm: Switch to required node version automatically 2021-12-28 19:24:45 +05:30
d74d65f667 fish: functions/gl: Allow passing an argument & support cherry picking a commit
This allows us to specify a directory or file to run this git log
command on. Also add support for cherry-picking a commit.
2021-12-23 13:56:03 +05:30
e661dded6c fish: functions: Add aliases for ls/exa and mkdir 2021-12-21 09:26:36 +05:30
64358a0170 fish: Add an alias to reload kitty configuration 2021-12-18 11:00:41 +05:30
5a6981e6f7 fish: functions: Use fzf git browse function for git log 2021-12-17 09:58:18 +05:30
1896207312 fish: functions/fbr: Drop use of delta and xclip
We do not use delta anymore (neovim for everything) and instead of xclip
we need wl-copy in Wayland.

While at it, also add support for scrolling the preview.
2021-12-16 20:23:36 +05:30
f839a3bfff fish: Add the most commonly used git aliases 2021-12-14 15:44:33 +05:30
de0a69ee11 fish: Add an alias to ps_mem 2021-12-13 15:15:01 +05:30
47e8843882 fish: Drop use of nvr 2021-12-13 11:06:49 +05:30
0d0480a6b2 fish: Make all aliases into functions
Using alias inside ~/.config/fish/config.fish can slow down shell
start as each alias/function will be eagerly loaded.

alias is slow because it involves eval.

functions support lazy/auto loading.
https://fishshell.com/docs/current/tutorial.html#autoloading-functions
2021-12-10 19:50:19 +05:30
b8ccdaacd6 fish: Move sourcing of fnm and starship to conf.d 2021-12-10 15:59:11 +05:30
78ab1afc24 fish: Drop all git aliases
We do everything with vim-fugitive. Drop all those git aliases. We never
used most of them anyways.
2021-12-10 15:49:47 +05:30
f5fd6ddd55 fish: Move all functions to ~/.config/fish/functions 2021-12-10 15:39:44 +05:30
99482de9a4 fish: Add alias to fuzzy search RFC documents 2021-12-10 15:21:49 +05:30
443ba5441a fish: Add an alias to fuzzy find a process to kill 2021-12-08 18:16:16 +05:30
03a4cb93ff fish: Add an alias for mutt 2021-12-07 13:13:14 +05:30
405b9ecc92 fish: Drop emacs aliases 2021-12-06 10:28:30 +05:30
12af55257f fish: Add an alias to open pw-dump output in neovim 2021-12-06 10:28:30 +05:30
1c2aa05711 fish: Update the journalctl boot aliases 2021-11-20 12:01:33 +05:30
b4acbc3d98 fish: Disable Ctrl-d from closing the terminal
Mapping Ctrl-d in kitty was not the solution for this as we originally
thought.

See https://github.com/fish-shell/fish-shell/issues/5593 for an
explanation of the issue.
2021-11-18 11:28:33 +05:30
c5c2ea10b7 fish: Add aliases for journalctl 2021-11-08 12:31:17 +05:30
af9f761a6c fish: Add aliases to start neovim without plugins & vimrc files 2021-11-08 12:31:17 +05:30
61e617e494 fish: Use full format listing for ps
Using ps -e is not that helpful since it does not show the full command
line which is what is helpful in filtering and distinguishing between
multiple processes. For eg. we might have multiple processes running
using python and to distinguish between them we need the full command
line invocation.
2021-11-08 12:31:17 +05:30
b0341831e9 fish: Fix flatpak complaining about XDG_DATA_DIRS 2021-10-29 19:58:14 +05:30
051856602c fish: Update cargo doc open command
Now that we set BROWSER correctly, we need not set this here.
2021-10-22 18:06:11 +05:30
84455420e5 fish: Unset and set BROWSER
For some reason, BROWSER always gets set to firefox instead of
firefox-wayland which is our own desktop file for starting firefox
in wayland.

Setting the systemd environment variables or using the env in desktop
file has not helped.
2021-10-22 16:07:08 +05:30
9bc28d47a3 fish: Start sway if running from tty1
sway seems to not start at all when using lightdm to login. We disabled
lightdm and now just use the login shell to start sway. sway never
recommended login managers so this was long due anyways.

See https://github.com/swaywm/sway/wiki#login-managers.
2021-10-22 15:43:57 +05:30
bf9e2bf54c fish: Add aliases for cargo build commands 2021-10-06 09:55:06 +05:30
241894eb50 fish: Use nvr instead of floaterm
nvr seems to allow opening a file at specified line just like with
regular nvim which seems to not work for floaterm. So when in neovim
terminal vgrep -s opens the file at correct line while in floaterm it
just opens the file and puts us at the first line. Basically something
like nvim +99 file.c does not work for floaterm.
2021-10-05 12:59:43 +05:30
cba3c92d06 fish: Add helpers for seeing & collecting perf data 2021-09-25 13:21:01 +05:30
2fb77b64bc fish: Add a rust-gdb helper command 2021-09-25 13:21:01 +05:30
a7e7ac968f fish: Add helpers for coredumpctl 2021-09-15 18:33:09 +05:30
f0f12d4294 fish: Add helpers for easing work with gdb 2021-08-13 18:35:03 +05:30
20ba60e50a fish: Add an alias for the icat kitten 2021-08-12 12:02:25 +05:30
6f13255bdd fish: Add helper to generate dot graph 2021-08-12 12:02:25 +05:30
6af6dfa93a fish: Add a helper to pipe command output to nvim 2021-08-06 14:04:45 +05:30
a148531d3f fish: Add shortcuts for searching with ripgrep within in a file
This is primarily to help us with grepping in gstreamer logs.
2021-07-12 18:05:48 +05:30
f99042dbfa fish: Do not set BROWSER environment variable 2021-05-21 11:12:02 +05:30
46cca9c391 fish: Delete all guix references 2021-05-02 11:20:01 +05:30
bdafd1eea3 fish: Drop lazygit alias
We do not use lazygit anymore.
2021-04-28 10:58:12 +05:30
f65f7ffb3f fish: Improve the alias to only have the fugitive buffer 2021-04-22 17:30:28 +05:30
cfea08a09a fish: Add an alias for opening fugitive in neovim
This gives us access to git status in fugitive easily to carry out
further git operations.
2021-04-07 20:31:37 +05:30
40aa550eaa fish: Add local bin to PATH
On Arch/Endeavour, local bin seems to be not set in PATH unlike Manjaro,
add this.
2021-03-20 11:44:17 +05:30
dfe344b2b9 fish: Set guix current profile as well
See this stack exchange post for details
https://unix.stackexchange.com/questions/561093/what-is-the-difference-between-guix-profile-and-config-guix-current

Without doing this 'guix describe' also gives an error. See
https://lists.gnu.org/archive/html/bug-guix/2019-05/msg00692.html
2021-03-18 20:01:45 +05:30
b7d8452110 fish: Add guix to pkg-config search path 2021-03-17 20:20:15 +05:30