skilleter-thingy 0.0.97__tar.gz → 0.0.98__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 skilleter-thingy might be problematic. Click here for more details.

Files changed (74) hide show
  1. {skilleter_thingy-0.0.97/skilleter_thingy.egg-info → skilleter_thingy-0.0.98}/PKG-INFO +1 -1
  2. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/pyproject.toml +1 -1
  3. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/multigit.py +7 -13
  4. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/colour.py +17 -3
  5. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98/skilleter_thingy.egg-info}/PKG-INFO +1 -1
  6. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/LICENSE +0 -0
  7. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/README.md +0 -0
  8. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/setup.cfg +0 -0
  9. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/__init__.py +0 -0
  10. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/addpath.py +0 -0
  11. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/borger.py +0 -0
  12. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/box.py +0 -0
  13. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/console_colours.py +0 -0
  14. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/diskspacecheck.py +0 -0
  15. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/docker_purge.py +0 -0
  16. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/ffind.py +0 -0
  17. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/ggit.py +0 -0
  18. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/ggrep.py +0 -0
  19. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_br.py +0 -0
  20. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_ca.py +0 -0
  21. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_cleanup.py +0 -0
  22. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_co.py +0 -0
  23. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_common.py +0 -0
  24. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_hold.py +0 -0
  25. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_mr.py +0 -0
  26. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_parent.py +0 -0
  27. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_review.py +0 -0
  28. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_update.py +0 -0
  29. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/git_wt.py +0 -0
  30. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/gitcmp_helper.py +0 -0
  31. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/gitprompt.py +0 -0
  32. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/gl.py +0 -0
  33. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/gphotosync.py +0 -0
  34. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/linecount.py +0 -0
  35. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/moviemover.py +0 -0
  36. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/photodupe.py +0 -0
  37. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/phototidier.py +0 -0
  38. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/py_audit.py +0 -0
  39. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/readable.py +0 -0
  40. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/remdir.py +0 -0
  41. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/rmdupe.py +0 -0
  42. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/rpylint.py +0 -0
  43. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/splitpics.py +0 -0
  44. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/strreplace.py +0 -0
  45. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/sysmon.py +0 -0
  46. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/tfm.py +0 -0
  47. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/tfparse.py +0 -0
  48. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/__init__.py +0 -0
  49. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/dc_curses.py +0 -0
  50. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/dc_defaults.py +0 -0
  51. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/dc_util.py +0 -0
  52. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/dircolors.py +0 -0
  53. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/docker.py +0 -0
  54. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/files.py +0 -0
  55. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/git.py +0 -0
  56. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/git2.py +0 -0
  57. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/gitlab.py +0 -0
  58. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/path.py +0 -0
  59. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/popup.py +0 -0
  60. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/process.py +0 -0
  61. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/run.py +0 -0
  62. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/tfm_pane.py +0 -0
  63. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/tidy.py +0 -0
  64. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/thingy/venv_template.py +0 -0
  65. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/trimpath.py +0 -0
  66. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/venv_create.py +0 -0
  67. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/window_rename.py +0 -0
  68. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/xchmod.py +0 -0
  69. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy/yamlcheck.py +0 -0
  70. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy.egg-info/SOURCES.txt +0 -0
  71. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy.egg-info/dependency_links.txt +0 -0
  72. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy.egg-info/entry_points.txt +0 -0
  73. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy.egg-info/requires.txt +0 -0
  74. {skilleter_thingy-0.0.97 → skilleter_thingy-0.0.98}/skilleter_thingy.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: skilleter_thingy
3
- Version: 0.0.97
3
+ Version: 0.0.98
4
4
  Summary: A collection of useful utilities, mainly aimed at making Git more friendly
5
5
  Author-email: John Skilleter <john@skilleter.org.uk>
6
6
  Project-URL: Home, https://skilleter.org.uk
@@ -7,7 +7,7 @@ name = "skilleter_thingy"
7
7
 
8
8
  # Version must be incremented to install updated Thingy
9
9
 
10
- version = "0.0.97"
10
+ version = "0.0.98"
11
11
 
