å› ä¸ºæœ€è¿‘çš„å·¥ä½œå½“ä¸é¢‘ç¹åœ°ç”¨åˆ°äº†å¼‚æ¥çš„IOç¼–ç¨‹æ¨¡åž‹ï¼Œå¯¹äºŽå¼‚æ¥æ¨¡åž‹çš„难于维护性深感切肤之痛。工作之余便在考虑有没有什么方法å¯ä»¥ä½¿è¿™ç§æ¨¡åž‹å˜å¾—æ›´åŠ çš„æ˜“è¯»æ˜“å†™å’Œæ˜“ç»´æŠ¤ï¼Œæœ‰ä¸€ä¸ªæƒ³æ³•å¾ˆè‡ªç„¶çš„äº§ç”Ÿäº†ï¼Œå°±æ˜¯ç”¨æˆ‘ä»¬ç†Ÿæ‚‰çš„æµç¨‹åŒ–的方法æ¥åšå†™å¤„ç†æµç¨‹ï¼Œç„¶åŽåœ¨ä¸€äº›IO触å‘点上异æ¥åŒ–,也就是触å‘一个异æ¥IO请求,将当å‰çš„æ‰§è¡ŒçŠ¶æ€æ¢å‡ºï¼Œæ¢å…¥å¦ä¸€ä¸ªæ‰§è¡Œçжæ€ï¼Œç›´åˆ°IO请求结æŸï¼Œè¯¥æ‰§è¡Œçжæ€è¢«å†æ¬¡æ¢å…¥ï¼Œåˆ™ç»§ç»æ‰§è¡Œã€‚
åŽæ¥åŽ»æœç´¢ç›¸å…³çš„问题,å‘现其实这个是一个很è€çš„æƒ³æ³•了。在计算机科å¦å½“ä¸ï¼Œè¿™ä¸ªæœ¯è¯å«åšCoroutine,最早æå‡ºæ˜¯åœ¨1969年,而在早期的高级è¯è¨€lispå’Œschema当ä¸å°±æœ‰å®žçŽ°ã€‚å¦‚æžœæŠŠCoroutine和函数进行比较的è¯ï¼Œå‡½æ•°åªæœ‰ä¸€ä¸ªå…¥å£ç‚¹ï¼Œè€ŒCoroutineå¯ä»¥æœ‰å¤šä¸ªå…¥å£ç‚¹ã€‚当Coroutine被第一次调用到的时候,它将从起始处开始执行,一旦é‡åˆ°å…·æœ‰yieldè¯ä¹‰çš„è¯å¥çš„æ—¶å€™ï¼Œå°±æ˜¯è¿”回给å¦å¤–一个Coroutine或者调用者,而在接下æ¥è¢«è°ƒç”¨çš„æ—¶å€™ï¼Œå°±ä»Žyieldè¯å¥ä¸‹é¢çš„一æ¡è¯å¥ç»§ç»æ‰§è¡Œç›´åˆ°é‡åˆ°æ–°çš„yieldè¯å¥æˆ–者Coroutine的结æŸã€‚
如果了解Python,其实Python当ä¸çš„Generator就是一ç§Coroutine。比如
def xrange(start, end):
   val = start;
   while ( val < start ):
      yield val
      val += 1
