Christian Rocha
4e6460682e
Consolidate common model properties to reduce duplication
2020-11-18 12:33:39 -05:00
Christian Rocha
ae4c85e97d
Maintain positions when renaming documents in a filtered listing
2020-11-17 15:57:55 -05:00
Christian Rocha
de09997fdb
Normalize strings during filtering
...
This makes it easier to match characters with diacritics (i.e. you can type 'o'
and match an 'ö').
2020-11-17 15:57:55 -05:00
Christian Rocha
6cf1152f87
Also highlight filtered characters on selected filter results
2020-11-17 15:57:55 -05:00
Christian Rocha
58eca2414a
Match documents which were stashed in-session then renamed
...
Note that we've also removed field `displayPath` from struct `markdown`
as it turned out to not be necssary in the first place.
2020-11-17 15:57:55 -05:00
Nicolas Martin
d98e3c11ba
Switch to sahilm/fuzzy
for fuzzy-filtering and text highlighting
2020-11-17 15:57:55 -05:00
Christian Rocha
43a5ac1b64
Highlight relevant characters in filter results
2020-11-17 15:57:55 -05:00
Christian Rocha
f9883e8f8d
Change 'search' to 'filter'
2020-11-17 15:57:55 -05:00
Christian Rocha
fb5a81f4d6
Upgrade to Bubble Tea v0.12.2 and Bubbles v0.7.5
2020-11-17 15:57:55 -05:00
Christian Rocha
7722b6e6bc
Minor comment improvement
2020-11-17 15:57:55 -05:00
Christian Rocha
464c84bb13
Fix a regression where esc wouldn't clear filtered results
2020-11-17 15:57:55 -05:00
Christian Rocha
005aa65d7b
The q key should quit when browsing a list of filtered documents
2020-11-17 15:57:55 -05:00
Christian Rocha
000a0baae8
Use path separator const when building relative path
2020-11-17 15:57:55 -05:00
Christian Rocha
d09b225087
Filter against relative path rather than full path
2020-11-17 15:57:55 -05:00
Christian Rocha
8277cbb71f
Remove some consts + check cell widths of prompts, not byte lengths
...
We're able to remove those consts by virtue of reflow's new-ish
ansi.PrintableRuneWidth.
2020-11-17 15:57:55 -05:00
Christian Rocha
4b121593d4
Mop up styling big time
2020-11-17 15:57:55 -05:00
Christian Rocha
7b7a398c74
Don't dim the search entry when blurring the search field
2020-11-17 15:57:55 -05:00
Christian Rocha
759b8707f8
Tidying up
2020-11-17 15:57:55 -05:00
Christian Rocha
899c038402
Also add tab/shift+tab bindings to file browser
2020-11-17 15:57:55 -05:00
Christian Rocha
a17cfa6d26
Shift+tab also moves into filtered results
2020-11-17 15:57:55 -05:00
Christian Rocha
2e1579542e
Don't highlight filtered items until search is blurred
2020-11-17 15:57:55 -05:00
Christian Rocha
ef0f5338f4
Pressing return with no items filtered clears the filter
2020-11-17 15:57:55 -05:00
Christian Rocha
9797f225a7
Change help text if we've filtered down to one item
2020-11-17 15:57:55 -05:00
Christian Rocha
75528db9f1
Maintain previous filtering after unloading a document
2020-11-17 15:57:55 -05:00
Christian Rocha
6965caf3af
When stashing/unstashing an item during filtering maintain its position
2020-11-17 15:57:55 -05:00
Christian Rocha
d717b7e330
Add dimmed colors for light backgrounds
2020-11-17 15:57:55 -05:00
Nicolas Martin
356cd57c0e
Only dim items when starting a new search
2020-11-17 15:57:55 -05:00
Nicolas Martin
5e27376af4
Keep displaying local markdowns after stashing & deleting them
2020-11-17 15:57:55 -05:00
Christian Rocha
8d03dd5731
Adjust dimmed colors for dark backgrounds; light colors outstanding
2020-11-17 15:57:55 -05:00
Nicolas Martin
2131b255ef
Reset cursor and page positions when entering the search state
2020-11-17 15:57:55 -05:00
Nicolas Martin
aba133b7e6
There's always at least 1 page available in the paginator
...
Passing 0 to `paginator.SetTotalPages()` is ineffective as it won't alter the
model (paginator needs at least 1 page) and therefore doesn't update the page
count. Filtering can lead to 0 items in the stash view - in this case we still
want to have a page available in the paginator - so we also have pass 1 to
`setTotalPages()`.
2020-11-17 15:57:55 -05:00
Nicolas Martin
7500d88e93
TIL: 'News' is singular
2020-11-17 15:57:55 -05:00
Nicolas Martin
89965743a1
Ensure the search binding "/" always works
2020-11-17 15:57:55 -05:00
Nicolas Martin
c91501655f
Dont panic during actions in the filtered stash view w/o items
...
Filterng down the stash to 0 items (no cursor is displayed as there are no items
left) caused a panic during execution of one of these actions:
- x: Delete
- m: Set Memo
- s: Stash file
This change prevents that from happening by breaking the switch statement when
there are no items left.
Also glow now uses the filtered markdown notes in the `stashHelpView` so
`m.selectedMarkdown()` cannot return a nil refernce anymore.
2020-11-17 15:57:55 -05:00
Nicolas Martin
56847c1b01
Dim search results during filtering
2020-11-17 15:57:55 -05:00
Nicolas Martin
4782b99154
Display news item count in stash view
2020-11-17 15:57:55 -05:00
Nicolas Martin
7fb4a43474
Fix cursor placement when paging trough filtered notes
2020-11-17 15:57:55 -05:00
Nicolas Martin
fbe93a90ff
Add a prefix according to the markdownType when filtering notes
2020-11-17 15:57:55 -05:00
Nicolas Martin
faeef13e55
Get the cursor movement going while filtering stashitems
2020-11-17 15:57:55 -05:00
Nicolas Martin
259f4b584b
Use setTotalPages() to set the number of items in the paginator
...
This takes the filtered stash state in account
2020-11-17 15:57:55 -05:00
Nicolas Martin
e985f96dc4
Add fuzzy filtering for stash notes
2020-11-17 15:57:55 -05:00
Nicolas Martin
9fd3dfef5a
Add a searchinput box to the stashModel
2020-11-17 15:57:55 -05:00
Nicolas Martin
23fb61f752
Add stash states for searching through notes
...
- stashStateSearchNotes will be used while entering the search term
- stashStateShowFiltered will only display the filtered notes in the stash view.
2020-11-17 15:57:55 -05:00
Cristian Dominguez
998cbf1cc4
Ignore YAML frontmatter
2020-10-30 19:06:46 +01:00
Christian Rocha
7ea7cc59e3
Respect width flag/config setting in the TUI; closes #168
2020-10-23 23:38:28 -04:00
Christian Rocha
186d07da55
Don't show stash/memo info in pager help for news
2020-10-19 15:50:50 +00:00
Christian Rocha
3b06ccbc34
Fix bug where pager help isn't updated after an in-pager stash
2020-10-19 15:50:50 +00:00
Christian Rocha
0949a6656b
Update to bubbletea 0.12.0; minimum required changes
2020-10-19 15:50:50 +00:00
Christian Rocha
32f0be2688
Use the same type to track docs to load and docs loaded
2020-10-19 15:50:50 +00:00
Christian Rocha
54a7394448
Simplify loading completion check
2020-10-19 15:50:50 +00:00
Christian Rocha
fcf109aaff
Add flag for local files only (aka disable network) in TUI
2020-10-19 15:50:50 +00:00
Christian Rocha
e73190a217
Move "stashed only" flag from the package-level into the model
2020-10-19 15:50:50 +00:00
Christian Rocha
5847578f42
Convert pager to bubbletea 0.12.0 format
2020-10-19 15:50:50 +00:00
Christian Rocha
477979bce9
Correct placement of stash hint in pager help
2020-10-19 02:53:55 +00:00
Christian Rocha
8b78086f56
Remove extra line at the bottom of pager help
2020-10-18 22:57:11 +00:00
Christian Rocha
d4adf0d856
Don't use emojis on Windows
2020-10-13 15:14:07 -04:00
Christian Rocha
11d585870c
Don't show add memo help in pager for local items
2020-10-09 14:27:19 -04:00
bubersson
66a8ac10bc
Remove duplicate "down/j" from the "?" help
2020-10-09 13:50:37 +02:00
Christian Rocha
18e591bafe
Use filepath.Join rather than string concatenation
2020-10-05 13:54:39 +02:00
Christian Rocha
26b3292f57
Don't allow stashing until authed + introduce "offline mode" in UI
2020-10-05 13:54:24 +02:00
Christian Rocha
555462462f
More logging around keygen
2020-10-05 13:54:24 +02:00
Christian Rocha
b94615f5ac
Fix debug log in stash deletion command
2020-10-05 13:54:24 +02:00
Christian Rocha
2b064546b9
Move markdown types into a separate file
2020-10-05 13:54:24 +02:00
Christian Rocha
5c8da55a5b
Simplify environment vars
2020-10-05 13:54:24 +02:00
Christian Rocha
f2537b1811
Update loading message if you're just loading your stash
2020-10-05 13:54:24 +02:00
Christian Rocha
dc74e17cb8
Add missing comma
2020-10-05 13:54:24 +02:00
Christian Rocha
eb6fa55ec3
Run glow stash
to browse stashed files only
2020-10-05 13:54:24 +02:00
Christian Rocha
a3a05fde9c
Move ignore stuff to gitcha (and temporarily use the meowgorithm fork)
2020-10-05 13:54:23 +02:00
Christian Rocha
f8fa5a04dc
use strings.TrimPrefix instead of Replace when checking paths
2020-10-05 13:54:01 +02:00
Christian Rocha
9903ea8dcf
Ignore $GOPATH everywhere and ~/Library on macOS
2020-10-05 13:54:01 +02:00
Christian Rocha
5b20e3edae
Hide files and dirs starting with a dot by default
2020-10-05 13:54:01 +02:00
Christian Rocha
f8c4ddc388
Remove disabled force key/identity file stuff for now
2020-10-05 13:54:01 +02:00
Christian Rocha
45cde43dd4
Add more checks for nil Charm clients
2020-10-05 13:54:01 +02:00
Christian Rocha
676d215966
Keybindings for navigating to the start/end of file listing
2020-10-05 13:54:01 +02:00
Christian Rocha
ee4ed1bad5
Keybindings for jumping to the top and the bottom of the pager
2020-10-05 13:54:01 +02:00
Christian Rocha
3588f45ee9
Cleanup status message vars
2020-10-05 13:54:01 +02:00
Christian Rocha
6aba7afb8b
Remove some magic numbers to calm the linter down
2020-10-05 13:54:01 +02:00
Christian Rocha
ae0c747a4b
Remove unused variables and members, fix ineffectual assignment
2020-10-05 13:54:01 +02:00
Christian Rocha
88523ee94f
Remove extraneous formatting call
2020-10-05 13:54:01 +02:00
Christian Rocha
c1496854a8
Remove newline
2020-10-05 13:54:01 +02:00
Christian Rocha
50e8782aa8
Remove unnecessary comparison
2020-10-05 13:54:01 +02:00
Christian Rocha
b296cbb780
Remove newlines the linter is complaining about
2020-10-05 13:54:01 +02:00
Christian Rocha
06cbbd7b6b
Use lock emoji for stashed item in pager
2020-10-05 13:54:01 +02:00
Christian Rocha
b2511c54b0
Correct header counts for local items converted to stashed ones
2020-10-05 13:54:01 +02:00
Christian Rocha
912c80651a
Apply fine-grained spinner display rules to file listing view
2020-10-05 13:54:01 +02:00
Christian Rocha
60b1d6a6df
Fix bug where user couldn't exit pager in various stash-related states
2020-10-05 13:53:50 +02:00
Christian Rocha
cdc55a4b28
Always show spinner for a minimum amount of time when stashing
2020-10-05 13:53:49 +02:00
Christian Rocha
2f9babce80
Restore original displayed path when deleting a newly stashed item
2020-10-05 13:53:26 +02:00
Christian Rocha
5515460f32
Fix regression where note-setting on newly stashed items couldn't be done
2020-10-05 13:53:26 +02:00
Christian Rocha
82acc62783
Move common commands to the main UI file
2020-10-05 13:53:26 +02:00
Christian Rocha
a02cc01049
Pull an always-nil return value
2020-10-05 13:53:26 +02:00
Christian Rocha
23817355c6
Remove unnecessary conversion
2020-10-05 13:53:26 +02:00
Christian Rocha
c0daa74358
Add periods to comments to make the linter happy
2020-10-05 13:53:26 +02:00
Christian Rocha
2fdef64478
Stashed docs become local upon delete if they were stashed in-session
2020-10-05 13:53:26 +02:00
Christian Rocha
cdf11136f4
Log when stash item deletions fail
2020-10-05 13:53:26 +02:00
Christian Rocha
e9c47a185f
Be specific that we're deleting only from the stash
2020-10-05 13:53:26 +02:00
Christian Rocha
089b66f622
Fix extreme edge case error logging where local file has no path
2020-10-05 13:53:26 +02:00
Christian Rocha
2e7b0ec60f
Fix regression where items stashed in the pager were treated as local
2020-10-05 13:53:26 +02:00
Christian Rocha
d7974f035c
When stashing, replace local file with stashed file in the file listing
2020-10-05 13:53:26 +02:00
Christian Rocha
575017eb12
More integrated-looking stash confirmation message in pager
2020-10-05 13:53:26 +02:00
Christian Rocha
a10e7862ca
Update error message to match new error type
2020-10-05 13:53:26 +02:00
Christian Rocha
7d67711cdf
Show spinner while stashing in the pager
2020-10-05 13:53:26 +02:00
Christian Rocha
1d434d64ad
Stashed items get a green indicator in the pager
2020-10-05 13:53:26 +02:00
Christian Rocha
66dae71253
Show spinner in stash view while stashing
2020-10-05 13:53:26 +02:00
Christian Rocha
6e36891857
If a file is currently mid-stash don't let the user stash it again
2020-10-05 13:53:26 +02:00
Christian Rocha
2907abd351
Don't show status message in file listing when stashing in pager
2020-10-05 13:53:26 +02:00
Christian Rocha
e01dc95d7d
Shorten status messages to 2 seconds
2020-10-05 13:53:26 +02:00
Christian Rocha
d6f296c44b
Load document body before stashing when stashing from the file listing
2020-10-05 13:53:26 +02:00
Christian Rocha
9db7c2e3ad
Make general error msg a struct for type safety
2020-10-05 13:53:26 +02:00
Christian Rocha
0897472ca2
Attempt to cleanup the Msg grab bag formatting
2020-10-05 13:53:26 +02:00
Christian Rocha
5bdf7649b0
Set ID of newly stashed markdowns so we can operate on them
2020-10-05 13:53:26 +02:00
Christian Rocha
d9b1d335d4
Use "just now" rather than seconds for documents under 1 minute old
2020-10-05 13:53:26 +02:00
Christian Rocha
40724af7e1
Short circuit help view sooner if we can
2020-10-05 13:53:26 +02:00
Christian Rocha
2e16f2682e
Highlight stash choice in file listing footer
2020-10-05 13:53:26 +02:00
Christian Rocha
04b6089bd9
Stash documents from the stash view
2020-10-05 13:53:26 +02:00
Christian Rocha
3572ef5470
Log when local file search finishes
2020-10-05 13:53:26 +02:00
Christian Rocha
651683cd21
Treat Markdown.CreatedAt as values per the updates in the charm lib
2020-10-05 13:53:26 +02:00
Christian Rocha
5613e36154
Adjust dark green color in status message bar
2020-10-05 13:53:26 +02:00
Christian Rocha
593d9f07e7
Stash local files from the pager
2020-10-05 13:53:26 +02:00
Christian Muehlhaeuser
be478cbaf3
Adapt to upstream gitcha API
2020-10-05 13:53:26 +02:00
Christian Rocha
ddbacffc0b
Log IO errors if a logfile is set
2020-10-05 13:52:51 +02:00
Christian Muehlhaeuser
705665bda9
Bump charm dependency
2020-10-05 13:52:50 +02:00
Christian Rocha
c55bb23744
Minor comments and cleanup in the TUI
2020-10-05 13:52:36 +02:00
Christian Rocha
3d5d203217
Remove unused variable
2020-10-05 13:52:36 +02:00
Christian Rocha
2ed9e71533
Bump Charm library + tiny associated code update
2020-10-05 13:52:35 +02:00
Christian Rocha
2a3fa6139c
Simplify messaging in (rare) state where there's absolutely nothing to show
2020-10-05 13:52:22 +02:00
Christian Rocha
2c3c5a8c87
Replace commented-out code about stash-related pagination with a note
2020-10-05 13:52:22 +02:00
Christian Rocha
bf683538f8
Bump charm dependency and update keygen import
2020-10-05 13:52:22 +02:00
Christian Rocha
428a315947
Restore Glamour rendering, performance pager, and debug logging
...
I accidentally hosed all of these features in the last revision.
2020-10-05 13:52:22 +02:00
Christian Rocha
fa7c8f09f9
Respect -i/--identity flag in the TUI
2020-10-05 13:52:22 +02:00
Christian Rocha
60cee4a9a1
u/d also pages back/forth in the the file listing
2020-10-05 13:52:07 +02:00
Christian Rocha
8471c52fd7
Keep the stash help view from wrapping in very narrow windows
2020-10-05 13:52:07 +02:00
Christian Rocha
b831afc966
Don't say we haven't found anything until we're done searching
2020-10-05 13:52:07 +02:00
Christian Rocha
a2fd25d0f0
Sort local items by filename rather than date
2020-10-05 13:51:54 +02:00
Christian Muehlhaeuser
6b21789417
Ensure sorting is stable: type -> timestamp -> path/ID
2020-10-05 13:51:54 +02:00
Christian Rocha
a04ca3f61e
Fix bug where pressing left to exit the pager would also page the stash
2020-10-05 13:51:31 +02:00
Christian Rocha
8903ad88cd
Update stash help to push the notion that q quits
2020-10-05 13:51:31 +02:00
Christian Rocha
f611b6e71f
Also use f and b to change pages in the file listing view
2020-10-05 13:51:31 +02:00
Christian Rocha
fc2f05626e
Pressing q quits no matter where you are
2020-10-05 13:51:31 +02:00
Christian Rocha
b31aba3c4e
Fix case where pager commands could be lost
2020-10-05 13:51:31 +02:00
Christian Rocha
d941957b92
Also exit the pager with left arrow, h and delete/backspace
2020-10-05 13:51:31 +02:00
Christian Rocha
45163be06f
Refer to local files as "local" instead of "files"
2020-10-05 13:51:31 +02:00
Christian Rocha
83eec3f833
Don't change the state when initializing the Charm client
...
This was residue from an earlier version in the application when it opened
with a spinner rather than directly in the stash. It caused the pager to
lock up and it's status bar to disappear if a local markdown file was
opened before the Charm client initialized.
2020-10-05 13:51:19 +02:00
Christian Rocha
2c71185ba6
Remove mysterious "stash may not be totally loaded" dots for now
2020-10-05 13:51:19 +02:00
Christian Rocha
3f22be5ae4
Bump gitcha and adjust for gitcha API changes
2020-10-05 13:51:19 +02:00
Christian Rocha
2b42115599
Bump bubbles to get pgup/pgdown in the stash (via the paginator)
2020-10-05 13:51:08 +02:00
Christian Rocha
85c121d0ac
Add Arabic pagination if the dot nav gets wider than the terminal width
2020-10-05 13:50:39 +02:00
Christian Rocha
3619ad137a
Remove the bottom gap when closing the pager help whilst at the bottom
2020-10-05 13:50:38 +02:00
Christian Rocha
3b06c1fcd6
Correction help-toggling method name in pager
2020-10-05 13:50:19 +02:00
Christian Rocha
3b3bf684f9
Detect when stash and news loading fails (and update the UI accordingly)
2020-10-05 13:50:04 +02:00