Skip to content
This repository has been archived by the owner on Dec 15, 2022. It is now read-only.

Enhancement: Saving a read-only file #107

Open
tmazur opened this issue Oct 20, 2015 · 4 comments
Open

Enhancement: Saving a read-only file #107

tmazur opened this issue Oct 20, 2015 · 4 comments

Comments

@tmazur
Copy link

tmazur commented Oct 20, 2015

Saving a read-only file in Atom is not possible, it results in an error (Atom Issue #9056). I looked into implementing such a feature, text-buffer seems to be a good place. Please take a look at my implementation. My question is:

  1. Is text-buffer an appropriate place for this functionality?
  2. I would like to avoid checking the read-only attribute prior to every save operation, which is why my implementation does this when a save fails. This works quite well, the only problem being that the error message in Atom is still visible. I don't see any obvious/clean way of suppressing this error message. If anyone has an idea, please let me know.
@rrohrer
Copy link

rrohrer commented Jan 4, 2016

I'm assuming if you don't re-throw the error it won't get displayed. In the catch block check that it's the error you're looking for then eat it IFF the user returns yes on the dialog.

I hope you're still planning on checking this in (once you fix that) It's a feature I know a TON of people want.

@tmazur
Copy link
Author

tmazur commented Jan 4, 2016

fs.stat() returns the result in a callback function, so I would have to save the exception, and wait for the result of fs.stat. Then, if the user did not confirm overwrite I could rethrow the exception from that callback. For some reason this did not seem to work, I was getting unhandled promise rejection errors.

@rrohrer
Copy link

rrohrer commented Jan 4, 2016

Precedence in coffeescript is a little strange, make sure .catch is getting a function passed into it.

@kaloth
Copy link

kaloth commented Aug 25, 2020

This would be really nice. Since I work with Perforce all files are readonly and it's quite burdensome to have to keep switching to the Perforce interface or command line tools to unlock them.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants