1BUKU(1) User Commands BUKU(1)
2
3
4
6 buku - Bookmark manager like a text-based mini-web
7
9 buku [OPTIONS] [KEYWORD [KEYWORD ...]]
10
12 buku is a command-line utility to store, tag, search and organize book‐
13 marks.
14
15 Features
16
17 * Store bookmarks with auto-fetched title, tags and description
18 * Auto-import from Firefox, Google Chrome and Chromium
19 * Open bookmarks and search results in browser
20 * Shorten, expand URLs, browse cached page from Wayback Machine
21 * Text editor integration
22 * Lightweight, clean interface, custom colors
23 * Powerful search options (regex, substring...)
24 * Continuous search with on the fly mode switch
25 * Portable, merge-able database to sync between systems
26 * Import/export bookmarks from/to HTML, Markdown or Orgfile
27 * Smart tag management using redirection (>>, >, <<)
28 * Multithreaded full DB refresh, manual encryption support
29 * Shell completion scripts, man page with handy examples
30
32 1. The database file is stored in:
33 - $XDG_DATA_HOME/buku/bookmarks.db, if XDG_DATA_HOME is defined
34 (first preference), or
35 - $HOME/.local/share/buku/bookmarks.db, if HOME is defined (sec‐
36 ond preference), or
37 - %APPDATA%\buku\bookmarks.db, if you are on Windows, or
38 - the current directory.
39
40 2. If the URL contains characters like ';', '&' or brackets they may
41 be interpreted specially by the shell. To avoid it, add the URL
42 within single or double quotes ('/").
43
44 3. URLs are unique in DB. The same URL cannot be added twice.
45
46 4. Bookmarks with immutable titles are listed with '(L)' after the ti‐
47 tle.
48
49 5. Tags:
50 - Comma (',') is the tag delimiter in DB. A tag cannot have
51 comma(s) in it. Tags are filtered (for unique tags) and sorted.
52 Tags are stored in lower case and can be replaced, appended or
53 deleted.
54 - Page keywords having a word to comma ratio > 3 are appended to
55 description rather than tags.
56 - Parent folder (and subfolder) names are converted to all-lower‐
57 case tags during bookmarks HTML import.
58 - Releases prior to v2.7 support both capital and lower cases in
59 tags. From v2.7 all tags are stored in lowercase. An undocumented
60 option --fixtags is introduced to modify the older tags. It also
61 fixes another issue where the same tag appears multiple times in
62 the tagset of a record. Run buku --fixtags once.
63 - Tags can be edited from the prompt very easily using '>>' (ap‐
64 pend), '>' (overwrite) and '<<' (remove) symbols. The LHS of the
65 operands denotes the indices and ranges of tags to apply (as listed
66 by --tag or key 't' at prompt) and the RHS denotes the actual DB
67 indices and ranges of the bookmarks to apply the change to.
68
69 6. Update operation:
70 - If --title, --tag or --comment is passed without argument,
71 clear the corresponding field from DB.
72 - If --url is passed (and --title is omitted), update the title
73 from web using the URL. Description is updated (if --comment is
74 omitted). Tags remain untouched.
75 - If indices are passed without any other options (--url, --ti‐
76 tle, --tag, --comment and --immutable), read the URLs from DB and
77 update titles, description and append tags from web. Bookmarks
78 marked immutable are skipped.
79 - Can update bookmarks matching a search, when combined with any
80 of the search options and no arguments to update are passed.
81
82 7. Delete operation:
83 - When a record is deleted, the last record is moved to the in‐
84 dex.
85 - Delete doesn't work with range and indices provided together as
86 arguments. It's an intentional decision to avoid extra sorting, in-
87 range checks and to keep the auto-DB compaction functionality in‐
88 tact. On the same lines, indices are deleted in descending order.
89 - Can delete bookmarks matching a search, when combined with any
90 of the search options and no arguments to delete are passed.
91
92 8. Search works in mysterious ways:
93 - Case-insensitive.
94 - Matches words in URL, title and tags.
95 - --sany : match any of the keywords in URL, title or tags. De‐
96 fault search option.
97 - --sall : match all the keywords in URL, title or tags.
98 - --deep : match substrings (`match` matches `rematched`) in URL,
99 title and tags.
100 - --sreg : match a regular expression (ignores --deep).
101 - --stag : search bookmarks by tags, or list all tags alphabeti‐
102 cally with usage count (if no arguments). Delimit the list of tags
103 in the query with `,` to search for bookmarks that match ANY of the
104 listed tags. Delimit tags with `+` to search for bookmarks that
105 match ALL of the listed tags. Note that `,` and `+` cannot be used
106 together in the same search. Exclude bookmarks matching certain
107 tags from the results by using ` - ` followed by the tags. Note
108 that the ` - ` operator and the ` + ` delimiter must be space sepa‐
109 rated: ` - ` instead of `-` and ` + ` instead of `+`. This is to
110 distinguish them from hyphenated tags (e.g., `some-tag-name`) and
111 tags with '+'s (e.g., `some+tag+name`).
112 - Search for keywords along with tag filtering is possible. Two
113 searches are issued (one for keywords and another for tags) and the
114 intersection of the 2 sets is returned as the resultset.
115 - Search results are indexed incrementally. This index is differ‐
116 ent from actual database index of a bookmark record which is shown
117 within '[]' after the title.
118 - Results for any keyword matches are ordered by the number of
119 keyword matches - results matching more keywords (match score) will
120 appear earlier in the list. Results having the same number of
121 matches will be ranked by their record DB index. If only one key‐
122 word is searched, results will be ordered by DB index, since all
123 matching records will have the same match score.
124
125 9. Import:
126 - Auto-import looks in the default installation path and default
127 user profile.
128 - URLs starting with `place:`, `file://` and `apt:` are ignored
129 during import.
130 - Parent folder (and subfolder) names are automatically imported
131 as tags if --tacit is used.
132 - Tags are merged even if bookmark URL exists when --tacit is
133 used.
134
135 10. Encryption is optional and manual. AES256 algorithm is used. To use
136 encryption, the database file should be unlocked (-k) before using
137 buku and locked (-l) afterwards. Between these 2 operations, the
138 database file lies unencrypted on the disk, and NOT in memory.
139 Also, note that the database file is unencrypted on creation.
140
141 11. Editor support:
142 - A single bookmark can be edited before adding. The editor can
143 be set using the environment variable *EDITOR* or by explicitly
144 specifying the editor. The latter takes precedence. If -a is used
145 along with -w, the details are populated in the editor template.
146 - In case of edit and update (a single bookmark), the existing
147 record details are fetched from DB and populated in the editor tem‐
148 plate. The environment variable EDITOR must be set. Note that -u
149 works independently of -w.
150 - All lines beginning with "#" will be stripped. Then line 1 will
151 be treated as the URL, line 2 will be the title, line 3 will be
152 comma separated tags, and the rest of the lines will be parsed as
153 descriptions.
154
155 12. Proxy support: please refer to the ENVIRONMENT section.
156
157 13. Alternative DB file:
158 - The option --db (to specify an alternative database file loca‐
159 tion) is app-only. Manual usage is prone to issues arising from hu‐
160 man error.
161 - Note that this option is useful if you want to store the db
162 file in cloud synced location. Another mechanism could be to have
163 the db file synced and create a symlink to it at the default loca‐
164 tion.
165
167 -a --add URL [tag, ...]
168 Bookmark URL along with comma-separated tags. A tag can have
169 multiple words.
170
171 -u --update [...]
172 Update fields of the bookmarks at specified indices in DB. If no
173 arguments are specified, all titles and descriptions are re‐
174 freshed from the web. Tags remain untouched. Works with update
175 modifiers for the fields url, title, tag and comment. If only
176 indices are passed without any edit options, titles and descrip‐
177 tions are fetched and updated (if not empty). Accepts hyphenated
178 ranges and space-separated indices. Updates search results when
179 used with search options, if no arguments.
180
181 -w --write [editor|index]
182 Edit a bookmark in editor before adding it. To edit and update
183 an existing bookmark, the index should be passed. However, in
184 this case the environment variable EDITOR must be set. The last
185 record is opened in EDITOR if index=-1.
186
187 -d --delete [...]
188 Delete bookmarks. Accepts space-separated list of indices (e.g.
189 5 6 23 4 110 45) or a single hyphenated range (e.g. 100-200).
190 Note that range and list don't work together. Deletes search re‐
191 sults when combined with search options, if no arguments.
192
193 -v --version
194 Show program version and exit.
195
196 -h --help
197 Show program help and exit.
198
200 --url [...]
201 Specify the URL, works with --update only. Fetches and updates
202 title if --title is not used.
203
204 --tag [+|-] [...]
205 Specify comma separated tags, works with --add, --update. Clears
206 the tags, if no arguments passed. Appends or deletes tags, if
207 list of tags is preceded by '+' or '-' respectively.
208
209 --title [...]
210 Manually specify the title, works with --add, --update. Omits or
211 clears the title, if no arguments passed.
212
213 -c --comment [...]
214 Add notes or description of the bookmark, works with --add,
215 --update. Clears the comment, if no arguments passed.
216
217 --immutable N
218 Set the title, description and tags of a bookmark immutable dur‐
219 ing autorefresh. Works with --add, --update. N=1 sets the im‐
220 mutable flag, N=0 removes it. If omitted, bookmarks are added
221 with N=0.
222
224 -s --sany keyword [...]
225 Search bookmarks with ANY of the keyword(s) in URL, title or
226 tags and show the results. Prompts to enter result number to
227 open in browser. Note that the sequential result index is not
228 the DB index. The DB index is shown within '[]' after the title.
229 This is the default search option for positional arguments if no
230 other search option is specified.
231
232 -S --sall keyword [...]
233 Search bookmarks with ALL keywords in URL, title or tags and
234 show the results. Behaviour same as --sany.
235 Special keywords:
236 "blank": list entries with empty title/tag
237 "immutable": list entries with locked title
238 NOTE: To search the keywords, use --sany
239
240 --deep Search modifier to match substrings. Works with --sany, --sall.
241
242 -r --sreg expression
243 Scan for a regular expression match.
244
245 -t --stag [tag [,|+] ...] [- tag, ...]
246 Search bookmarks by tags.
247 Use ',' delimiter to find entries matching ANY of the tags
248 Use ' + ' delimiter to find entries matching ALL of the tags.
249 (Note that the ' + ' delimiter must be space separated)
250 NOTE: Cannot combine ',' and '+' in the same search
251 Use ' - ' to exclude bookmarks that match the tags that follow.
252 (Note that the '-' operator must be space separated).
253 List all tags alphabetically, if no arguments. The usage count
254 (number of bookmarks having the tag) is shown within first
255 brackets.
256
257 -x --exclude keyword [...]
258 Exclude bookmarks matching the specified keywords. Works with
259 --sany, --sall, --sreg and --stag.
260
262 -l --lock [N]
263 Encrypt (lock) the DB file with N (> 0, default 8) hash passes
264 to generate key.
265
266 -k --unlock [N]
267 Decrypt (unlock) the DB file with N (> 0, default 8) hash passes
268 to generate key.
269
271 --ai Auto-import bookmarks from Firefox, Google Chrome and Chromium
272 browsers.
273
274 -e --export file
275 Export bookmarks to Firefox bookmarks formatted HTML. Works with
276 all search options.
277 Markdown is used if file has extension '.md'. Markdown format:
278 [title](url), 1 entry per line.
279 Orgfile is used if file has extension '.org' Orgfile format: *
280 [[url][title]], 1 entry per line.
281 A buku database is generated if file has extension '.db'.
282
283 -i --import file
284 Import bookmarks from Firefox bookmarks formatted HTML. file is
285 considered Firefox-exported JSON if it has '.json' extension,
286 Markdown (compliant with --export format) if it is '.md',
287 Orgfile if the extension is '.org' or another buku database if
288 the extension is '.db'.
289
290 -p --print [...]
291 Show details (DB index, URL, title, tags and comment) of book‐
292 mark record by DB index. If no arguments, all records with ac‐
293 tual index from DB are shown. Accepts hyphenated ranges and
294 space-separated indices. A negative value (introduced for conve‐
295 nience) behaves like the tail utility, e.g., -n shows the de‐
296 tails of the last n bookmarks.
297
298 -f --format N
299 Show selective monochrome output with specific fields. Works
300 with --print. Search results honour the option when used along
301 with --json. Useful for creating batch scripts.
302 N = 1, show only URL.
303 N = 2, show URL and tags in a single line.
304 N = 3, show only title.
305 N = 4, show URL, title and tags in a single line.
306 N = 5, show title and tags in a single line.
307 To omit DB index from printed results, use N0, e.g., 10, 20, 30,
308 40, 50.
309
310 -j --json
311 Output data formatted as JSON, works with --print output and
312 search results.
313
314 --colors COLORS
315 Set output colors. Refer to the COLORS section below for de‐
316 tails.
317
318 --nc Disable color output in all messages. Useful on terminals which
319 can't handle ANSI color codes or scripted environments.
320
321 -n --count N
322 Number of results to show per page (default 10).
323
324 --np Do not show the prompt, run and exit.
325
326 -o --open [...]
327 Open bookmarks by DB indices or ranges in browser. Open a random
328 index if argument is omitted.
329
330 --oa Open all search results immediately in the browser. Works best
331 with --np. When used along with --update or --delete, URLs are
332 opened in the browser first and then modified or deleted.
333
334 --replace old new
335 Replace old tag with new tag if both are passed; delete old tag
336 if new tag is not specified.
337
338 --shorten index|URL
339 Shorten the URL at DB index or an independent URL using the
340 tny.im URL shortener service.
341
342 --expand index|URL
343 Expand the URL at DB index or an independent URL shortened using
344 tny.im.
345
346 --cached index|URL
347 Browse the latest cached version of the URL at DB index or an
348 independent URL using the Wayback Machine. Useful for viewing
349 the content of bookmarks which are not live any more.
350
351 --suggest
352 Show a list of similar tags to choose from when adding a new
353 bookmark.
354
355 --tacit
356 Show lesser output. Reduces the verbosity of certain operations
357 like add, update etc.
358
359 --nostdin
360 Do not attempt to read data from standard input e.g. when the
361 program is not executed from a tty.
362
363 --threads
364 Maximum number of parallel network connection threads to use
365 during full DB refresh. By default 4 connections are spawned. N
366 can range from 1 to 10.
367
368 -V Check the latest upstream version available. This is FYI. It is
369 possible the latest upstream released version is still not
370 available in your package manager as the process takes a while.
371
372 -g --debug
373 Show debug information and additional logs.
374
376 1-N Browse search results by indices and ranges.
377
378 O [id|range [...]]
379 Try to open search results or indices (when not in a search con‐
380 text) in a GUI browser. Toggle try to open urls in a GUI based
381 browser (even if BROWSER is set) if no arguments. Toggling is
382 useful when trying to open bookmarks by DB index.
383
384 a Open all search results in browser.
385
386 s keyword [...]
387 Search for records with ANY keyword.
388
389 S keyword [...]
390 Search for records with ALL keywords.
391
392 d Toggle deep search to match substrings ('pen' matches 'opened').
393
394 r expression
395 Run a regular expression search.
396
397 t [...]
398 Search bookmarks by a tag. List all tags alphabetically, if no
399 arguments.
400
401 g taglist id|range [...] [>>|>|<<] [record id|range ...]
402 Append, set, remove specific or all tags by indices and/or
403 ranges to bookmark indices and/or ranges (see EXAMPLES section
404 below). Search by space-separated taglist id(s) and/or range if
405 records are omitted.
406
407 o id|range [...]
408 Browse bookmarks by indices and/or ranges.
409
410 p id|range [...]
411 Print bookmarks by indices and/or ranges.
412
413 w [editor|id]
414 Edit and add or update a bookmark.
415
416 c id Copy url at search result index to clipboard.
417
418 ? Show help on prompt keys.
419
420 q, ^D, double Enter
421 Exit buku.
422
424 Completion scripts
425 Shell completion scripts for Bash, Fish and Zsh can be found in:
426 https://github.com/jarun/buku/blob/master/auto-completion
427
428 BROWSER
429 Overrides the default browser. Refer to:
430 http://docs.python.org/library/webbrowser.html
431
432 EDITOR If defined, will be used as the editor to edit bookmarks with
433 option --write.
434
435 https_proxy
436 If defined, will be used to access http and https resources
437 through the configured proxy. Supported format:
438 http[s]://[username:password@]proxyhost:proxyport/
439
440 GUI integration
441 buku can be integrated in a GUI environment with simple tweaks.
442 Please refer to:
443 https://github.com/jarun/buku/wiki/System-integration
444
446 buku allows you to customize the color scheme via a five-letter string,
447 reminiscent of BSD LSCOLORS. The five letters represent the colors of
448
449 - index
450 - title
451 - URL
452 - description/comment/note
453 - tag
454
455 respectively. The five-letter string is passed is as the argument to
456 the --colors option, or as the value of the environment variable
457 BUKU_COLORS.
458
459 We offer the following colors/styles:
460
461 ┌───────┬───────────────────────────────────────────────────┐
462 │Letter │ Color/Style │
463 ├───────├───────────────────────────────────────────────────┤
464 │a │ black │
465 │b │ red │
466 │c │ green │
467 │d │ yellow │
468 │e │ blue │
469 │f │ magenta │
470 │g │ cyan │
471 │h │ white │
472 │i │ bright black │
473 │j │ bright red │
474 │k │ bright green │
475 │l │ bright yellow │
476 │m │ bright blue │
477 │n │ bright magenta │
478 │o │ bright cyan │
479 │p │ bright white │
480 │A-H │ bold version of the lowercase-letter color │
481 │I-P │ bold version of the lowercase-letter bright color │
482 │x │ normal │
483 │X │ bold │
484 │y │ reverse video │
485 │Y │ bold reverse video │
486 └───────┴───────────────────────────────────────────────────┘
487
488 The default colors string is oKlxm, which stands for
489
490 - bright cyan index
491 - bold bright green title
492 - bright yellow URL
493 - normal description
494 - bright blue tag
495
496 Note that
497
498 - Bright colors (implemented as \x1b[90m - \x1b[97m) may not be avail‐
499 able in all color-capable terminal emulators;
500
501 - Some terminal emulators draw bold text in bright colors instead;
502
503 - Some terminal emulators only distinguish between bold and bright col‐
504 ors via a default-off switch.
505
506 Please consult the manual of your terminal emulator as well as
507 https://en.wikipedia.org/wiki/ANSI_escape_code for details.
508
509
511 1. Edit and add a bookmark from editor:
512
513 buku -w
514 buku -w 'gedit -w'
515 buku -w 'macvim -f' -a https://ddg.gg search engine, privacy
516
517 The first command picks editor from the environment variable EDI‐
518 TOR. The second command opens gedit in blocking mode. The third
519 command opens macvim with option -f and the URL and tags populated
520 in template.
521
522 2. Add a bookmark with tags 'search engine' and 'privacy', comment
523 'Search engine with perks', fetch page title from the web:
524
525 buku -a https://ddg.gg search engine, privacy -c Search engine with perks
526
527 In the output, >: url, +: comment, #: tags.
528
529 3. Add a bookmark with tags 'search engine' & 'privacy' and immutable
530 custom title 'DDG':
531
532 buku -a https://ddg.gg search engine, privacy --title 'DDG' --immutable 1
533
534 Note that URL must precede tags.
535
536 4. Add a bookmark without a title (works for update too):
537
538 buku -a https://ddg.gg search engine, privacy --title
539
540 5. Edit and update a bookmark from editor:
541
542 buku -w 15012014
543
544 This will open the existing bookmark's details in the editor for
545 modifications. Environment variable EDITOR must be set.
546
547 6. Update existing bookmark at index 15012014 with new URL, tags and
548 comments, fetch title from the web:
549
550 buku -u 15012014 --url http://ddg.gg/ --tag web search, utilities -c Private search engine
551
552 7. Fetch and update only title for bookmark at 15012014:
553
554 buku -u 15012014
555
556 8. Update only comment for bookmark at 15012014:
557
558 buku -u 15012014 -c this is a new comment
559
560 Applies to --url, --title and --tag too.
561
562 9. Export bookmarks tagged 'tag 1' or 'tag 2' to HTML, Markdown,
563 Orgfile or a new database:
564
565 buku -e bookmarks.html --stag tag 1, tag 2
566 buku -e bookmarks.md --stag tag 1, tag 2
567 buku -e bookmarks.org --stag tag 1, tag 2
568 buku -e bookmarks.db --stag tag 1, tag 2
569
570 All bookmarks are exported if search is not opted.
571
572 10. Import bookmarks from HTML, Markdown or Orgfile:
573
574 buku -i bookmarks.html
575 buku -i bookmarks.md
576 buku -i bookmarks.db
577
578 11. Delete only comment for bookmark at 15012014:
579
580 buku -u 15012014 -c
581
582 Applies to --title and --tag too. URL cannot be deleted without
583 deleting the bookmark.
584
585 12. Update or refresh full DB with page titles from the web:
586
587 buku -u
588 buku -u --tacit (show only failures and exceptions)
589
590 This operation can update the title or description fields of non-
591 immutable bookmarks by parsing the fetched page. Fields are updated
592 only if the fetched fields are non-empty. Tags remain untouched.
593
594 13. Delete bookmark at index 15012014:
595
596 buku -d 15012014
597
598 The last index is moved to the deleted index to keep the DB com‐
599 pact. Add --tacit to delete without confirmation.
600
601 14. Delete all bookmarks:
602
603 buku -d
604
605 15. Delete a range or list of bookmarks:
606
607 buku -d 100-200
608 buku -d 100 15 200
609
610 16. Search bookmarks for ANY of the keywords 'kernel' and 'debugging'
611 in URL, title or tags:
612
613 buku kernel debugging
614 buku -s kernel debugging
615
616 17. Search bookmarks with ALL the keywords 'kernel' and 'debugging' in
617 URL, title or tags:
618
619 buku -S kernel debugging
620
621 18. Search bookmarks tagged 'general kernel concepts':
622
623 buku --stag general kernel concepts
624
625 19. Search for bookmarks matching ANY of the tags 'kernel', 'debug‐
626 ging', 'general kernel concepts':
627
628 buku --stag kernel, debugging, general kernel concepts
629
630 20. Search for bookmarks matching ALL of the tags 'kernel', 'debug‐
631 ging', 'general kernel concepts':
632
633 buku --stag kernel + debugging + general kernel concepts
634
635 21. Search for bookmarks matching any of the keywords 'hello' or
636 'world', excluding the keywords 'real' and 'life', matching both
637 the tags 'kernel' and 'debugging', but excluding the tags 'general
638 kernel concepts' and 'books':
639
640 buku hello world --exclude real life --stag 'kernel + debugging - general kernel concepts, books'
641
642 22. List all unique tags alphabetically:
643
644 buku --stag
645
646 23. Run a search and update the results:
647
648 buku -s kernel debugging -u --tag + linux kernel
649
650 24. Run a search and delete the results:
651
652 buku -s kernel debugging -d
653
654 25. Encrypt or decrypt DB with custom number of iterations (15) to gen‐
655 erate key:
656
657 buku -l 15
658 buku -k 15
659
660 The same number of iterations must be specified for one lock & un‐
661 lock instance. Default is 8, if omitted.
662
663 26. Show details of bookmarks at index 15012014 and ranges 20-30,
664 40-50:
665
666 buku -p 20-30 15012014 40-50
667
668 27. Show details of the last 10 bookmarks:
669
670 buku -p -10
671
672 28. Show all bookmarks with real index from database:
673
674 buku -p
675 buku -p | more
676
677 29. Replace tag 'old tag' with 'new tag':
678
679 buku --replace 'old tag' 'new tag'
680
681 30. Delete tag 'old tag' from DB:
682
683 buku --replace 'old tag'
684
685 31. Append (or delete) tags 'tag 1', 'tag 2' to (or from) existing tags
686 of bookmark at index 15012014:
687
688 buku -u 15012014 --tag + tag 1, tag 2
689 buku -u 15012014 --tag - tag 1, tag 2
690
691 32. Open URL at index 15012014 in browser:
692
693 buku -o 15012014
694
695 33. List bookmarks with no title or tags for bookkeeping:
696
697 buku -S blank
698
699 34. List bookmarks with immutable title:
700
701 buku -S immutable
702
703 35. Shorten the URL www.google.com and the URL at index 20:
704
705 buku --shorten www.google.com
706 buku --shorten 20
707
708 36. Append, remove tags at prompt (taglist index to the left, bookmark
709 index to the right):
710
711 // append tags at taglist indices 4 and 6-9 to existing tags in bookmarks at indices 5 and 2-3
712 buku (? for help) g 4 9-6 >> 5 3-2
713 // set tags at taglist indices 4 and 6-9 as tags in bookmarks at indices 5 and 2-3
714 buku (? for help) g 4 9-6 > 5 3-2
715 // remove all tags from bookmarks at indices 5 and 2-3
716 buku (? for help) g > 5 3-2
717 // remove tags at taglist indices 4 and 6-9 from tags in bookmarks at indices 5 and 2-3
718 buku (? for help) g 4 9-6 << 5 3-2
719
720 37. List bookmarks with colored output:
721
722 $ buku --colors oKlxm -p
723
725 Arun Prakash Jana <engineerarun@gmail.com>
726
728 https://github.com/jarun/buku
729
731 https://github.com/jarun/buku/wiki
732
734 https://github.com/jarun/buku/issues
735
737 Copyright © 2015-2021 Arun Prakash Jana <engineerarun@gmail.com>.
738
739 License GPLv3+: GNU GPL version 3 or later <http://gnu.org/li‐
740 censes/gpl.html>.
741 This is free software: you are free to change and redistribute it.
742 There is NO WARRANTY, to the extent permitted by law.
743
744
745
746Version 4.6 16 Jun 2021 BUKU(1)