Comments (4)
Sorry for the delay @ludwigkraatz - I'm not an engineer but chatted with another maintainer so wanted to share what I learned (at a high level); basically, workspace.open is really expecting to open a local file on disk. If that's the case, Atom should be able to handle the rest.
In your case, it looks like you have custom code because you want to work with data from a database - but since it's not just a plain file, it's expected that you would need to use custom code rather than relying directly on text-buffer.
I might not have explained things super well but if you want to talk more about your code the best place to go for help is the Atom Slack or the official message board. We'll close for now since it's not clear that this is a problem with text-buffer but can always reopen or create a new issue if there's a confirmed problem.
from text-buffer.
from text-buffer.
There are two scenarios that atom.workspace.open
is currently designed to handle:
atom.workspace.open('filename.txt')
-- Open a file that exists on disk, which instantiates aTextEditor
object backed by aTextBuffer
atom.workspace.open('scheme://some-path')
-- Find the opener that matches and was previously registered viaaddOpener
, which instantiates its own view and model (for an example, see the implementation in markdown-preview)
It sounds like what you're describing is a hybrid of the two, where you want to open something that doesn't exist on disk but you want the standard TextEditor
/TextBuffer
objects to handle everything other than the data layer. If you want something like that to happen, then you'll have to register an opener and create the TextEditor
, TextBuffer
(backed by the custom File
object), and whatever else you need by hand.
I hope that helps and let me know if I misunderstood anything.
from text-buffer.
from text-buffer.
Related Issues (20)
- Unsaved files reloaded from state don't set modified flag correctly
- After update to 1.14.2 issues with opening large files HOT 7
- text-buffer does not install on Windows HOT 3
- Replacing multiple characters with newlines in a scanInRange only replaces the first occurence HOT 5
- Regular expressions containing \W are multi line.
- TextBuffer v13 fires spurious conflict & reload events HOT 1
- Flaky test - TextBuffer IO when the file changes on disk does not fire duplicate change events when multiple changes happen on disk
- onDidStopChanging and undo Regression in Atom 1.19.4 HOT 4
- existsSync method is necessary; should be reflected in comment HOT 3
- Tracking undo-redo actions HOT 1
- API documentation references DisplayLayer, which is not public
- Missing stub method 'scopeDescriptorForPosition' in NullLanguageMode HOT 1
- 'did-change-text' event is not fired on empty("") to empty("") change after PR#274 HOT 11
- DisplayLayer.updateSpatialIndex error HOT 1
- undo/redo within transact
- Implementing capture groups HOT 1
- TextBuffer makes vim word motion painfully slow in large file HOT 2
- h HOT 1
- NullHighlightIterator defines getOpenTags/getCloseTags, but everywhere else it's getOpenScopeIds/getCloseScopeIds
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 text-buffer.