Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 23/03/2016, à 18:47

jackos

réindenter des fichiers (html / php / c /js...)

Bonjour,

Connaissez vous un (ou des) logiciels permettant de réindenter des fichiers html / php / c / js... ?
a force de modifier des fichiers entres vim et gedit (copier coller ajout ...) c'est un peu le boxon
j'ai testé geany, mais j'ai pas trouvé le moyen de réindenter un fichier existant

merci pour les conseils

Hors ligne

#2 Le 23/03/2016, à 19:04

Shanx

Re : réindenter des fichiers (html / php / c /js...)

Salut,
l'excellent Sublime Text a une option pour ça (en anglais, Edition → Line → reindent).


Mes randos : grande traversées des Alpes, de l'Islande, de la Corse, du Japon (en vélo), etc.
Traversée des États-Unis à pied

Hors ligne

#3 Le 23/03/2016, à 19:08

claudius01

Re : réindenter des fichiers (html / php / c /js...)

Bonsoir,

Il y aurait bien clang-format que je n'ai jamais testé ;-)
Sinon en ligne, il y a http://codebeautify.org/ et http://prettyprinter.de/ mais je crains que cela ne réponde pas à ton besoin puisqu'en ... en ligne

Hors ligne

#4 Le 23/03/2016, à 20:08

jackos

Re : réindenter des fichiers (html / php / c /js...)

Bonsoir, merci pour les retours
@claudius01 je suis pas trop fan des trucs en ligne (sinon cela fonctionne j'ai fais un test avec http://codebeautify.org et c'est ce que je recherche en reformatage) pour clang-format faut que je creuse plus car je vois pas trop comment l'utiliser

@Shanx j'ai installé la v2,  cela à l'air sympa
J'ai ouvert mon fichier, sélectionné tous le code et fait ta manips >> Il le réindente mais c'est pas vraiment bon (bon j'ai pas encore testé avec plusieurs code)
t'utilise la v2 ou la v3 béta?

Hors ligne

#5 Le 23/03/2016, à 20:10

Shanx

Re : réindenter des fichiers (html / php / c /js...)

Je n'utilise plus Sublime Text. tongue Mais j'avais la v3.


Mes randos : grande traversées des Alpes, de l'Islande, de la Corse, du Japon (en vélo), etc.
Traversée des États-Unis à pied

Hors ligne

#6 Le 23/03/2016, à 20:32

Watael

Re : réindenter des fichiers (html / php / c /js...)

salut,

dans vim, en mode commande (?, le mode par défaut à l'ouverture), taper gg=G
voir h: =


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#7 Le 23/03/2016, à 21:15

jackos

Re : réindenter des fichiers (html / php / c /js...)

@Shanx  alors j'ai testé la v3, idem (j'ai pas les résultat attendu )

@Watael: je connaissais pas cette commande, mais elle ne fonctionne pas correctement non plus sad
mais si je pouvais rester sous vim, je serais super content lol

je vous joint un exemple de fichier que j'enregistre sous le nom de meteo.js (je l'utilise pour faire des graphes avec highcharts)
J'ai volontairement enlever toutes les indentations pour les test (avec le site  http://codebeautify.org/ j'arrive à quelque chose de correct)

