Name | CrossRename JSON |
Version |
1.1.0
JSON |
| download |
home_page | None |
Summary | Harmonize file names for Linux and Windows. |
upload_time | 2024-11-16 00:18:21 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.9 |
license | MIT License Copyright (c) 2024 Emmanuel C. Jemeni Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
keywords |
files
rename
linux
windows
transferring
filename
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
CrossRename
===========
Harmonize file names for Linux and Windows.
Table of Contents
=================
- `Introduction <#introduction>`__
- `Features <#features>`__
- `Installation <#installation>`__
- `Usage <#usage>`__
- `Examples <#examples>`__
- `Why did I build this? <#why-did-i-build-this>`__
- `Contributing <#contributing>`__
- `Wait a minute, who are you? <#wait-a-minute-who-are-you>`__
- `License <#license>`__
- `Changelog <#changelog>`__
Introduction
============
CrossRename is a command-line tool designed to harmonize file names
across Linux and Windows systems. It ensures that your file names are
compatible with both operating systems, eliminating naming conflicts
when transferring files between different environments.
Features
========
- Sanitizes file names to be Windows-compatible (and thus
Linux-compatible)
- Handles both individual files and entire directories
- Supports recursive renaming of files in subdirectories
- Preserves file extensions, including compound extensions like .tar.gz
- Provides informative logging
- Provides a dry-run mode to preview renaming changes without executing them
- Skips recursive symlinks to avoid infinite loops
Installation
============
From PyPI (Using PIP)
---------------------
::
pip install CrossRename
Usage
=====
::
usage: crossrename [-h] [-p PATH] [-v] [-u] [-r] [-d]
CrossRename: Harmonize file names for Linux and Windows.
options:
-h, --help show this help message and exit
-p PATH, --path PATH The path to the file or directory to rename.
-v, --version Prints out the current version and quits.
-u, --update Check if a new version is available.
-r, --recursive Rename all files in the directory path given and its subdirectories.
-d, --dry-run Perform a dry run, logging changes without renaming.
Examples
--------
Rename a single file:
::
crossrename -p /path/to/file.txt
Rename all files in a directory (and its subdirectories):
::
crossrename -p /path/to/directory -r
Perform a dry run to preview renaming changes without executing them:
::
crossrename -p /path/to/directory -r -d
Check for an update:
::
crossrename -u
Why did I build this?
=====================
.. warning::
I'm no longer dual booting. I'm only using Windows 10 now. I do have
WSL2 and that's what I use for testing. I don't know if there'll be
any difference in the way the tool works on a native Linux system.
I'm a dual-booter running Windows 10 and Lubuntu 22.04. One day
(literally yesterday lol), while transferring a folder between the two
systems, I hit a naming roadblock. Five stubborn files refused to budge,
thanks to the quirky differences in file naming rules between Linux and
Windows.
This experience got me thinking. You see, I had previously built
`FicImage <https://github.com/Jemeni11/ficimage>`__, a nifty application
that elevates the reading experience of `FicHub <https://fichub.net/>`__
epubs by adding missing images. It required handling file creation and
renaming, and that knowledge proved invaluable.
And so, CrossRename was born – a tool to simplify your life when
managing files between Linux and Windows. No more naming hassles, just
smooth, worry-free file management.
Contributing
============
Contributions are welcome! If you'd like to improve CrossRename or add
support for other operating systems (like macOS), please feel free to
submit a pull request.
Wait a minute, who are you?
===========================
Hello there! I'm Emmanuel Jemeni, and while I primarily work as a
Frontend Developer, Python holds a special place as my first programming
language. You can find me on various platforms:
- `LinkedIn <https://www.linkedin.com/in/emmanuel-jemeni>`__
- `GitHub <https://github.com/Jemeni11>`__
- `Twitter/X <https://twitter.com/Jemeni11_>`__
License
=======
`MIT License <LICENSE>`__
Changelog
=========
`Changelog <CHANGELOG.md>`__
Raw data
{
"_id": null,
"home_page": null,
"name": "CrossRename",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "files, rename, linux, windows, transferring, filename",
"author": null,
"author_email": "\"Emmanuel C. Jemeni\" <jemenichinonso11@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/21/fd/c9b90c16f57693876bfdcd0ba41beb21b199b174998292a449cfa50f5998/crossrename-1.1.0.tar.gz",
"platform": null,
"description": "CrossRename\r\n===========\r\n\r\nHarmonize file names for Linux and Windows.\r\n\r\nTable of Contents\r\n=================\r\n\r\n- `Introduction <#introduction>`__\r\n- `Features <#features>`__\r\n- `Installation <#installation>`__\r\n- `Usage <#usage>`__\r\n- `Examples <#examples>`__\r\n- `Why did I build this? <#why-did-i-build-this>`__\r\n- `Contributing <#contributing>`__\r\n- `Wait a minute, who are you? <#wait-a-minute-who-are-you>`__\r\n- `License <#license>`__\r\n- `Changelog <#changelog>`__\r\n\r\nIntroduction\r\n============\r\n\r\nCrossRename is a command-line tool designed to harmonize file names\r\nacross Linux and Windows systems. It ensures that your file names are\r\ncompatible with both operating systems, eliminating naming conflicts\r\nwhen transferring files between different environments.\r\n\r\nFeatures\r\n========\r\n\r\n- Sanitizes file names to be Windows-compatible (and thus\r\n Linux-compatible)\r\n- Handles both individual files and entire directories\r\n- Supports recursive renaming of files in subdirectories\r\n- Preserves file extensions, including compound extensions like .tar.gz\r\n- Provides informative logging\r\n- Provides a dry-run mode to preview renaming changes without executing them\r\n- Skips recursive symlinks to avoid infinite loops\r\n\r\nInstallation\r\n============\r\n\r\nFrom PyPI (Using PIP)\r\n---------------------\r\n\r\n::\r\n\r\n pip install CrossRename\r\n\r\nUsage\r\n=====\r\n\r\n::\r\n\r\n usage: crossrename [-h] [-p PATH] [-v] [-u] [-r] [-d]\r\n\r\n CrossRename: Harmonize file names for Linux and Windows.\r\n\r\n options:\r\n -h, --help show this help message and exit\r\n -p PATH, --path PATH The path to the file or directory to rename.\r\n -v, --version Prints out the current version and quits.\r\n -u, --update Check if a new version is available.\r\n -r, --recursive Rename all files in the directory path given and its subdirectories.\r\n -d, --dry-run Perform a dry run, logging changes without renaming.\r\n\r\nExamples\r\n--------\r\n\r\nRename a single file:\r\n\r\n::\r\n\r\n crossrename -p /path/to/file.txt\r\n\r\nRename all files in a directory (and its subdirectories):\r\n\r\n::\r\n\r\n crossrename -p /path/to/directory -r\r\n\r\nPerform a dry run to preview renaming changes without executing them:\r\n\r\n::\r\n\r\n crossrename -p /path/to/directory -r -d\r\n\r\n\r\nCheck for an update:\r\n\r\n::\r\n\r\n crossrename -u\r\n\r\n\r\nWhy did I build this?\r\n=====================\r\n\r\n.. warning::\r\n\r\n I'm no longer dual booting. I'm only using Windows 10 now. I do have\r\n WSL2 and that's what I use for testing. I don't know if there'll be\r\n any difference in the way the tool works on a native Linux system.\r\n\r\nI'm a dual-booter running Windows 10 and Lubuntu 22.04. One day\r\n(literally yesterday lol), while transferring a folder between the two\r\nsystems, I hit a naming roadblock. Five stubborn files refused to budge,\r\nthanks to the quirky differences in file naming rules between Linux and\r\nWindows.\r\n\r\nThis experience got me thinking. You see, I had previously built\r\n`FicImage <https://github.com/Jemeni11/ficimage>`__, a nifty application\r\nthat elevates the reading experience of `FicHub <https://fichub.net/>`__\r\nepubs by adding missing images. It required handling file creation and\r\nrenaming, and that knowledge proved invaluable.\r\n\r\nAnd so, CrossRename was born \u2013 a tool to simplify your life when\r\nmanaging files between Linux and Windows. No more naming hassles, just\r\nsmooth, worry-free file management.\r\n\r\nContributing\r\n============\r\n\r\nContributions are welcome! If you'd like to improve CrossRename or add\r\nsupport for other operating systems (like macOS), please feel free to\r\nsubmit a pull request.\r\n\r\nWait a minute, who are you?\r\n===========================\r\n\r\nHello there! I'm Emmanuel Jemeni, and while I primarily work as a\r\nFrontend Developer, Python holds a special place as my first programming\r\nlanguage. You can find me on various platforms:\r\n\r\n- `LinkedIn <https://www.linkedin.com/in/emmanuel-jemeni>`__\r\n- `GitHub <https://github.com/Jemeni11>`__\r\n- `Twitter/X <https://twitter.com/Jemeni11_>`__\r\n\r\nLicense\r\n=======\r\n\r\n`MIT License <LICENSE>`__\r\n\r\nChangelog\r\n=========\r\n\r\n`Changelog <CHANGELOG.md>`__\r\n",
"bugtrack_url": null,
"license": "MIT License Copyright (c) 2024 Emmanuel C. Jemeni Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ",
"summary": "Harmonize file names for Linux and Windows.",
"version": "1.1.0",
"project_urls": {
"Bug Tracker": "https://github.com/Jemeni11/CrossRename/issues",
"Changelog": "https://github.com/Jemeni11/CrossRename/blob/master/CHANGELOG.md",
"Homepage": "https://github.com/Jemeni11/CrossRename"
},
"split_keywords": [
"files",
" rename",
" linux",
" windows",
" transferring",
" filename"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "faba46533f95a0a9679420d742135cf2822c175f764cd2c8d2146821ee1fbba9",
"md5": "b5249c0a83d6b1a85946061cece17620",
"sha256": "24579c9bf087c4363406835618d2c10010bc9e94166041a62f3462196510c3eb"
},
"downloads": -1,
"filename": "CrossRename-1.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b5249c0a83d6b1a85946061cece17620",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 7646,
"upload_time": "2024-11-16T00:18:20",
"upload_time_iso_8601": "2024-11-16T00:18:20.129984Z",
"url": "https://files.pythonhosted.org/packages/fa/ba/46533f95a0a9679420d742135cf2822c175f764cd2c8d2146821ee1fbba9/CrossRename-1.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "21fdc9b90c16f57693876bfdcd0ba41beb21b199b174998292a449cfa50f5998",
"md5": "354b39165babbb36d9deb35cfae6729b",
"sha256": "d1536fbe0a5996049f2e1801eeb0f6496e292e199a88437314f14d9d49aa3726"
},
"downloads": -1,
"filename": "crossrename-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "354b39165babbb36d9deb35cfae6729b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 7148,
"upload_time": "2024-11-16T00:18:21",
"upload_time_iso_8601": "2024-11-16T00:18:21.929363Z",
"url": "https://files.pythonhosted.org/packages/21/fd/c9b90c16f57693876bfdcd0ba41beb21b199b174998292a449cfa50f5998/crossrename-1.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-16 00:18:21",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Jemeni11",
"github_project": "CrossRename",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "crossrename"
}