listpick 0.1.16.11__tar.gz → 0.1.16.13__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.

Files changed (48) hide show
  1. {listpick-0.1.16.11/src/listpick.egg-info → listpick-0.1.16.13}/PKG-INFO +24 -36
  2. {listpick-0.1.16.11 → listpick-0.1.16.13}/README.md +23 -35
  3. {listpick-0.1.16.11 → listpick-0.1.16.13}/setup.py +1 -1
  4. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/listpick_app.py +454 -227
  5. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/build_help.py +8 -7
  6. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/keys.py +6 -2
  7. listpick-0.1.16.13/src/listpick/utils/generate_data_multiprocessing.py +10 -0
  8. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/generate_data_multithreaded.py +36 -12
  9. listpick-0.1.16.13/src/listpick/utils/generate_data_utils.py +43 -0
  10. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/utils.py +3 -0
  11. {listpick-0.1.16.11 → listpick-0.1.16.13/src/listpick.egg-info}/PKG-INFO +24 -36
  12. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick.egg-info/SOURCES.txt +2 -0
  13. {listpick-0.1.16.11 → listpick-0.1.16.13}/LICENSE.txt +0 -0
  14. {listpick-0.1.16.11 → listpick-0.1.16.13}/setup.cfg +0 -0
  15. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/__init__.py +0 -0
  16. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/__main__.py +0 -0
  17. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/pane/__init__.py +0 -0
  18. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/pane/get_data.py +0 -0
  19. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/pane/left_pane_functions.py +0 -0
  20. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/pane/pane_functions.py +0 -0
  21. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/pane/pane_functions_1.py +0 -0
  22. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/pane/pane_utils.py +0 -0
  23. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/__init__.py +0 -0
  24. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/draw_screen.py +0 -0
  25. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/footer.py +0 -0
  26. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/help_screen.py +0 -0
  27. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/input_field.py +0 -0
  28. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/ui/picker_colours.py +0 -0
  29. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/__init__.py +0 -0
  30. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/clipboard_operations.py +0 -0
  31. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/config.py +0 -0
  32. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/dump.py +0 -0
  33. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/filtering.py +0 -0
  34. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/generate_data.py +0 -0
  35. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/graphing.py +0 -0
  36. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/keycodes.py +0 -0
  37. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/options_selectors.py +0 -0
  38. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/paste_operations.py +0 -0
  39. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/picker_log.py +0 -0
  40. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/search_and_filter_utils.py +0 -0
  41. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/searching.py +0 -0
  42. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/sorting.py +0 -0
  43. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/table_to_list_of_lists.py +0 -0
  44. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick/utils/user_input.py +0 -0
  45. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick.egg-info/dependency_links.txt +0 -0
  46. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick.egg-info/entry_points.txt +0 -0
  47. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick.egg-info/requires.txt +0 -0
  48. {listpick-0.1.16.11 → listpick-0.1.16.13}/src/listpick.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: listpick
3
- Version: 0.1.16.11
3
+ Version: 0.1.16.13
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
@@ -41,13 +41,9 @@ Dynamic: requires-dist
41
41
  Dynamic: requires-python
42
42
  Dynamic: summary
43
43
 
44
- qq# listpick
44
+ # listpick
45
45
 
46
- listpick is a TUI tool which displays a tabulated list of rows and allows the user to operate upon these rows--select, copy, pipe. A very simple concept but also, I hope, a powerful tool that will make it easier for people to develop TUI apps.
47
-
48
- Rows of data can be viewed, selected, generated, saved, loaded, refreshed, modified or copied to the clipboard. Easy to integrate into your project by creating a `menu = Picker(stdscr: curses.window, items: list[list[str]])` and then the menu will be displayed by running `menu.run()`.
49
-
50
- It works great as the backend for a TUI application and can also be used as a standalone data viewer.
46
+ listpick is a powerful TUI data tool for viewing, editing and operating upon tabulated data; can be used to build TUI applications, generate data columns, or function as a command-line utility.
51
47
 
52
48
  **NOTE**: listpick is still in development.
53
49
 
@@ -72,18 +68,13 @@ x = Picker(
72
68
  ["row zero column zero", "row zero column one"],
73
69
  ["row one column zero", "row one column one"]
74
70
  ],
75
- header=["H0", "H1"]
71
+ header=["H0", "H1"],
72
+ cell_cursor=True,
76
73
  )
77
74
  x.run()
78
75
 
79
76
  close_curses(stdscr)
80
77
 
