0

โดน Python 2.6.6 บน Windows 7 และ character encoding

for name, default in {'spaces': u'·', 'tabs': u'»', 'newlines': u'¶'}.items():

เจอบรรทัดนี้เข้าไปเน่า งงเลยครับ ได้แบบนี้ออก

import pygments.filters
LookupError: unknown encoding: utf-32-be

หัวไฟล์ก็เห็นมี # -*- coding: utf-8 -*- เรียบร้อย

แต่ก็ไม่แคร์ใช้ถ้าถึกแก้เข้าไป โดยไม่หาสาเหตุ :-P

for name, default in {'spaces': u'\00B7', 'tabs': u'\u00BB', 
        	'newlines': u'\u00B6'}.items():

มันก็ผ่านไปได้ แต่ไม่รู้ใช้ได้เหมือนเดิมหรือเปล่า :-P

0

Sony Vaio VPCYA15FH + Fedora 14

ลองใช้ Fedora 14 กีบ Sony Vaio VPCYA15FH ก่อนจะบูทจาก CD ได้ ก็ต้องกด F2 เข้าไปในตั้งว่าให้บูทจาก CD ก่อน ลองดูแบบไม่เซตอะไรเพิ่มเลยได้ผลแบบนี้

  • X11 ใช้งานได้เนียน ลองเปิด Firefox เล่นก็ได้ แต่ไม่ได้ลอง 3 มิติ
  • Bluetooth ได้ ต่อกับ Nokia 5230 ส่งไฟล์กัน
  • Lan ใช้ได้
  • WLan (Wifi) ใช้ได้ แต่ยังไม่ได้ลอง WEP และ WPA นะ ใช้ Atheros AR9285 ได้ ath9k เข้าไปสบาย
  • เสียง – อันนี้แย่หน่อยเสียงไม่ออก แต่ Realtek นี้ linux ก็เห็นๆ อยู่แต่เสียงไม่ออก น่าจะพอมีหวังอยู่ แม้ตอนนี้ยังไม่ได้

ก็ลองเท่านี้ก่อน ไว้ค่อยกลับมาสู้อีกที ตอนนั้นอาจจะเป็น Fedora 14 แทน :-P

0

แก้ mysql ให้ใช้ UTF-8 ใน my.ini/my.cnf

ผมก็เอามาแปะเลยแล้วกันนะ

[client]
default-character-set=utf8

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
collation_server=utf8_unicode_ci
character_set_server=utf8
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

ผมเพิ่มบรรทัดที่มี utf8 เข้าไป

0

หุงข้าวด้วยเตาอบไมโครเวฟ

ผมก็เริ่มอ่าน wikihow แล้วก็ทำตามอย่างมั่วๆ ฯ

  1. ใส่ข้าวลงไปในถ้วยให้สูงขึ้นมาประมาณ 1 เซนติเมตร
  2. ใส่น้ำเกือบเต็มถ้วยเลย ผมว่าอัตราส่วนปริมาตรข้าวกับน้ำ น่าจะประมาณ 1:5 ได้
  3. เอาเข้าไปอบ ๑ นาที ตามด้วย ๑๕ นาที ตามด้วย ๕ นาที ที่ทำแบบนี้ไม่ได้อยากจะทำแต่เพราะปัญหาทางเทคนิค และลังเล :-P คราวหน้าว่าจะลอง ๒๐ นาทีรวดเดียว
  4. เอาทิ้งไว้ ๕ นาที ในตู้ แต่ไม่เปิดออกมานะ
  5. คลุกๆ กินได้แล้ว

มันก็ออกมาแบบนี้อะครับ

หุงข้าวด้วยเตาอบไมโครเวฟ

หุงข้าวด้วยเตาอบไมโครเวฟ

ไม่ได้นิ่มมากแต่ก็ไม่ได้ต่างจากใช้หม้อหุงข้าวเฉพาะทางมากนัก เป็นไว้ใช้ได้ เดี๋ยวพรุ่งนี้ทำกินอีก ^_^

1

สร้าง (paster) command ใน Pylons เอง

ผมกะเอามาใช้เรียกงานที่เป็น batch ทำในเว็บยาวๆ ก็จะเรียกจาก shell หรือว่าเรียกจาก cron เอา ก็เลยสร้าง command ขึ้นมา จะได้ไม่ต้องไปทำ configuration ของ database ต่างหาก

สมมุติ package ชื่อ as นะ เวลาจำทำแบบนี้ ก็ไปสร้าง folder ชื่อ command ใน as/as แล้วก็สร้างไฟล์ __init__.py และ do_sth.py ขึ้นมาประมาณนี้

