10 dépôts
Tools that automatically rewrite source code to adhere to a consistent and standardized style guide.
Distinct from Code Formatting: Candidates focus on UI rendering of code snippets or AI edit protocols rather than the actual structural rewriting of source files for style compliance.
Explore 10 awesome GitHub repositories matching programming languages & runtimes · Source Code Formatters. Refine with filters or upvote what's useful.
YAPF est un formateur de code Python et un outil de conformité de style. Il fonctionne comme un reformateur basé sur AST qui utilise des arbres de syntaxe concrets pour assurer la cohérence structurelle et une présentation visuelle uniforme à travers les fichiers sources. Le moteur utilise un optimiseur de mise en page basé sur des pénalités pour déterminer les meilleurs sauts de ligne en calculant des coûts numériques pour différents choix de formatage. Il emploie un processeur de code multi-processus pour distribuer le formatage de plusieurs fichiers à travers plusieurs cœurs de CPU. L'outil couvre le reformatage du code source par des modifications de fichiers sur place, l'analyse des différences et le traitement de fragments de code partiels. Il inclut un système de configuration basé sur des règles pour gérer les préréglages de style, les règles de mise en page et les paramètres au niveau du projet. Les capacités d'intégration incluent la vérification de la conformité au style pour les pipelines d'intégration continue, l'automatisation des hooks git et la fonctionnalité de formatage à la sauvegarde basée sur l'éditeur.
Automatically reformats Python source code to adhere to a standardized style guide for consistent presentation.
Reason is a strongly typed functional language and multi-target compiler designed to produce either JavaScript for web environments or native machine code for operating systems. It serves as an OCaml-compatible language that shares an abstract syntax tree with OCaml, providing a practical syntax for the OCaml ecosystem. The project functions as a type-safe frontend language, incorporating JSX support to build user interfaces through structural elements that translate into type-safe function calls. It enables deep integration with the JavaScript ecosystem, allowing the use of existing librarie
Includes a command line tool to automatically rewrite source code to adhere to a standardized style guide.
rustfmt is a tool that automatically rewrites Rust source code to adhere to a consistent and standardized style guide. It functions as both a code formatter for transforming source files and a style linter used to verify if code matches required formatting rules. The system is configurable, allowing for the definition of custom formatting rules and language editions through configuration files to override default styles. It also supports selective formatting by using dedicated skip markers to prevent specific blocks of code from being modified. The tool provides capabilities for both source
Preventing specific blocks of Rust code from being modified by the formatter using dedicated skip markers.
rustfmt is a Rust code formatter that operates as a Cargo subcommand, applying consistent formatting to Rust source files according to official style guidelines. It parses source code into a syntax tree, applies formatting rules to tree nodes, and pretty-prints the result back to text, with support for TOML-driven configuration that allows per-project style customization. The formatter is edition-aware, automatically selecting formatting rules based on the Rust edition specified in the project, and supports a style edition override that decouples formatting rules from the Rust edition used fo
Applies consistent formatting to Rust source files according to official style guidelines and project-specific configuration.
google-java-format est un outil de formatage de code Java et d'application de style. Il reformate le code source Java pour qu'il respecte un guide de style standardisé, garantissant une mise en page et une indentation cohérentes sur l'ensemble des projets ou des fichiers individuels. Le projet fonctionne comme un outil de linting dans les pipelines de build pour les workflows d'intégration continue, ainsi que comme plugin de formatage pour IDE afin de remplacer le formatage natif de l'éditeur. Il peut être intégré en tant que bibliothèque de formatage au sein de logiciels de génération de code pour garantir que le code écrit par des machines reste lisible par des humains. L'outil offre des fonctionnalités de réorganisation de l'indentation et de l'espacement du code source, y compris la possibilité d'appliquer le formatage de manière sélective à des plages de lignes spécifiques ou à des diffs modifiés. Il prend en charge l'intégration avec des éditeurs de développement comme Eclipse pour automatiser les mises à jour de mise en page pendant le processus de codage.
Automatically rewrites Java source code to adhere to a standardized style guide for consistent layout and indentation.
Ce projet est une collection complète de matériel pédagogique de programmation Python, y compris des tutoriels, des exercices et des exemples de code organisés. Il sert de programme d'apprentissage et de boîte à outils d'ingénierie logicielle, utilisant des Jupyter Notebooks pour combiner du code exécutable avec un texte éducatif descriptif. Le dépôt fournit des guides d'implémentation pratiques pour construire des applications de grand modèle de langage, telles que des systèmes de génération augmentée par récupération, des agents IA avec état et des flux de travail d'apprentissage automatique. Il se distingue en offrant une approche structurée des flux de travail de codage agentique, couvrant la distillation de la fenêtre de contexte, le routage de modèle agnostique au fournisseur et les sorties structurées imposées par schéma. Le matériel couvre un large éventail de capacités d'ingénierie logicielle, notamment la programmation asynchrone avec des files d'attente de tâches distribuées, le développement d'applications web avec des API REST et les flux de travail d'analyse de données. Il inclut également des ressources pour maîtriser la conception orientée objet, implémenter des pipelines CI/CD et appliquer des normes professionnelles de linting et de formatage.
Automatically rewrites source code to adhere to consistent and standardized style guides via indentation and layout adjustments.
gofumpt is a Go language tool and source code formatter. It functions as an opinionated code styler that applies a strict and consistent visual style to Go source files to ensure a standardized appearance across a codebase. The tool enforces a more rigid and deterministic set of layout constraints than the standard Go toolchain. It is designed for Go project style enforcement to eliminate trivial diffs and stylistic inconsistencies. The project supports Go source code formatting and continuous integration linting to automatically check and correct formatting during the build process.
Acts as a source code formatter that rewrites Go code to adhere to a standardized and strict style guide.
vim-lsp is a Vim plugin that implements the Language Server Protocol to provide an asynchronous code intelligence tool for the editor. It serves as a bridge between Vim and external language servers, providing semantic code analysis and IDE-like navigation and diagnostics. The project provides a refactoring interface for renaming symbols across a workspace and applying quick-fixes. It also enables semantic highlighting, which color-codes elements based on their meaning as determined by the language server. The plugin covers a broad surface of capabilities, including symbol navigation and dis
Automatically reformats source code to adhere to consistent style guidelines via the language server.
swift-format is a set of developer utilities for the Swift ecosystem designed for automated style enforcement, static analysis, and project-wide configuration management. It functions as a code formatter that rewrites source code to adhere to consistent style rules and as a linter that identifies style violations. The tool provides a system for defining and applying custom formatting rules through a configuration tool. This includes the ability to load settings from configuration files discovered in a directory hierarchy or to export default settings for user customization. Its capabilities
Automatically rewrites Swift source files to adhere to a consistent and standardized style guide.
Vim-codefmt is a plugin for the Vim text editor that automates source code formatting by integrating external command-line utilities. It functions as a bridge between the editor and specialized formatting tools, allowing developers to maintain consistent style across diverse programming languages through a unified interface. The plugin operates by invoking external processes to transform buffer content, utilizing standard input and output streams to exchange data. It supports both full-file formatting and targeted adjustments for specific code ranges, ensuring that style enforcement can be ap
Applies language-specific style rules to code buffers or selected text ranges to maintain consistent readability.