140 votes

Conversion EOL dans le bloc-notes

Pour une raison quelconque, lorsque j'ouvre des fichiers d'un serveur unix sur ma machine Windows, ils ont parfois une conversion EOL Macintosh, et lorsque je les modifie/enregistre à nouveau, ils ne fonctionnent pas correctement sur le serveur unix. Je n'utilise que le bloc-notes ++ pour éditer les fichiers de ce serveur unix. Existe-t-il un moyen de créer une macro qui convertit automatiquement l'EOL au format Unix chaque fois que j'ouvre un fichier ?

250voto

Nate Allen Points 2999

Cette fonctionnalité est déjà intégrée à Notepad++. Dans le menu "Edition", sélectionnez "Conversion EOL" -> "Format UNIX/OSX".

capture d'écran de l'option pour une recherche encore plus rapide (ou des versions linguistiques différentes)

Vous pouvez également définir l'EOL par défaut dans notepad++ via "Settings" -> "Preferences" -> "New Document/Default Directory" puis sélectionner "Unix/OSX" dans la case Format.

21voto

Wappenull Points 311

Dans Notepad++, utilisez la fonction "replace all" avec une expression régulière. Cette commande présente l'avantage, par rapport à la commande de conversion dans le menu, de pouvoir opérer sur un dossier entier sans avoir à ouvrir chaque fichier ou à faire un glisser-déposer (sur plusieurs centaines de fichiers, cela deviendra sensiblement plus lent), et vous pouvez également définir un filtre générique pour les noms de fichiers.

(\r?\n)|(\r\n?)

a

\n

Cela correspondra à tous les modèles de fin de ligne possibles (simple \r , \n o \r\n ) de retour à \n. (Ou \r\n si vous convertissez en style Windows)

Pour opérer sur plusieurs fichiers, soit :

  • Utilisez "Remplacer tout dans tous les documents ouverts" dans l'onglet "Remplacer". Vous devrez d'abord glisser et déposer tous les fichiers dans Notepad++. C'est une bonne chose que vous puissiez contrôler sur quel fichier opérer mais cela peut être lent s'il y a plusieurs centaines ou milliers de fichiers.
  • "Remplacer dans les fichiers" dans l'onglet "Rechercher dans les fichiers", par le filtre de fichiers de votre choix, par exemple, *.cpp *.cs dans un répertoire spécifié.

3voto

MrCalvin Points 11

J'ouvre les fichiers "directement" depuis WinSCP qui ouvre les fichiers dans Notepad++. J'avais un fichier php sur mon serveur linux qui s'ouvrait toujours au format Mac quoi que je fasse :-(

Si j'ai téléchargé le fichier et que je l'ai ouvert en local (Windows), il s'est ouvert sous Dos/Windows....hmmm.

La solution consistait à convertir le fichier local en "format UNIX/OSX", à le sauvegarder puis à le télécharger.

Maintenant, lorsque j'ouvre le fichier directement depuis le serveur, il s'ouvre en tant que "Dos/Windows" :-)

1voto

D. Cook Points 54

En fonction de votre projet, vous pouvez envisager d'utiliser EditorConfig ( https://editorconfig.org/ ). Il existe un plugin Notepad++ qui chargera un .editorconfig où vous pouvez spécifier "lf" comme terminaison de ligne obligatoire.

J'ai seulement commencé à l'utiliser, mais c'est bien jusqu'à présent, et les projets open source sur lesquels j'ai travaillé ont inclus des fichiers .editorconfig pendant des années. Le paramètre "EOL Conversion" n'est pas modifié, ce qui peut être un peu déroutant, mais si vous "View > Show Symbol > Show End of Line", vous pouvez voir qu'il ajoute LF au lieu de CRLF, même si "EOL Conversion" et le coin inférieur inférieur montrent autre chose (par exemple Windows (CR LF)).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X