除了Python,Stackless-Pythonå’Œ.NET也有相应的实现,而C/C++虽然有一些实现,但是通用性都ä¸å¤ªå¥½ï¼Œå› 为实现难度相对比较大,毕竟Coroutineå®Œå…¨é¢ è¦†äº†C/C++基于stack的函数调用模型。
下é¢å¤§ä½“上看一下Coroutineçš„å‡ ä¸ªC实现,下次å†å†™ã€‚
转自è€èŒ‚çš„blog.
http://savycm.spaces.live.com/blog/cns!1AF201418B02D448!649.entry
èœå›å里é¢çš„é“ç†
Â
ä¸ç®¡æ€Žä¹ˆæ ·, 首先,æˆ‘å¿…é¡»æŠŠè‡ªå·±å½“æ ¹è‘±ã€‚æ²¡æœ‰äººä¼šæŠŠè‡ªå·±éƒ½ä¸æŠŠè‡ªå·±å½“å›žäº‹çš„äººå½“å›žäº‹(这个å¥åç¨å¾®æœ‰ç‚¹é•¿)。
å…¶æ¬¡ï¼Œå°±ç®—æˆ‘æŠŠè‡ªå·±å½“æ ¹è‘±ï¼Œä¹Ÿä¸èƒ½åœ¨å¤–é¢å¤ªæ˜¾æ‘†ã€‚å› ä¸ºçŽ°åœ¨çš„å£èŠ‚å¯èƒ½èŠ¹èœæ¯”葱更贵。
最åŽï¼Œå¯¹äºŽé‚£äº›æŠŠè‡ªå·±å¤ªå½“回事的葱们,我必须å¦ä¼šåœ¨ä»–们é¢å‰è£…æˆä¸€é¢—蒜。
最åŽåР䏀å¥ï¼šå°±ç®—å‘¨å›´éƒ½æ˜¯æ´‹è‘±ï¼Œåˆ°å¤´æ¥æˆ‘还是一棵葱。
今天å¶å°”在电视上看到的,HONDA(本田)的工程师带ç€ä»–们的类人形机器人ASIMO到四å·ç¾åŒºç»™å©åä»¬è¡¨æ¼”ã€‚ç”µè§†ä¸Šåªæœ‰å¾ˆçŸçš„一些片æ–,但是ä»ç„¶å±•示了ASIMO的一些很强大的特性,比如奔跑。
éšå³Google了一下这款机器人的资料,å‘现这个机器人还真是ä¸ç®€å•:
æ ¹æ®wikipedia上é¢çš„介ç»ï¼Œè¿™æ¬¾æœºå™¨äººé«˜130公分,é‡54公斤,Airborne time(这是什么,å应时间?)0.03秒,具有34个自由度(å¯ä»¥ç†è§£æˆ34个关节么……)。å¯ä»¥è¯†åˆ«ç§»åŠ¨çš„ç‰©ä½“ã€å§¿åŠ¿ã€æ‰‹åŠ¿ã€çŽ¯å¢ƒã€10å¼ è¿åЍä¸çš„人脸ã€ä»¥åŠä¸åŒçš„声音。
å‡ æ®µYoutube上é¢çš„视频:
CES 2007上é¢çš„demo
http://www.youtube.com/watch?v=cfaAiujrX_Y
以åŠåœ¨HONDA实验室里é¢çš„demo:
http://www.youtube.com/watch?v=Q3C5sc8b3xM
相当的强大。
这款机器人ä¸ä»…具有类人的外观ã€è‡ªä¸»è¡Œèµ°ã€ä¸Šæ¥¼æ¢¯çš„能力,而且å¯ä»¥ä»¥æ—¶é€Ÿ6公里奔跑,以时速5公里转弯。从demo里é¢çœ‹ï¼Œè¿˜å¯ä»¥æ„Ÿå—到人对其手臂的作用力而跟人一起转弯。ä¸ä»…如æ¤ï¼Œçœ‹demoä¸Šé¢æŽ¨ä¸€ä¸ªæŽ¨è½¦çš„éƒ¨åˆ†ï¼Œå¯åŠ¨æ—¶å¤šåŠ çš„ä¸€ç‚¹åŠ›é“,以åŠè½¬å¼¯æ—¶ä¸¤åªæ‰‹ä¸åŒçš„力é“都相当的好。
å¦å¤–就是精度。看机器人体æ“表演的一段,明显能够看出其手臂在快速的è¿åЍ之åŽä»ç„¶å¯ä»¥å¿«é€Ÿçš„åœåœ¨æ£ç¡®çš„ä½ç½®ä¸Šã€‚这个看起æ¥å¾ˆcool,而且我相信也是有相当难度的。
看它推推车的那一段,真想弄个回æ¥å¸®æˆ‘去超市买东西……
ä¸è¿‡æ®è¯´ï¼Œåˆ¶é€ 一个需è¦106,710,325日元,折åˆäººæ°‘å¸6829460.8元。
HONDA的网站上é¢è¿˜æœ‰æ›´å¤šçš„视频。
最åŽç”¨HONDAçš„ASIMO墙纸上é¢çš„一å¥è¯æ¥æè¿°ï¼šThe power of Dreams。翻译过æ¥å°±æ˜¯ï¼šæ¢¦æƒ³çš„力é‡ã€‚

