diff options
-rw-r--r-- | convert-to-utf8 | 41 | ||||
-rw-r--r-- | convert-to-utf8.schemas | 83 | ||||
-rw-r--r-- | convert-to-utf8.spec | 53 |
3 files changed, 177 insertions, 0 deletions
diff --git a/convert-to-utf8 b/convert-to-utf8 new file mode 100644 index 0000000..63a3b80 --- /dev/null +++ b/convert-to-utf8 @@ -0,0 +1,41 @@ +#!/bin/sh +#Copyright (c) 2010 Tzafrir Choen, Elad Alfassa + +#Permission is hereby granted, free of charge, to any person obtaining a copy +#of this software and associated documentation files (the "Software"), to deal +#in the Software without restriction, including without limitation the rights +#to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +#copies of the Software, and to permit persons to whom the Software is +#furnished to do so, subject to the following conditions: + +#The above copyright notice and this permission notice shall be included in +#all copies or substantial portions of the Software. + +#THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +#IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +#FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +#AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +#LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +#OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +#THE SOFTWARE. + +CHARSETS="UTF-8 windows-1255 cp862 ISO-8859-8" +for FILE in "$@"; do + if [ ! -w "$FILE" ] + then + zenity --error --title="המרת קבצים" --text "הקובץ לא קיים $FILE, או שאין לך הרשאות לכתוב אליו" + continue + fi + newfile=`mktemp conv_XXXXXX` || exit 1 # FIXME: Error message? + for charset in $CHARSETS; do + if iconv -f "$charset" <"$FILE" >"$newfile" 2>/dev/null; then + mv "$newfile" "$FILE" + continue 2 + fi + done + rm $newfile + zenity --error --title="המרת קבצים" --text "המרת הקובץ $FILE נכשלה." + exit +done +zenity --info --title="המרת קבצים" --text="ההמרה הסתיימה בהצלחה!" + diff --git a/convert-to-utf8.schemas b/convert-to-utf8.schemas new file mode 100644 index 0000000..5115ea0 --- /dev/null +++ b/convert-to-utf8.schemas @@ -0,0 +1,83 @@ +<?xml version="1.0" encoding="UTF-8"?> +<gconfschemafile> + <schemalist> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/type</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/type</applyto> + <type>string</type> + <default>Action</default> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/items</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/items</applyto> + <type>list</type> + <list_type>string</list_type> + <default>[profile-zero]</default> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/label</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/label</applyto> + <type>string</type> + <locale name="C"> + <default>המר לUTF8</default> + </locale> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/tooltip</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/tooltip</applyto> + <type>string</type> + <locale name="C"> + <default>המר את הקובץ לUTF8</default> + </locale> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/icon</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/icon</applyto> + <type>string</type> + <locale name="C"> + <default>gtk-italic</default> + </locale> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/toolbar-label</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/toolbar-label</applyto> + <type>string</type> + <locale name="C"> + <default>המר לUTF8</default> + </locale> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/desc-name</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/profile-zero/desc-name</applyto> + <type>string</type> + <locale name="C"> + <default>Default profile</default> + </locale> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/path</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/profile-zero/path</applyto> + <type>string</type> + <default>convert-to-utf8</default> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/parameters</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/profile-zero/parameters</applyto> + <type>string</type> + <default>%M</default> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/mimetypes</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/profile-zero/mimetypes</applyto> + <type>list</type> + <list_type>string</list_type> + <default>[text/*,application/x-subrip]</default> + </schema> + <schema> + <key>/schemas/apps/nautilus-actions/configurations/accept-multiple-files</key> + <applyto>/apps/nautilus-actions/configurations/8e5a8d80-a3fd-42c8-b8d8-715bf31cb44d/profile-zero/accept-multiple-files</applyto> + <type>bool</type> + <default>true</default> + </schema> + </schemalist> +</gconfschemafile> diff --git a/convert-to-utf8.spec b/convert-to-utf8.spec new file mode 100644 index 0000000..b9a6661 --- /dev/null +++ b/convert-to-utf8.spec @@ -0,0 +1,53 @@ + +Name: convert-to-utf8 +Version: 1.1 +Release: 0%{?dist} +Summary: Useful script that coverts files to UTF-8 + +Group: Applications/System +License: MIT +URL: http://www.doom.co.il/ +BuildRoot: %{_tmppath}/%{name} +Source: %{name}.tar.gz +Requires: GConf2 zenity bash glibc-common +BuildArch: noarch +Obsoletes: UTF8-Converter +%description +Useful script that coverts files to UTF-8 + +%prep +%setup -q + +%build +%{nil} +%pre +%gconf_schema_prepare %{name} +%install +%{__rm} -rf $RPM_BUILD_ROOT +%{__install} -d $RPM_BUILD_ROOT%{_bindir} +%{__install} -D %{name} $RPM_BUILD_ROOT%{_bindir}/%{name} +%{__install} -d $RPM_BUILD_ROOT%{_sysconfdir} +%{__install} -d $RPM_BUILD_ROOT%{_sysconfdir}/gconf +%{__install} -d $RPM_BUILD_ROOT%{_sysconfdir}/gconf/schemas +%{__install} -D convert-to-utf8.schemas $RPM_BUILD_ROOT%{_sysconfdir}/gconf/schemas/convert-to-utf8.schemas + +%post +%gconf_schema_upgrade convert-to-utf8 +%preun +%gconf_schema_remove convert-to-utf8 + +%clean + +%{__rm} -fr $RPM_BUILD_ROOT + +%files +%defattr(-,root,root,-) +%{_bindir}/%{name} +%config %{_sysconfdir}/gconf/schemas/%{name}.schemas + +%changelog +* Wed Dec 01 2010 Elad Alfassa <el.il@doom.co.il> 1.1-0 +Fix error when trying to convert a file that is already a utf-8 file +* Sun Jul 25 2010 Elad Alfassa <elad@macron.co.il> - 1-0 +initial build + |