Documentation
¶
Overview ¶
Copyright © 2024 Francesco Andreuzzi <andreuzzi.francesco@gmail.com>
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var AddCmd = &cobra.Command{ Use: "add url", Short: "Add a new bookmark", Args: cobra.ExactArgs(1), RunE: func(cmd *cobra.Command, args []string) error { url := args[0] title, titleErr := getWebpageTitle(url) if titleErr != nil { return titleErr } request := entity.BookmarkCreationRequest{Url: url, Title: title} bookmark, dbErr := model.CreateBookmark(request) if dbErr != nil { return dbErr } fmt.Println(bookmark.String()) return nil }, }
View Source
var BookmarkCmd = &cobra.Command{
Use: "bookmark",
Short: "Manage bookmarks",
}
View Source
var DeleteCmd = &cobra.Command{ Use: "delete bookmarkId", Short: "Delete a bookmark", Args: cobra.ExactArgs(1), RunE: func(cmd *cobra.Command, args []string) error { id, err := strconv.ParseUint(args[0], 10, 64) if err != nil { return err } return model.DeleteBookmarkById(id) }, }
View Source
var ListCmd = &cobra.Command{ Use: "list { tagLabel | tagId } ...", Short: "List saved bookmarks", ValidArgsFunction: func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) { keys := tagsTrie.Search(toComplete, 5) return keys, cobra.ShellCompDirectiveNoFileComp }, RunE: func(cmd *cobra.Command, args []string) error { bookmarks, err := model.ListBookmarks(removeDuplicate(args)) if err != nil { return err } for _, b := range bookmarks { fmt.Println(b.String()) } return nil }, }
View Source
var TagCmd = &cobra.Command{ Use: "tag bookmarkId { tagLabel | tagId } ...", Short: "Tag a bookmark", Args: cobra.MinimumNArgs(1), RunE: func(cmd *cobra.Command, args []string) error { bookmarkId, err := strconv.ParseUint(args[0], 10, 64) if err != nil { return err } for i := 1; i < len(args); i++ { var err error tagId, err := strconv.ParseUint(args[i], 10, 64) if err == nil { request := entity.TagAssignationRequest{TagId: tagId, BookmarkId: bookmarkId} _, err = model.AssignTagById(request) } else { request := entity.TagAssignationByLabelRequest{TagLabel: args[i], BookmarkId: bookmarkId} _, err = model.AssignTagByLabel(request) } if err != nil { return err } } return nil }, }
View Source
var UntagCmd = &cobra.Command{ Use: "untag bookmarkId { tagLabel | tagId } ...", Short: "Untag a bookmark", Args: cobra.MinimumNArgs(1), RunE: func(cmd *cobra.Command, args []string) error { bookmarkId, err := strconv.ParseUint(args[0], 10, 64) if err != nil { return err } for i := 1; i < len(args); i++ { var err error tagId, err := strconv.ParseUint(args[i], 10, 64) if err != nil { request := entity.TagAssignationByLabelRequest{TagLabel: args[i], BookmarkId: bookmarkId} err = model.UnassignTagByLabel(request) } else { request := entity.TagAssignationRequest{TagId: tagId, BookmarkId: bookmarkId} err = model.UnassignTagById(request) } if err != nil { return err } } return nil }, }
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.