$(function () {
// récupération des données
$.getJSON('get_meteo_sql.php', function (data) {
var temp = [],
hum = [],
lum = [],
dataLength = data.length;

for (i = 0; i < dataLength; i++) {
temp.push([
data[i][0],
data[i][1],
]);

hum.push([
data[i][0],
data[i][2]
]);
lum.push([
data[i][0],
data[i][3]
]);

};

$('#meteo').highcharts({
chart: {
zoomType: 'xy',
alignTicks: false
},

title: {
text: 'meteo'
},

xAxis:[{
type: 'datetime',
gridLineWidth: 1,

}],

yAxis: [{ // Primary yAxis
tickInterval:1,
gridLineWidth: 0,
labels: {
format: '{value}°C',
style: {
color: '#89A54E'
}
},
title: {
text: null,
style: {
color: '#89A54E'
}
},
plotLines: [{
value: 0,
color: 'red',
dashStyle: 'shortdash',
width: 2,
}],
}, { // Secondary yAxis
min:0,
max: 100,
tickInterval:10,
title: {
text: null,
style: {
color: '#4572A7'
}
},
labels: {
format: '{value} %',
style: {
color: '#4572A7'
}
},
opposite: true
}, { // troisième yAxis
//min:0,
//max: 1500,
gridLineWidth: 0,
title: {
text: null,
style: {
color: '#4572A7'
}
},
labels: {
enabled: false

//format: '{value} %',
//style: {
//color: '#4572A7'
//}
},
opposite: true
}
],

tooltip: {
crosshairs:[true],
xDateFormat: '%d %B %Y - %H:%M',
valueDecimals: 1,
},

plotOptions: {
series: {
marker: {enabled: false}
}
},

credits: {
enabled: false
},
exporting: { enabled: false },
legend: {
enabled: false,
layout: 'vertical',
align: 'left',
x: 120,
verticalAlign: 'top',
y: 20,
floating: true,
backgroundColor: '#FFFFFF',



},
series: [{
name: 'Humidité',
color: '#4572A7',
//type: 'spline',
yAxis: 1,
data: hum,
tooltip: {
valueSuffix: ' %'
}

}, {
name: 'Temperature',
color: '#89A54E',
//type: 'spline',
data: temp,
tooltip: {
valueSuffix: '°C'
}
}, {
name: 'Lumens',
color: 'black',
//type: 'spline',
yAxis: 2,
data: lum,
tooltip: {
valueSuffix: 'inc'
}
},

]
});
});
});

Hors ligne

#8 Le 23/03/2016, à 21:23

Watael

Re : réindenter des fichiers (html / php / c /js...)

"ça ne fonctionne pas", mais quels sont les "symptômes" ?

$(function () {
        // récupération des données
        $.getJSON('get_meteo_sql.php', function (data) {
                var temp = [],
                hum = [],
                lum = [],
                        dataLength = data.length;

                for (i = 0; i < dataLength; i++) {
                        temp.push([
                                        data[i][0],
                                        data[i][1],
                        ]);

                        hum.push([
                                        data[i][0],
                                        data[i][2]
                        ]);
                        lum.push([
                                        data[i][0],
                                        data[i][3]
                        ]);

                };

                $('#meteo').highcharts({
                        chart: {
                                zoomType: 'xy',
                                alignTicks: false
                        },

                        title: {
                                text: 'meteo'
                        },

                        xAxis:[{
                                type: 'datetime',
                                gridLineWidth: 1,

                        }],

                        yAxis: [{ // Primary yAxis
                                tickInterval:1,
                                gridLineWidth: 0,
                                labels: {
                                        format: '{value}°C',
                                        style: {
                                                color: '#89A54E'
                                        }
                                },
                                title: {
                                        text: null,
                                        style: {
                                                color: '#89A54E'
                                        }
                                },
                                plotLines: [{
                                        value: 0,
                                        color: 'red',
                                        dashStyle: 'shortdash',
                                        width: 2,
                                }],
                        }, { // Secondary yAxis
                                min:0,
                                max: 100,
                                tickInterval:10,
                                title: {
                                        text: null,
                                        style: {
                                                color: '#4572A7'
                                        }
                                },
                                labels: {
                                        format: '{value} %',
                                        style: {
                                                color: '#4572A7'
                                        }
                                },
                                opposite: true
                        }, { // troisième yAxis
                                //min:0,
                                //max: 1500,
                                gridLineWidth: 0,
                                title: {
                                        text: null,
                                        style: {
                                                color: '#4572A7'
                                        }
                                },
                                labels: {
                                        enabled: false

                                                //format: '{value} %',
                                                //style: {
                                                //color: '#4572A7'
                                                //}
                                },
                                opposite: true
                        }
                        ],

                        tooltip: {
                                crosshairs:[true],
                                xDateFormat: '%d %B %Y - %H:%M',
                                valueDecimals: 1,
                        },

                        plotOptions: {
                                series: {
                                        marker: {enabled: false}
                                }
                        },

                        credits: {
                                enabled: false
                        },
                        exporting: { enabled: false },
                        legend: {
                                enabled: false,
                                layout: 'vertical',
                                align: 'left',
                                x: 120,
                                verticalAlign: 'top',
                                y: 20,
                                floating: true,
                                backgroundColor: '#FFFFFF',



                        },
                        series: [{
                                name: 'Humidité',
                                color: '#4572A7',
                                //type: 'spline',
                                yAxis: 1,
                                data: hum,
                                tooltip: {
                                        valueSuffix: ' %'
                                }

                        }, {
                                name: 'Temperature',
                                color: '#89A54E',
                                        //type: 'spline',
                                data: temp,
                                tooltip: {
                                        valueSuffix: '°C'
                                }
                        }, {
                                name: 'Lumens',
                                color: 'black',
                                        //type: 'spline',
                                yAxis: 2,
                                data: lum,
                                tooltip: {
                                        valueSuffix: 'inc'
                                }
                        },

                        ]
                });
        });
});

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#9 Le 23/03/2016, à 21:50

