krz/orgstar

A native macOS editor for org-mode files. editor org-mode swift

Commit 7180dc5806

7180dc5806624dd8349652219cb98a995b6386a1

parent: 0cc0e6b91b

Verified · cmc

cmc <hello@cleberg.net> · 2026-10-07 03:22 UTC

iOS clock message above the tab bar; README brought up to date

The clock bar's messages show in a capsule above the tab bar, clear of
every screen's toolbar. The README describes the iOS app as it now is and
mentions tangling.

Layout: unified · split

README.md +9 −5
@@ -1,15 +1,16 @@
11# Orgstar
22
3A native macOS editor for org-mode files, with an iOS app for the agenda and capture.
3A native macOS editor for org-mode files, with an iOS app for iPhone and iPad.
44
55The files are the source of truth: Orgstar edits them in place and leaves
66every byte you didn't change as it was, so Emacs and sync tools can work on
77the same folder.
88
99Status: macOS v1, design phases 1–6: editing with Emacs, Mac and Doom keys,
10agenda, table formulas, Babel, export, capture, clocking, board, themes and
11buffers. Owed: the M1 Air gate run and the VoiceOver check. iOS (phase 7):
12agenda and capture, Simulator builds only so far.
10agenda, table formulas, Babel and tangling, export, capture, clocking, board,
11themes and buffers. Owed: the M1 Air gate run and the VoiceOver check. iOS
12(phase 7): the editor, agenda, capture, search, clocking, reminders, export
13and tangling, Simulator builds only so far.
1314
1415## Build and run
1516
@@ -25,12 +26,15 @@ searches, ⇧⌘A shows the agenda. In the editor, TAB on a heading cycles its
2526folding and Shift-TAB cycles the whole file. Orgstar opens `.org` files from
2627Finder once the app has been launched.
2728
29C-c C-v t tangles the file's source blocks into the files their `:tangle`
30header names, as `org-babel-tangle` does.
31
2832`org-protocol://capture?template=…&url=…&title=…&body=…` and
2933`org-protocol://store-link?url=…&title=…` links work as in Emacs, so browser
3034bookmarklets written for org-protocol work unchanged. Shortcuts has a
3135"Capture to Orgstar" action that files text with a capture template.
3236
33The iOS app (agenda and capture, iOS 26) builds for the Simulator:
37The iOS app (iOS 26) builds for the Simulator:
3438
3539```sh
3640scripts/build-ios-app.sh # builds .build/ios-app/Orgstar.app
Sources/OrgstarMobile/OrgstarMobileApp.swift +5 −2
@@ -132,9 +132,12 @@ struct RootView: View {
132132 }
133133 }
134134 .clockAccessory(model.clock.running, perform: clock)
135 .overlay(alignment: .top) {
135 // Above the tab bar, clear of every screen's toolbar.
136 .overlay(alignment: .bottom) {
136137 if let message {
137 Text(message).font(.callout).padding(8).frame(maxWidth: .infinity).background(.bar)
138 Text(message).font(.callout).padding(.horizontal, 14).padding(.vertical, 8)
139 .background(.regularMaterial, in: Capsule())
140 .padding(.bottom, 150)
138141 .onTapGesture { self.message = nil }
139142 .task(id: message) {
140143 try? await Task.sleep(for: .seconds(4))