81
- ```
82
- Or use the listpick binary to generate and display rows based on a list of commands:
83
-
84
- ```
85
- wget https://raw.githubusercontent.com/grimandgreedy/listpick/refs/heads/master/examples/data_generation/list_files.toml
86
- listpick -g list_files.py
87
78
  ```
88
79
 
89
80
  ## Overview
@@ -102,23 +93,33 @@ The application allows you to:
102
93
  ## Examples
103
94
 
104
95
 
96
+ ### listpick as a command-line tool
105
97
 
106
- ### Aria2TUI
98
+ listpick can be used as a command-line tool for tabulating command outputs:
99
+ ```bash
100
+ df -h | listpick --stdin
101
+ ```
102
+
103
+ <div align="center"> <img src="assets/listpick_df_example.png" alt="lpfman" width="90%"> </div>
104
+
105
+ ### Applications
107
106
 
108
- [Aria2TUI](https://github.com/grimandgreedy/Aria2TUI) is implemented using listpick. This is a good example of how listpick can be used for menus, data viewing, and active data retrieval.
107
+ #### Aria2TUI
109
108
 
110
- <div align="center"> <img src="assets/aria2tui_graph_screenshot.png" alt="Aria2TUI" width="70%"> </div>
109
+ [Aria2TUI](https://github.com/grimandgreedy/Aria2TUI): TUI client for the aria2c download utility.
111
110
 
112
- ### lpfman
113
- [lpfman](https://github.com/grimandgreedy/lpfman) is a terminal file manager with extensive column support.
111
+ <div align="center"> <img src="assets/aria2tui_graph_screenshot.png" alt="Aria2TUI" width="90%"> </div>
114
112
 
115
- <div align="center"> <img src="https://github.com/grimandgreedy/lpfman/blob/master/assets/lpfman_image_preview.png?raw=true" alt="lpfman" width="70%"> </div>
113
+ #### lpfman
114
+ [lpfman](https://github.com/grimandgreedy/lpfman): Terminal file manager with extensive column support.
115
+
116
+ <div align="center"> <img src="https://github.com/grimandgreedy/lpfman/blob/master/assets/lpfman_02.png?raw=true" alt="lpfman" width="90%"> </div>
116
117
 
117
118
 
118
119
  ### Data generation from toml file
119
120
 
120
121
  ```python
121
- listpick -g ./examples/data_generation/video_duplicates.toml
122
+ listpick -g ./listpick/examples/data_generation/video_duplicates.toml
122
123
  ```
123
124
  - From the list of commands in the toml file we generate the properties we will use to identify the duplicates.
124
125
 
@@ -127,7 +128,7 @@ listpick -g ./examples/data_generation/video_duplicates.toml
127
128
 
128
129
  - We get the SHA1 hash to identify identical files; we also get the size, duration, resolution, and bitrate so that we can identify a video duplicate that may have the same duration but a lower resolution.
129
130
 
130
- <div align="center"> <img src="assets/file_compare.png" alt="Video Compare" width="70%"> </div>
131
+ <div align="center"> <img src="assets/file_compare.png" alt="Video Compare" width="90%"> </div>
131
132
 
132
133
 
133
134
  ## Description
@@ -135,7 +136,7 @@ listpick -g ./examples/data_generation/video_duplicates.toml
135
136
  ### Key Features:
136
137
  1. **File Input Support:**
137
138
  ```python
138
- listpick -i ~/dn.pkl -t pkl
139
+ listpick -i ~/items.csv
139
140
  ```
140
141
  - Text files (TSV, CSV)
141
142
  - JSON
@@ -207,19 +208,6 @@ listpick -g ./examples/data_generation/video_duplicates.toml
207
208
  - Opening files with a specific application `xargs -d \n -I{} mpv {}` will open the files in mpv
208
209
  - Dumping data. `xargs -d \n -I{} echo {} > ~/stuff.txt`
209
210
 
210
- ## Overview
211
-
212
- The application allows you to:
213
- - Select multiple items from different file types and input streams
214
- - Navigate between selected items with arrow keys
215
- - Delete individual items
216
- - Highlight specific items for quick selection
217
- - Perform complex filtering operations
218
- - Sort data based on specified columns
219
- - Persistent save/load of selections
220
- - Copy/paste selections to clipboard
221
-
222
-
223
211
  ## Support and Feedback
224
212
 
225
213
  Feel free to request features. Please report any errors you encounter with appropriate context.
@@ -1,10 +1,6 @@
1
- qq# listpick
1
+ # listpick
2
2
 
3
- listpick is a TUI tool which displays a tabulated list of rows and allows the user to operate upon these rows--select, copy, pipe. A very simple concept but also, I hope, a powerful tool that will make it easier for people to develop TUI apps.
4
-
5
- Rows of data can be viewed, selected, generated, saved, loaded, refreshed, modified or copied to the clipboard. Easy to integrate into your project by creating a `menu = Picker(stdscr: curses.window, items: list[list[str]])` and then the menu will be displayed by running `menu.run()`.
6
-
7
- It works great as the backend for a TUI application and can also be used as a standalone data viewer.
3
+ listpick is a powerful TUI data tool for viewing, editing and operating upon tabulated data; can be used to build TUI applications, generate data columns, or function as a command-line utility.
8
4
 
9
5
  **NOTE**: listpick is still in development.
10
6
 
@@ -29,18 +25,13 @@ x = Picker(
29
25
  ["row zero column zero", "row zero column one"],
30
26
  ["row one column zero", "row one column one"]
31
27
  ],
32
- header=["H0", "H1"]
28
+ header=["H0", "H1"],
29
+ cell_cursor=True,
33
30
  )
34
31
  x.run()
35
32
 
36
33
  close_curses(stdscr)
37
34
 
38
- ```
39
- Or use the listpick binary to generate and display rows based on a list of commands:
40
-
41
- ```
42
- wget https://raw.githubusercontent.com/grimandgreedy/listpick/refs/heads/master/examples/data_generation/list_files.toml
43
- listpick -g list_files.py
44
35
  ```
