lune

created pr with 124.1 on 2026-04-22T02:46:44Z · by 613b58b7
changed status to closed on 2026-06-21T16:45:31Z · by 66ddd677
Closing as superceded by 126
cmds
checkout latest patchset:
ssh pr.pico.sh print 124 | git am -3
checkout any patchset in a patch request:
ssh pr.pico.sh print 124.[rev] | git am -3
add changes to patch request:
git format-patch main --stdout | ssh pr.pico.sh pr add 124
set PR to open (enables RSS notifications):
ssh pr.pico.sh pr open 124
set PR to draft (stops RSS notifications):
ssh pr.pico.sh pr draft 124

Patchset 124.1 on 2026-04-22T02:46:44Z · commit 68940e8

listing real name of tasks
juan 2026-04-21T03:21:16Z
construction of db for management of decrypted names of tasks
juan 2026-04-21T05:43:09Z
fix UTF8 chracteres
juan 2026-04-21T21:13:24Z
filter by status and coloring types of status
juan 2026-04-21T21:18:53Z
update help
juan 2026-04-21T21:21:36Z
list areas names
juan 2026-04-21T21:44:53Z
adjust table tasks to truncate name and list area
juan 2026-04-21T21:56:40Z
partial implementation of listing tasks by areas
juan 2026-04-21T22:05:20Z
final implementation of listing tasks by areas with UTF-8 chracteres
juan 2026-04-21T22:10:20Z
sort on task list to show first do now
juan 2026-04-21T22:33:29Z
update with 8 char of id and db.go
juan 2026-04-21T23:27:54Z
partial implementation of TUI menu on task update
juan 2026-04-21T23:35:35Z
task name correcion on TUI menu of Update task
juan 2026-04-21T23:38:19Z
TUI menu for update task with others flags
juan 2026-04-21T23:43:02Z
helper for TUI update task
juan 2026-04-21T23:49:56Z
search by first 8 char of note id for editing it
juan 2026-04-22T00:00:17Z
partial implementation on note TUI menu for update
juan 2026-04-22T00:05:46Z
TUI menu notebook just with tags
juan 2026-04-22T00:20:55Z
Note update now let you insert only the first 8 char of notebook id in update
juan 2026-04-22T00:25:53Z
implementation of (lune note notebook-list) for listing all notebooks and its ID
juan 2026-04-22T01:10:51Z
partial implementation of lune note show-content ID
juan 2026-04-22T02:01:11Z
convert \n in new line and \ in space for lune note show-content ID
juan 2026-04-22T02:18:42Z
+10 -0 cmd/note/interactive.go #
......@@ -26,10 +26,16 @@ func runUpdateInteractive(cmd *cobra.Command, note *lunatask.Note, builder *luna
2626 dateStr = note.DateOn.Time.Format("2006-01-02")
2727 }
2828
29+ notebookID := ""
30+ if note.NotebookID != nil {
31+ notebookID = *note.NotebookID
32+ }
33+
2934 form := huh.NewForm(
3035 huh.NewGroup(
3136 huh.NewInput().Title("Note Name").Value(&name),
3237 huh.NewInput().Title("Date (YYYY-MM-DD)").Value(&dateStr),
38+ huh.NewInput().Title("Notebook ID").Value(&notebookID),
3339 ),
3440 )
3541
......@@ -38,6 +44,10 @@ func runUpdateInteractive(cmd *cobra.Command, note *lunatask.Note, builder *luna
3844 }
3945
4046 builder.WithName(name)
47+ if notebookID != "" {
48+ resolvedNotebookID := db.CompleteID(notebookID)
49+ builder.InNotebook(resolvedNotebookID)
50+ }
4151
4252 return nil
4353 }
+15 -7 cmd/note/list.go #
......@@ -214,27 +214,34 @@ func outputTableEnriched(cmd *cobra.Command, notes []enrichedNote) error {
214214 notebookName = notebookName[:8] + "..."
215215 }
216216
217- rows = append(rows, []string{note.ID[:8], name, notebookName, dateOn, pinned})
218- }
217+ notebookIDShort := ""
218+ if note.NotebookID != nil {
219+ notebookIDShort = (*note.NotebookID)[:8]
220+ }
219221
220- tbl := table.New().
221- Headers("ID", "NAME", "NOTEBOOK", "DATE", "📌").
222+ rows = append(rows, []string{note.ID[:8], name, notebookName, dateOn, pinned, notebookIDShort})
223+ }
224+
225+ tbl := table.New().
226+ Headers("ID", "NAME", "NOTEBOOK", "DATE", "📌", "NB-ID").
222227 Rows(rows...).
223228 StyleFunc(func(row, col int) lipgloss.Style {
224229 style := lipgloss.NewStyle()
225-
230+
226231 // Set column widths via style
227232 switch col {
228233 case 0: // ID
229234 style = style.Width(10)
230235 case 1: // NAME
231- style = style.Width(35)
236+ style = style.Width(30)
232237 case 2: // NOTEBOOK
233238 style = style.Width(15)
234239 case 3: // DATE
235240 style = style.Width(12)
236241 case 4: // PIN
237242 style = style.Width(5)
243+ case 5: // NB-ID
244+ style = style.Width(10)
238245 }
239246
240247 if row == table.HeaderRow {
......@@ -243,7 +250,8 @@ func outputTableEnriched(cmd *cobra.Command, notes []enrichedNote) error {
243250
244251 return style
245252 }).
246- Border(ui.TableBorder()).
253+ Border(ui.TableBorder())
254+.
247255 BorderRow(true)
248256
249257 fmt.Fprintln(cmd.OutOrStdout(), tbl.Render())
+7 -2 cmd/note/update.go #
......@@ -120,14 +120,19 @@ func applyUpdateNotebook(cmd *cobra.Command, builder *lunatask.NoteUpdateBuilder
120120 return nil
121121 }
122122
123+ // Try resolving notebook via complete ID first
124+ notebookID := db.CompleteID(notebookKey)
125+
123126 cfg, err := config.Load()
124127 if err != nil {
125128 return err
126129 }
127130
128- notebook := cfg.NotebookByKey(notebookKey)
131+ notebook := cfg.NotebookByKey(notebookID)
129132 if notebook == nil {
130- return fmt.Errorf("%w: %s", ErrUnknownNotebook, notebookKey)
133+ // Fallback to ID directly if not found by key
134+ builder.InNotebook(notebookID)
135+ return nil
131136 }
132137
133138 builder.InNotebook(notebook.ID)
Back to top