Where does the verbal form しとく come from?


In a
[manga](http://ja.wikipedia.org/wiki/%E3%82%81%E3%81%9E%E3%82%93%E4%B8%80%E5%88%BB)
I am currently reading, one of the character exclaims:

> 安心しな。秘密に **しとく** から。

The general meaning of the second part ("I'll keep it a secret") is quite
obvious, and it seems that "しとく" (ostensibly derived from し, with a suffix
appended) has more or less the same meaning as plain "する". But I am curious
about the grammatical (or dialectal?) construct used here, its usage, nuance
etc.

The closest to an explanation I could find, was this verb in WWWJDIC:

> とく (v5k) to do something in readiness for, to get something (needful) done

... but I must admit I'm still at a loss as to why it would be used as an
auxiliary here.

**What is the _exact_ nuance (and grammatical origin) of that "しとく" and does
the "とく" suffix work with other verbs?**




しとく comes from しておく, which in turn comes from して置く. The literal translation of
して置く would be, "do it, and then put [the results]". Basically it describes the
act of doing something and storing the result of that so that when that result
becomes useful, you can use it.

**EDIT:**  
This literal meaning changed overtime (I presume) and しておく became to mean "do
something to prepare for something that might happen". In case of `秘密にしておく`,
the speaker is saying that he/she will keep it secret in case it turns out
whatever thing they were discussing indeed needed to be kept secret. I guess
it makes some sense, as you could think that the state of that thing being
kept secret, is "stored" or "put" somewhere, and then it turns out that that
state was useful, or something like that.

The nuance further changed (I presume!), and it became ok to use it almost as
a softner. For example, a Japanese speaker might say `今日飲んどく？` instead of
`今日飲みに行く？`. Technically it still means to drink "just in case", but here it's
just used to soften the speech. 秘密にしておく could also be a softner, depending on
the context.

> え、また泥酔して記憶なくなったの？ 大丈夫！秘密にしとくから（笑）  
>  -> Softner  
>  今のところ会社の人には秘密にしておいてください  
>  -> Let's keep it secret for the time being, in case it it wise to keep it
> as a secret.

しておく is frequently used with とりあえず, which translates to "for the time being".

[code]

    今日は台風が来ているから、飛行機が飛ぶか分からないけど、取りあえず準備だけはしておこう。　　
    今日は台風が来ているから、飛行機が飛ぶか分からないけど、取りあえず準備だけはしとこう。
    
[/code]

Both are ok, while the latter is colloquial.

[code]

    次いつ駐車できるかわからないから、ここでお昼ごはんにしとくか？
    次いつ駐車できるかわからないので、ここでお昼ご飯にしておきましょうか？
    
[/code]

Above is another example. しとく is more frank/colloquial form of しておく.

～おく can also work with other verbs. Here are some examples:

[code]

    ここ、塗っとこうか？
    ここ、塗っておきましょうか？
    
    飯、食っとけ。
    ご飯食べておいてください
    
[/code]

**EDIT2**  
Apparently it's even more complex than that. [Here is a Japanese
paper](https://web.archive.org/web/20071029144346/https://libweb.nagoya-
wu.ac.jp/kiyo/kiyo51/jinbun/kojin/20yamamoto.pdf) on ～ておく's meaning.




しとく comes from しておく, which in turn comes from して置く. The literal translation of
して置く would be, "do it, and then put [the results]". Basically it describes the
act of doing something and storing the result of that so that when that result
becomes useful, you can use it.

**EDIT:**  
This literal meaning changed overtime (I presume) and しておく became to mean "do
something to prepare for something that might happen". In case of `秘密にしておく`,
the speaker is saying that he/she will keep it secret in case it turns out
whatever thing they were discussing indeed needed to be kept secret. I guess
it makes some sense, as you could think that the state of that thing being
kept secret, is "stored" or "put" somewhere, and then it turns out that that
state was useful, or something like that.

The nuance further changed (I presume!), and it became ok to use it almost as
a softner. For example, a Japanese speaker might say `今日飲んどく？` instead of
`今日飲みに行く？`. Technically it still means to drink "just in case", but here it's
just used to soften the speech. 秘密にしておく could also be a softner, depending on
the context.

> え、また泥酔して記憶なくなったの？ 大丈夫！秘密にしとくから（笑）  
>  -> Softner  
>  今のところ会社の人には秘密にしておいてください  
>  -> Let's keep it secret for the time being, in case it it wise to keep it
> as a secret.

しておく is frequently used with とりあえず, which translates to "for the time being".

[code]

    今日は台風が来ているから、飛行機が飛ぶか分からないけど、取りあえず準備だけはしておこう。　　
    今日は台風が来ているから、飛行機が飛ぶか分からないけど、取りあえず準備だけはしとこう。
    
[/code]

Both are ok, while the latter is colloquial.

[code]

    次いつ駐車できるかわからないから、ここでお昼ごはんにしとくか？
    次いつ駐車できるかわからないので、ここでお昼ご飯にしておきましょうか？
    
[/code]

Above is another example. しとく is more frank/colloquial form of しておく.

～おく can also work with other verbs. Here are some examples:

[code]

    ここ、塗っとこうか？
    ここ、塗っておきましょうか？
    
    飯、食っとけ。
    ご飯食べておいてください
    
[/code]

**EDIT2**  
Apparently it's even more complex than that. [Here is a Japanese
paper](https://web.archive.org/web/20071029144346/https://libweb.nagoya-
wu.ac.jp/kiyo/kiyo51/jinbun/kojin/20yamamoto.pdf) on ～ておく's meaning.

