Kovid Goyal
daefb926d9
Fix zsh kitty completion when the matching style includes anchor based matchers
...
Debian apparently adds these by default.
2021-11-28 11:02:03 +05:30
Kovid Goyal
3d76c916a5
Simplify zsh shell integration code
...
Use the add-zsh-hook and add-zle-hook-widget functions
2021-11-28 08:45:53 +05:30
Kovid Goyal
0a5ffe9b73
Add a note about _ksi_first_run
2021-11-28 08:14:16 +05:30
Kovid Goyal
325603bf41
Shell integration zsh: Handle the case when a function that breaks prompt marking is installed after _ksi_precmd
...
We now install the real precmd hook only in the first run of the precmd
hook. This ensures that our precmd and preexec hooks are run last,
unless something else uses this trick, which is unlikely, and at that
point, the user is on their own.
Also ensure that the integration script is run only once even if the
user tries to source it twice with setting of KITTY_SHELL_INTEGRATION
each time.
2021-11-27 12:24:19 +05:30
Kovid Goyal
f6e0eb4005
Shell integration: Dont modify ~/.zshrc
...
Instead use the ZDOTDIR env var to load the shell integration code
2021-11-27 07:19:59 +05:30
Kovid Goyal
cf7e43fa26
Simplify nested if
2021-11-07 19:23:31 +05:30
Kovid Goyal
b5e8b5a124
Allow users to modify XDG_DATA_DIRS in the fish rc files
...
The only downside of this new technique is that it is no
longer possible to set XDG_DATA_DIRS to an empty var in kitty.conf
Since an empty XDG_DATA_DIRS breaks lots fo things, I dont think that
is a big concern.
2021-11-07 18:59:50 +05:30
Kovid Goyal
f48a430493
Use --global when re-exporting XDG_DATA_DIRS
2021-11-07 10:31:57 +05:30
Kovid Goyal
35514e0cc3
Dont change XDG_DATA_DIRS for child processes in fish shell integration
...
Fixes #4199
2021-11-07 10:06:18 +05:30
Kovid Goyal
5eb87b9f10
Micro-optimizations of fish sheel integration script
...
By @page-down
2021-10-29 21:51:48 +05:30
Kovid Goyal
d3a3f99848
Use an env var for fish shell integration
...
Less intrusive (in some ways) than adding symlinks to ~/.config/fish
Exploits the fact that fish loads scripts from XDG_DATA_DIRS on startup.
Thanks to @page-down for noticing
2021-10-27 14:59:11 +05:30
Kovid Goyal
089ab9ee9f
Use a pre zsh 5.5 syntax for assoc arrays
2021-10-24 08:16:44 +05:30
Kovid Goyal
899b5078eb
bash integration: fix newline replace in PS1
2021-10-23 18:48:45 +05:30
Kovid Goyal
0f9944190d
Shell integration: Better fix for multi-line prompts in bash
...
Also fix bash redrawing only the last PS2 prompt
2021-10-22 12:19:03 +05:30
Kovid Goyal
6d02ef59f8
Shell integration: Fix PS2 support
...
zsh only redraws the prompt from the last PS2 on a multiline prompt.
Take this into account.
2021-10-22 12:02:21 +05:30
Kovid Goyal
eeb02ceef4
Shell integration: Workaround bash not redrawing multiline prompts
2021-10-01 09:30:26 +05:30
Kovid Goyal
f277cbf3f3
Improved trailing newline handling in the fish shell integration
...
Thanks to some assistance from @faho
See https://github.com/kovidgoyal/kitty/issues/4032#issuecomment-919936913
2021-09-15 21:06:28 +05:30
Kovid Goyal
0a56ab7a1e
Workaround for fish splitting on newlines when doing command substitution
2021-09-15 18:12:40 +05:30
Kovid Goyal
a073936997
Fish shell integration: Strip trailing newlines from the original fish prompt as fish does this
2021-09-15 16:58:31 +05:30
Kovid Goyal
72e15d8b4f
Fish integration: Have the value of $status preserved by the prompt functions
2021-08-24 20:29:12 +05:30
Kovid Goyal
a10c19456a
Fix completions for fish
2021-08-18 10:06:07 +05:30
Kovid Goyal
f4b3948168
Use a shortened dir path for window title
...
Also respect named directories
2021-08-18 10:06:07 +05:30
Kovid Goyal
2245d4506f
Add title and cursor to fish integration
2021-08-18 10:06:06 +05:30
Kovid Goyal
7f3da135e2
...
2021-08-18 10:06:06 +05:30
Kovid Goyal
23f94b6e67
Get prompt marking working for th fish shell
2021-08-18 10:06:06 +05:30
Kovid Goyal
0ec10b52e0
Add shebangs
2021-08-18 10:06:06 +05:30
Kovid Goyal
a993a71857
Add shell integration for bash
2021-08-18 10:06:06 +05:30
Kovid Goyal
6e172bdc09
Fix cursor in zsh vicmd mode
2021-08-18 10:06:06 +05:30
Kovid Goyal
725ec57bee
Automatically setup shell integration for ZSH
2021-08-18 10:06:06 +05:30
Kovid Goyal
2263cd1355
Use a _ksi_ prefix for shell integration
...
Sadly function in zsh are global so prefix all function and global var
names with _ksi_ as poor mans namespacing.
2021-08-18 10:06:05 +05:30
Kovid Goyal
1bb87c71aa
Make all shell integrations disablable
2021-08-18 10:06:05 +05:30
Kovid Goyal
7dec7d615a
Use an env var to control shell integration
2021-08-18 10:06:05 +05:30
Kovid Goyal
2e5308ad40
Use an associative array for prompt data
2021-08-18 10:06:05 +05:30
Kovid Goyal
d1015de700
Workaround for base64 on linux inserting line breaks by default
2021-08-18 10:06:05 +05:30
Kovid Goyal
85f6d3fed8
Use PS1 to set the prompt start mark
...
Needed as precmd functions are not called when redrawing the prompt. As
far as I can tell zsh stupidly has no hook that is called when the
prompt is redrawn after a window resize or when a background job
finishes.
2021-08-18 10:06:05 +05:30
Kovid Goyal
a4925eeeb4
...
2021-08-18 10:06:05 +05:30
Kovid Goyal
46b9aca16e
Start work on shell integration
2021-08-18 10:06:04 +05:30