12
12
  authors = [
13
13
  {name="John Skilleter", email="john@skilleter.org.uk"},
@@ -30,7 +30,6 @@ import thingy.colour as colour
30
30
  # TODO: -j option to run in parallel - yes, but it will only work with non-interactive Git commands
31
31
  # TODO: Command that takes partial working tree name and either returns full path or pops up window to autocomplete until single match found
32
32
  # TODO: Consistent colours in output
33
- # TODO: If run in a subdirectory, only process working trees in that tree (or have an option to do so)
34
33
  # TODO: Option to +dir to return all matches so that caller can select one they want
35
34
  # TODO: Verbose option
36
35
  # TODO: When filtering by tag, if tag starts with '!' only match if tag isn't present (and don't allow '!' at start of tag otherwise)
@@ -39,7 +38,8 @@ import thingy.colour as colour
39
38
  # TODO: +run command to do things other than git commands
40
39
  # TODO: init option '--update' to update the configuration file with new working trees and remove ones that are no longer there
41
40
  # TODO: init option '--set-default' to update the default branch to the current one for specified working trees
42
- # TODO: Integrat completion with fzf if installed?
41
+ # TODO: Integrate completion with fzf if installed?
42
+ # TODO: If run in a subdirectory, only process working trees in that tree (or have an option to do so, or an option _not_ to do so; --all)
43
43
  ################################################################################
44
44
 
45
45
  DEFAULT_CONFIG_FILE = 'multigit.toml'
@@ -153,14 +153,7 @@ def find_configuration(default_config_file):
153
153
  def show_progress(width, msg):
154
154
  """Show a single line progress message"""
155
155
 
156
- name = msg[:width-1]
157
-
158
- colour.write(f'{name}', newline=False)
159
-
160
- if len(name) < width-1:
161
- colour.write(' '*(width-len(name)), newline=False)
162
-
163
- colour.write('\r', newline=False)
156
+ colour.write(msg[:width-1], newline=False, cleareol=True, cr=True)
164
157
 
165
158
  ################################################################################
166
159
 
@@ -298,9 +291,10 @@ def mg_init(args, config, console):
298
291
 
299
292
  colour.write(f'Added [BOLD:{repo}] with default branch [BLUE:{default_branch}]')
300
293
 
301
- # Look for configuration entries that are no longer present and delete them
294
+ if not args.quiet:
295
+ colour.write(cleareol=True)
302
296
 
303
- colour.write()
297
+ # Look for configuration entries that are no longer present and delete them
304
298
 
305
299
  removals = []
306
300
 
@@ -571,7 +565,7 @@ def main():
571
565
 
572
566
  if not args.configuration_file:
573
567
  if args.internal_command and args.command == 'init':
574
- args.configuration_file = args.default_configuration_file
568
+ args.configuration_file = os.path.abspath(args.default_configuration_file)
575
569
  else:
576
570
  error('Cannot locate configuration file')
577
571
 
@@ -42,6 +42,8 @@ _ANSI_BMAGENTA = '\x1b[45m'
42
42
  _ANSI_BCYAN = '\x1b[46m'
43
43
  _ANSI_BWHITE = '\x1b[47m'
44
44
 
45
+ _ANSI_CLEAREOL = '\x1b[K'
46
+
45
47
  # Looking up tables for converting textual colour codes to ANSI codes
46
48
 
47
49
  ANSI_REGEXES = \
@@ -144,7 +146,7 @@ def format(txt):
144
146
 
145
147
  ################################################################################
146
148
 
147
- def write(txt=None, newline=True, stream=sys.stdout, indent=0, strip=False):
149
+ def write(txt=None, newline=True, stream=sys.stdout, indent=0, strip=False, cleareol=False, cr=False):
148
150
  """ Write to the specified stream (defaulting to stdout), converting colour codes to ANSI
149
151
  txt can be None, a string or a list of strings."""
150
152
 
@@ -163,10 +165,22 @@ def write(txt=None, newline=True, stream=sys.stdout, indent=0, strip=False):
163
165
 
164
166
  stream.write(line)
165
167
 
168
+ if cleareol:
169
+ stream.write(_ANSI_CLEAREOL)
170
+
166
171
  if newline or n < len(txt) - 1:
167
172
  stream.write('\n')
168
- elif newline:
169
- stream.write('\n')
173
+ elif cr:
174
+ stream.write('\r')
175
+
176
+ else:
177
+ if cleareol:
178
+ stream.write(_ANSI_CLEAREOL)
179
+
180
+ if newline:
181
+ stream.write('\n')
182
+ elif cr:
183
+ stream.write('\r')
170
184
 
171
185
  ################################################################################
172
186
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: skilleter_thingy
3
- Version: 0.0.97
3
+ Version: 0.0.98
4
4
  Summary: A collection of useful utilities, mainly aimed at making Git more friendly
5
5
  Author-email: John Skilleter <john@skilleter.org.uk>
6
6
  Project-URL: Home, https://skilleter.org.uk