Linux
Reply Return

หัวข้อ : FVWM95

ข้อความว่า
ชื่อ: cwg
ส่งมาเมื่อวันที่ : 10 กรกฎาคม, 1998 at 17:39:50 [ ด้วย IP : 203.155.134.1 ]
หัวข้อ : FVWM95
ด้วยข้อความที่ว่า:
ตอนนี้ได้ลองดัดแปลงแก้ไข FVWM95 ซึ่งเป็น Window Manager อย่างหนึ่ง
สำหรับ X-Windows เพื่อให้ใช้งานภาษาไทยได้ง่ายขึ้น ใครสนใจลองไป
อ่านรายละเอียดเพิ่มเติมได้ที่ http://members.xoom.com/cwg/fvwm95th/
ถ้าหลายๆคนได้ลองใช้แล้วคิดว่าดี ก็จะได้นำไปประยุกต์ใช้กับ Window Manager
ตัวอื่นๆสำหรับ X-Windows

ผู้ตอบคนที่ 1
ชื่อ: บูม
ส่งเมื่อวันที่ : 10 กรกฎาคม, 1998 at 20:07:44 [ ด้วย IP 203.148.200.249 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
ว้าว..........อย่างงี้ก็ดีขึ้นซิครับ เห็นพี่ ]d เขาก็เคยทำนะเป็นโปรแกรม สลับเปลี่ยน thai / eng อ่ะครับ เจ๋งมากเลย แต่น่าเสียดาย ของพี่เขา down ไปแล้ว ถ้าพี่เขา up ใหม่แล้วอย่าลืมไปดูนะ
เดี่ยวผมจะรีบไปดูของคุณเลยครับ ....

ผู้ตอบคนที่ 2
ชื่อ: ]d
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 03:01:47 [ ด้วย IP 203.146.10.144 ]
หัวข้อ : ตอนนี้ version 0.4 ครับ
ตอบว่า :
ยังไม่มีให้ download แต่ดูตัวอย่างได้ที่
http://www.intania.tu.ac.th/~mhz ครับ
ชื่อโปรแกรมชื่อ nonlock (non มาจาก nonnon
จากการ์ตูนเรื่องโปรดชื่อ sekai-de ichiban yasashii
ongaku) โปรแกรมดังกล่าวไม่ได้แยกแยะ input ของแต่ละ
window ได้ครับ โดยโปรแกรมดังกล่าวจะออกแบบมาสำหรับ
WindowMaker เท่านั้น และผมกำลังคิดอยู่ว่าผมจะย้าย
nonlock ให้ไป run รวมกับ WindowMaker เลยดีหรือไม่
ตอนนี้ผม add ปุ่มที่สามบน title bar ได้แล้วครับ แต่
ขอทำความเข้าใจกับ standard ของ interface ของ
openstep อีกหน่อย ไม่ก็ผมอาจจะพยายาม sync กับ
event ของ WindowMaker เอง (ด้วยวิธีเดียวกับ wmsound)
ซึ่งเมื่อเป็นอย่างนั้นก็หมายความว่า nonlock ใน version
หน้าจะไม่ support window manager ตัวอื่นอีกต่อไปครับ
(ตอนนี้ก็ไม่ support พวกที่ไม่ยอม display icon window)