45
36
 
46
37
  ## Overview
@@ -59,23 +50,33 @@ The application allows you to:
59
50
  ## Examples
60
51
 
61
52
 
53
+ ### listpick as a command-line tool
62
54
 
63
- ### Aria2TUI
55
+ listpick can be used as a command-line tool for tabulating command outputs:
56
+ ```bash
57
+ df -h | listpick --stdin
58
+ ```
59
+
60
+ <div align="center"> <img src="assets/listpick_df_example.png" alt="lpfman" width="90%"> </div>
61
+
62
+ ### Applications
64
63
 
65
- [Aria2TUI](https://github.com/grimandgreedy/Aria2TUI) is implemented using listpick. This is a good example of how listpick can be used for menus, data viewing, and active data retrieval.
64
+ #### Aria2TUI
66
65
 
67
- <div align="center"> <img src="assets/aria2tui_graph_screenshot.png" alt="Aria2TUI" width="70%"> </div>
66
+ [Aria2TUI](https://github.com/grimandgreedy/Aria2TUI): TUI client for the aria2c download utility.
68
67
 
69
- ### lpfman
70
- [lpfman](https://github.com/grimandgreedy/lpfman) is a terminal file manager with extensive column support.
68
+ <div align="center"> <img src="assets/aria2tui_graph_screenshot.png" alt="Aria2TUI" width="90%"> </div>
71
69
 
72
- <div align="center"> <img src="https://github.com/grimandgreedy/lpfman/blob/master/assets/lpfman_image_preview.png?raw=true" alt="lpfman" width="70%"> </div>
70
+ #### lpfman
71
+ [lpfman](https://github.com/grimandgreedy/lpfman): Terminal file manager with extensive column support.
72
+
73
+ <div align="center"> <img src="https://github.com/grimandgreedy/lpfman/blob/master/assets/lpfman_02.png?raw=true" alt="lpfman" width="90%"> </div>
73
74
 
74
75
 
75
76
  ### Data generation from toml file
76
77
 
77
78
  ```python
78
- listpick -g ./examples/data_generation/video_duplicates.toml
79
+ listpick -g ./listpick/examples/data_generation/video_duplicates.toml
79
80
  ```
80
81
  - From the list of commands in the toml file we generate the properties we will use to identify the duplicates.
81
82
 
@@ -84,7 +85,7 @@ listpick -g ./examples/data_generation/video_duplicates.toml
84
85
 
85
86
  - We get the SHA1 hash to identify identical files; we also get the size, duration, resolution, and bitrate so that we can identify a video duplicate that may have the same duration but a lower resolution.
86
87
 
87
- <div align="center"> <img src="assets/file_compare.png" alt="Video Compare" width="70%"> </div>
88
+ <div align="center"> <img src="assets/file_compare.png" alt="Video Compare" width="90%"> </div>
88
89
 
89
90
 
90
91
  ## Description
@@ -92,7 +93,7 @@ listpick -g ./examples/data_generation/video_duplicates.toml
92
93
  ### Key Features:
93
94
  1. **File Input Support:**
94
95
  ```python
95
- listpick -i ~/dn.pkl -t pkl
96
+ listpick -i ~/items.csv
96
97
  ```
97
98
  - Text files (TSV, CSV)
98
99
  - JSON
@@ -164,19 +165,6 @@ listpick -g ./examples/data_generation/video_duplicates.toml
164
165
  - Opening files with a specific application `xargs -d \n -I{} mpv {}` will open the files in mpv
165
166
  - Dumping data. `xargs -d \n -I{} echo {} > ~/stuff.txt`
166
167
 
167
- ## Overview
168
-
169
- The application allows you to:
170
- - Select multiple items from different file types and input streams
171
- - Navigate between selected items with arrow keys
172
- - Delete individual items
173
- - Highlight specific items for quick selection
174
- - Perform complex filtering operations
175
- - Sort data based on specified columns
176
- - Persistent save/load of selections
177
- - Copy/paste selections to clipboard
178
-
179
-
180
168
  ## Support and Feedback
181
169
 
182
170
  Feel free to request features. Please report any errors you encounter with appropriate context.
@@ -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.16.11",
19
+ version = "0.1.16.13",
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.",