Giter Site home page Giter Site logo

filescombiner's Introduction

๐Ÿ”€ SwiftFilesCombiner

SwiftFilesCombiner is a command-line utility designed to simplify the process of combining multiple Swift files into a single file. This tool is particularly useful for developers who need to merge multiple Swift source files for code review, submission, or any other purpose that requires a consolidated view of the codebase.

โœจ Features

  • ๐Ÿ” Recursively scans a specified directory for Swift files
  • ๐Ÿ”— Combines all found Swift files into a single output file
  • ๐Ÿ’ผ Preserves file paths in comments for easy reference
  • ๐Ÿ›ก๏ธ Handles potential errors gracefully
  • ๐Ÿ  Uses current directory as default input if no directory is specified

๐Ÿ“ฅ Installation

SwiftFilesCombiner can be easily installed using Homebrew:

brew tap bashta/tap
brew install swiftfilescombiner

๐Ÿš€ Usage

  • After installation, you can use SwiftFilesCombiner from the command line with flexible arguments: swiftfilescombiner [<directory_path>] [<output_file>]

Where:

  • <directory_path> (optional) is the path to the directory containing Swift files you want to combine. If not provided, the current directory is used.
  • <output_file> (optional) is the path and filename where you want the combined content to be saved. If not provided, it defaults to 'combined_swift_files.swift' in the current directory.

Examples

# Uses current directory, outputs to current directory
swiftfilescombiner
# Uses current directory, outputs to desktop
swiftfilescombiner -d
# Uses specified input directory, outputs to desktop
swiftfilescombiner input_dir -d
# Uses current directory, outputs to desktop with specified filename
swiftfilescombiner -d output.swift
# Uses specified input and output, but puts output on desktop
swiftfilescombiner input_dir output.swift -d

๐Ÿ› ๏ธ Building from Source

If you prefer to build SwiftFilesCombiner from source:

  • Clone the repository: git clone https://github.com/bashta/SwiftFilesCombiner.git
  • Navigate to the project directory: cd SwiftFilesCombiner
  • Build the project: swift build -c release
  • The executable will be located in .build/release/SwiftFilesCombiner

๐Ÿค Contributing

Contributions to SwiftFilesCombiner are welcome! Please feel free to submit a Pull Request.

๐Ÿ“„ License

SwiftFilesCombiner is available under the MIT license. See the LICENSE file for more info.

๐Ÿ’ฌ Support

If you encounter any issues or have any questions, please file an issue on the GitHub repository.

๐Ÿ‘จโ€๐Ÿ’ป Authors

Erison Veshi bashta

Thanks to

Y severeduck

๐ŸŽ‰ What's New in v0.0.3

  • ๐Ÿ  Current directory is now used as default input if no directory is specified
  • ๐Ÿ”ง Improved argument handling for more flexible usage
  • ๐Ÿ“ Default output file name when not specified: 'combined_swift_files.swift'
  • ๐Ÿ› Enhanced error handling and improved stability
  • ๐Ÿงช Expanded test coverage for better reliability

Made with <3 and a pinch of sillyness!

filescombiner's People

Contributors

bashta avatar severeduck avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.