| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
Also a little test program to demo channels in action.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
They make it seem like you can use them to create simple REPL apps, but
you can't, because standard Teliva shortcuts won't work.
I _could_ make them work by emulating them using getch(), but that feels
like an unnecessary abstraction for now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I introduced this ability when I packaged up the lfs directory, but it
can enable apps to circumvent sandboxing rules in some situations. If
you can socially engineer someone to allow reading a file called
'passwd' in the current directory, you can now change directory to /etc
and read something sensitive.
Protecting against stuff like this gets subtle. It's easy for people to
create policies that aren't robust to changing directories. Requiring
absolute paths is also pretty unfriendly. So the whole notion of current
directory is perhaps implicit state that is confusing to manage. Fix it
in the context of a single session.
|
| |
|
| |
|
|
|
|
| |
For starters, drop some redundant prose here.
|
|
|
|
| |
They aren't evaluating strings after all.
|
| |
|
|
|
|
|
|
| |
This is for what the app does, as opposed to 'doc:main', which is also
intended to include commentary about the internal organization of the
app.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
When I started logging getch() events (which are just to help the reader
orient on the log), this suddenly became more urgent.
Now the log is larger, and it's also a circular buffer that rolls back
to the start when it fills up.
The next failure mode will be if we see the buffer filled up with just
getch() calls, reducing visibility over real file and network
operations. In which case we'll need to start coalescing getch() events.
|
|
|
|
| |
Need for tests growing more acute..
|
| |
|
|
|
|
| |
This snapshot was demoed at https://archive.org/details/akkartik-teliva-2022-02-10
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We also made render dynamic, showing zettels in the first place it
encounters them in depth-first order.
Open question: how to show a collapsed outline view with the data model
I'm experimenting with. Not even clear 'outline' has meaning in the
presence of cross-links. Outliners privilege one view of the network.
Zettelkasten also does so; changing child/sibling relationships is a lot
of work. However, reading between the links it seems to try to provide
an escape hatch for rethinking connections using cross-links. I'm trying
to lean into that -- at the cost of providing outlines. We'll see if
this is a good trade-off.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Conundrum:
I want the app to provide some sample data for people to interact with.
However, I also want them to be able to delete it to make it their own.
BUT I'm not yet convinced the app should allow deletion in general.
Besides, deleting stuff robustly and reliably is a whole other level of
programming.
Solution:
Make people edit the app to clear the initial sample zettels.
This has the "beneficial" side-effect of getting them editing apps on
Teliva.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This will eliminate some spurious git diffs I keep having to clean up.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Still won't show up in view mode for now. Soon we'll be able to adjust
zettel dimensions.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The problem I'm running into is that apps might want to perform their
own editing. So I can't take up prime estate like the ctrl-e hotkey or a
menu name of 'edit'.
I'm still prioritizing rendering Teliva's edit and permissions menu. If
the window is too narrow the app's settings will be overwritten and
Teliva's hotkeys will be preferentially displayed. Seems safer.
|
| |
|
| |
|
|
|
|
| |
https://fosdem.org/2022/schedule/event/lastmilesandboxing
|
|
|
|
| |
Also a minor edit in doc:main.
|