<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-7" http-equiv="Content-Type">
  <title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Prosthese mia sto scriptaki sou ayto :<br>
<br>
--<br>
#!/usr/bin/python2.3<br>
# -*- coding: utf-8 -*-<br>
---<br>
<br>
Giorgos Keramidas wrote:
<blockquote cite="mid20051214121855.GA1496@flame.pc" type="cite">
  <pre wrap="">On 2005-12-14 13:37, "Nick Demou (enLogic)" <a class="moz-txt-link-rfc2396E" href="mailto:ndemou@enlogic.gr">&lt;ndemou@enlogic.gr&gt;</a> wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">Giorgos Keramidas wrote:
    </pre>
    <blockquote type="cite">
      <pre wrap="">On 2005-12-14 12:57, "Nick Demou (enLogic)" <a class="moz-txt-link-rfc2396E" href="mailto:ndemou@enlogic.gr">&lt;ndemou@enlogic.gr&gt;</a> wrote:

      </pre>
      <blockquote type="cite">
        <pre wrap="">... Μην
βρίζετε είμαι γνωστός ταχυγράφος με την μέθοδο Quasi-Blind Fast Random
Hits with Strong Negative Feedback
        </pre>
      </blockquote>
      <pre wrap="">
Α αυτό δεν μας το είπες.  Κλεψιά! :P
      </pre>
    </blockquote>
    <pre wrap="">τρικ για να κρατήσω το ενδιαφέρον ψηλά ;-)

    </pre>
    <blockquote type="cite">
      <pre wrap="">...
      </pre>
      <blockquote type="cite">
        <pre wrap="">Ιδέες?
        </pre>
      </blockquote>
      <pre wrap="">
Μέχρι όλος ο κόσμος να το γυρίσει σε UTF-8 (yeah right, καλώς ήρθατε στο
όνειρό μας, πάρτε καρέκλα, ποτάκι; σε λίγο έχει και ταινία), μάλλον η
καλύτερη λύση είναι όταν συνδέεσαι σε απομακρυσμένα συστήματα να
χρησιμοποιείς κάποιο unibyte locale, π.χ. 'C', σε terminal που δεν είναι
σε multibyte κατάσταση :-(
      </pre>
    </blockquote>
    <pre wrap="">ΟΚ, ΟΚ, υποχώρηση λοιπόν από την ουτοπία του UTF-8... δεν πειράζει θα
ζήσω (ελληνικά και αγγλικά θέλω μόνο).

Το δοκίμασα λοιπόν και φυσικά ... δεν παίζει ακόμα γιατί το environment
είναι "POSIX". Θα μου πείτε LC_ALL=...; export LC_ALL; LANG... etc αλλά
στην περίπτωση μου ο χρήστης που κάνει login δεν έχει για shell
/bin/bash αλλά το /home/pass/pass.py ένα δικό μου python script (security).
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Για να έχει 'restricted' shell access?

  </pre>
  <blockquote type="cite">
    <pre wrap="">Πως θα αλλάξω το environment κάτω από το οποίο τρέχει το python script
σε iso8859-7?
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Δεν ξέρω τόσο καλά Python, αλλά όλο και κάποια κλήση θα έχει η Python
για να θέσει το τρέχον locale...  Α νάτο, το βρήκα.

    &gt;&gt;&gt; import os, locale
    &gt;&gt;&gt; def mylocale(lname, lcat, lval=None):
    ...   locale.setlocale(lcat, lval)
    ...   os.putenv(lname, lval)
    ...   os.environ[lname] = lval
    ...
    &gt;&gt;&gt; mylocale("LC_ALL", locale.LC_ALL, "C")
    &gt;&gt;&gt; os.environ['LC_ALL']
    'C'
    &gt;&gt;&gt; mylocale("LC_ALL", locale.LC_ALL, "el_GR.ISO8859-7")
    &gt;&gt;&gt; os.environ['LC_ALL']
    'el_GR.ISO8859-7'
    &gt;&gt;&gt;

Προσοχή, χρειάζονται *ΚΑΙ* οι 3 κλήσεις στην mylocale().  Η os.putenv()
για να περάσει η τιμή lname=lval σε οποιαδήποτε child processes, η
os.environ[] για το τρέχον process και η locale.setlocale() για να
ενημερωθεί η libc για το τρέχον locale.



  </pre>
</blockquote>
<br>
<br>
<pre class="moz-signature" cols="72">-- 
&lt;meta content="text/html;" http-equiv="Content-Type"&gt;
=========================================================
Proin Melos tis 17 Noembris
Giafka platias amerikis
Retired
=========================================================
</pre>
</body>
</html>