投稿のマークダウンテンプレートを生成する


19

あなたのタスクは簡単です:入力を一切受けず、次のようなものを出力するプログラム(または関数)を書きます。

## *name*, *length* bytes
    *code*

ここ*name*で使用している言語の名前*length*、コード内のバイト数、および*code*プログラムのソースコードです。*code*複数の行が含まれる場合、各行の前に4つのスペースがあります。

Python 3での124バイトの実装例は次のとおりです。

s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
print(s.format(s,chr(34),chr(10)))

出力は次のとおりです。

## Python 3, 124 bytes
    s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
    print(s.format(s,chr(34),chr(10)))

Markdownでは次のとおりです。

Python 3、124バイト

s = "## Python 3, 124 bytes{2}    s = {1}{0}{1}{2}print(s.format(s,chr(34),chr(10)))"
print(s.format(s,chr(34),chr(10)))

これはなので、最短の回答(バイト単位)が優先されます。


3
これは重複だと確信していますが、古いものは見つかりません
ダダ


1
これはそれ自体で生成されるため、これとは十分に異なると思います。考え方は似ていますが、このために馬を書く必要があります。
エソランジングフルーツ

標準的なクインルール(たとえば、独自のコードを開いて読み取らないこと)を想定する必要がありますか?
ガブリエルベナミー

@GabrielBenamyはい。
エソランジングフルーツ

回答:


8

RProgN 2、28バイト

«"  %s"F"#RProgN 2, 28 Bytes"

2
現状では、これは深刻な候補ではなく、削除の対象となります。あなたの答えをゴルフしてください。
デニス

1
@Dennis Golfed。
アタコ

2
いいね!バイトカウントの後のドットは必要ないようですが、コードの前に4つのスペース(またはタブ)が必要です。
デニス

5

アンダーロード、48バイト

(#Underload, 48 bytes
)(~:S(    ):S*aSaS(:^)S):^

投稿は、コードで作成されたとおりです。クインはペイロード対応(ペイロードを最後のSの後に配置する)であるため、広く使用されている1つの定義によって真のクインになりますが、文字列evalを使用します(つまり、文字列evalがUnderloadでループを実行する唯一の方法です;それは言語にとってかなり基本的です)。

チャットでのUnderload quinesでの議論の後、これは他の広く使用されている定義でも馬鹿だと判断しました。:^プログラムの終了時には、によってコードされる:^少し前、及びプログラムのかくして一部が異なる部分をコードします。

2
あなたは、議論することができ、私のn過少quinesを?(Cool!:aSS)Cool!:aSS
電卓

1
@CalculatorFeline残念ながら、これはのために機能しません(!)
エソランジングフルーツ


1

網状、58バイト

"'34'c: 4*91+c:s:e:t:y:b: 85: :,:r:a:l:u:c:i:t:e:r: :#dqO;

オンラインでお試しください!

説明::c単一文字ストリングをプッシュしますc。これにより、文字列 "## reticular、58 bytes"が1文字Oずつ逆方向に構築され、スタックが反転され、最初の引用符でキャプチャされた文字列を含むすべてが出力されます。


1

CJam、33バイト

{"## CJam, 33 bytes"N@S4*\"_~"}_~

アンダーロードの回答とよく似ています。

スタックトレース(をN表す\n

{"## CJam, 33 bytes"N@S4*\"_~"}
{"## CJam, 33 bytes"N@S4*\"_~"} {"## CJam, 33 bytes"N@S4*\"_~"}
{"## CJam, 33 bytes"N@S4*\"_~"} "## CJam, 33 bytes"
{"## CJam, 33 bytes"N@S4*\"_~"} "## CJam, 33 bytes" N
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"}
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} " "
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} " " 4
"## CJam, 33 bytes" N {"## CJam, 33 bytes"N@S4*\"_~"} "    "
"## CJam, 33 bytes" N "    " {"## CJam, 33 bytes"N@S4*\"_~"}
"## CJam, 33 bytes" N "    " {"## CJam, 33 bytes"N@S4*\"_~"} "_~"
<implicit output>

1

V、25バイト

ñi#V, 25 bytes<esc>o´ Ñ<esc>~"qpx

(これは、コードの説明を提供するのが好きなので、生成されたマークダウンではカウントされません:P)

ソースコードには印刷できない文字や非ASCII文字が含まれているため、hexdumpがあります。

00000000: f169 2356 2c20 3235 2062 7974 6573 1b6f  .i#V, 25 bytes.o
00000010: b420 d11b 7e22 7170 78                   . ..~"qpx

この答えは、標準の拡張可能なVの単純な修正です。

説明:

ñ                                   " Run the following code one time, storing it in
                                    " register 'q'
 i                                  "   Enter insert mode
  #V, 25 bytes<esc>                 "   And insert the header
                   o                "   Open up a newline, and enter insert mode again
                    ´ Ñ             "   Enter four spaces, then a 'Ñ' character.
                                    "   (The reason we insert it uppercase, is because
                                    "   lowercase would end the loop now)
                       <esc>        "   Return to normal mode
                            ~       "   Toggle the case of the char under the cursor ('Ñ')
                             "qp    "   Paste the contents of register 'q' (this is the
                                    "   same as the entire program minus the initial 'ñ',
                                    "   followed by a 'ÿ' character because V is weird)
                                x   "   Delete the last character (the ÿ)

1

JS、50 49 27 30バイト

f=_=>`#JS, 30 bytes\n    f=`+f

それを試してみてください

f=_=>`#JS, 30 bytes\n    f=`+f
console.log(f())

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.