Randy Pausch是å¡è€åŸºæ¢…隆大å¦çš„æ•™æŽˆï¼Œ2008å¹´7月25æ—¥å› èƒ°è…ºç™ŒåŽ»ä¸–ï¼Œäº«å¹´47å²ã€‚
è™½ç„¶åªæ˜¯å¡è€åŸºæ¢…隆大å¦çš„æ•™æŽˆï¼Œå…¶å®žä»–çš„å¦ç”Ÿå·²ç»é布了全çƒå„åœ°ï¼Œå› ä¸ºä»–è‘—å的最åŽä¸€æ¬¡æ¼”讲,关于儿时的梦想的演讲。
ç¦ç‘ç›’å2F(使用龙芯2F处ç†å™¨ï¼‰å‡ºè´§ï¼ŒåŽ»å¹´å¼€å§‹é¢„å®šçš„æ—¶å€™ç™»è®°äº†ä¸€ä¸‹ï¼ŒäºŽæ˜¯ä¸Šä¸ªæ˜ŸæœŸé¾™æ¢¦å…¬å¸çš„人问我现在è¦ä¸è¦ç¡®è®¤é¢„定。我是很想æžä¸€ä¸ªè¿‡æ¥çŽ©çŽ©çš„ï¼Œä½†æ˜¯ï¼Œä¹°å›žæ¥è¿˜ä¸è§å¾—æœ‰ç©ºæŠ˜è…¾ï¼Œè€Œä¸”æš‚æ—¶é¾™æ¢¦ç›’åæ–è´§ï¼Œæš‚æ—¶å°±æ”¾ä¸€æ”¾äº†ã€‚
å¦ä¸€ä¸ªè¯é¢˜æ˜¯æœ‰äººæŠ˜è…¾å‡ºæ¥çš„Android在Nokia N810上é¢çš„æˆåŠŸå®‰è£…ï¼Œåªæ˜¯Nokia N810也有些å°è´µã€‚
所以……
å°±æ˜¯è¿™æ ·ã€‚
æ¯•ç«Ÿæ ¡å†…ä¸æ˜¯Facebookï¼Œåœ¨å¦æ¥Facebookå¼€å‘APIä¹‹å½¢çš„æ—¶å€™ï¼Œå´æ²¡æœ‰æ²¿ç”¨å¹³å°çš„æ ¸å¿ƒéƒ¨ä»¶ä¹‹ä¸€ï¼šå¼€å‘许å¯ã€‚
为什么一个平å°çš„å¼€å‘许å¯å¦‚æ¤é‡è¦å‘¢ï¼Ÿå› 为开å‘è®¸å¯æ˜¯å¹³å°ä¾›åº”者和开å‘者之间的法律å议。一个设计良好的åè®®å¯ä»¥è®©ä»¥è¿™ä¸ªå¹³å°ä¸ºæ ¸å¿ƒçš„众多应用形æˆä¸€ä¸ªè‰¯æ€§çš„ã€ç›¸äº’促进的庞大的社区甚至是产业。典型的例å就是Mozilla Firefox以åŠå›´ç»•ç€Mozilla通用许å¯è¯å½¢æˆçš„庞大的Mozilla社区,包括数以万计的æ’件程åºã€æ‰©å±•ã€çš®è‚¤ç‰ç‰ã€‚还有GNU通用许å¯ï¼Œä»¥åŠå›´ç»•在GNU Linux周围的庞大的GNU社区。
所有的这些æˆåŠŸçš„è®¸å¯éƒ½æœ‰ä¸€ä¸ªå…±åŒç‰¹ç‚¹ï¼šåœ¨ä¿ç•™éƒ¨åˆ†æƒåˆ©çš„åŒæ—¶ï¼Œä¸å‰¥å¤ºä½œè€…本身对于该作å“的知识产æƒå’Œä»–人利用该作å“赚钱的æƒåˆ©ã€‚Mozillaå°±ä¸ç”¨è¯´äº†ï¼Œå®ƒæ—¢ä¸è¦æ±‚æ’ä»¶å¼€æºï¼Œä¹Ÿè¦æ±‚æ’件必须把知识产æƒè®©æ¸¡ç»™Mozillaï¼Œä½ çˆ±æ€Žä¹ˆæžæ€Žä¹ˆæžã€‚ä¸¥æ ¼å¦‚GPL者,虽然ä¸å…许通过å°é—æºä»£ç 赚钱,但是并没有剥夺他人出售GPL软件的æƒåˆ©ï¼Œæ›´æ²¡æœ‰é™åˆ¶ä½¿ç”¨GPL软件æä¾›æœåŠ¡èµšé’±ï¼Œè€Œä¸”GPL唯一ä¿ç•™çš„æƒåˆ©ä¾¿æ˜¯ä½œè€…çš„çŸ¥è¯†äº§æƒã€‚æ£å› 为有利å¯å›¾ï¼Œèµ„本æ‰ä¼šèšé›†è¿‡æ¥ï¼Œä½ 自己æ‰èƒ½å˜æˆä¸€ä¸ªå¹³å°ã€‚
ä½†æ˜¯åœ¨æ ¡å†…çš„å¼€å‘许å¯å½“ä¸ï¼Œæœ‰ä¸‹é¢çš„一些规定:
2.4
å¦‚å› å…¶æä¾›ç»™æ ¡å†…网的开å‘作å“å˜åœ¨æƒåˆ©ç‘•ç–µæˆ–ä¾µçŠ¯äº†ç¬¬ä¸‰æ–¹çš„åˆæ³•æƒç›Šï¼ˆåŒ…括但ä¸é™äºŽä¸“利æƒã€å•†æ ‡æƒã€è‘—作æƒåŠè‘—作æƒé‚»æŽ¥æƒã€è‚–åƒæƒã€éšç§æƒã€å誉æƒç‰ï¼‰è€Œ
å¯¼è‡´æ ¡å†…ç½‘æˆ–ä¸Žæ ¡å†…ç½‘åˆä½œçš„å…¶ä»–å•ä½é¢ä¸´ä»»ä½•索赔ã€è¯‰è®¼ï¼›æˆ–è€…ä½¿æ ¡å†…ç½‘æˆ–è€…ä¸Žæ ¡å†…ç½‘åˆä½œçš„å…¶ä»–å•ä½å› æ¤éå—任何å誉ã€å£°èª‰æˆ–者财产上的æŸå¤±ï¼Œå¼€å‘者将积æž
地采å–一切å¯èƒ½é‡‡å–的措施,以ä¿è¯æ ¡å†…网åŠä¸Žæ ¡å†…网åˆä½œçš„å…¶ä»–å•ä½å…å—上述索赔ã€è¯‰è®¼çš„å½±å“ã€‚åŒæ—¶å¼€å‘è€…å¯¹æ ¡å†…ç½‘åŠä¸Žæ ¡å†…网åˆä½œçš„å…¶ä»–å•ä½å› æ¤éå—的直接
æˆ–é—´æŽ¥ç»æµŽæŸå¤±è´Ÿæœ‰å…¨éƒ¨çš„èµ”å¿è´£ä»»ï¼›
å…ã€æ’件应用程åºçš„æƒåˆ©å½’å±ž
1.
å¼€å‘è€…åœ¨æ´»åŠ¨æ ¡å†…ç½‘æ’件应用程åºå¼€å‘许å¯è¯ã€ä¸”将其开å‘çš„ä½œå“æä¾›ç»™æ ¡å†…ç½‘ï¼Œå³è§†ä¸ºå…¶å·²ç»å°†åŸºäºŽä½œå“的全部æƒåˆ©ï¼ŒåŒ…括但ä¸é™äºŽæ‰€æœ‰æƒåŠçŸ¥è¯†äº§æƒæ°¸ä¹…性ã€ä¸å¯æ’¤é”€çš„ã€ç‹¬å®¶è®©æ¸¡ç»™æ ¡å†…网。
2.
ç»å¼€å‘者创作完æˆå¹¶æäº¤ç»™æ ¡å†…网的应用程åºï¼Œæ ¡å†…网在全世界范围内享有å…è´¹çš„ã€æ°¸ä¹…性的ã€ä¸å¯æ’¤é”€çš„æƒåˆ©å’Œè®¸å¯ï¼Œä»¥ä½¿ç”¨ã€å¤åˆ¶ã€å‡ºç‰ˆã€å‘行ã€ä»¥åŽŸæœ‰æˆ–å…¶ä»–
å½¢å¼è¿›è¡Œæ”¹ç¼–ã€è½¬è½½ã€ç¿»è¯‘ã€ä¼ æ’ã€è¡¨æ¼”和展示æ¤ç‰å†…å®¹ï¼ˆæ•´ä½“æˆ–éƒ¨åˆ†ï¼‰ã€‚åŒæ—¶å¼€å‘者承诺,ä¸å°±ä¸Šè¿°ä½œå“以åŠä¸Šè¿°ä½œå“的改编作å“对任何第三方进行任何形å¼çš„许
坿ˆ–授æƒä½¿ç”¨ã€‚
3. ç»å¼€å‘者创作而产生的文本ã€å›¾ç‰‡ã€å›¾å½¢ã€éŸ³é¢‘å’Œ/
或视频ç‰èµ„料的所有æƒåŠçŸ¥è¯†äº§æƒå½’å±žäºŽæ ¡å†…ç½‘ï¼Œæœªç»æ ¡å†…ç½‘åŒæ„,开å‘者ä¿è¯ä¸ä»¥ä»»ä½•å½¢å¼ç›´æŽ¥æˆ–间接å‘å¸ƒã€æ’放ã€å‡ºäºŽæ’放或å‘布目的而改编或å†å‘è¡Œï¼Œæˆ–è€…ç”¨äºŽå…¶ä»–ä»»ä½•å•†ä¸šç›®çš„ã€‚åŒæ—¶ä¿è¯ä¸è®¸å¯ä»»ä½•第三方从事上述行为。
[….]
å…«ã€å…责声明
1ã€æ ¡å†…网有æƒåœ¨æå‰é€šçŸ¥æˆ–ä¸é€šçŸ¥çš„æƒ…况下以任何ç†ç”±éšæ—¶ä¿®æ”¹ã€é™åˆ¶ã€æš‚åœæˆ–åœæ¢å…¨éƒ¨æˆ–部分开å‘者æœåŠ¡ï¼Œè€Œä¸”å¯¹äºŽä»»ä½•æ¤ç±»ä¿®æ”¹ã€é™åˆ¶ã€æš‚åœæˆ–åœæ¢è¡Œä¸ºï¼Œæ ¡å†…网对开å‘者或任何第三方ä¸è´Ÿä»»ä½•责任。
简å•çš„è¯´ï¼šåšæ’件的开å‘è€…ï¼Œä½ ä¸æ‹¥æœ‰å¯¹äºŽè¯¥æ’件的知识产æƒï¼Œä½ 的知识产æƒå·²ç»è®©æ¸¡ç»™äº†æ ¡å†…ï¼›ä½†æ˜¯ï¼Œå‡ºäº†é—®é¢˜ä½ è¦è´Ÿè´£ï¼Œéœ€è¦èµ”å¿ä½ 也è¦è´Ÿè´£ã€‚
è¿™æ ·åªä¼šå“èµ°å¼€å‘者,平å°ä¸æ˜¯è¿™ä¹ˆåšçš„。
但是å过æ¥è¯´ï¼Œæ ¡å†…æœ‰åšæˆå¹³å°çš„æ‰“ç®—ä¹ˆï¼Ÿææ€•没有。FacebookåšAPI目的很大程度上是为了把自己平å°åŒ–,让更多的网站å¯ä»¥é€šè¿‡è‡ªå·±çš„ç”¨æˆ·åŸºç¡€æ¥æŽ¨å¹¿ï¼Œç„¶åŽå¤§å®¶ä¸€èµ·èµšé’±ï¼Œå¯»æ±‚的是一ç§Win-Winçš„å¯èƒ½æ€§ã€‚æ ¡å†…åˆ™èµ°äº†å‡ ä¹Žå®Œå…¨ç›¸å的一æ¡è·¯ï¼Œçœ‹èµ·æ¥æ ¡å†…想è¦é€šè¿‡è¿™ç§æ–¹å¼æ¥å¼¥è¡¥è‡ªå·±åˆ›æ–°åŒ®ä¹çš„问题,但是方å¼é”™äº†â€”—想è¦ä¸–ç•Œä¸Šçš„èªæ˜Žäººä¸ºä½ æœåŠ¡ï¼Œä½ å¿…é¡»ç»™ä»–ä»¬ç‚¹ä»€ä¹ˆï¼Œè€Œä¸æ˜¯ä»Žä»–们那里抢过æ¥ã€‚
æ ¡å†…ç§‰æ‰¿ç€å®ƒä¸€è´¯çš„é£Žæ ¼ï¼Œç´§éšè€å¤§å“¥Facebook的脚æ¥ï¼Œä»Šå¤©ä¹Ÿå…¬å¸ƒäº†å…¶API:
http://app.xiaonei.com/developers/home.do
简å•çœ‹äº†ä¸€ä¸‹ï¼Œæžœç„¶æ˜¯ä¸€è´¯çš„æ ¡å†…é£Žæ ¼ï¼šåŸºæœ¬ä¸Šå®Œå…¨æ˜¯Facebook API的翻版。
当å‰çš„版本当ä¸ï¼Œè¿˜æ²¡æœ‰Facebookçš„FQL(Facebook Query Language)和FBJS(Facebook Javascriptï¼‰ï¼Œä½†æ˜¯å·²ç»æœ‰äº†REST-like APIå’ŒFBML(Facebook Markup Language)的翻版XNML(Xiaonei Markup Language)。
å°½ç®¡æ˜¯æ–°å…¬å¼€ï¼Œä½†æ˜¯æ®æœ‹å‹é‚£é‡Œå¾—æ¥çš„资料,两个礼拜å‰å°±å·²ç»å¯¹ä¸€äº›åˆä½œä¼™ä¼´å…¬å¼€äº†ï¼Œæ‰€ä»¥è™½ç„¶å®˜æ–¹çš„APIå‘å¸ƒå®šåœ¨æ˜Žå¤©ï¼Œä»Šå¤©å·²ç»æœ‰äº†å¾ˆå¤šçš„应用在上é¢äº†ã€‚大多数应用都ä»ç„¶ä»¥å°†äººä»¬è”ç³»åœ¨ä¸€èµ·ä¸ºç›®çš„ï¼Œè¿˜æœ‰ä¸€äº›å°æ¸¸æˆçš„æŽ’行榜ç‰ç‰ï¼Œè¿˜æœ‰å°±æ˜¯ä¸ºè‡ªå·±çš„ç½‘ç«™åšæŽ¨å¹¿çš„stub page。
总之还ä¸é”™ã€‚
æ—¢ç„¶æœ‰äººé—®ï¼Œæˆ‘å°±å†æŠŠä»¥å‰Mozillaå‘ç»™æˆ‘çš„ä¿¡é‡æ–°è´´ä¸€ä¸‹ã€‚其实就是以å‰å†™è¿‡çš„ä¸€ä¸ªå°æ’件,在Firefox 3.0 Beta1出æ¥çš„æ—¶å€™ï¼Œåœ¨ç¬¬ä¸€æ—¶é—´è·‘了一é回归测试å‘现没问题就把Firefox的支æŒç‰ˆæœ¬æ”¹æˆäº†3.0b1而已,也没åšä»€ä¹ˆå¤ªå¤šçš„工作。
Dear Add-on Developer,
Thank you and congratulations for updating your add-on with Firefox 3!
Since you have already updated your add-on to the latest Firefox 3
beta, it is time to claim your Mozilla Add-ons Developer T-shirt. If
you would like to receive the shirt, please fill out the following form
by March 18th:
 https://addons.mozilla.org/en-US/firefox/developers/tshirtrequest
Additionally, if your add-on is one of the top 50 most used add-ons by
Firefox 3 users on the Firefox 3 release day, Mozilla will offer to
sponsor a party (for an amount Mozilla will determine) for you and your
friends. That is, Mozilla will chip in for you and your friends to
celebrate your tools success! Mozilla will be in contact with the top
add-ons shortly after the Firefox 3 release.
Thank you for keeping your extension up to date as we get close to the Firefox 3 release!
Regards,
-Add-ons Admins
ä¸Šä¸¤å¼ ppã€‚çŸ¥é“æˆ‘çš„size的,å¯ä»¥ä¼°è®¡å‡ºæ¥è¿™ä¸ªè¡£æœæœ‰å¤šå¤§äº†ã€‚
æ£é¢ï¼š

背é¢ï¼š

最åŽå†ä½œä¸ªå¹¿å‘Šï¼Œè™½ç„¶Firefox 3å‘布了,但是让æ¯ä¸ªæ ‡ç¾é¡µå…·æœ‰è‡ªå·±çš„输入法状æ€çš„åŠŸèƒ½è¿˜æ˜¯æ²¡æœ‰åŠ ä¸Šã€‚æ‰€ä»¥ï¼Œå¤§å®¶ç»§ç»ç”¨TabIMSwitchå§ã€‚ 🙂
今天下åˆå…¬å¸çš„ä¿å®‰æ‹¿ç€ä¸€åŒ…ä¸œè¥¿åˆ°æˆ‘é‚£é‡Œé—®æˆ‘æ˜¯ä¸æ˜¯æˆ‘的邮件,上书Tæ¤ï¼Œå‘件地是美国山景城。原æ¥Tæ¤å¯„到了,终于寄到了……
打开看了一下,å‘现犯了一个严é‡çš„错误:我忘了Mozilla是在美国的公å¸ï¼Œæ‰€ä»¥Tæ¤ä¹Ÿæ˜¯æŒ‰ç…§ç¾Žå›½å°ºç æ¥çš„ï¼Œç„¶åŽæˆ‘å´æŒ‰ç…§ä¸å›½Tæ¤çš„å°ºç æ¥å®šçš„,一件XL,打开å‘现如åŒä¸€ä»¶å·¨å¤§çš„ç¡è¡£ï¼Œè€ç¾Žçš„size真的很大很大……
Anyway,衣æœè¿˜ä¸é”™ã€‚
Made in Nicaragua.
本æ¥å¦‚æžœä¸è¯´â€œæ‚¨çš„叿ˆ·â€äº‘äº‘ï¼Œæˆ‘è¿˜ä¸æ‹…心。
