listpick 0.1.15.0__tar.gz → 0.1.15.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of listpick might be problematic. Click here for more details.
- {listpick-0.1.15.0 → listpick-0.1.15.2}/CHANGELOG.md +6 -2
- {listpick-0.1.15.0/src/listpick.egg-info → listpick-0.1.15.2}/PKG-INFO +2 -1
- {listpick-0.1.15.0 → listpick-0.1.15.2}/TODO.md +8 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/setup.py +2 -1
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/listpick_app.py +14 -7
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/pane/pane_utils.py +0 -1
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/ui/build_help.py +10 -4
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/ui/keys.py +3 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2/src/listpick.egg-info}/PKG-INFO +2 -1
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick.egg-info/requires.txt +1 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/.gitignore +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/LICENSE.txt +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/README.md +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/assets/aria2tui_screenshot.png +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/assets/file_compare.png +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/assets/lpfman.png +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/data_generation/list_files.toml +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/data_generation/list_files_empty.toml +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/data_generation/video_duplicates.toml +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/data_generation/video_mediainfo.toml +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/input_files/polynomials.tsv +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/input_guides/gnuplot_graph.md +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/picker/auxiallary_files/2024-25_Premier_League.pkl +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/picker/footer_string_example.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/picker/picker_example.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/picker/template.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/examples/picker/wikipedia_table.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/listpick.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/requirements.txt +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/setup.cfg +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/__init__.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/__main__.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/pane/__init__.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/pane/get_data.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/pane/pane_functions.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/ui/__init__.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/ui/footer.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/ui/help_screen.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/ui/input_field.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/ui/picker_colours.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/__init__.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/clipboard_operations.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/config.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/dump.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/filtering.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/generate_data.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/graphing.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/keycodes.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/options_selectors.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/paste_operations.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/picker_log.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/search_and_filter_utils.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/searching.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/sorting.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/table_to_list_of_lists.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/user_input.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick/utils/utils.py +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick.egg-info/SOURCES.txt +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick.egg-info/dependency_links.txt +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick.egg-info/entry_points.txt +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/src/listpick.egg-info/top_level.txt +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/tests/kitty_control.sh +0 -0
- {listpick-0.1.15.0 → listpick-0.1.15.2}/tests/sorting_dates.csv +0 -0
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
# CHANGELOG.md
|
|
2
2
|
Note that the changes between 0.1.11.0 and 1.1.12.0 are listed under 0.1.11
|
|
3
3
|
|
|
4
|
-
## [0.1.
|
|
4
|
+
## [0.1.15.1] 2025-07-27
|
|
5
|
+
- Added key to toggle right pane.
|
|
6
|
+
- Improved appearance of help screen.
|
|
7
|
+
|
|
8
|
+
## [0.1.15.0] 2025-07-27
|
|
5
9
|
- Feature added: support for dynamic data display in a right pane.
|
|
6
10
|
- Bugs fixed:
|
|
7
11
|
- Fixed ipython not working when data is piped into the picker.
|
|
8
12
|
|
|
9
|
-
## [0.1.
|
|
13
|
+
## [0.1.14.0] - [0.1.14.14] 2025-08-24
|
|
10
14
|
- Added info screen to display all information on the running Picker.
|
|
11
15
|
- Added keys for file_next and file_prev
|
|
12
16
|
- Added __sizeof__() function for the Picker class.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: listpick
|
|
3
|
-
Version: 0.1.15.
|
|
3
|
+
Version: 0.1.15.2
|
|
4
4
|
Summary: Listpick is a powerful TUI data tool for creating TUI apps or viewing/comparing tabulated data.
|
|
5
5
|
Home-page: https://github.com/grimandgreedy/listpick
|
|
6
6
|
Author: Grim
|
|
@@ -27,6 +27,7 @@ Requires-Dist: pyperclip; extra == "full"
|
|
|
27
27
|
Requires-Dist: toml; extra == "full"
|
|
28
28
|
Requires-Dist: traitlets; extra == "full"
|
|
29
29
|
Requires-Dist: odfpy; extra == "full"
|
|
30
|
+
Requires-Dist: plotille; extra == "full"
|
|
30
31
|
Dynamic: author
|
|
31
32
|
Dynamic: author-email
|
|
32
33
|
Dynamic: classifier
|
|
@@ -143,6 +143,14 @@ ASAP
|
|
|
143
143
|
> - [x] Allow data to be piped into listpick.
|
|
144
144
|
> - [x] When data is piped in it links stdin with the pipe...
|
|
145
145
|
> - [x] Rather than getting user input from stdin we can get it by getting a fd for /dev/tty and reading chars from there.
|
|
146
|
+
> - [ ] Implement panes which can display various data
|
|
147
|
+
> - [x] Right pane
|
|
148
|
+
> - [ ] Types of data:
|
|
149
|
+
> - [x] Lists
|
|
150
|
+
> - [x] Graphs
|
|
151
|
+
> - [ ] Left pane
|
|
152
|
+
> - [ ] top/bottom panes?
|
|
153
|
+
|
|
146
154
|
|
|
147
155
|
|
|
148
156
|
|
|
@@ -16,7 +16,7 @@ with open("README.md", "r", encoding = "utf-8") as fh:
|
|
|
16
16
|
|
|
17
17
|
setuptools.setup(
|
|
18
18
|
name = "listpick",
|
|
19
|
-
version = "0.1.15.
|
|
19
|
+
version = "0.1.15.2",
|
|
20
20
|
author = "Grim",
|
|
21
21
|
author_email = "grimandgreedy@protonmail.com",
|
|
22
22
|
description = "Listpick is a powerful TUI data tool for creating TUI apps or viewing/comparing tabulated data.",
|
|
@@ -60,6 +60,7 @@ setuptools.setup(
|
|
|
60
60
|
"toml",
|
|
61
61
|
"traitlets",
|
|
62
62
|
"odfpy",
|
|
63
|
+
"plotille",
|
|
63
64
|
]
|
|
64
65
|
},
|
|
65
66
|
|
|
@@ -2365,7 +2365,8 @@ class Picker:
|
|
|
2365
2365
|
self.footer_string = self.footer_string_refresh_function()
|
|
2366
2366
|
initial_time_footer = time.time()
|
|
2367
2367
|
self.draw_screen(self.indexed_items, self.highlights)
|
|
2368
|
-
|
|
2368
|
+
|
|
2369
|
+
if self.split_right and self.split_right_auto_refresh and ((time.time() - initial_split_time) > self.split_right_refresh_data_timer):
|
|
2369
2370
|
self.split_right_data = self.split_right_refresh_data(self.split_right_data, self.get_function_data())
|
|
2370
2371
|
initial_split_time = time.time()
|
|
2371
2372
|
|
|
@@ -2386,7 +2387,7 @@ class Picker:
|
|
|
2386
2387
|
"highlight_full_row": True,
|
|
2387
2388
|
"top_gap": 0,
|
|
2388
2389
|
"paginate": self.paginate,
|
|
2389
|
-
"centre_in_terminal":
|
|
2390
|
+
"centre_in_terminal": False,
|
|
2390
2391
|
"centre_in_terminal_vertical": True,
|
|
2391
2392
|
"hidden_columns": [],
|
|
2392
2393
|
"reset_colours": False,
|
|
@@ -3222,6 +3223,9 @@ class Picker:
|
|
|
3222
3223
|
elif self.check_key("file_prev", key, self.keys_dict):
|
|
3223
3224
|
self.switch_file(increment=-1)
|
|
3224
3225
|
|
|
3226
|
+
elif self.check_key("toggle_right_pane", key, self.keys_dict):
|
|
3227
|
+
self.toggle_right_pane()
|
|
3228
|
+
|
|
3225
3229
|
elif self.check_key("pipe_input", key, self.keys_dict):
|
|
3226
3230
|
self.logger.info(f"key_function pipe_input")
|
|
3227
3231
|
# usrtxt = "xargs -d '\n' -I{} "
|
|
@@ -3744,17 +3748,20 @@ def main() -> None:
|
|
|
3744
3748
|
# function_data["paginate"] = True
|
|
3745
3749
|
# function_data["debug"] = True
|
|
3746
3750
|
# function_data["debug_level"] = 1
|
|
3747
|
-
|
|
3748
|
-
|
|
3749
|
-
|
|
3751
|
+
|
|
3752
|
+
function_data["split_right"] = True
|
|
3753
|
+
function_data["split_right_proportion"] = 2/3
|
|
3754
|
+
function_data["split_right_refresh_data"] = data_refresh_randint_title
|
|
3755
|
+
function_data["split_right_function"] = right_split_display_list
|
|
3756
|
+
function_data["split_right_data"] = ["Files", [str(x) for x in range(100)]]
|
|
3757
|
+
|
|
3758
|
+
|
|
3750
3759
|
# function_data["split_right_refresh_data"] = get_dl
|
|
3751
3760
|
|
|
3752
3761
|
|
|
3753
3762
|
# function_data["split_right_function"] = right_split_file_attributes
|
|
3754
3763
|
# function_data["split_right_auto_refresh"] = True
|
|
3755
3764
|
# function_data["split_right_function"] = right_split_graph
|
|
3756
|
-
# function_data["split_right_function"] = right_split_display_list
|
|
3757
|
-
# function_data["split_right_data"] = ["Files", [str(x) for x in range(100)]]
|
|
3758
3765
|
|
|
3759
3766
|
stdscr = start_curses()
|
|
3760
3767
|
try:
|
|
@@ -27,7 +27,6 @@ def get_graph_string(x_vals, y_vals, width=50, height=20, title=None, x_label=No
|
|
|
27
27
|
fig.plot(x_vals, y_vals)
|
|
28
28
|
|
|
29
29
|
# Set the dimensions of the graph
|
|
30
|
-
fig.title = "hi"
|
|
31
30
|
fig.width = width-10
|
|
32
31
|
fig.height = height-4
|
|
33
32
|
fig.x_ticks_fkt = lambda x, _: f"{int(x)}s"
|
|
@@ -142,14 +142,15 @@ def build_help_rows(keys_dict: dict, debug: bool = False) -> list[list[str]]:
|
|
|
142
142
|
"file_prev": "Go to the previous open file.",
|
|
143
143
|
"sheet_next": "Go to the next sheet.",
|
|
144
144
|
"sheet_prev": "Go to the previous sheet.",
|
|
145
|
+
"toggle_right_pane": "Toggle the right pane",
|
|
145
146
|
}
|
|
146
147
|
sections = {
|
|
147
148
|
"Navigation:": [ "cursor_down", "cursor_up", "half_page_up", "half_page_down", "page_up", "page_down", "cursor_bottom", "cursor_top", "five_up", "five_down", "scroll_right", "scroll_left", "scroll_far_right", "scroll_far_left" ],
|
|
148
149
|
"Selection:": [ "toggle_select", "select_all", "select_none", "visual_selection_toggle", "visual_deselection_toggle", "enter" ],
|
|
149
|
-
"UI:": [ "toggle_footer", "redraw_screen", "decrease_lines_per_page", "increase_lines_per_page", "increase_column_width", "decrease_column_width", "notification_toggle" ],
|
|
150
|
+
"UI:": [ "toggle_footer", "redraw_screen", "decrease_lines_per_page", "increase_lines_per_page", "increase_column_width", "decrease_column_width", "notification_toggle", "toggle_right_pane"],
|
|
150
151
|
"Sort:": [ "cycle_sort_method", "cycle_sort_method_reverse", "cycle_sort_order", ] ,
|
|
151
152
|
"Data manipulation:": [ "delete", "delete_column", "edit", "edit_picker", "edit_ipython", "add_column_before", "add_column_after", "add_row_before", "add_row_after"],
|
|
152
|
-
"Filter and sort:": [ "filter_input", "
|
|
153
|
+
"Filter and sort:": [ "filter_input", "search_input", "continue_search_forward", "continue_search_backward", ] ,
|
|
153
154
|
"Settings:": [ "settings_input", "settings_options" ],
|
|
154
155
|
"Cancel:": [ "opts_input", "opts_select", "mode_next", "mode_prev", "pipe_input", "reset_opts", "col_select", "col_select_next", "col_select_prev", "col_hide" ],
|
|
155
156
|
"Save, load, copy and paste:": [ "save", "load", "open", "copy", "paste" ],
|
|
@@ -197,15 +198,20 @@ def build_help_rows(keys_dict: dict, debug: bool = False) -> list[list[str]]:
|
|
|
197
198
|
row = [f" {str(keys)[1:-1]}", description]
|
|
198
199
|
section_rows.append(row)
|
|
199
200
|
if section_rows:
|
|
200
|
-
items.append([section_name, ""])
|
|
201
|
+
items.append([f" {section_name}", ""])
|
|
201
202
|
items += section_rows
|
|
202
203
|
items.append(["",""])
|
|
203
204
|
|
|
205
|
+
if debug:
|
|
206
|
+
for operation in keys_dict:
|
|
207
|
+
if operation not in help_descriptions:
|
|
208
|
+
print(f"Note that {operation} is not in the help_descriptions")
|
|
209
|
+
|
|
204
210
|
return items
|
|
205
211
|
|
|
206
212
|
if __name__ == "__main__":
|
|
207
213
|
items = build_help_rows(picker_keys, debug=True)
|
|
208
|
-
items = build_help_rows(notification_keys, debug=True)
|
|
214
|
+
# items = build_help_rows(notification_keys, debug=True)
|
|
209
215
|
|
|
210
216
|
# from listpick.listpick_app import Picker, start_curses, close_curses
|
|
211
217
|
# stdscr = start_curses()
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: listpick
|
|
3
|
-
Version: 0.1.15.
|
|
3
|
+
Version: 0.1.15.2
|
|
4
4
|
Summary: Listpick is a powerful TUI data tool for creating TUI apps or viewing/comparing tabulated data.
|
|
5
5
|
Home-page: https://github.com/grimandgreedy/listpick
|
|
6
6
|
Author: Grim
|
|
@@ -27,6 +27,7 @@ Requires-Dist: pyperclip; extra == "full"
|
|
|
27
27
|
Requires-Dist: toml; extra == "full"
|
|
28
28
|
Requires-Dist: traitlets; extra == "full"
|
|
29
29
|
Requires-Dist: odfpy; extra == "full"
|
|
30
|
+
Requires-Dist: plotille; extra == "full"
|
|
30
31
|
Dynamic: author
|
|
31
32
|
Dynamic: author-email
|
|
32
33
|
Dynamic: classifier
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{listpick-0.1.15.0 → listpick-0.1.15.2}/examples/picker/auxiallary_files/2024-25_Premier_League.pkl
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|