Retour à la ligne selon la largeur du texte
Avec une largeur de 32, une longue note de deux paragraphes se répartit en 8 lignes de 32 caractères au plus, la ligne vide entre les paragraphes étant conservée. Un mot plus long que la largeur reste entier sur sa propre ligne. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Largeur
- 32
- Nombre de lignes
- 8
- Nombre de paragraphes
- 2
Le retour automatique à la ligne transforme un texte long et irrégulier en lignes lisibles adaptées à la largeur choisie. Fournissez du texte brut et une largeur entière : l’outil redistribue chaque paragraphe sans couper les mots. Les lignes vides continuent de séparer les paragraphes, de sorte qu’un e-mail ou une note conserve sa structure. Le résultat, déterministe, peut être collé dans un terminal, des commentaires de code, une documentation, un ticket ou tout message exigeant des lignes prévisibles.
Principe du retour à la ligne selon une largeur donnée
Le retour à la ligne résout un problème de mise en forme sans réécrire le contenu. L’outil lit les mots de chaque paragraphe de gauche à droite et ajoute le suivant à la ligne actuelle si le mot, son espace séparateur et le texte déjà présent tiennent dans width. Sinon, il commence une nouvelle ligne avant ce mot.
Les lignes ordinaires ne dépassent donc pas la largeur demandée et aucun mot n’est coupé. Un mot plus long que la limite constitue l’exception volontaire : il reste entier sur sa propre ligne, car scinder un identifiant, une URL, un nom de fichier ou un terme technique risquerait d’en modifier le sens ou d’empêcher sa copie. Les espaces répétés, tabulations et sauts simples internes deviennent des séparateurs ordinaires.
Les lignes vides continuent de délimiter les paragraphes, avec une seule ligne vide dans le résultat. Vous pouvez ainsi formater une prose brute ou redistribuer un texte auparavant réglé sur une autre largeur. L’outil n’ajoute pas de traits d’union, ne justifie pas les marges, n’interprète pas Markdown et ne reformule aucune phrase.
Seule la position des retours change, pour un résultat stable et facile à contrôler.
Choisir la largeur et comprendre le résultat
Choisissez width en fonction de la destination plutôt que de la longueur de la source. Les journaux de terminal et les e-mails traditionnels profitent souvent de lignes assez étroites, tandis que les commentaires de code doivent réserver de la place aux retraits et marqueurs ajoutés ensuite. Si le format environnant occupe des caractères, retranchez ce préfixe de la largeur disponible avant le traitement.
Un préfixe de commentaire de quatre caractères impose ainsi une largeur de texte inférieure de quatre colonnes à la cible visuelle. Une source vide est autorisée et renvoie zéro ligne et zéro paragraphe. Les retours sont normalisés en LF afin d’obtenir le même résultat sous Windows, macOS, Linux, dans le navigateur et à distance. width compte les caractères d’une chaîne JavaScript, pas les pixels affichés : l’outil convient donc au texte brut et aux polices à chasse fixe, non à une composition graphique précise.
Utilisation fiable pour les e-mails, commentaires et automatisations
Pour un e-mail, effectuez le retour à la ligne après la rédaction et la correction, car ajouter des mots à un texte déjà formaté crée des lignes courtes et irrégulières. Conservez les changements de paragraphe voulus avec des lignes vides, puis envoyez le corps complet en une fois. Pour les commentaires de code, formatez d’abord la prose et ajoutez ensuite les préfixes du langage, ou réduisez width de leur longueur.
Dans un terminal, tenez compte des horodatages, niveaux de journal, retraits et décorations ANSI ajoutés ailleurs. Dans une automatisation, stockez width comme paramètre du projet au lieu de disperser plusieurs valeurs dans les scripts : les changements deviennent vérifiables et les fichiers générés restent cohérents. Testez explicitement les longs jetons techniques.
L’algorithme ne coupe jamais un mot ; une URL ou un identifiant peut donc dépasser la limite. Si vous exigez un plafond absolu, associez cette fonction à une règle distincte de coupure des jetons. Aucun appel réseau ni examen sémantique n’est effectué.
Des entrées identiques donnent toujours le même texte et les mêmes comptes.
Cas d’usage
Préparer un e-mail en texte brut
Redistribuez les longs paragraphes à largeur constante tout en conservant les séparations entre les sujets.
Formater des commentaires de code
Produisez des lignes prévisibles avant d’ajouter marqueurs et retraits dans votre chaîne documentaire.
Garder un terminal lisible
Adaptez les aides, notes de version et descriptions de console au nombre de colonnes choisi.
Questions fréquentes
L’outil coupe-t-il les mots longs ?
Non. Les retours sont placés uniquement entre les mots. Un mot dépassant width reste entier sur sa ligne et peut donc excéder la largeur.
Que deviennent les sauts de ligne existants ?
Un saut simple dans un paragraphe devient un espace. Une ou plusieurs lignes vides séparent les paragraphes et donnent une ligne vide dans le résultat.
width mesure-t-il des pixels ou des caractères ?
Il mesure les caractères d’une chaîne JavaScript, et non des pixels. Il convient au texte brut et aux contextes à largeur fixe.
Quelle largeur choisir ?
Choisissez-la selon la destination, pas selon le texte d'origine. Si les lignes recevront un préfixe, comme les quatre caractères d'un marqueur de commentaire, retranchez-le d'abord pour que les lignes finales tiennent encore.
L'outil ajoute-t-il des traits d'union ou justifie-t-il le texte ?
Non. Seul l'endroit où chaque ligne se coupe change. Pas de traits d'union, pas d'espaces étirés ni de reformulation : les mots et leur ordre restent tels que vous les avez écrits.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/str/word-wrap \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Word wrapping keeps paragraphs readable in email, source comments, and terminal output without splitting ordinary words.","width":32}'const res = await fetch("https://api.kit.forhosting.com/str/word-wrap", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Word wrapping keeps paragraphs readable in email, source comments, and terminal output without splitting ordinary words.",
"width": 32
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/word-wrap",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Word wrapping keeps paragraphs readable in email, source comments, and terminal output without splitting ordinary words.",
"width": 32
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/word-wrap", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Word wrapping keeps paragraphs readable in email, source comments, and terminal output without splitting ordinary words.","width":32}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Word wrapping keeps paragraphs readable in email, source comments, and terminal output without splitting ordinary words.","width":32}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/word-wrap", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"text": "Word wrapping keeps paragraphs readable in email, source comments, and terminal output without splitting ordinary words.",
"width": 32
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.word_wrap",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_chars | 200000 |
max_width | 10000 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Choisir la largeur et comprendre le résultat
La requête accepte un entier compris entre un et dix mille ; une valeur absente, fractionnaire, nulle, négative ou excessive produit invalid_input. La réponse contient text comme valeur principale copiable, width comme contrainte appliquée, line_count incluant les lignes séparatrices et paragraph_count pour les paragraphes non vides.
Utilisation fiable pour les e-mails, commentaires et automatisations
Chaque élément réussi coûte $0.002 via l’API, et la version navigateur s’exécute localement gratuitement.
Questions techniques
Puis-je traiter un texte vide ?
Oui. Si width est valide, le résultat est vide et line_count ainsi que paragraph_count valent zéro.
Quel est le prix d’un appel API ?
Chaque requête réussie coûte $0.002 par élément. L’outil du navigateur s’exécute localement et reste gratuit en usage interactif.