jackos

Re : réindenter des fichiers (html / php / c /js...)

sad
j'ai testé sous 12.04 et 14.04 en ouvrant le fichier >> vim meteo.js puis gg=G
j'ai bien une reindentation qui ce fait mais pas comme la tienne
tu as installé des plugins additionnel ou modifier ton vimrc ?

voici le résultat que j'obtient:

$(function () {
		// récupération des données
		$.getJSON('get_meteo_sql.php', function (data) {
			var temp = [],
			hum = [],
			lum = [],
			dataLength = data.length;

			for (i = 0; i < dataLength; i++) {
			temp.push([
				data[i][0],
				data[i][1],
				]);

			hum.push([
				data[i][0],
				data[i][2]
				]);
			lum.push([
				data[i][0],
				data[i][3]
				]);

			};

			$('#meteo').highcharts({
chart: {
zoomType: 'xy',
alignTicks: false
},

title: {
text: 'meteo'
},

xAxis:[{
type: 'datetime',
gridLineWidth: 1,

}],

yAxis: [{ // Primary yAxis
tickInterval:1,
gridLineWidth: 0,
labels: {
format: '{value}°C',
	style: {
color: '#89A54E'
	}
},
title: {
text: null,
      style: {
color: '#89A54E'
      }
       },
plotLines: [{
value: 0,
       color: 'red',
       dashStyle: 'shortdash',
       width: 2,
	   }],
	   }, { // Secondary yAxis
min:0,
	    max: 100,
	    tickInterval:10,
	    title: {
text: null,
      style: {
color: '#4572A7'
      }
	    },
labels: {
format: '{value} %',
	style: {
color: '#4572A7'
	}
	},
opposite: true
	   }, { // troisième yAxis
		   //min:0,
		   //max: 1500,
gridLineWidth: 0,
		       title: {
text: null,
      style: {
color: '#4572A7'
      }
		       },
labels: {
enabled: false

		 //format: '{value} %',
		 //style: {
		 //color: '#4572A7'
		 //}
	},
opposite: true
	   }
],

	tooltip: {
crosshairs:[true],
	   xDateFormat: '%d %B %Y - %H:%M',
	   valueDecimals: 1,
	},

plotOptions: {
series: {
marker: {enabled: false}
	}
	     },

credits: {
enabled: false
	 },
exporting: { enabled: false },
	legend: {
enabled: false,
	 layout: 'vertical',
	 align: 'left',
	 x: 120,
	 verticalAlign: 'top',
	 y: 20,
	 floating: true,
	 backgroundColor: '#FFFFFF',



	},
series: [{
name: 'Humidité',
      color: '#4572A7',
      //type: 'spline',
      yAxis: 1,
      data: hum,
      tooltip: {
valueSuffix: ' %'
      }

	}, {
name: 'Temperature',
      color: '#89A54E',
      //type: 'spline',
      data: temp,
      tooltip: {
valueSuffix: '°C'
      }
	}, {
name: 'Lumens',
      color: 'black',
      //type: 'spline',
      yAxis: 2,
      data: lum,
      tooltip: {
valueSuffix: 'inc'
      }
	},

	]
	});
});
});

Hors ligne

#10 Le 23/03/2016, à 23:20

Watael

Re : réindenter des fichiers (html / php / c /js...)

