Comments (9)
I generally don't recommend also using the same z cache file across computers, the cache tends to build up quickly too so in practice it hasn't really affected me. It's also difficult/impossible to support the workaround you suggested, dealing with ~
is tricky: see #70
from z.
from z.
May it be possible to keep that file computer-independent? (So that it can be synchronised across computers)
No, fish autoexpands ~
, so the variables inside will always be absolute paths.
I too use fish across multiple computers, and I don't synchronize the fish_variables
file, and I don't think it's meant to be used that way. If you have custom variables you need to set, consider making a custom plugin for them. This could just be set -U
directives in a file in the conf.d
folder.
from z.
No, fish autoexpands ~, so the variables inside will always be absolute paths.
I was thinking to put those variables somewhere else
I too use fish across multiple computers, and I don't synchronize the fish_variables file, and I don't think it's meant to be used that way. If you have custom variables you need to set, consider making a custom plugin for them. This could just be set -U directives in a file in the conf.d folder.
I opened an issue about it yesterday (fish-shell/fish-shell#5870) (I didn't know that the "problem" were the configuration variables of z
in the fish_variables
)
They confirmed that moving the entire .config/fish
should word, and the fish_variable
has been introduced exactly to be computer-independent:
Since 3.0 it's named fish_variables, so it's machine-independent by default.
However I'll ask in a more direct way there
from z.
I was thinking to put those variables somewhere else
this plugin doesn't set that manually. It does however call a set
directive, which in turn gets the variable value stored in the fish_variables
file. faho is not wrong in that the behaviour in fish is that fish_variables
is machine-independent by default there.
What I'm saying is that because fish expands paths automatically, it's impossible as far as I know to set the variables to relative paths in a manner that is guaranteed to work across all machines. For this particular plugin, that's just the compromise we have to put up with.
The alternative to the variable is hard-coding the locations of each of the files of course, but that's not exactly the fix I had in mind.
from z.
Got it. I didn't know how set
works.
The only alternative that I can think of is to do another configuration file .config/fish/.z
, but I'm not sure if it's the right way to proceed
from z.
If you're using fisherman, the way I do it, and many others, is to only sync the fishfile
across the computers. Then, running fisher
on both machines should pull down the same plugins and result in the exact same setup.
For example, mine looks like this: https://github.com/jethrokuan/dotfiles/tree/master/fish/.config/fish
from z.
Yeah, I'll manage somehow. Probably I'll move the colors definitions into the conf.d
as you suggested
from z.
Closing for now, feel free to reopen if you have any more suggestions.
from z.
Related Issues (20)
- Index lost HOT 3
- cached Z_DATA path not portable HOT 4
- z "A" goes to subdir "A/B" HOT 1
- Doesn't work with paths with hyphens in them HOT 4
- Completions shipped in dir incompatible with fisher 4 HOT 5
- Feature request: `-c` option (restrict matches to subdirectories of the current directory) HOT 1
- z fails to install HOT 1
- z index forgot after reboot
- z vs zoxide HOT 3
- Z_DATA file is not updating
- Freezes on MacOS? HOT 4
- Z error when launching fish from PyCharm HOT 8
- Ability to retain a larger history of directories HOT 5
- Feature request - add a directory without cding HOT 3
- Z_CMD reset by fisher refresh HOT 8
- fish 3.1.0: __z --list | fzy results in tcsetattr error HOT 4
- in centos7.4 bash: argparse: command not found... HOT 3
- Support using fzf to pick a previous directory via keybinding HOT 1
- Tab completion should be in order of relevance HOT 3
- Match shortest?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from z.