1 db056a13 2021-10-26 op 2021-10-26 Omar Polo <op@omarpolo.com>
3 db056a13 2021-10-26 op * parser_gemtext.c (detect_line_type): correct item line detection: a space is required after the `*' character.
5 7ab5915a 2021-10-08 op 2021-10-08 Omar Polo <op@omarpolo.com>
7 7ab5915a 2021-10-08 op * sandbox.c (landlock_unveil): use landlock on linux if available to restrict what parts of the filesystem telescope can see
8 9b5d71dc 2021-10-08 op (sandbox_fs_process): don't fail if ~/Downloads doesn't exist
10 9fd1687f 2021-10-08 op 2021-10-07 Andrea Feletto <andrea@andreafeletto.com>
12 9fd1687f 2021-10-08 op * contrib/xdg-migrate.sh: add a script to aid the migration of ~/.telescope to XDG
14 9fd1687f 2021-10-08 op * fs.c (xdg_init): use XDG-style directories if ~/.telescope does not exists
16 798e1c95 2021-09-20 op 2021-09-20 Omar Polo <op@omarpolo.com>
18 798e1c95 2021-09-20 op * parser_textpatch.c (tpatch_emit_line): fix patch/diff syntax highlighting when more than one file are involved
20 f2d29984 2021-09-15 op 2021-09-15 Omar Polo <op@omarpolo.com>
22 f2d29984 2021-09-15 op * telescope.c: add a ``safe mode''.
24 c8804aec 2021-09-13 op 2021-09-13 Omar Polo <op@omarpolo.com>
26 e1ceb4cf 2021-09-13 op * telescope.c (handle_imsg_eof): reset download byte counter
28 c8804aec 2021-09-13 op * sandbox.c (sandbox_fs_process): [openbsd] allow creating files in ~/Downloads
30 85381ff0 2021-09-12 op 2021-09-12 Omar Polo <op@omarpolo.com>
32 85381ff0 2021-09-12 op * net.c (net_read): bugfix: telescope would render a blank page for (some rare) cases where it reads a very long replies from the server.
34 79d0b1c6 2021-08-29 op 2021-08-29 Omar Polo <op@omarpolo.com>
36 0f272cb5 2021-08-29 op * defaults.c (config_setvars): make download-path customizable
38 79d0b1c6 2021-08-29 op * telescope.c (handle_maybe_save_page): prefill the save prompt with the filename to ease saving files
40 b05315f7 2021-08-28 op 2021-08-28 Omar Polo <op@omarpolo.com>
42 7b0be57c 2021-08-28 op * configure.ac: tag 0.5.1
44 b05315f7 2021-08-28 op * telescope.c (gopher_skip_selector): don't trim the initial `/' during gohper requests
46 7b0be57c 2021-08-28 op 2021-08-26 Omar Polo <op@omarpolo.com>
48 7b0be57c 2021-08-28 op * configure.ac: tag 0.5
50 2ee42fa0 2021-08-26 op 2021-08-26 Omar Polo <op@omarpolo.com>
52 2ee42fa0 2021-08-26 op * parse.y (attrname): correctly parse multiple attributes
54 1cf972f0 2021-08-18 op 2021-08-18 Omar Polo <op@omarpolo.com>
56 1cf972f0 2021-08-18 op * defaults.c (load_default_keys): bind M-[ and M-] to tab-move-to and tab-move
57 22638479 2021-08-18 op add tab-bar-show to control the visibility of the tab bar
59 27b67ac9 2021-08-16 op 2021-08-16 Omar Polo <op@omarpolo.com>
61 27b67ac9 2021-08-16 op * telescope.c (humanify_url): add heuristics for human-provided URLs
63 27b67ac9 2021-08-16 op * cmd.c (cmd_load_url): don't add ``gemini://'' on load_url
65 3299c954 2021-08-15 op 2021-08-15 Omar Polo <op@omarpolo.com>
67 3299c954 2021-08-15 op * fs.c (last_time_crashed): improve crash detection
69 adb8f969 2021-08-14 op 2021-08-14 Omar Polo <op@omarpolo.com>
71 adb8f969 2021-08-14 op * defaults.c: add `autosave' config option.
73 adb8f969 2021-08-14 op * telescope.c (autosave_timer): add an autosave timer to persist the session once in a while while telescope is running.
75 85f3b093 2021-08-13 op 2021-08-13 Omar Polo <op@omarpolo.com>
77 0a33395d 2021-08-13 op * fs.c (handle_get_file): generate directory listings
79 85f3b093 2021-08-13 op * telescope.c (protos): added support for file:// URIs
81 bc55cdb9 2021-08-12 op 2021-08-12 Omar Polo <op@omarpolo.com>
83 55eb4d95 2021-08-12 op * cmd.c (cmd_push_button_new_tab): open new tab right after the current one
85 bc55cdb9 2021-08-12 op * telescope.c (load_url): improved reload command: it doesn't push the current url to the history anymore.
87 232b99a3 2021-08-03 op 2021-08-03 Omar Polo <op@omarpolo.com>
89 232b99a3 2021-08-03 op * pages/about_new.gmi.in: add link to veronica-2. reorder links
91 232b99a3 2021-08-03 op * telescope.c (gopher_send_search_req): initial support for gopher item type 7
93 67c0cb40 2021-07-30 op 2021-07-30 Omar Polo <op@omarpolo.com>
95 7a973fbf 2021-07-30 op * parser.c (parser_free): tilde-heuristics for titles: use ~username as tab title if the page doesn't have any headings
97 67c0cb40 2021-07-30 op * mime.c (ptable): colorize text/x-patch
99 5fb52fc0 2021-07-25 op 2021-07-25 Omar Polo <op@omarpolo.com>
101 a09aef7d 2021-07-25 op * parser.c (parser_free): for page without a title, use the domain name
103 886bb66c 2021-07-25 op * parser_gophermap.c (gophermap_initparser): initial gophermaps support
105 5fb52fc0 2021-07-25 op * telescope.c (load_finger_url): add support for the finger protocol
106 1663bf1e 2021-07-25 op (load_gopher_url): initial gopher support
108 bbab3a08 2021-07-24 op 2021-07-24 Omar Polo <op@omarpolo.com>
110 f53b250b 2021-07-24 op * cmd.c (cmd_scroll_line_up): don't crash on empty pages
111 f53b250b 2021-07-24 op (cmd_mini_scroll_up): add mini-scroll-up, bound to M-v in the minibuffer
112 f53b250b 2021-07-24 op (cmd_mini_scroll_down): add mini-scroll-down, bound to C-v in the minibuffer
114 c1c54987 2021-07-24 op * configure.ac: tagged 0.4.1 "buildfix" release
116 c1c54987 2021-07-24 op * Makefile.am (EXTRA_telescope_SOURCES): fix dist tarball
118 9b5d7bfe 2021-07-24 op * configure.ac: tagged 0.4 --- "La faccia della luna"
120 bbab3a08 2021-07-24 op * minibuffer.c (sensible_self_insert): use sensible-self-insert everywhere
122 05bc942e 2021-07-23 op 2021-07-23 Omar Polo <op@omarpolo.com>
124 05bc942e 2021-07-23 op * ui.c (redraw_tabline): changed default tab separator character. Suggested by Gnuserland, thanks!
126 cee82363 2021-07-21 op 2021-07-21 Omar Polo <op@omarpolo.com>
128 c6be26e4 2021-07-21 op * ui.c (print_vline_descr): pretty print help lines
130 65340174 2021-07-21 op * defaults.c (load_default_keys): bind other-window to C-x o
132 65340174 2021-07-21 op * cmd.c (cmd_other_window): add other-window
134 65340174 2021-07-21 op * ui.c (ui_other_window): allow to focus the side window
136 56e7efb4 2021-07-21 op * fs.c (handle_get): allow about: pages to be overridden by ~/.telescope/pages/about_*.gmi
138 cee82363 2021-07-21 op * cmd.c (cmd_tab_close): prefer the next tab instead of the previous as target in tab-close.
140 bd3a3a95 2021-07-20 op 2021-07-20 Omar Polo <op@omarpolo.com>
142 bd3a3a95 2021-07-20 op * cmd.c (cmd_push_button_new_tab): bugfix: push-button-new-tab on relative URLs now works
144 bd3a3a95 2021-07-20 op * fs.c (handle_get): add about:crash
146 23c83efe 2021-07-19 op 2021-07-19 Omar Polo <op@omarpolo.com>
148 23c83efe 2021-07-19 op * defaults.c (line_prefixes): prettify the default settings
150 b3be07ea 2021-07-18 op 2021-07-18 Omar Polo <op@omarpolo.com>
152 a0507108 2021-07-18 op * wrap.c (push_line): visually drop trailing spaces when formatting a page
154 b3be07ea 2021-07-18 op * minibuffer.c (populate_compl_buffer): add an optional description to completion items.
155 b3be07ea 2021-07-18 op (recompute_completions): filter completion results using the description too (if available)
157 87e3e801 2021-07-17 op 2021-07-17 Omar Polo <op@omarpolo.com>
159 2ddbda6b 2021-07-17 op * telescope.c (load_url): lazy loading for telescope: don't load all the tabs when starting up, only the current one. Defer the loading of the others when switching to them.
160 2f524b17 2021-07-17 op (load_last_session): cache the page title
162 9886bf97 2021-07-17 op * defaults.c (line_faces): don't underline links by default
163 9886bf97 2021-07-17 op add set-title option
165 87e3e801 2021-07-17 op * telescope.c (load_last_session): keep track of the current tab and re-focus it during next startup
167 0b4f3d2f 2021-07-16 op 2021-07-16 Omar Polo <op@omarpolo.com>
169 cc298130 2021-07-17 op * ui.c (redraw_tabline): separate the tabs with a vertical bar
171 cc298130 2021-07-17 op * defaults.c (load_default_keys): bind M-< in minibuffer for mini-goto-beginning
172 cc298130 2021-07-17 op (load_default_keys): bind M-> in minibuffer for mini-goto-end
174 cc298130 2021-07-17 op * cmd.c (cmd_mini_goto_beginning): add mini-goto-beginning
175 cc298130 2021-07-17 op (cmd_mini_goto_end): add mini-goto-end
177 adea4eec 2021-07-16 op * telescope.c (do_load_url): handle unknown protocols gracefully
179 f6ad0de1 2021-07-16 op * defaults.c (load_default_keys): bind [ to tab-previous
180 f6ad0de1 2021-07-16 op (load_default_keys): bind ] to tab-next
182 0b4f3d2f 2021-07-16 op * ui.c (ui_init): fix crash on some libevent2
184 59ae0cdc 2021-07-16 op * defaults.c (config_setvari): add emojify-link, enabled by default
186 edd9a650 2021-07-15 op 2021-07-15 Omar Polo <op@omarpolo.com>
188 987d9c88 2021-07-15 op * cmd.c (cmd_toggle_pre_wrap): add toggle-pre-wrap
190 12cf7d80 2021-07-15 op * defaults.c (load_default_keys): bind C-z to suspend-telescope
191 12cf7d80 2021-07-15 op (load_default_keys): bind <home>/<end> to move-beginning/end-of-line
192 88693f61 2021-07-15 op (config_setvari): add dont-wrap-pre
194 12cf7d80 2021-07-15 op * cmd.c (cmd_suspend_telescope): add suspend-telescope
196 bae22522 2021-07-15 op * ui.c (do_redraw_minibuffer): show the number of completions available
198 21404dd9 2021-07-15 op * parse.y (parseconfig): load alternate config file per-TERM
200 97870a34 2021-07-15 op * telescope.c (main): added long options --help, --version and -C/--colors
202 144733a7 2021-07-15 op * defaults.h: add hide-pre-closing-line
204 32c6c75e 2021-07-15 op * ui.c (rearrange_windows): don't flash the screen when entering the minibuffer
206 d0fd368a 2021-07-15 op * fs.c (lock_session): use a lockfile to prevent multiple instance of telescope to run at the same time
208 edd9a650 2021-07-15 op * defaults.c (load_default_keys): bind t to toc
209 dad288ec 2021-07-15 op (load_default_keys): change key for link-select: M-l
211 edd9a650 2021-07-15 op * cmd.c (cmd_toc): add toc
213 e7b982f4 2021-07-14 op 2021-07-14 Omar Polo <op@omarpolo.com>
215 753c6ac7 2021-07-14 op * defaults.c (load_default_keys): bind M-L to link-select
216 753c6ac7 2021-07-14 op (load_default_keys): bind M-/ to swiper
218 753c6ac7 2021-07-14 op * cmd.c (cmd_link_select): add link-select
219 753c6ac7 2021-07-14 op (cmd_swiper): add swiper
221 65601367 2021-07-14 op * defaults.c (load_default_keys): bind M-t to tab-select
223 65601367 2021-07-14 op * cmd.c (cmd_tab_select): add tab-select
225 661233ed 2021-07-14 op * defaults.c (load_default_keys): bind f5 to reload-page
226 661233ed 2021-07-14 op (load_default_keys): bind r to reload-page
228 661233ed 2021-07-14 op * cmd.c (cmd_reload_page): add reload-page
230 dffb2592 2021-07-14 op * defaults.c (load_default_keys): <up> and <down> are now bound to previous/next-completion instead of previous/next-history-item
231 f2ab2540 2021-07-14 op (load_default_keys): bind < to load-current-url
233 e7b982f4 2021-07-14 op * cmd.c (cmd_previous_completion): add previous-completion
234 e7b982f4 2021-07-14 op (cmd_next_completion): add next-completion
235 e7b982f4 2021-07-14 op (cmd_insert_current_candidate): add insert-current-candidate
237 e7b982f4 2021-07-14 op * minibuffer.c (enter_minibuffer): support completions in minibuffer
239 05c5cf0c 2021-07-13 op 2021-07-13 Omar Polo <op@omarpolo.com>
241 05c5cf0c 2021-07-13 op * pages.c: advertise B and F instead of C-M-b/C-M-f.
243 05c5cf0c 2021-07-13 op * defaults.c (load_default_keys): bind B/F to previous/next-page. I'm bad at choosing keybindings...
245 19f7f20c 2021-07-12 op 2021-07-12 Omar Polo <op@omarpolo.com>
247 bc10f6a5 2021-07-12 op * util.c (dispatch_imsg): refactor: all imsgs are completely asynchronous
249 19f7f20c 2021-07-12 op * minibuffer.c (minibuffer_taint_hist): bugfix: allow editing minibuffer history
251 7943bb81 2021-07-10 op 2021-07-10 Omar Polo <op@omarpolo.com>
253 7943bb81 2021-07-10 op * telescope.c (do_load_url): fix certificate mismatch when going back from a proxied page to a Gemini page.
255 4054d929 2021-07-09 op 2021-07-09 Omar Polo <op@omarpolo.com>
257 4054d929 2021-07-09 op * parse.y: make some newline optional
259 04d32eda 2021-07-08 op 2021-07-08 Omar Polo <op@omarpolo.com>
261 3c3af0fd 2021-07-08 op * defaults.c (load_default_keys): bind C-t to tab-new by default
262 25f5824b 2021-07-08 op (load_default_keys): bind C-w to tab-close by default
264 6cc5fcfe 2021-07-08 op * telescope.c (start_child): re-exec the children processes
266 04d32eda 2021-07-08 op * ui.c (print_vline): bug: print the trailing face until the right column, not one less. (this would leave the last column white if !olivetti-mode and a background color for some body lines)
268 1575cb8a 2021-07-07 op 2021-07-07 Omar Polo <op@omarpolo.com>
270 1575cb8a 2021-07-07 op * gemtext.c (detect_line_type): fix styling of empty lines inside a pre block
272 9fedd923 2021-07-06 op 2021-07-06 Omar Polo <op@omarpolo.com>
274 c0b634dd 2021-07-06 op * parser.c (parser_foreach_line): deal with BOM
276 a2fd3805 2021-07-06 op * telescope.c (handle_check_cert_user_choice): fix two bug: don't crash when there's a certificate mismatch and after saving the cert, before choosing to persist it, the page gets redirected. Now when the user accept a certificate, is treated as temporary saved for the whole session.
278 9fedd923 2021-07-06 op * defaults.c (load_default_keys): bind M-prior/next (M-pageup/pagedown) to tab-previous and tab-next
280 963c680c 2021-07-05 op 2021-07-05 Omar Polo <op@omarpolo.com>
282 b1379f34 2021-07-05 op * defaults.c (config_setvari): add hide-pre-context: if nonzero hide the start and end line of a pre block (i.e. ```). Defaults to zero.
283 b1379f34 2021-07-05 op (config_setvari): add hide-pre-blocks: if nonzero hide by default the body of a pre block; push-button can be used to toggle visibility per-block. Defaults to zero.
285 963c680c 2021-07-05 op * cmd.c (cmd_push_button): push-button: toggle prefermatted blocks if invoked with the point on the header
287 04c21b67 2021-06-26 op 2021-06-26 Omar Polo <op@omarpolo.com>
289 61251035 2021-06-26 op * cmd.c (cmd_inc_fill_column): add inc-fill-column and dec-fill-column
291 04c21b67 2021-06-26 op * configure.ac: tagged 0.3 --- "Spaceman"
293 1c412d48 2021-06-25 op 2021-06-25 Omar Polo <op@omarpolo.com>
295 1c412d48 2021-06-25 op * cmd.c (cmd_next_heading): added next-heading (C-c n)
296 1c412d48 2021-06-25 op (cmd_previous_heading): added previous-heading (C-c p)
298 2c362f95 2021-06-24 op 2021-06-24 Omar Polo <op@omarpolo.com>
300 157d4810 2021-06-24 op * ui.c (load_default_keys): bind > to load-url
302 2c362f95 2021-06-24 op * defaults.c: enable olivetti-mode by default and set fill-mode to 80
304 0e1eff5b 2021-06-23 op 2021-06-23 Omar Polo <op@omarpolo.com>
306 f2d2d7a1 2021-06-23 op * gemtext.c (search_title): fixed a bug where the *last* level 2 or 3 heading would be used as tab title instead of the first one.
308 984245ce 2021-06-23 op * parse.y (add_proxy): add proxy support (e.g. `proxy http via gemini://localhost:1965' for the duckling proxy)
310 5d0feb4b 2021-06-23 op * cmd.c (cmd_previous_button): stay on the line in next-button if there is no next link, and the same for previous-button
312 0e1eff5b 2021-06-23 op * telescope.c (handle_imsg_buf): "humanize" byte progress (i.e. trasform XYZ bytes to something readable)
314 d0149485 2021-06-22 op 2021-06-22 Omar Polo <op@omarpolo.com>
316 27766d48 2021-06-22 op * parse.y (colorname): support 256 colors
318 33d904b6 2021-06-22 op * defaults.c (config_setcolor): allow changing the colors/attributes of the tabline
320 d0149485 2021-06-22 op * parse.y (attrname): allow changing the attributes
322 2c748a1f 2021-06-21 op 2021-06-21 Omar Polo <op@omarpolo.com>
324 b598590d 2021-06-21 op * telescope.h (enum pairs): allow changing the background color of the body window
326 2c748a1f 2021-06-21 op * defaults.c (config_setvari): add enable-colors (variable)
328 da979bfe 2021-06-20 op 2021-06-20 Omar Polo <op@omarpolo.com>
330 da979bfe 2021-06-20 op * cmd.c (cmd_end_of_buffer): fix end-of-buffer glitch
332 1a99965e 2021-06-19 op 2021-06-19 Omar Polo <op@omarpolo.com>
334 1eebc186 2021-06-19 op * ui.c (cmd_olivetti_mode): added olivetti-mode (the function)
336 72b18268 2021-06-19 op * defaults.c (config_setvari): added olivetti-mode!
338 51dc2fa4 2021-06-19 op * fs.c (load_last_session): load about:help during the first startup
340 1b412079 2021-06-19 op * pages.c: added about:about, about:blank and about:help pages
342 1a99965e 2021-06-19 op * defaults.c (config_setvari): add fill-column config to manage the max-width when filling the page.
343 db7cc27a 2021-06-19 op (config_setvars): add new-tab-url config to specify the default url for new tabs.
345 58cfcb90 2021-06-18 op 2021-06-18 Omar Polo <op@omarpolo.com>
347 58cfcb90 2021-06-18 op * gemini.c (try_to_connect): use the async try_to_connect even when !HAVE_ASR_RUN
349 a0e91173 2021-06-13 op 2021-06-13 Omar Polo <op@omarpolo.com>
351 a0e91173 2021-06-13 op * telescope.c (main): ignore SIGPIPE: prevent telescope from dying
352 a0e91173 2021-06-13 op when connecting to non-tls/non-gemini servers (found by trying to
353 a0e91173 2021-06-13 op load a bogus ``gemini://gemini.nytpu.com'' -- the correct url for
354 a0e91173 2021-06-13 op the capsule is ``gemini://nytpu.com'')
356 d15aa86d 2021-06-12 op 2021-06-12 Omar Polo <op@omarpolo.com>
358 54e19de8 2021-06-12 op * configure.ac: tagged 0.2
360 d15aa86d 2021-06-12 op * utf8.c (utf8_chwidth): fix tab width
362 b66b4b89 2021-06-11 op 2021-06-11 Omar Polo <op@omarpolo.com>
364 b66b4b89 2021-06-11 op * ui.c (switch_to_tab): drop the urgent flag when switching to a tab after closing one
366 de2a69bb 2021-05-17 op 2021-05-17 Omar Polo <op@omarpolo.com>
368 de2a69bb 2021-05-17 op * telescope.c (handle_imsg_got_meta): ask the user to save a page when it can't be rendered
370 48e3f26d 2021-05-13 op 2021-05-13 Omar Polo <op@omarpolo.com>
372 48e3f26d 2021-05-13 op * gemtext.c (gemtext_free): heuristic to obtain the page title: if no h1 found, try with h2s and h3s
374 2ebcb935 2021-05-12 op 2021-05-12 Omar Polo <op@omarpolo.com>
376 2ebcb935 2021-05-12 op * ui.c (handle_resize): debounce resize event
377 cbfb5871 2021-05-12 op (cmd_forward_char): unbreak forward-char
378 c82b3fd6 2021-05-12 op added aliases for tab-{next,new,previous}
379 e8a76665 2021-05-12 op (redraw_tabline): display a `!' when a non-focused tab gets loaded
381 c87b4ac7 2021-04-30 op 2021-04-30 Omar Polo <op@omarpolo.com>
383 c87b4ac7 2021-04-30 op * ui.c (cmd_load_url): automatic gemini:// on load-url
384 affb8144 2021-04-30 op (cmd_forward_char): fix out-of-bound
386 a38a3a1f 2021-04-25 op 2021-04-25 Omar Polo <op@omarpolo.com>
388 cce62e74 2021-04-25 op * ui.c (cmd_scroll_up): fix cmd_scroll_down/up: they scrolled two line more than what intended
390 288fd238 2021-04-25 op * telescope.c (handle_check_cert_user_choice): allow saving the new certificate after mismatch
392 ec1fa0b0 2021-04-25 op * fs.c (load_certs): don't crash on invalid lines in known_hosts
394 eb4388ee 2021-04-25 op * hash.c (telescope_lookup_tofu): save certificates per (host, port) tuple, not only per-host
396 abb94fc4 2021-04-25 op * configure.ac: tagged 0.1.1
398 a38a3a1f 2021-04-25 op * gemini.c (blocking_conn_towards): fix compilation if !HAVE_ASR_RUN
400 a38a3a1f 2021-04-25 op * phos/phos_uri.c (phos_serialize_uri): handle URIs which port is not 1965