j'obtiens le résultat que tu montres, si je commente la ligne

filetype plugin indent on

wink


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#11 Le 23/03/2016, à 23:58

jackos

Re : réindenter des fichiers (html / php / c /js...)

Tu veux dire décommenter ?
Car si je met filetype plugin indent on dans /etc/vim/vimrc, alors j'ai une bonne indentation (différente de la tienne mais largement satisfaisante)

Merci de m'avoir mis sur la voie wink . Je vais approfondir mes recherches.

le résultat (beaucoup mieux, mais encore des "petites" erreurs )

$(function () {
	// récupération des données
	$.getJSON('get_meteo_sql.php', function (data) {
		var temp = [],
	hum = [],
	lum = [],
	dataLength = data.length;

	for (i = 0; i < dataLength; i++) {
		temp.push([
			data[i][0],
			data[i][1],
			]);

		hum.push([
			data[i][0],
			data[i][2]
			]);
		lum.push([
			data[i][0],
			data[i][3]
			]);

	};

	$('#meteo').highcharts({
		chart: {
			zoomType: 'xy',
		alignTicks: false
		},

		title: {
			text: 'meteo'
		},

		xAxis:[{
			type: 'datetime',
		gridLineWidth: 1,

		}],

		yAxis: [{ // Primary yAxis
			tickInterval:1,
		gridLineWidth: 0,
		labels: {
			format: '{value}°C',
			style: {
				color: '#89A54E'
			}
		},
		title: {
			text: null,
			style: {
				color: '#89A54E'
			}
		},
		plotLines: [{
			value: 0,
			color: 'red',
			dashStyle: 'shortdash',
			width: 2,
		}],
		}, { // Secondary yAxis
			min:0,
			max: 100,
			tickInterval:10,
			title: {
				text: null,
				style: {
					color: '#4572A7'
				}
			},
			labels: {
				format: '{value} %',
				style: {
					color: '#4572A7'
				}
			},
			opposite: true
		}, { // troisième yAxis
			//min:0,
			//max: 1500,
			gridLineWidth: 0,
			title: {
				text: null,
				style: {
					color: '#4572A7'
				}
			},
			labels: {
				enabled: false

					//format: '{value} %',
					//style: {
					//color: '#4572A7'
					//}
			},
			opposite: true
		}
	],

		tooltip: {
			crosshairs:[true],
			xDateFormat: '%d %B %Y - %H:%M',
			valueDecimals: 1,
		},

		plotOptions: {
			series: {
				marker: {enabled: false}
			}
		},

		credits: {
			enabled: false
		},
		exporting: { enabled: false },
		legend: {
			enabled: false,
			layout: 'vertical',
			align: 'left',
			x: 120,
			verticalAlign: 'top',
			y: 20,
			floating: true,
			backgroundColor: '#FFFFFF',



		},
		series: [{
			name: 'Humidité',
			color: '#4572A7',
			//type: 'spline',
			yAxis: 1,
			data: hum,
			tooltip: {
				valueSuffix: ' %'
			}

		}, {
			name: 'Temperature',
			color: '#89A54E',
			//type: 'spline',
			data: temp,
			tooltip: {
				valueSuffix: '°C'
			}
		}, {
			name: 'Lumens',
			color: 'black',
			//type: 'spline',
			yAxis: 2,
			data: lum,
			tooltip: {
				valueSuffix: 'inc'
			}
		},

			]
	});
	});
});

Hors ligne

#12 Le 24/03/2016, à 06:52

Watael

Re : réindenter des fichiers (html / php / c /js...)

Tu veux dire décommenter ?

non, non. je veux dire que
si la ligne est décommentée, alors le résultat est tel que je le montre, et
si la ligne est commentée, alors le résultat est tel que TU le montres.

il y a d'autres options pour compléter la configuration de l'indentation (voir: vim.wikia)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#13 Le 24/03/2016, à 09:07

jackos

Re : réindenter des fichiers (html / php / c /js...)

j'ai bien décommenté la ligne et le résultat est beaucoup mieux
je vais testé sur un live usb (donc instal propre) pour tester certaines option

Merci pour les liens (et gg=G , c'est super pratique  wink )

Hors ligne