The wikis are now using the new authentication system.
If you did not migrate your account yet, visit https://idp-portal-info.suse.com/
If you did not migrate your account yet, visit https://idp-portal-info.suse.com/
Lokalizáció/Helyesírás
Az alapvető helyesírási hibák kiszűrésére Bíró Árpád készített egy szkriptet, amely a Hunspell-lel ellenőrzi a SUSE PO-fájljait.
#!/bin/bash # download and check SUSE localization files function processtgzfile { #$1: tgz filename #$2: prefix for output filenames FILELIST=`gzip -d -c "$1" | tar --list 2>/dev/null | grep "\.po$"` echo "$FILELIST" | while read FILENAME; do echo; echo "$FILENAME"; BASENAME=`basename "$FILENAME"`; gzip -d -c "$1" | tar -x -O "$FILENAME" 2>/dev/null |\ sed 's/^#.*$//' | sed -e ':a;s/^msgid .*\nmsgstr //;/^msgid /N;//ba' |\ sed -e '/./,$!d;1,/^$/d;s/\&//g' | iconv -c -f UTF-8 -t Latin2 |\ hunspell -d hu_HU -l | sort | uniq > "$2_$BASENAME".problems; done } wget --no-check-certificate -c "https://forgesvn1.novell.com/viewsvn/suse-i18n/trunk/lcn/hu/po.tar.gz?view=tar" -O lcn_po.tar.gz wget --no-check-certificate -c "https://forgesvn1.novell.com/viewsvn/suse-i18n/trunk/yast/hu/po.tar.gz?view=tar" -O yast_po.tar.gz processtgzfile ./lcn_po.tar.gz lcn processtgzfile ./yast_po.tar.gz yast
A szkript az aktuális könyvtárba letölt 2 tar.gz-fájlt a SUSE SVN-jéből (lcn és yast - ezeken kívüli fájlok ellenőrzéséhez ki kell egészíteni a szkriptet), majd végignézi azokat a Hunspell-lel és szintén az aktuális
könyvtárba teszi a problémalistákat. Nyilvánvalóan sok a hamis riasztás, de ugyanakkor sok hibát megfog.
szükséges hozzá a hunspell, amely letöltés után egyszerűen telepíthető:
./configure; make; make install
Egy másik parancsfájl hasonló felépítésű, de bővebb funkcionalitású.
#!/bin/bash function processpofile { BASENAME=`basename "$1"`; cat $1 |\ sed 's/^#.*$//' |\ sed -e ':a;s/^msgid .*\nmsgstr //;/^msgid /N;//ba' |\ sed -e '/./,$!d;1,/^$/d;s/\&//g;s/_//g' |\ iconv -c -f UTF-8 -t Latin2 |\ hunspell -d $DICTIONARY -l |\ iconv -c -t UTF-8 -f Latin2 |\ sort |\ uniq >> "$BASENAME".problems; } function processtgzfile { FILELIST=`gzip -d -c "$1" | tar --list 2>/dev/null | grep "\.po$"` echo "$FILELIST" | while read FILENAME; do echo; echo "$FILENAME"; BASENAME=`basename "$FILENAME"`; gzip -d -c "$1" |\ tar -x -O "$FILENAME" 2>/dev/null |\ sed 's/^#.*$//' |\ sed -e ':a;s/^msgid .*\nmsgstr //;/^msgid /N;//ba' |\ sed -e '/./,$!d;1,/^$/d;s/\&//g;s/_//g' |\ iconv -c -f UTF-8 -t Latin2 |\ hunspell -d $DICTIONARY -l |\ iconv -c -t UTF-8 -f Latin2 |\ sort |\ uniq >> "$BASENAME".problems; done } function processdirectory { FILELIST=`find $i -name "*.po" -print`; echo "$FILELIST" | while read FILENAME; do echo; echo "$FILENAME"; BASENAME=`basename "$FILENAME"`; cat $FILENAME |\ sed 's/^#.*$//' |\ sed -e ':a;s/^msgid .*\nmsgstr //;/^msgid /N;//ba' |\ sed -e '/./,$!d;1,/^$/d;s/\&//g;s/_//g' |\ iconv -c -f UTF-8 -t Latin2 |\ hunspell -d $DICTIONARY -l |\ iconv -c -t UTF-8 -f Latin2 |\ sort |\ uniq >> "$BASENAME".problems; done } function usage { echo "usage: $0 [-d dictionary] <pofile|directory|tgzfile>" } USAGE=0; TARGET=""; TARGET_SUBJECT=$1; DICTIONARY=hu_HU if [[ $# -ne 1 && $# -ne 3 ]]; then usage; exit 1; fi while getopts d: OPTS; do case "$OPTS" in d) DICTIONARY=$OPTARG; TARGET_SUBJECT=$3;; [?]) usage; exit 1; ;; esac done echo Using dictionary: $DICTIONARY if [ -d $TARGET_SUBJECT ]; then TARGET="dir"; echo Processing directory; elif [ `file "$TARGET_SUBJECT" | grep gzip | wc -l` -eq 1 ]; then #must be a gzipped tar echo Processing gzipped archive; TARGET="tgz"; else #nem tomoritett, nem konyvtar, csak po lehet. ugye? echo Processing individual po file; TARGET="po"; fi case $TARGET in "po") processpofile $TARGET_SUBJECT ;; "dir") processdirectory $TARGET_SUBJECT ;; "tgz") processtgzfile $TARGET_SUBJECT ;; *) usage; exit 1; ;; esac