# do_sth.py
class DoSth(Command):
    # Parser configuration
    summary = "Do sth"
    usage = "Just use it"
    group_name = "myapp"
    parser = Command.standard_parser(verbose=False)
    min_args = 0
    takes_config_file = 1
    requires_config_file = True

    def command(self):
         print "!!!", self.args

อันนี้มันก็ไม่ทำอะไรแค่ print ออกมาดู :-P

แล้วก็เพิ่มใน entry_points ใน setup.py อีกที

[paste.paster_command]
do-sth = as.commands.do_sth:DoSth

จากนั้นก็สั่ง python setup.py develop

ต่อจากนี้นก็เรียกเลย
วิธีเรียกใช้

paster --plugin=as do-sth

ในกรณีนี้คือคำสั่งชื่อ do-sth

ผมอ่านมาจาก http://pylonshq.com/docs/en/0.9.7/advanced_pylons/paster_commands/ แล้วลองทำตามดูอีกที

พอได้ command มาแล้วสิ่งที่อยากทำหลักๆ เลย คือใช้ model ก็แก้ do_sth.py เป็นแบบนี้

from paste.script.command import Command
from as import model
from paste.deploy import loadapp
import os

class DoSth(Command):
    # Parser configuration
    summary = "Do Something"
    usage = "Just use it"
    group_name = "myapp"
    parser = Command.standard_parser(verbose=False)
    min_args = 0
    takes_config_file = 1

    requires_config_file = True

    def command(self):
        # โหลด app ขึ้นมา
        base = os.getcwd()
        app_spec = "config:" + self.args[0]
        app = loadapp(app_spec, relative_to=base)

        # แล้วก็เอา model มาใช้ได้แล้ว
        from annotedw import model

        # ทำอะไรต่างกับ model ได้เลย

เวลาเรียกใช้ก็เป็นแบบนี้

paster --plugin=as do-sth development.ini
0

เปลี่ยนอะไรหลายๆ อย่างให้เป็น .eps

เพราะว่าต้องทำรูป .eps ใน LaTex ก็เลยเขียนโปรแกรมมาเปลี่ยน

เปลี่ยน ไฟล์ .dia จาก โปรแกรม Dia ใช้กับแผนภูมิ

#!/bin/sh
set -x
for fn in *.dia; do
    ofn=`echo $fn | sed s/\.dia$/\.eps/g`
    dia -e $ofn $fn
done

PNG ผมใช้กับพวก screen shot

#!/bin/sh
set -x
for fn in *.png; do
    ofn=`echo $fn | sed s/\.png$/\.eps/g`
    convert $fn $ofn
done

สุดท้าย SVG เวลาวาดอะไรใน Dia ไม่ไหวผมก็ใช้ Inkscape วิธีเปลี่ยนก็ทำงี้

#!/bin/sh
set -x
for fn in *.svg; do
    ofn=`echo $fn | sed s/\.svg$/\.eps/g`
    inkscape -E $ofn --export-text-to-path $fn 
done
2

ThaiLatex กับ Fedora

จริงๆ แล้ว ThaiLatex มี thailatex.spec.in อยู่แล้ว แต่ว่าลองเอามา build แล้วใช้ไม่ได้ (ผมใช้ Fedora 13) ก็แก้นิดหน่อยแก้คำว่า copyright เป้น license ก็ใช้ได้แล้ว.

diff -Nur thailatex-0.4.4.orig/thailatex.spec.in thailatex-0.4.4/thailatex.spec.in
--- thailatex-0.4.4.orig/thailatex.spec.in	2009-02-04 10:17:21.000000000 +0000
+++ thailatex-0.4.4/thailatex.spec.in	2011-01-04 11:45:43.528945240 +0000
@@ -7,7 +7,7 @@
 Name: %{name}
 Version: %{version}
 Release: %{release}
-Copyright: freely distributable
+License: freely distributable
 Group: Applications/Publishing
 Source: %{name}-%{version}.tar.gz
 BuildArch: noarch

ใช้ได้แล้ว … ถ้าจะให้เนียนก็มีอะไรให้ทำอีกนิดหน่อยเหมือนกัน พวก Requires กับ BuildRequires แก้จาก tetex เป็น texlive ก็น่าจะเนียนแล้วมั้ง ฯ แต่ไม่ทำแล้วเอาแค่นี้พอ ฯ ไว้เจอคนใช้ Fedora ทำ Desktop เยอะๆ ก่อนค่อยทำแล้วกัน ฯ