generated at
Scrapbox:Markdownの表示

Scrapboxでは、Markdown記法サポートされていない
一方、コードブロック記法では、Markdown記法のシンタックスハイライトがされる。
そして、コードブロック記法では、ファイルURLが発行される。

ということは…

外部のMarkdownファイルをプレビューできるWebサービスがあれば、Markdownの表示できるんじゃね?
と考えて、探してみた。
けど見つからない。
URLを読み込んで表示することのできるサービスが見つからない。
読み込み側が Github だったり、Dropbox だったり、 Google Drive だったり…
Scrapbox のURL を渡せそうなものはみつからなかった。
代わりに、ブラウザ拡張を見つけたよ。
mdファイルをWebブラウザに渡すと、ブラウザがレンダリングして表示するしくみ。
↓下の赤い所をクリックすると、MarkdownファイルのURLへ移動し、ブラウザ(Chrome)がレンダリングして表示する。
cp.md
設定ファイル(iniファイル)を扱うConfigParserモジュールについて調べてみました。 ### INIファイルとは [INIファイル - Wikipedia](http://ja.wikipedia.org/wiki/Ini%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB "INIファイル - Wikipedia") * Windows の設定ファイルとして考案された * Windows以外でも設定ファイルのフォーマットとして利用される * テキスト形式 * 容易に編集が可能(ぶっ壊すのも簡単) * 拡張子には「.ini」が付く。 * セクション、キー、キー項目(プロパティ)から構成される ### Python におけるINIファイルの扱い Python には標準でINIファイルの読み書きができるモジュール、ConfigParserが用意されています。 [13.2. ConfigParser — 設定ファイルの構文解析器 — Python 2.7ja1 documentation](http://docs.python.jp/2/library/configparser.html "13.2. ConfigParser — 設定ファイルの構文解析器 — Python 2.7ja1 documentation") ### サンプル Python2版(check_config.py) で、サンプルとして作ったのが次のツールです。Python 2.7で実行。 ```check_config.py #!/usr/bin/env python # -*- coding: utf-8 -*- ''' check_config.py 設定ファイル(ini file)をチェックするユーティリティ 注意! エラーチェックはいい加減です。 ''' import ConfigParser import os import sys def show_config(ini): ''' 設定ファイルの全ての内容を表示する(コメントを除く) ''' for section in ini.sections(): print '[%s]' % (section) show_section(ini, section) return def show_section(ini, section): ''' 設定ファイルの特定のセクションの内容を表示する ''' for key in ini.options(section): show_key(ini, section, key) return def show_key(ini, section, key): ''' 設定ファイルの特定セクションの特定のキー項目(プロパティ)の内容を表示する ''' print '%s.%s =%s' % (section, key, ini.get(section, key)) return def set_value(ini, section, key, value): ''' 設定ファイルの特定セクションの特定のキー項目(プロパティ)の内容を変更する ''' ini.set(section, key, value) print 'set %s.%s =%s' % (section, key, ini.get(section, key)) return def usage(): sys.stderr.write("Usage: %s inifile [section [key [value]]]\n" % sys.argv[0]) return if __name__ == '__main__': argc = len(sys.argv) if argc == 1: usage() sys.exit(1) # 設定ファイル読み込み INI_FILE = sys.argv[1] ini = ConfigParser.SafeConfigParser() if os.path.exists(INI_FILE): ini.read(INI_FILE) else: sys.stderr.write('%s が見つかりません' % INI_FILE) sys.exit(2)  if argc == 2:   show_config(ini)   elif argc == 3:  show_section(ini, sys.argv[2])  elif argc == 4:   show_key(ini, sys.argv[2], sys.argv[3])  elif argc == 5:   set_value(ini, sys.argv[2], sys.argv[3], sys.argv[4])  # ファイルに書き出す(注意!現状だとコメントや改行を消してしまいます)  f = open(INI_FILE, "w")  ini.write(f)  f.close()  else:   usage()  sys.exit(3) sys.exit(0) #EOF ``` ### 使い方 まー、ソースコードを見れば分かると思いますがw ```console: python check_config.py ``` 引数の指定が無い場合。 usage()(使い方)を表示。 UNIXコマンドのお約束的作法ですね。 ```console: python check_config.py inifile ``` 引数がひとつだった場合。 第1引数には、INIファイルのファイル名を指定します。 inifileの内容を表示。 ```console: python check_config.py inifile section ``` 引数が2つだった場合。 第2引数には、INIファイルのセクション(section)を指定します。 inifileの特定のセクション(section)の内容を表示。 ```console: python check_config.py inifile section key ``` 引数が3つだった場合。 第3引数には、INIファイルの特定セクションのキー項目(key)を指定します。 inifileの特定のセクション(section)の特定のキー項目(key)内容を表示。 ```console: python check_config.py inifile section key value ``` 引数が4つだった場合。 第4引数には、INIファイルの特定セクションのキー項目に対して変更する内容(value)指定します。 この操作のみINIファイルを書き換えます。 inifileの特定のセクション(section)の特定のキー項目(key)を内容valueに変更。

コードブロック記法なので、こんなこともできる。
↓ちなみにこれは、後から追加した部分

cp.md
### サンプル Python3版 いまどきPython2版ばかリではアレなんで、Python3版も用意しました。 Python 3.5で実行。 * ConfigParser → configparser と名称変更 * print文が変わった * 文字コードの扱いが変わった ```check_config.py #!/usr/bin/env python3 # -*- coding: utf-8 -*- ''' check_config.py 設定ファイル(ini file)をチェックするユーティリティ 注意! エラーチェックはいい加減です。 ''' import configparser import os import sys def show_config(ini): ''' 設定ファイルの全ての内容を表示する(コメントを除く) ''' for section in ini.sections():   print ("[" + section + "]")   show_section(ini, section)   return def show_section(ini, section):   '''   設定ファイルの特定のセクションの内容を表示する   '''   for key in ini.options(section):   show_key(ini, section, key)   return def show_key(ini, section, key):   '''   設定ファイルの特定セクションの特定のキー項目(プロパティ)の内容を表示する  '''  print (section + "." + key + " = " + ini.get(section, key))  return def set_value(ini, section, key, value):   '''   設定ファイルの特定セクションの特定のキー項目(プロパティ)の内容を変更する   '''   ini.set(section, key, value)  print (section + "." + key + " = " + ini.get(section, key))  return def usage():   sys.stderr.write("Usage: " + sys.argv[0] + " inifile [section [key [value]]]\n")   return if __name__ == '__main__':   argc = len(sys.argv)   if argc == 1:   usage()   sys.exit(1) # 設定ファイル読み込み INI_FILE = sys.argv[1]   ini = configparser.SafeConfigParser()   if os.path.exists(INI_FILE):   ini.read(INI_FILE, encoding='utf8')  else:   sys.stderr.write(INI_FILE + " が見つかりません")   sys.exit(2)   if argc == 2:   show_config(ini)  elif argc == 3:   show_section(ini, sys.argv[2])   elif argc == 4:   show_key(ini, sys.argv[2], sys.argv[3])   elif argc == 5:   set_value(ini, sys.argv[2], sys.argv[3], sys.argv[4])   # ファイルに書き出す(注意!現状だとコメントや改行を消してしまいます)   with open(INI_FILE, "w", encoding='utf8') as f:   ini.write(f)  else:   usage()  sys.exit(3) sys.exit(0) #EOF ```

表示例

とりあえず、過去のMarkdown を持ってくるにはこれで十分かも。
でも、特定のブラウザに依存するのは良くないので、適切なWebサービスがあるといいな。



Scrapbox-howto
Scrapbox-tips