Ivan Habunek
4203e8d313
Dedupe duplicate function
2023-11-21 16:51:02 +01:00
Ivan Habunek
7793d4499a
Add --json option to post command
2023-11-21 16:51:02 +01:00
Ivan Habunek
3530553a06
Add --json option to status and thread commands
2023-11-21 16:51:02 +01:00
Ivan Habunek
ae7a36b8d8
Add --json option to search command
2023-11-21 16:50:55 +01:00
Ivan Habunek
0c37716de1
Add --json option to instance command
2023-11-21 16:50:19 +01:00
Ivan Habunek
57be6beae8
Log request exceptions
2023-11-21 16:50:19 +01:00
Ivan Habunek
9664d71b57
Make get_instance return the response instead of json
2023-11-21 16:50:19 +01:00
Ivan Habunek
45962b27c3
Fix search sending type=None if not specified
2023-11-21 16:48:12 +01:00
Ivan Habunek
cd03486a25
Remove unused imports
2023-11-19 12:48:22 +01:00
Ivan Habunek
5a83cd7d3b
Read media viewer from settings
2023-11-19 12:15:26 +01:00
Ivan Habunek
ef19449190
Load followed accounts after timeline
...
This way we don't have to wait for them to load, which may take a while
due to paging.
2023-11-19 09:12:42 +01:00
Ivan Habunek
8c3fd12005
Fix style
2023-11-18 15:53:14 +01:00
Ivan Habunek
4a3b14313c
Fix compat with older versions of python
2023-11-18 15:48:28 +01:00
Ivan Habunek
0265f7e0b7
Fix tests
2023-11-18 15:44:50 +01:00
Ivan Habunek
3de561a060
Add --json argument to whois command
2023-11-18 15:42:04 +01:00
Ivan Habunek
dd16627c89
Update print_account to take an Account object
2023-11-18 15:42:02 +01:00
Ivan Habunek
2c4f7e17c9
Add --json option to whoami command
2023-11-18 15:40:51 +01:00
Ivan Habunek
6cdba16fcf
Make verify_credentials return the http response
...
Required if we want to emit json without decoding it
2023-11-18 15:40:50 +01:00
Ivan Habunek
317840b019
Merge pull request #415 from ihabunek/danschwarz-richtext3
...
Add support for rich text
2023-11-18 15:40:35 +01:00
Ivan Habunek
fe8b441b5b
Add hack to work around a pleroma bug
2023-11-18 12:32:35 +01:00
Ivan Habunek
8d1edd5374
Fix compat with older python versions
2023-11-18 11:25:52 +01:00
Ivan Habunek
59adec3e55
Improve error when conversion fails
2023-11-18 11:18:30 +01:00
Ivan Habunek
05c5bcb723
Convert datetimes to local timezone by default
2023-11-18 10:25:52 +01:00
Ivan Habunek
d4b6447d0f
Bump version, add changelog
2023-11-16 16:41:15 +01:00
Ivan Habunek
2b8727bf09
Roll back workaround to support pleroma
...
Fixed in previous commit.
2023-11-16 15:15:38 +01:00
Ivan Habunek
fe48f9a17e
Add a way to preprocess the data before decoding
...
Use it to modify the data returned by the Pleroma API which does not
conform to the current Mastodon API definition.
See:
https://git.pleroma.social/pleroma/pleroma/-/issues/1470#anchor-310
2023-11-16 15:15:26 +01:00
Ivan Habunek
57cfd41613
Remove old stubs
2023-11-16 11:50:25 +01:00
Ivan Habunek
d6ff3cc3a8
Extract url_to_widget, add fallback
2023-11-16 11:46:54 +01:00
Ivan Habunek
e5ac82bb01
Add fallback for html_to_widgets
...
Remove has_urwidgets since we no longer need to worry if we have
urwidgets in the richtext module.
2023-11-16 11:36:18 +01:00
Ivan Habunek
f96b1b722c
Move richtext to it's own module
...
This is the first step towards easier stubbing
2023-11-16 11:12:54 +01:00
Ivan Habunek
f50dea1175
Simplify text_to_widget
...
This was doing double regex matching, calling parse_text was not needed
at all.
2023-11-16 11:09:32 +01:00
Sandra Snan
560b91700f
Ask for 639-1 consistently
2023-11-16 10:11:35 +01:00
Ivan Habunek
073dd3025c
Remove the ContentParser class, use functions instead
...
It did not help, just added to the indent.
2023-11-06 18:23:35 +01:00
Ivan Habunek
a544453338
Remove magic lookup
...
Having the choice explicit makes the code easier to read.
2023-11-06 18:22:09 +01:00
Ivan Habunek
ce6faccb99
Extract render method
2023-11-06 17:43:02 +01:00
Ivan Habunek
2aba3f93f9
Extract block tags
2023-11-06 09:56:12 +01:00
Ivan Habunek
a8b4c79716
Eliminate constructor
2023-11-06 09:36:30 +01:00
Ivan Habunek
199a96625b
Extract parsing html
2023-11-04 07:53:40 +01:00
Ivan Habunek
d91c73520e
Better function name
2023-11-04 07:38:47 +01:00
Ivan Habunek
a9ef96c31b
Cleanup formatting
2023-11-04 07:26:45 +01:00
Sandra Snan
6a22e2345b
Add in controversial timezone workaround
2023-09-24 00:42:46 +02:00
Sandra Snan
c821ab999b
Fix crash on weird date time
...
Solution found by danschwarz
2023-09-24 00:35:39 +02:00
Daniel Schwarz
0f39b1087f
Support to display a limited set of HTML tags
...
HTML tag support is aligned with Mastodon 4.2 supported tags.
This code introduces a soft dependency on the urwidgets library.
If urwidgets is not available, HTML tags are still supported,
but hyperlinks are not underlined using the OCS 8 terminal
feature (on supported terminals).
2023-09-22 21:32:19 -04:00
Ivan Habunek
8ff46fd0d0
Remove unused import
2023-07-25 09:36:53 +02:00
Ivan Habunek
0a70af9e09
Bump version, add changelog
2023-07-25 09:34:21 +02:00
Ivan Habunek
8c7bb25184
Fix relative datetimes in TUI
2023-07-25 09:32:17 +02:00
Ivan Habunek
5eeb9fdf49
Add changelog, bump version
2023-07-25 09:15:54 +02:00
Ivan Habunek
b0099642cd
Shorten command descriptions
2023-07-25 09:14:58 +02:00
Ivan Habunek
5e8a7bb415
Merge pull request #385 from ihabunek/colors-settings
...
Read TUI colors from settings
2023-07-25 09:10:01 +02:00
Florian Obser
acc80f6890
Implemented "blocked" command
...
This lists accounts the logged in user has blocked. It is useful for
creating regular backups.
2023-07-21 16:24:57 +02:00
Florian Obser
39d7a345ed
Implemented "muted" command
...
This lists accounts the logged in user has muted. It is useful for
creating regular backups.
2023-07-21 16:24:38 +02:00
Ivan Habunek
afd349f1ab
Remove the monochrome palette
...
Monochrome colors should be defined as the third color in each tuple
instead.
In monochrome mode it's not possible to set the background so all
highlights can only be done using bold, italics, underline...
2023-07-08 12:33:34 +02:00
Ivan Habunek
0903dae8d3
Read TUI colors from settings
2023-07-08 12:08:06 +02:00
Ivan Habunek
740f7fafd4
Read TUI palette overrides from settings
2023-07-08 12:08:06 +02:00
Ivan Habunek
94b4b35197
Tweak colors
2023-07-08 12:08:06 +02:00
Daniel Schwarz
28a3343761
Added sanity check tests to ensure PALETTE and MONO_PALETTE match
...
And fixed a bug uncovered by the above tests :)
2023-07-07 18:12:38 -04:00
Ivan Habunek
219225ba8a
Remove named colours
...
This is a prerequisite for configurable styling, since we don't want to
override "green" style to be yellow and such.
2023-07-07 13:57:19 +02:00
Ivan Habunek
9933180146
Improve colour names
2023-07-07 13:02:18 +02:00
Ivan Habunek
089e9f7d2f
Simplify delete status modal
2023-07-07 12:37:08 +02:00
Ivan Habunek
d10c5fed3e
Add type hints for get_setting
2023-07-07 12:17:36 +02:00
Ivan Habunek
f1e4c8d68f
Clean up how loop and screen are handled in tui
2023-07-07 11:49:26 +02:00
Daniel Schwarz
f292468fb6
Changed [L]inks key to L[i]nks so that L key is CURSOR RIGHT
2023-07-06 07:31:43 -04:00
Daniel Schwarz
3903307e72
Changed Help key to ?, Documented Save key correctly as E
...
Fixes #280 , #370
2023-07-05 10:09:00 +02:00
Ivan Habunek
d71cc7e3b6
Merge pull request #377 from ihabunek/settings
...
Implement a settings file
2023-06-30 14:59:14 +02:00
Ivan Habunek
da9931e5e5
Remove datetime hack used for python < 3.7
2023-06-30 11:08:22 +02:00
Ivan Habunek
3df8e2722a
Extract datetime utils
2023-06-30 11:08:19 +02:00
Ivan Habunek
83b7f25678
Add __main__.py
...
This allows launching toot by:
python -m toot
2023-06-30 11:02:13 +02:00
Ivan Habunek
7da372e4a8
Disable settings for testing
2023-06-28 14:55:28 +02:00
Ivan Habunek
d4f8acb3ce
Resolve circular import by moving get_config_dir
2023-06-28 14:46:35 +02:00
Ivan Habunek
953cad5023
Respect quiet setting
2023-06-28 14:17:35 +02:00
Ivan Habunek
cee2c93815
Respect debug and debug_file settings
2023-06-28 14:17:20 +02:00
Ivan Habunek
4388175cb4
Respect color setting
2023-06-28 13:56:59 +02:00
Ivan Habunek
85260ed99d
Apply command defaults from settings
2023-06-28 13:55:30 +02:00
Ivan Habunek
ed0baf0770
Implement reading from a settings file
2023-06-28 13:55:29 +02:00
Ivan Habunek
bb625da257
Bump version, add changelog
2023-06-28 12:41:47 +02:00
Ivan Habunek
3a375b77ee
Add toot status command
2023-06-28 12:23:33 +02:00
Ivan Habunek
8ad2b279ed
Ignore warning not to compare types
...
No other way around it here.
2023-06-26 17:02:58 +02:00
Ivan Habunek
b2c2f7466e
Fix type hints for older versions of python
2023-06-26 17:00:39 +02:00
Ivan Habunek
3cd13f6885
Fix vermin checks
2023-06-26 17:00:38 +02:00
Ivan Habunek
f3439ad30d
Use entitites to simpliy print functions
2023-06-26 16:59:14 +02:00
Ivan Habunek
a0b9b37a4f
Add Instance and related entities
2023-06-26 16:59:14 +02:00
Ivan Habunek
368738831c
Add Notification and Report entities
2023-06-26 16:59:14 +02:00
Ivan Habunek
119c514ee9
Add entities
2023-06-26 16:59:14 +02:00
Ivan Habunek
5607bd75b3
Add compat code for typing functions
2023-06-26 16:59:13 +02:00
Ivan Habunek
0c89445b61
Fix type hint for older py versions
2023-06-26 16:58:11 +02:00
Ivan Habunek
0662a7616b
Read toot lenght limit from mastodon instances
...
fixes #369
2023-06-24 10:18:10 +02:00
Ivan Habunek
12d84ea05e
Fix return type
2023-06-24 10:04:40 +02:00
Ivan Habunek
dff36e28f3
Remove redundant logging
...
These actions are already visible via http requests being logged.
2023-06-24 09:58:31 +02:00
Daniel Schwarz
8c3cec1aef
--no-color now works for tui mode
2023-06-23 18:16:14 -04:00
Ivan Habunek
0973bfd484
Refresh timeline when showing thread
2023-06-22 12:15:05 +02:00
Ivan Habunek
7b08e39f00
Decrease the amount of color
2023-06-22 11:33:07 +02:00
Daniel Schwarz
01afbe1f2f
If toot activate is invoked without an account, show list of accounts
2023-06-22 11:30:43 +02:00
Ivan Habunek
51d60679c3
Simplify account timeline options
2023-06-22 11:16:32 +02:00
Daniel Schwarz
f7ba208d3b
Added personal timeline, which is your own timeline of posts
...
Fixes issue #354
2023-06-22 11:07:54 +02:00
Daniel Schwarz
e55474158a
Added toot timeline --account_tl console command
...
Displays the timeline of any account (public timeline for
users who are not you, public+private for you)
Right now it does not display reblogs or replies,
this could be configurable if we add more command line flags
2023-06-22 11:07:54 +02:00
Daniel Schwarz
56cc056639
Login to servers that don't honor the uri spec for V1::Instance
...
Pleroma, Akkoma, and other servers do not follow the Mastodon spec
for the 'uri' attribute which specifies that it contains the domain
name of the instance. Instead, they return a complete URI.
As a workaround, we now detect this situation and parse out the
domain from the URI when necessary. This fixes issue #347 .
Thanks to @laleanor for their patch and @rjp for ideas on how to
make it work with GotoSocial and other servers
2023-05-27 05:51:00 +02:00
Ivan Habunek
a388c30edf
Remove unused import
2023-04-06 21:36:09 +02:00
Ivan Habunek
e3394c1693
Extract fetching list ID
...
Also don't check if account is found, that function alredy raises a
ConsoleError.
2023-03-30 12:31:04 +02:00
Ivan Habunek
a19670d0c3
Add integration tests for lists
2023-03-30 12:00:12 +02:00
Ivan Habunek
8624ddb175
Add a simple table printer and apply to lists
2023-03-30 12:00:12 +02:00