テスト

e11c99ec anonymous 2015-11-20 21:18 1448021893.jpg (28KB)

5cecd070 anonymous 2015-11-20 21:21 1448022064.jpg (204KB)

97251d4d anonymous 2015-11-20 21:23
>>5cecd070
f9b7407c anonymous 2015-11-21 07:50
test &
e0b4ed5c anonymous 2015-11-21 08:13
test15
0e07b1ca anonymous 2015-11-21 08:14
test16
4ea4b087 anonymous [test1] ftpMklnqukP 2015-11-21 22:46
        port0テスト  
aa13a98c anonymous 2015-11-21 23:06
>>4ea4b087
キタ〜
4968f988 anonymous 2015-11-21 23:27
もげ
548b548e anonymous 2015-11-21 23:27
>>4968f988
はげ
6a971a2a anonymous 2015-11-21 23:29
>>548b548e
まげ
6d092226 anonymous 2015-11-22 03:50
<hr>
7b0f655e anonymous 2015-11-22 15:44
@markdown

# テスト

```
printf("hello world")
```
1. test1
1. test2

* ネズミ
* 牛
* トラ
79f6a396 anonymous vdsv8i7lEuk 2015-11-22 15:49
>>82a72755
>>0b98a542
自分のマシンの時計を来年の正月に設定して書き込んでみたんだ
最初の投稿は設定をミスってたけど、二回目はちゃんと来年の日付で投稿できた
他のサーバーでは見当たらない所を見ると、日付が著しく乖離している書き込みは取得しない仕様みたい
ちなみに私のサーバーでは普通に投稿されてる (`・ω・)っ>>d608f71c
来年になったら同期するかな?
530bf731 anonymous 2015-11-22 15:51
@markdown
``` go
package main

import (
        "fmt"
        "github.com/russross/blackfriday"
)

func main() {
        input := `
        1. test
        2. test
        `
        unsafe := blackfriday.MarkdownCommon([]byte(input))
        fmt.Println(string(unsafe))
}
```
e0502c90 anonymous 2015-11-22 16:01
@markdown

Name    | Age
--------|------
Bob     | 27
Alice   | 23
9a11be69 anonymous 2015-11-22 16:03
@markdown

* ねー
* うし
* とらー

_もうだめぽ_

*もうめたぼ*
cedfbb92 anonymous 2015-11-22 16:04
@markdown
>> 引用
926bb165 anonymous 2015-11-22 16:07
@markdown
>引用
http://www.google.com

[ぐーぐる](http://www.google.com)
c5894928 anonymous 2015-11-22 16:13
@markdown
# Gou(合)

## 特徴
* Go言語で開発
* sakuと設定ファイル互換
* cacheは非互換(sakuで使ってるファイルの一部を使っていないため)だが変換コマンドで対応可能
* ポータブル:各プラットフォーム別に実行ファイル1個
* 省メモリ(ざっくりsakuの7割~5割くらい?)
* 速度は早いかもしれない。

## 新規に始める
1.  [ここ](https://github.com/shingetsu-gou/shingetsu-gou/releases)から自分のOSの実行バイナリダウンロード、展開
3. ./shingetsu-gouで実行
4. ブラウザでhttp://localhost:8000/をアクセス
5. uPnP/NAT-PMPでポートを自動で開ける努力はしますが、不可の場合、スレに書き込めません。朔同様自分でポートを開けてください。

## 朔から移行
1.  [ここ](https://github.com/shingetsu-gou/shingetsu-gou/releases)から自分のOSの実行バイナリダウンロード、展開
2. 合を実行するディレクトリに実行ファイル(shingetsu-gou)と、朔のcacheディレクトリとmessage-*.txtを除くfileディレクトリをコピー(朔のcache/fileディレクトリは別に残しておくことを推奨します)
3. ./shingetsu-gouで実行

## 合のキャッシュを朔で使う(朔に戻る)
1. 合のキャッシュをバックアップ(推奨)
2. 合の実行ディレクトリで./shingetsu-gou --sakurifice実行
3. 合のcacheディレクトリとfileディレクトリを朔のディレクトリにコピー
ea18ba9c anonymous 2015-11-22 16:59
スパムかと思ったら reddit 的な機能を追加したんだね
01a8688b anonymous 2015-11-23 07:10
hoge
c79fde17 anonymous 2015-11-23 08:31
hage
7bb72312 anonymous 2015-11-23 15:27
testtest
ebdfc32d anonymous 2015-11-23 22:08
 http://localhost:8000/debug/profile>a.svg
 http://localhost:8000/debug/heap>b.svg
19c82b6a anonymous 2015-11-23 22:11
http://localhost:8000/debug/profile>a.svg
http://localhost:8000/debug/heap>b.svg
の結果を上げてもらえると、もっと嬉しい。 
6017e094 anonymous 2015-11-23 22:16
http://
http://
5fc49461 anonymous 2015-11-23 22:18
g http://
14709f24 anonymous 2015-11-23 22:30
github の最新を clone して、設定ファイルを適当にしつらえて、sakuフォルだ内で実行すると jinja2 のインポートでエラーが出る。

~/shingetsu/saku $ ./saku
Traceback (most recent call last):
  File "./saku", line 35, in <module>
    import shingetsu.daemon as daemon
  File "/home/my/shingetsu/saku/shingetsu/daemon.py", line 35, in <module>
    from . import httpd
  File "/home/my/shingetsu/saku/shingetsu/httpd.py", line 37, in <module>
    from . import LightCGIHTTPServer
  File "/home/my/shingetsu/saku/shingetsu/LightCGIHTTPServer.py", line 40, in <module>
    from . import admin_cgi, server_cgi, gateway_cgi, thread_cgi
  File "/home/my/shingetsu/saku/shingetsu/admin_cgi.py", line 35, in <module>
    from . import gateway
  File "/home/my/shingetsu/saku/shingetsu/gateway.py", line 45, in <module>
    from .template import Template
  File "/home/my/shingetsu/saku/shingetsu/template.py", line 33, in <module>
    import jinja2
  File "/home/my/shingetsu/saku/jinja2/__init__.py", line 33, in <module>
    from jinja2.environment import Environment, Template
  File "/home/my/shingetsu/saku/jinja2/environment.py", line 13, in <module>
    from jinja2 import nodes
  File "/home/my/shingetsu/saku/jinja2/nodes.py", line 18, in <module>
    from jinja2.utils import Markup, MethodType, FunctionType
  File "/home/my/shingetsu/saku/jinja2/utils.py", line 585, in <module>
    from markupsafe import Markup, escape, soft_unicode
  File "/usr/local/lib/python3.2/dist-packages/markupsafe/__init__.py", line 70
    def __new__(cls, base=u'', encoding=None, errors='strict'):
                            ^
SyntaxError: invalid syntax

$ python3 -V
Python 3.2.3

で、環境は Raspbian wheezy on Raspberry Pi。こは、いかに。
23499796 anonymous [test1] ftpMklnqukP 2015-11-23 22:32
スパムでしょうか
テストでしょうか

また、合のバグでしょうか(恐
dae9baa7 anonymous 2015-11-23 22:34
あ、スパムフィルタのテストなので気にしないでください。
43182f1f anonymous 2015-11-24 11:39
[gist:3c14e3b9f6341a3b9650]
baf0b411 anonymous 2015-11-24 13:26
[gist:a25b958192eadb4cef50]
99a9e151 anonymous 2015-11-24 13:28
多分gistの埋め込みは対応してない。
e95a5886 anonymous 2015-11-25 10:02
test 11/25
5d1e58ea anonymous 2015-11-25 10:06
test 11/25 2
1380896d anonymous 2015-11-25 11:07
>>c21ae834
まじで?
e2e756de anonymous 2015-11-25 15:16
テスト@gou0.0.6
f8aa385c anonymous 2015-11-27 08:12
testtesttest
9c5ed483 anonymous 2015-11-27 09:08
    @markdown
# Gou(合)

## 特徴
2f8d4cfb anonymous 2015-11-27 09:10
@markdown    
# Gou(合)

## 特徴
6581bf37 anonymous 2015-11-27 09:11
@markdown
# Gou(合)

## 特徴
4dfe6eec anonymous 2015-11-27 09:14
合の@markdownタグのマッチングパターンは

@markdown
    ^([^\n]*\n)*@markdown\w*\n

か。なるほど。
5aae9f06 anonymous 2015-11-27 09:14
あれ?
b8771712 anonymous 2015-11-27 09:15
@markdown
合の@markdownタグのマッチングパターンは

    ^([^\n]\n)@markdown\w*\n

か。なるほど。
c10ba5f0 anonymous 2015-11-27 09:16
@markdown
合の@markdownタグのマッチングパターンは

@markdown
    ^([^\n]*\n)*@markdown\w*\n

か。なるほど。
c1f9e944 anonymous 2015-11-27 09:18
合のmarkdownタグのマッチングパターンは

@markdown
    ^([^\n]*\n)*@markdown\w*\n

か。なるほど。
4ba3c1ac anonymous 2015-11-27 09:20
こっちのほうがgistタグより使いでがあるよな。
64ccb000 anonymous 2015-11-27 09:22
@markdown
勘違いしてた。合のmarkdownタグのマッチングパターンは

    ^@markdown\w*\n

かな。
ae9ec42b anonymous 2015-11-27 11:32
##This is a test

Code blocks must be indented by 4 whitespaces.
Python-Markdown has a auto-guess function which works
pretty well:

    print("Hello, World")
    # some comment
    for letter in "this is a test":
        print(letter)

In cases where Python-Markdown has problems figuring out which
programming language we use, we can also add the language-tag
explicitly. One way to do this would be:

    :::python
    print("Hello, World")

or we can highlight certain lines to
draw the reader's attention:

    :::python hl_lines="1 5"
    print("highlight me!")
    # but not me!
    for letter in "this is a test":
        print(letter)
    # I want to be highlighted, too!
1ca97072 anonymous 2015-11-27 11:32
@markdown
##This is a test

Code blocks must be indented by 4 whitespaces.
Python-Markdown has a auto-guess function which works
pretty well:

    print("Hello, World")
    # some comment
    for letter in "this is a test":
        print(letter)

In cases where Python-Markdown has problems figuring out which
programming language we use, we can also add the language-tag
explicitly. One way to do this would be:

    :::python
    print("Hello, World")

or we can highlight certain lines to
draw the reader's attention:

    :::python hl_lines="1 5"
    print("highlight me!")
    # but not me!
    for letter in "this is a test":
        print(letter)
    # I want to be highlighted, too!
d2845ca8 anonymous 2015-11-27 14:36
@markdown
The HTML specification
is maintained by the W3C.

*[HTML]: Hyper Text Markup Language
*[W3C]:  World Wide Web Consortium
a5d2168e anonymous 2015-11-27 14:44
@markdown
{: #someid .someclass somekey='some value' }

This is a paragraph.
{: #an_id .a_class }

A setext style header {: #setext}
=================================

### A hash style header ### {: #hash }

[link](http://example.com){: class="foo bar" title="Some title!" }
df320642 anonymous 2015-11-27 14:49
@markdown
Apple
:   Pomaceous fruit of plants of the genus Malus in
    the family Rosaceae.

Orange
:   The fruit of an evergreen tree of the genus Citrus.
51a188eb anonymous 2015-11-27 14:56
This is a paragraph introducing:

~~~~~~~~~~~~~~~~~~~~
a one-line code block
~~~~~~~~~~~~~~~~~~~~

~~~~{.python}
# python code
~~~~

~~~~.html
<p>HTML Document</p>
~~~~

```python
# more python code
```

~~~~{.python hl_lines="1 3"}
# This line is emphasized
# This line isn't
# This line is emphasized
~~~~
f87a4565 anonymous 2015-11-27 14:57
@markdown
This is a paragraph introducing:

~~~~~~~~~~~~~~~~~~~~
a one-line code block
~~~~~~~~~~~~~~~~~~~~

~~~~{.python}
# python code
~~~~

~~~~.html
<p>HTML Document</p>
~~~~

```python
# more python code
```

~~~~{.python hl_lines="1 3"}
# This line is emphasized
# This line isn't
# This line is emphasized
~~~~
0bce0965 anonymous 2015-11-27 21:38
@markdown
~~~~.html
<p>HTML Document</p>
~~~~
dd2bc391 anonymous 2015-11-27 21:57
@markdown
Footnotes[^1] have a label[^@#$%] and the footnote's content.

[^1]: This is a footnote content.
[^@#$%]: A footnote on the label: "@#$%".
39c56a79 anonymous 2015-11-27 22:01
@markdown
First Header  | Second Header
------------- | -------------
Content Cell  | Content Cell
Content Cell  | Content Cell
765ae5cd anonymous 2015-11-27 22:04
@markdown
Text with double__underscore__words.

__Strong__ still works.

__this__works__too__.
bd3c333e anonymous 2015-11-27 22:16
[TOC]

# Header 1

## Header 2
f84f1550 anonymous 2015-11-27 22:16
:smile:

:disappointed;

:angry:
d5a800a3 anonymous 2015-11-27 22:16
:disappointed:
559a9160 anonymous 2015-11-27 22:16
@markdown
[TOC]

# Header 1

## Header 2
aa85299f anonymous 2015-11-27 22:19
もうすぐ :christmas_tree:
3a96e119 anonymous 2015-11-27 22:31
@markdown
    #コードの例(Python)
    def html_format(self, plain, appli, title, absuri=False):
        buf = plain.replace("<br>", "\n")
        tmp = ""
        m = re.match('^@markdown([ \t]+[^\n]*)?\n(.*)$', buf, re.DOTALL)
        if m:
            tags = ['strong', 'sup', 'hr', 'dd', 'dl', 'dt', 'abbr', 'div', 'span', 'p', 'br', 'h1', 'h2', 'h3', 'h4', 'h5', 'pre', 'code', 'ol', 'ul', 'li', 'table', 'thead', 'tbody', 'tr', 'th', 'td', 'em', 'a']
            extensions = [
                'markdown.extensions.extra',
                'markdown.extensions.admonition',
                'markdown.extensions.codehilite',
                'markdown.extensions.headerid',
                'markdown.extensions.meta',
                'markdown.extensions.nl2br',
                'markdown.extensions.sane_lists',
                'markdown.extensions.smarty',
                'markdown.extensions.toc',
                # 'markdown.extensions.wikilinks',
            ]
5f921ca9 anonymous 2015-11-27 22:39
@markdown
:::python
    def html_format(self, plain, appli, title, absuri=False):
        buf = plain.replace("<br>", "\n")
        tmp = ""
        m = re.match('^@markdown([ \t]+[^\n]*)?\n(.*)$', buf, re.DOTALL)
        if m:
            tags = ['strong', 'sup', 'hr', 'dd', 'dl', 'dt', 'abbr', 'div', 'span', 'p', 'br', 'h1', 'h2', 'h3', 'h4', 'h5', 'pre', 'code', 'ol', 'ul', 'li', 'table', 'thead', 'tbody', 'tr', 'th', 'td', 'em', 'a']
            extensions = [
                'markdown.extensions.extra',
                'markdown.extensions.admonition',
                'markdown.extensions.codehilite',
                'markdown.extensions.headerid',
                'markdown.extensions.meta',
                'markdown.extensions.nl2br',
                'markdown.extensions.sane_lists',
                'markdown.extensions.smarty',
                'markdown.extensions.toc',
                # 'markdown.extensions.wikilinks',
            ]
            attrs = {
                '*': ['class'],
                'a': ['href', 'rel'],
                'img': ['src', 'alt'],
                'abbr': ['title'],
            }
            tmp = re.sub('<', '<', m.group(2))
            tmp = re.sub('>', '>', tmp)
            tmp = bleach.clean(markdown.markdown(tmp, extensions=extensions), attributes=attrs, tags=tags)
e6f79e6a anonymous 2015-11-27 22:42
@markdown
#!python
    def html_format(self, plain, appli, title, absuri=False):
        buf = plain.replace("<br>", "\n")
        tmp = ""
        m = re.match('^@markdown([ \t]+[^\n]*)?\n(.*)$', buf, re.DOTALL)
        if m:
            tags = ['strong', 'sup', 'hr', 'dd', 'dl', 'dt', 'abbr', 'div', 'span', 'p', 'br', 'h1', 'h2', 'h3', 'h4', 'h5', 'pre', 'code', 'ol', 'ul', 'li', 'table', 'thead', 'tbody', 'tr', 'th', 'td', 'em', 'a']
            extensions = [
                'markdown.extensions.extra',
                'markdown.extensions.admonition',
                'markdown.extensions.codehilite',
                'markdown.extensions.headerid',
                'markdown.extensions.meta',
                'markdown.extensions.nl2br',
                'markdown.extensions.sane_lists',
                'markdown.extensions.smarty',
                'markdown.extensions.toc',
                # 'markdown.extensions.wikilinks',
            ]
            attrs = {
                '*': ['class'],
                'a': ['href', 'rel'],
                'img': ['src', 'alt'],
                'abbr': ['title'],
            }
            tmp = re.sub('<', '<', m.group(2))
            tmp = re.sub('>', '>', tmp)
            tmp = bleach.clean(markdown.markdown(tmp, extensions=extensions), attributes=attrs, tags=tags)
04521ab5 anonymous 2015-11-27 22:46
    :::
    def html_format(self, plain, appli, title, absuri=False):
        buf = plain.replace("<br>", "\n")
        tmp = ""
        m = re.match('^@markdown([ \t]+[^\n]*)?\n(.*)$', buf, re.DOTALL)
        if m:
            tags = ['strong', 'sup', 'hr', 'dd', 'dl', 'dt', 'abbr', 'div', 'span', 'p', 'br', 'h1', 'h2', 'h3', 'h4', 'h5', 'pre', 'code', 'ol', 'ul', 'li', 'table', 'thead', 'tbody', 'tr', 'th', 'td', 'em', 'a']
            extensions = [
                'markdown.extensions.extra',
                'markdown.extensions.admonition',
                'markdown.extensions.codehilite',
                'markdown.extensions.headerid',
                'markdown.extensions.meta',
                'markdown.extensions.nl2br',
                'markdown.extensions.sane_lists',
                'markdown.extensions.smarty',
                'markdown.extensions.toc',
                # 'markdown.extensions.wikilinks',
            ]
            attrs = {
                '*': ['class'],
                'a': ['href', 'rel'],
                'img': ['src', 'alt'],
                'abbr': ['title'],
            }
            tmp = re.sub('<', '<', m.group(2))
            tmp = re.sub('>', '>', tmp)
            tmp = bleach.clean(markdown.markdown(tmp, extensions=extensions), attributes=attrs, tags=tags)
d3e82b47 anonymous 2015-11-27 22:46
@markdown
    :::
    def html_format(self, plain, appli, title, absuri=False):
        buf = plain.replace("<br>", "\n")
        tmp = ""
        m = re.match('^@markdown([ \t]+[^\n]*)?\n(.*)$', buf, re.DOTALL)
        if m:
            tags = ['strong', 'sup', 'hr', 'dd', 'dl', 'dt', 'abbr', 'div', 'span', 'p', 'br', 'h1', 'h2', 'h3', 'h4', 'h5', 'pre', 'code', 'ol', 'ul', 'li', 'table', 'thead', 'tbody', 'tr', 'th', 'td', 'em', 'a']
            extensions = [
                'markdown.extensions.extra',
                'markdown.extensions.admonition',
                'markdown.extensions.codehilite',
                'markdown.extensions.headerid',
                'markdown.extensions.meta',
                'markdown.extensions.nl2br',
                'markdown.extensions.sane_lists',
                'markdown.extensions.smarty',
                'markdown.extensions.toc',
                # 'markdown.extensions.wikilinks',
            ]
            attrs = {
                '*': ['class'],
                'a': ['href', 'rel'],
                'img': ['src', 'alt'],
                'abbr': ['title'],
            }
            tmp = re.sub('<', '<', m.group(2))
            tmp = re.sub('>', '>', tmp)
            tmp = bleach.clean(markdown.markdown(tmp, extensions=extensions), attributes=attrs, tags=tags)
21a54170 anonymous 2015-11-27 22:47
@markdown
    :::python
    def html_format(self, plain, appli, title, absuri=False):
        buf = plain.replace("<br>", "\n")
        tmp = ""
        m = re.match('^@markdown([ \t]+[^\n]*)?\n(.*)$', buf, re.DOTALL)
        if m:
            tags = ['strong', 'sup', 'hr', 'dd', 'dl', 'dt', 'abbr', 'div', 'span', 'p', 'br', 'h1', 'h2', 'h3', 'h4', 'h5', 'pre', 'code', 'ol', 'ul', 'li', 'table', 'thead', 'tbody', 'tr', 'th', 'td', 'em', 'a']
            extensions = [
                'markdown.extensions.extra',
                'markdown.extensions.admonition',
                'markdown.extensions.codehilite',
                'markdown.extensions.headerid',
                'markdown.extensions.meta',
                'markdown.extensions.nl2br',
                'markdown.extensions.sane_lists',
                'markdown.extensions.smarty',
                'markdown.extensions.toc',
                # 'markdown.extensions.wikilinks',
            ]
            attrs = {
                '*': ['class'],
                'a': ['href', 'rel'],
                'img': ['src', 'alt'],
                'abbr': ['title'],
            }
            tmp = re.sub('<', '<', m.group(2))
            tmp = re.sub('>', '>', tmp)
            tmp = bleach.clean(markdown.markdown(tmp, extensions=extensions), attributes=attrs, tags=tags)
a2f8b6d3 anonymous 2015-11-27 22:49
@markdown
   :::c
        inline void ConvertRaw12CharTripcodeIntoDisplayFormat(unsigned int *rawTripcodeArray, unsigned char *tripcode)
        {
                tripcode[0]  = base64CharTable[ rawTripcodeArray[0] >> 26                                    ];
                tripcode[1]  = base64CharTable[(rawTripcodeArray[0] >> 20                            ) & 0x3f];
                tripcode[2]  = base64CharTable[(rawTripcodeArray[0] >> 14                            ) & 0x3f];
                tripcode[3]  = base64CharTable[(rawTripcodeArray[0] >>  8                            ) & 0x3f];
                tripcode[4]  = base64CharTable[(rawTripcodeArray[0] >>  2                            ) & 0x3f];
                tripcode[5]  = base64CharTable[(rawTripcodeArray[1] >> 28 | rawTripcodeArray[0] <<  4) & 0x3f];
                tripcode[6]  = base64CharTable[(rawTripcodeArray[1] >> 22                            ) & 0x3f];
                tripcode[7]  = base64CharTable[(rawTripcodeArray[1] >> 16                            ) & 0x3f];
                tripcode[8]  = base64CharTable[(rawTripcodeArray[1] >> 10                            ) & 0x3f];
                tripcode[9]  = base64CharTable[(rawTripcodeArray[1] >>  4                            ) & 0x3f];
                tripcode[10] = base64CharTable[(rawTripcodeArray[1] <<  2 | rawTripcodeArray[2] >> 30) & 0x3f];
                tripcode[11] = base64CharTable[(rawTripcodeArray[2] >> 24                            ) & 0x3f];
        }
b41f3b14 anonymous 2015-11-27 22:50
@markdown
    :::c
        inline void ConvertRaw12CharTripcodeIntoDisplayFormat(unsigned int *rawTripcodeArray, unsigned char *tripcode)
        {
                tripcode[0]  = base64CharTable[ rawTripcodeArray[0] >> 26                                    ];
                tripcode[1]  = base64CharTable[(rawTripcodeArray[0] >> 20                            ) & 0x3f];
                tripcode[2]  = base64CharTable[(rawTripcodeArray[0] >> 14                            ) & 0x3f];
                tripcode[3]  = base64CharTable[(rawTripcodeArray[0] >>  8                            ) & 0x3f];
                tripcode[4]  = base64CharTable[(rawTripcodeArray[0] >>  2                            ) & 0x3f];
                tripcode[5]  = base64CharTable[(rawTripcodeArray[1] >> 28 | rawTripcodeArray[0] <<  4) & 0x3f];
                tripcode[6]  = base64CharTable[(rawTripcodeArray[1] >> 22                            ) & 0x3f];
                tripcode[7]  = base64CharTable[(rawTripcodeArray[1] >> 16                            ) & 0x3f];
                tripcode[8]  = base64CharTable[(rawTripcodeArray[1] >> 10                            ) & 0x3f];
                tripcode[9]  = base64CharTable[(rawTripcodeArray[1] >>  4                            ) & 0x3f];
                tripcode[10] = base64CharTable[(rawTripcodeArray[1] <<  2 | rawTripcodeArray[2] >> 30) & 0x3f];
                tripcode[11] = base64CharTable[(rawTripcodeArray[2] >> 24                            ) & 0x3f];
        }
69fc9852 anonymous 2015-11-27 23:41
```go
package main
import fmt
func main(){
  fmt.Println("hello")
}
```
dbb1381e anonymous 2015-11-27 23:42
@markdown
```go
package main
import fmt
func main(){
  fmt.Println("hello")
}
```
4eb703ea anonymous 2015-11-28 00:15
@markdown

* 123
>>dbb1381e
97b9937f anonymous 2015-11-28 00:16
@markdown
* >>4eb703ea
b29be597 anonymous 2015-11-28 05:18 1448655527.jpg (137KB)

974efddd anonymous 2015-11-28 07:40
webブラウザから書き込みテスト@gou
9c72aa75 テスト [test] 2015-11-28 07:58
テスト
97024cf7 anonymous 2015-11-28 08:07
tuboroidから@gou
3cfb8ed4 anonymous 2015-11-28 08:10
てすてす
07c5de85 anonymous 2015-11-28 08:35
gou0.0.8
webブラウザから
4d86c8bc anonymous 2015-11-28 08:44
        :::go
        // An implementation of Conway's Game of Life.
        package main

        import (
                "bytes"
                "fmt"
                "math/rand"
                "time"
        )

        // Field represents a two-dimensional field of cells.
        type Field struct {
                s    [][]bool
                w, h int
        }

        // NewField returns an empty field of the specified width and height.
        func NewField(w, h int) *Field {
                s := make([][]bool, h)
                for i := range s {
                        s[i] = make([]bool, w)
                }
                return &Field{s: s, w: w, h: h}
        }

        // Set sets the state of the specified cell to the given value.
        func (f *Field) Set(x, y int, b bool) {
                f.s[y][x] = b
        }

        // Alive reports whether the specified cell is alive.
        // If the x or y coordinates are outside the field boundaries they are wrapped
        // toroidally. For instance, an x value of -1 is treated as width-1.
        func (f *Field) Alive(x, y int) bool {
                x += f.w
                x %= f.w
                y += f.h
                y %= f.h
                return f.s[y][x]
        }

        // Next returns the state of the specified cell at the next time step.
        func (f *Field) Next(x, y int) bool {
                // Count the adjacent cells that are alive.
                alive := 0
                for i := -1; i <= 1; i++ {
                        for j := -1; j <= 1; j++ {
                                if (j != 0 || i != 0) && f.Alive(x+i, y+j) {
                                        alive++
                                }
                        }
                }
                // Return next state according to the game rules:
                //   exactly 3 neighbors: on,
                //   exactly 2 neighbors: maintain current state,
                //   otherwise: off.
                return alive == 3 || alive == 2 && f.Alive(x, y)
        }

        // Life stores the state of a round of Conway's Game of Life.
        type Life struct {
                a, b *Field
                w, h int
        }

        // NewLife returns a new Life game state with a random initial state.
        func NewLife(w, h int) *Life {
                a := NewField(w, h)
                for i := 0; i < (w * h / 4); i++ {
                        a.Set(rand.Intn(w), rand.Intn(h), true)
                }
                return &Life{
                        a: a, b: NewField(w, h),
                        w: w, h: h,
                }
        }

        // Step advances the game by one instant, recomputing and updating all cells.
        func (l *Life) Step() {
                // Update the state of the next field (b) from the current field (a).
                for y := 0; y < l.h; y++ {
                        for x := 0; x < l.w; x++ {
                                l.b.Set(x, y, l.a.Next(x, y))
                        }
                }
                // Swap fields a and b.
                l.a, l.b = l.b, l.a
        }

        // String returns the game board as a string.
        func (l *Life) String() string {
                var buf bytes.Buffer
                for y := 0; y < l.h; y++ {
                        for x := 0; x < l.w; x++ {
                                b := byte(' ')
                                if l.a.Alive(x, y) {
                                        b = '*'
                                }
                                buf.WriteByte(b)
                        }
                        buf.WriteByte('\n')
                }
                return buf.String()
        }

        func main() {
                l := NewLife(40, 15)
                for i := 0; i < 300; i++ {
                        l.Step()
                        fmt.Print("\x0c", l) // Clear screen and print field.
                        time.Sleep(time.Second / 30)
                }
        }
fa766a47 anonymous 2015-11-28 08:48
@markdown
        :::go
        // An implementation of Conway's Game of Life.
        package main

        import (
                "bytes"
                "fmt"
                "math/rand"
                "time"
        )

        // Field represents a two-dimensional field of cells.
        type Field struct {
                s    [][]bool
                w, h int
        }

        // NewField returns an empty field of the specified width and height.
        func NewField(w, h int) *Field {
                s := make([][]bool, h)
                for i := range s {
                        s[i] = make([]bool, w)
                }
                return &Field{s: s, w: w, h: h}
        }

        // Set sets the state of the specified cell to the given value.
        func (f *Field) Set(x, y int, b bool) {
                f.s[y][x] = b
        }

        // Alive reports whether the specified cell is alive.
        // If the x or y coordinates are outside the field boundaries they are wrapped
        // toroidally. For instance, an x value of -1 is treated as width-1.
        func (f *Field) Alive(x, y int) bool {
                x += f.w
                x %= f.w
                y += f.h
                y %= f.h
                return f.s[y][x]
        }

        // Next returns the state of the specified cell at the next time step.
        func (f *Field) Next(x, y int) bool {
                // Count the adjacent cells that are alive.
                alive := 0
                for i := -1; i <= 1; i++ {
                        for j := -1; j <= 1; j++ {
                                if (j != 0 || i != 0) && f.Alive(x+i, y+j) {
                                        alive++
                                }
                        }
                }
                // Return next state according to the game rules:
                //   exactly 3 neighbors: on,
                //   exactly 2 neighbors: maintain current state,
                //   otherwise: off.
                return alive == 3 || alive == 2 && f.Alive(x, y)
        }

        // Life stores the state of a round of Conway's Game of Life.
        type Life struct {
                a, b *Field
                w, h int
        }

        // NewLife returns a new Life game state with a random initial state.
        func NewLife(w, h int) *Life {
                a := NewField(w, h)
                for i := 0; i < (w * h / 4); i++ {
                        a.Set(rand.Intn(w), rand.Intn(h), true)
                }
                return &Life{
                        a: a, b: NewField(w, h),
                        w: w, h: h,
                }
        }

        // Step advances the game by one instant, recomputing and updating all cells.
        func (l *Life) Step() {
                // Update the state of the next field (b) from the current field (a).
                for y := 0; y < l.h; y++ {
                        for x := 0; x < l.w; x++ {
                                l.b.Set(x, y, l.a.Next(x, y))
                        }
                }
                // Swap fields a and b.
                l.a, l.b = l.b, l.a
        }

        // String returns the game board as a string.
        func (l *Life) String() string {
                var buf bytes.Buffer
                for y := 0; y < l.h; y++ {
                        for x := 0; x < l.w; x++ {
                                b := byte(' ')
                                if l.a.Alive(x, y) {
                                        b = '*'
                                }
                                buf.WriteByte(b)
                        }
                        buf.WriteByte('\n')
                }
                return buf.String()
        }

        func main() {
                l := NewLife(40, 15)
                for i := 0; i < 300; i++ {
                        l.Step()
                        fmt.Print("\x0c", l) // Clear screen and print field.
                        time.Sleep(time.Second / 30)
                }
        }
6dcf7406 anonymous 2015-11-28 09:14
@markdown
'''js
 console.log("123go!");
'''
e740cb41 anonymous 2015-11-28 09:17
'''じゃなくて```だよ
63717743 anonymous 2015-11-28 14:15 1448687702.jpg (82KB)

ba276c9a anonymous 2015-11-28 15:38
@markdown

```js
 console.log("123go!");
```
b4fc55b8 anonymous 2015-11-28 21:47
testtesttesttest
461f11ac anonymous 2015-11-29 04:54
@markdown
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
> consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
> Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
>
> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
> id sem consectetuer libero luctus adipiscing.
494fd26a anonymous 2015-11-29 05:10
@markdown
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
5f1da677 anonymous 2015-11-29 05:52
@markdown
> This is a blockquote with two paragraphs.
Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
 Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

> Donec sit amet nisl.
Aliquam semper ipsum sit amet velit.
 Suspendisse id sem consectetuer libero luctus adipiscing.
0ce8fa6b anonymous 2015-11-29 06:37
@markdown
> Line 1
> Line 2

> Line 1
> Line 2

> Line 1
> Line 2

> Line 1
> Line 2

> Line 1  
> Line 2

a6a311ef anonymous 2015-11-29 06:38
> Line 1
> Line 2

> Line 1
> Line 2

> Line 1  
> Line 2
1caaafb4 anonymous 2015-11-29 06:39
@markdown
> Line 1
> Line 2

> Line 1
> Line 2

> Line 1  
> Line 2

c5188fd9 anonymous 2015-11-29 11:13
てうと
2647333c anonymous 2015-11-29 17:57
Test 11/29
a0b18453 anonymous 2015-11-29 18:00
Test 11/29 2
c49fe8ea anonymous 2015-11-30 04:09
😀😬😁😂😃😄😅😆😇😉😊🙂🙃☺️😋😌😍😘😗😙

Top of this page. | <<last <<new 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 old>>

limit: 15360KB

(テスト/4306/25.1MB)

Powered by shinGETsu.