<?xml 
version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="https://www.momh.fr/spip.php?page=backend.xslt" ?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:atom="http://www.w3.org/2005/Atom"
>

<channel xml:lang="fr">
	<title>momh</title>
	<link>https://momh.fr/</link>
	<description>My Own Memory Hole se veut une sorte de &#171;&#160;vitrine&#160;&#187; de mon parcours et de mon exp&#233;rience mais aussi de mes centres d'int&#233;r&#234;t et constitue donc en quelque sorte ma m&#233;moire en ligne, m&#233;moire virtuelle d&#233;localis&#233;e mais ordonn&#233;e et index&#233;e&#8230;</description>
	<language>fr</language>
	<generator>SPIP - www.spip.net</generator>
	<atom:link href="https://www.momh.fr/spip.php?id_mot=27&amp;page=backend" rel="self" type="application/rss+xml" />




<item xml:lang="fr">
		<title>R&#233;encoder des fichiers en UTF-8</title>
		<link>https://www.momh.fr/reencoder-des-fichiers-en-utf-8</link>
		<guid isPermaLink="true">https://www.momh.fr/reencoder-des-fichiers-en-utf-8</guid>
		<dc:date>2020-03-24T18:28:00Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Brice Boucard</dc:creator>


		<dc:subject>Linux</dc:subject>
		<dc:subject>Raspberry Pi</dc:subject>
		<dc:subject>terminal</dc:subject>
		<dc:subject>script</dc:subject>
		<dc:subject>sous-titres</dc:subject>

		<description>
&lt;p&gt;R&#233;guli&#232;rement, les sous-titres (t&#233;l&#233;charg&#233;s en ligne de commande) ne sont pas pris en compte par omxplayer que j'utilise sur mon Raspberry Pi&lt;small class=&#034;fine d-inline&#034;&gt;&#160;&lt;/small&gt;; la raison&lt;small class=&#034;fine d-inline&#034;&gt;&#160;&lt;/small&gt;? Ils ne sont tout simplement pas en &lt;span class=&#034;caps&#034;&gt;UTF&lt;/span&gt;-8... &lt;br class='autobr' /&gt; J'ai longtemps utilis&#233; la commande recode mais depuis une r&#233;installation compl&#232;te d'une Raspbian Buster sur mon Raspberry Pi 2, et d'une modification du montage des disques de mon &lt;span class=&#034;caps&#034;&gt;NAS&lt;/span&gt;, je rencontre des probl&#232;mes de permissions... &lt;br class='autobr' /&gt;
Du coup, gr&#226;ce &#224; deux contributions d'une m&#234;me conversation&#160;(&#8230;)&lt;/p&gt;


-
&lt;a href="https://www.momh.fr/blog" rel="directory"&gt;Blog&lt;/a&gt;

/ 
&lt;a href="https://www.momh.fr/linux" rel="tag"&gt;Linux&lt;/a&gt;, 
&lt;a href="https://www.momh.fr/raspberry-pi" rel="tag"&gt;Raspberry Pi&lt;/a&gt;, 
&lt;a href="https://www.momh.fr/terminal" rel="tag"&gt;terminal&lt;/a&gt;, 
&lt;a href="https://www.momh.fr/script" rel="tag"&gt;script&lt;/a&gt;, 
&lt;a href="https://www.momh.fr/sous-titres" rel="tag"&gt;sous-titres&lt;/a&gt;

		</description>


 <content:encoded>&lt;div class='rss_chapo'&gt;&lt;p&gt;R&#233;guli&#232;rement, les sous-titres (&lt;a href='https://www.momh.fr/spip.php?page=article&amp;id_article=52'&gt;t&#233;l&#233;charg&#233;s en ligne de commande&lt;/a&gt;) ne sont pas pris en compte par &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;omxplayer&lt;/code&gt; que j'utilise sur mon Raspberry Pi&lt;small class=&#034;fine d-inline&#034;&gt;&#160;&lt;/small&gt;; la raison&lt;small class=&#034;fine d-inline&#034;&gt;&#160;&lt;/small&gt;? Ils ne sont tout simplement pas en &lt;span class=&#034;caps&#034;&gt;UTF&lt;/span&gt;-8...&lt;/p&gt;&lt;/div&gt;
		&lt;div class='rss_texte'&gt;&lt;p&gt;J'ai longtemps utilis&#233; la commande &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;recode&lt;/code&gt; mais depuis une r&#233;installation compl&#232;te d'une Raspbian Buster sur mon Raspberry Pi 2, et d'une modification du &lt;a href='https://www.momh.fr/spip.php?page=article&amp;id_article=41'&gt;montage des disques de mon &lt;span class=&#034;caps&#034;&gt;NAS&lt;/span&gt;&lt;/a&gt;, je rencontre des probl&#232;mes de permissions...&lt;/p&gt;
&lt;p&gt;Du coup, gr&#226;ce &#224; deux contributions d'une m&#234;me conversation (celles de &lt;a href=&#034;https://superuser.com/a/719319&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;Pierre Fabier&lt;/a&gt; et d'&lt;a href=&#034;https://superuser.com/a/1317744&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;un inconnu&lt;/a&gt;), j'ai produit un petit script.&lt;/p&gt;
&lt;p&gt;Si ce n'est pas d&#233;j&#224; fait, on cr&#233;e un r&#233;pertoire &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;bin/&lt;/code&gt; dans notre home&#160;:&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre data-language=&#034;bash&#034; class='spip_code spip_code_block language-bash' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;mkdir ~/bin &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;puis on y cr&#233;e notre script&#160;:&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre data-language=&#034;bash&#034; class='spip_code spip_code_block language-bash' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;nano ~/bin/toutf8 &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;dans lequel on ins&#232;re&#160;:&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre data-language=&#034;bash&#034; class='spip_code spip_code_block language-bash' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;#!/bin/bash # Find the current encoding of the file encoding=$(uchardet &#034;$1&#034;) if [ ! &#034;UTF-8&#034; == &#034;${encoding}&#034; ] then # Encodings differ, we have to encode echo &#034;recoding from ${encoding} to UTF-8 file : $1&#034; vim +'set nobomb | set fenc=utf8 | x' &#034;$1&#034; else echo &#034;Already utf8 encoding&#034; fi &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;On le rend ex&#233;cutable&#160;:&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre data-language=&#034;bash&#034; class='spip_code spip_code_block language-bash' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;chmod +x ~/bin/toutf8 &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Pour le faire fonctionner, il convient bien d'avoir install&#233; les paquets &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;uchardet&lt;/code&gt; (plus fiable que la commande &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;file -i&lt;/code&gt; qui renvoie r&#233;guli&#232;rement des &#171;&lt;small class=&#034;fine d-inline&#034;&gt;&#160;&lt;/small&gt;unknown-8bit&lt;small class=&#034;fine d-inline&#034;&gt;&#160;&lt;/small&gt;&#187; impossible &#224; passer en argument de &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;recode&lt;/code&gt; ou &#224; traiter par ce script) et bien s&#251;r &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;vim&lt;/code&gt;&#160;:&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre data-language=&#034;bash&#034; class='spip_code spip_code_block language-bash' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;sudo apt install uchardet vim &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Ensuite, o&#249; que vous vous trouviez, vous pourrez appeler le script simplement&#160;:&lt;/p&gt;
&lt;div class=&#034;precode&#034;&gt;&lt;pre data-language=&#034;bash&#034; class='spip_code spip_code_block language-bash' dir='ltr' style='text-align:left;'&gt;&lt;code&gt;toutf8 nom_du_fichier &lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>



</channel>

</rss>