ผู้ตอบคนที่ 3
ชื่อ: ]d
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 03:12:45 [ ด้วย IP 203.146.10.144 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
sorry link ผิดครับ ต้องเป็น
http://intania.tu.ac.th/~mhz
ก็ตั้งใจว่าจะให้แต่ละหน้าแยก language ได้ แต่
ก็คงมีตัวเลือกให้แบบทุก window เหมือนกันด้วยครับ
เพราะผมชอบแบบหลังมากกว่า

ผู้ตอบคนที่ 4
ชื่อ: cwg
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 06:33:57 [ ด้วย IP 203.155.134.1 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
สำหรับ WindowMaker (0.16.1) ผมก็ได้ทำแล้ว ใส่ฟังก์ชัน ฝังลงไปใน WindowMaker เลย แล้วสามารถสลับภาษาแยก แต่ละหน้าต่างได้(ผมชอบแบบแยก) ใช้กำหนด hotkey เป็นคีย์สำหรับสลับภาษา (ปรกติจะใช้ grave) แต่กำลังนั่งนึกอยู่ว่าจะทำตรงไหน ให้แสดงว่า ตอนนี้คือ ภาษาไทยหรืออังกฤษอยู่ (ของ FVWM95 ใส่ไว้ตรง
Taskbar) เพราะพึ่งใช้ WindowMaker เป็นครั้งแรก คิดว่า จะใส่ไว้ข้างๆสี่เหลี่ยมที่มีกากระบาท แต่ถ้าจะให้ง่ายก็คิดว่า
คงเป็นสี่เหลี่ยม 64x64 ลอยแสดงรูปธงอะไรทำนองนี้ก็เข้าท่าดี

ผู้ตอบคนที่ 5
ชื่อ: asdfฟหกด
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 17:20:01 [ ด้วย IP 130.153.137.15 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
ยอดเยี่ยมครับ ขอแสดงความนับถึอ
อยากทราบชื่อจริงของคุณครับ ;)

ผู้ตอบคนที่ 6
ชื่อ: ไพศาล, TITech1998
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 18:41:26 [ ด้วย IP 130.153.137.15 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
เข้าไปอ่านดุแล้ว น่าชึ่นชมครับคุณ cwg
เท่าที่อ่านดุเห็นคุณว่าใช้ xmodmap ใช่ไหมครับ
เป็นวิธีที่ดีครับ แต่อยากให้คุณช่วยปรับเป็นใช้ xkd ที่มาพร้อมกับ XFree86 อีกสักหน่อยก็จะดีเลย เพราะ xmodmap จะเสียเวลาสลับแป้นสัก 1 วินาที ทำให้การพิมพ์หยุดชะงักลงได้

ผู้ตอบคนที่ 7
ชื่อ: cwg
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 19:08:58 [ ด้วย IP 203.155.134.1 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
ผมใช้ฟังก์ชันของ KBD ของ XFree86 3.2 ครับ ไม่ได้ใช้ xmodmap (คำสั่ง) แต่ที่บอกว่า xmodmap หมายถึงใช้ ไฟล์ .Xmodmap ที่เป็นภาษาไทย(ที่เราใช้ๆกันอยู่) เวลาเข้า X ต้อง load ไฟล์ดังกล่าวก่อน ลืมบอกไปว่าใช้กับ X ทั่วๆไปไม่ได้ ต้องของ XFree86 เท่านั้นเพราะใช้ฟังก์ชันของ xkb

ผู้ตอบคนที่ 8
ชื่อ: ไพศาล,TITech1998
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 19:15:45 [ ด้วย IP 130.153.137.15 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
อย่างนี้สิเยี่ยมเลยครับ เดี๋ยวผมคงต้องไปลองในเครื่องตัวเองที่บ้านเสียแล้ว

ชอบคุณครับ


ผู้ตอบคนที่ 9
ชื่อ: ไพศาล,TITech1998
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 19:22:58 [ ด้วย IP 130.153.137.15 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
โทษทีครบพิมพ์ผิดเดี๋ยวคนเข้าใจผิดกันหมด :)

ชอบคุณครับ -> ขอบคุณครับ


ผู้ตอบคนที่ 10
ชื่อ: ]d
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 19:32:24 [ ด้วย IP 203.146.10.144 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
ใส่ไว้ข้างกากบาทก็ดีครับ แต่หากรูปธงคุณกดเข้าไปได้
ก็น่าจะอยู่ข้าง iconize button ครับ เพราะหากอยู่ใกล้
กากบาทอาจกดพลาดได้และก็กลายเป็นปิด window แทน
ตำแหน่ง display ที่ควรตาม openstep, ผมคิดว่ามัน
ควรจะเป็น docking app ครับ ที่ผมกำลังไม่แน่ใจว่า
ควรจะเป็น docking app เพราะว่าในกรณีนี้มันเป็น
คุณสมบัติเฉพาะของแต่ละ window แต่พอคุยกับเพื่อนแล้ว
ก็พูดประมาณว่าปุ่มเยอะไปมันก็จะไม่เข้ากับ openstep
ครับ แล้วจะกลายเป็น afterstep ไป สรุปอย่างไรดี
เอ แต่หากคุณใช้ xkb function ในการ toggle แล้ว
ล่ะก็ ลองทำ patch มาดูซิครับเพราะบางทีมันอาจจะ
work กับ nonlock อยู่แล้ว และผมจะได้พยายามหาทาง
sync nonlock กับ patch คุณ :)

ผู้ตอบคนที่ 11
ชื่อ: cwg
ส่งเมื่อวันที่ : 11 กรกฎาคม, 1998 at 21:13:13 [ ด้วย IP 203.155.134.1 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
ถ้าใส่ไว้ข้างปุ่มกากบาท(นึกแล้วเชียวว่า "กากระบาท"ของผมทำไมมันแปลกๆ) คิดว่าจะทำเป็น button คือคลิ้กใช้สลับภาษาได้ ยกตัวอย่างของ fvwm ส่วนบนของแต่ละหน้าต่างจะมีสองปุ่มติดกันทางขวาบนคือปุ่มกดเป็น icon กับปุ่มปิดหน้าต่างซึ่งอยู่ติดกัน คิดว่าการกดผิดไม่น่าจะเป็นปัญหา หรือจะทำเป็นปุ่มแสดงภาษาอย่างเดียวแบบไม่ให้คลิ้กก็ได้

ส่วน docking นั้นคงจะไม่ใช้เพราะมัน builit-in ไม่ใช่ application อีกทางเลือกหนึ่งก็คือ ทำหน้าต่าง 64x64 ลอยอยู่มุมล่างขวาเพราะเห็นว่ามุมนั้นมันยังว่างอยู่
แต่สรุปแล้วก็ขี้เกียจแก้ไขเหลือเกิน ยิ่งถ้าต้องเติมอะไรเข้าไปมากเพราะมันคงเยอะ ถ้าจะใช้ nonlock ของคุณ ]d ที่มีอยู่แล้วนั้นก็ต้องใช้วิธีการ broadcast (หรือจะเรียกว่า synchronize) เช่น ถ้ากดปุ่มของ nonlock แล้วจะสลับภาษา แล้วเปลี่ยนรูปธง nonlock ก็จะต้อง broadcast action ดังกล่าวกลับมาที่ WM เพื่อจะได้รู้ว่า window ที่อยู่ใน focus ขณะนั้นมันต้อง toggle ภาษาแล้ว ในทางกลับกันถ้าผู้ใช้สลับภาษาโดยใช้ toggle key ก็จะต้องแจ้งไปที่ nonlock เพื่อให้เปลี่ยนรูปธง
จริงๆแล้วหลักการนี้ก็ใช้กับ FVWM95 ที่ได้แก้ไขไป คือสื่อสารกันระหว่าง FVWM95 กับตัว Taskbar
สำหรับ WindowMaker ที่ได้แก้ไขตอนนี้ ผมใส่ฟังก์ชันชื่อ ToggleMode เข้าไป (ภายในไฟล์ ./GNUstep/Defaults/WindowMaker จะต้องเติม ToggleMode = grave; เพื่อให้ใช้ grave เป็น toggle key) ถ้า Nonlock จะเรียกใช้ฟังก์ชันตัวนี้ก็ได้ แต่ nonlock จะต้องไม่เรียกใช้ฟังก์ชันของ xkb เพราะเดี๋ยวจะตีกัน(คือให้ตัวใดตัวหนึ่งเป็นตัวเลือก) แต่ปัญหาคือว่าจะแจ้งไปยัง nonlock ได้งัยว่าตอนนี้คือ language mode แบบไหนถ้าผู้ใช้กด toggle key
สรุปว่า จะเอายังงัยดี ?


ผู้ตอบคนที่ 12
ชื่อ: ]d
ส่งเมื่อวันที่ : 12 กรกฎาคม, 1998 at 00:36:39 [ ด้วย IP 203.146.15.99 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
ตอนนี้ผมได้ solution พอดีครับ ตอนนี้แต่ละหน้าต่างของ
ผมแยกชนิด input ได้แล้วโดยไม่ต้องแก้ nonlock มันก็
work ด้วยกันได้ โดยไปดัก ช่วง focus ของมันครับ ดัก
ก่อน click และบันทึก status ของค่าคีย์บอร์ดก่อนเปลี่ยน
focus แต่วิธีนี้ผมไม่ชอบเพราะมันต้องไปแก้ code ของ
WindowMaker ซึ่ง WindowMaker มัน update บ่อย ต้อง
มาทำ patch กันเหนื่อยเลยล่ะ แต่ผมก็ยังอยากได้ปุ่มบน
title bar อยู่ดีครับ แต่เพื่อนๆก็ไม่ชอบกัน บอกเสีย standard..
ยังไงถ้าว่างพรุ่งนี้อาจจะทำ patch for 0.16.1 ครับ

ผู้ตอบคนที่ 13
ชื่อ: cwg
ส่งเมื่อวันที่ : 12 กรกฎาคม, 1998 at 00:50:36 [ ด้วย IP 203.155.134.1 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
ตอนนี้ใส่ code ไว้ใน http://members.xoom.com/cwg/wmakerth/ แล้ว ถ้างัยลองดาวน์โหลดไปทดลองก่อนได้ ยังไม่ได้ทำเป็น patch เพราะคิดว่ายังไม่จำเป็น เลยเป็นไฟล์รวมเลยประมาณ 700KB อาจจะได้ดาวน์โหลดนานหน่อย

ผู้ตอบคนที่ 14
ชื่อ: ]d
ส่งเมื่อวันที่ : 12 กรกฎาคม, 1998 at 15:14:06 [ ด้วย IP 203.146.10.144 ]
หัวข้อ : ah, ทำ patch เถอะพี่ ผม load ไม่ไหวจริงๆ
ตอบว่า :
net ที่เล่นอยู่ช้ามาก patch ผมเอาได้ที่
http://intania.tu.ac.th/~mhz/delme ครับ
ไม่สามารถ define key ที่ใช้ toggle ใหม่ได้
ต้องใช้ toggle key เดียวกับที่ define ใน XF86Config
ครับ และต้องใช้ xkb ด้วยครับ ส่วนใครที่ใช้ nonlock 0.3
อยู่มันก็คงทำงานด้วยกันได้ครับ nonlock 0.4 ยังไม่เสร็จดี
และผมก็ไม่ได้เป็นคน maintain code แล้วครับ



ผู้ตอบคนที่ 15
ชื่อ: ]d
ส่งเมื่อวันที่ : 12 กรกฎาคม, 1998 at 15:38:39 [ ด้วย IP 203.146.10.144 ]
หัวข้อ : อ้ะ แถม...
ตอบว่า :
nonlock 0.4 binary snapshot ครับ
http://intania.tu.ac.th/~mhz/nonlock.gz

ผู้ตอบคนที่ 16
ชื่อ: ]d
ส่งเมื่อวันที่ : 13 กรกฎาคม, 1998 at 07:47:36 [ ด้วย IP 203.146.10.144 ]
หัวข้อ : download มาสำเร็จแล้วครับ
ตอบว่า :
ขอบคุณมากครับ ไม่เอา patch แล้วก็ได้ :) ลองดูแล้ว
ปรากฏว่ายังไม่ sync กับ nonlock ผมครับ แต่การเพิ่ม
ปุ่ม toggle ก็เป็น idea ที่ดี ผมขอยืม idea นะครับ
แต่ผมอยากได้ปุ่มที่สามบน title bar เหมือนกันนะ
แต่ไม่ค่อยมีเวลาเลย ถ้าคุณอยากทำก็ช่วย post ไว้ด้วย
แล้วกันนะครับ เพราะจะได้ไม่ต้องทำงานซ้ำซ้อนกันไงล่ะครับ
มีตัวอย่าง openstep มาให้ดูด้วยครับ เผื่อใช้อ้างอิง
interface URL: http://www.objectfarm.org/TheMerger/UserInterfaces/OPENSTEP.beta-Desktop.jpg
ครับ หวังว่าคงช่วยได้บ้าง แต่คำถามหลักๆของผมก็คือ
เอายังไงกับปุ่มที่สามบน title bar ดีครับ

ผู้ตอบคนที่ 17
ชื่อ: cwg
ส่งเมื่อวันที่ : 13 กรกฎาคม, 1998 at 19:38:36 [ ด้วย IP 134.28.240.55 ]
หัวข้อ : Re: FVWM95
ตอบว่า :
เห็นบอกว่า add ปุ่มที่สามบน titlebar ได้แล้ว ก็น่าจะทำต่อให้เสร็จ ไม่ต้องรีบร้อนก็ได้ ถ้าไม่มีเวลา สรุปเลยละกันว่า ใส่ toggle button ไว้ข้างๆ ปุ่มใดปุ่มหนึ่งจะอยู่ข้างซ้ายหรือขวาก็ได้ ก็ให้คิดว่าทำไว้ให้คนไทยใช้ ไม่ต้องกังวลเรื่อง interface มากนัก แบบว่า OpenStep + Thai Style อะไรทำนองนั้น ถ้าจะทำต่อจริงๆ ผมจะได้มองๆหาอย่างอื่นทำแทน กะว่าจะลอง Qt กับ KDE คิดว่าเข้าท่าดี ต้องมาเคาะสนิม C++ ซะแล้ว

ผู้ตอบคนที่ 18
ชื่อ: ]d
ส่งเมื่อวันที่ : 14 กรกฎาคม, 1998 at 00:04:51 [ ด้วย IP 203.146.10.144 ]
หัวข้อ : แฮะๆ เผอิญผมเป็นพวก gnome :P
ตอบว่า :
เลยไม่ค่อยอยากเล่น QT เท่าไหร่ แต่ในใจก็อยากให้มีนะครับ
เพราะ มันก็ดีเหมือนกัน (QT) ส่วนปุ่มที่ผม add ได้นั้นคงอีก
หลายพักกว่าจะเสร็จเพราะปุ่มบน WindowMaker มันต้อง
render กันวุ่นวาย ผมกะว่าจะทำหลังเขียนเกมเล็กๆเกมนึง
ให้เพื่อน คงอีกสักสัปดาห์นึง ต่อไปก็เป็นเรื่อง patch ใหม่
ของผมหลังจากลอก code คุณมาเป็นที่เรียบร้อย(ฮา) แต่มัน
วุ่นวายเหลือเกินเรื่องการทำ patch หลายอันในเครื่องผม
ก็เลยขอรวมซะเลย 2 in 1 dropshadow text in title
bar + modelock, เอา patch ได้ที่
http://intania.tu.ac.th/~mhz/lastpatch.delme
และใน src/wconfig.h ให้ใส่
#define DROPSHADOW
#define MULTILOCK
ใน WindowMaker
Shadow = Yes;
ShadowWidth = 2;
ShadowHeight = 1;
ShadowColor = black;
ToggleKey = "Meta+0" (หรือจะเลือกคีย์อะไรก็ได้)
ModeLock = Yes; (ไม่เป็น dynamic นะครับ)

ท่านผู้รู้ กรุณาช่วยตอบวิธีแก้ปัญหาให้หน่อยครับ ขอบคุณมากครับ :

ชื่อ :
E-Mail :
หัวข้อ :
ข้อความว่า :