Comments (3)
Good evening and thank you for the suggestion!
This could be easily implemented. A little note of historical relevance: when I initially started developing and using the plugin for myself only, I did in fact defaulted the behaviour to automatically create a directory/file path if the current specified location is empty. However, when I decided to expose it to a larger audience, I came to the conclusion that such behaviour might be a little risky and may open the flood gates for all possible misuses (accidental or malicious): a third party plugin should not create a path on the users' computer - creating paths may require/circumvent users' permissions and be possible only for root users on certain machines and so forth; I decided that at most we create a session file provided the user already has the path, i. e. provided the user already consented to create the path on their own machine by doing so themselves (a vim session file contains little to nothing that can be maliciously injected, hence that is fine to create).
As I said, I am somehow "technically" open to the idea but I am not convinced this is the right direction for the scope of a plugin. Let us keep the issue open in case other users chip in, if the vast majority are fine and do not really care about creating/deleting paths automatically I am more than happy to re-default back to auto-creation if the path does not exist :)
from nvim-possession.
Thanks for the thoughtful response. I understand where you're coming from. There might be some ways to address your concern though, like providing a configuration option that users can set to indicate that they would like the config path to be auto-created. The benefit of doing it that way would be that it would have to be done explicitly with the implicit understanding that the plugin would touch the filesystem.
from nvim-possession.
I added this to my lazy config and it seems to work:
build = function()
local sessions_path = vim.fn.stdpath("data") .. "/sessions"
if vim.fn.isdirectory(sessions_path) == 0 then
vim.uv.fs_mkdir(sessions_path, 511) -- 0777
end
end,
from nvim-possession.
Related Issues (20)
- Switch session will clean up buffers from current session? HOT 8
- Decouple fzf-lua to a plugin? HOT 2
- nvim-tree not loading when restoring a session HOT 9
- Replace "new" and "update" with just "save", buggy when launched at start HOT 7
- About vimscript configuration issues HOT 11
- tag the rockspec with the "neovim" label. HOT 4
- Expose a delete() function HOT 6
- Bad filepath error (No such file or directory) HOT 24
- Files that are deleted still shows in session file. HOT 11
- The autoload setting makes the loaded buffer innactive HOT 1
- How to "close" session? HOT 9
- Breaks on terminal HOT 14
- Bug in README with lualine HOT 2
- Plugin doesn't work HOT 9
- autoload cause double lualine in lazyvim HOT 4
- Close session HOT 9
- autoload doesn't work HOT 7
- I get an error when calling the setup function: Vim:E499: Empty file name for '%' or '#', only works with ":p:h" HOT 1
- I have a text on the top that I don't know how to turn off HOT 2
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 nvim-possession.