論文内の句読点をカンマとピリオドに変換する際にテキストエディタの置換機能を使ってもいいのですが、章ごとにファイルが分かれていて面倒だったので、シェルで一括置換をするコマンドを書きました。
以下のコマンドを.texファイルのあるディレクトリで実行するだけ。
for file in *.tex; do sed -i "-bak" -e "s/、/,/g" -e "s/。/./g" $file; done
元のファイルは、ファイル名.tex-bak としてバックアップされるので安心です。
bucks: { host: ["linkbucks.com", ... ... 中略 ... },
Error loading syntax file "Packages/LaTeXing/support/LaTeX.tmLanguage": Unable to open Packages/LaTeXing/support/LaTeX.tmLanguage
$ cd ~/Library/Application Support/Sublime Text 3/Local $ cat Session.sublime_session |grep -i latex "syntax": "Packages/LaTeX/LaTeX.tmLanguage" "syntax": "Packages/LaTeXing/support/LaTeX.tmLanguage"
<style type='text/css'> /* 外枠を追加 */ .syntaxhighlighter { border: 1px solid #aaa; border-radius: 3px; } /* 偶数行目の背景色を変更 */ .syntaxhighlighter .line.alt2 { background-color: #f8f8f8 !important; } td.gutter .line.alt2 { background-color:#e6e5e1 !important; } </style>
// "mark_style": "outline", の行を削除して以下の行を挿入 "mark_style": "squiggly underline",
// "ignore"内にカンマ区切りで記入 "pep8": { "ignore": "E203,E221,E241,E272", }
>>> "".length 0 >>> "a".length 1 >>> "aaa".length 3 >>> Math.pow("aaa".length,"aa".length); 9
>>> parseInt(Math.E) 2 >>> Math.ceil(Math.PI) 4 >>> Math.floor(Math.PI*Math.E-Math.LOG2E) 7
// trueは1 >>> true+true 2
>>> now = new Date(); >>> now.getFullYear(); 2014 // 各桁の和を求める >>> String(now.getFullYear()).split("").reduce(function(x,y){return Number(x)+Number(y);}) 7
#!/usr/bin/env python # -*- coding: utf-8 -*- import os import time import urllib2 from twython import Twython u""" ツイッターで投稿された画像を一括でダウンロードする """ # 画像を保存するディレクトリ(予め作成しておく) # 各ユーザの画像は、./images/screen_name/ 内に保存される IMAGES_DIR = './images/' # Twitter 認証関係 https://dev.twitter.com/apps # Consumer key CK='Consumer keyをここに記入' # Consumer secret CS='Consumer secretをここに記入' # Access token ATK='Access tokenをここに記入' # Access token secret ATS='Access token secretをここに記入' # 取得するツイート数の最大値の設定(以下の2つの値の積) NUM_PAGES = 5 # 取得するページ数 TWEET_PER_PAGE = 200 # 1ページあたりのツイート数(最大200) # 画像をダウンロードするユーザのスクリーン名を1行に1人ずつ記入する(@の有無は問わない) SCREEN_NAMES = ''' screen_name_1 screen_name_2 @screen_name_3 ''' class TwitterImageDownloader(object): u"""Twitterから画像をダウンロードする""" def __init__(self): super(TwitterImageDownloader, self).__init__() self.twitter =Twython(app_key=CK, app_secret=CS, oauth_token=ATK, oauth_token_secret=ATS) def read_ids(self): ids_all = [line.replace('@', '') for line in SCREEN_NAMES.splitlines() if line] ids = sorted(list(set(ids_all))) return ids def get_timeline(self, screen_name): max_id = '' url_list = [] for i in xrange(NUM_PAGES): try: print 'getting timeline : @', screen_name, (i+1), 'page' tw_result = (self.twitter.get_user_timeline(screen_name=screen_name, count=TWEET_PER_PAGE, max_id=max_id) if max_id else self.twitter.get_user_timeline(screen_name=screen_name, count=TWEET_PER_PAGE)) time.sleep(5) except Exception as e: print "timeline get error ", e break else: for result in tw_result: if 'media' in result['entities']: media = result['entities']['media'] for url in media: url_list.append(url['media_url']) max_id = result['id'] if len(tw_result) < TWEET_PER_PAGE: break return url_list def create_folder(self, save_dir): try: os.mkdir(save_dir) except Exception as e: print 'cannot make dir', e file_list = os.listdir(save_dir) return file_list def get_file(self, url, file_list, save_dir): file_name = url[url.rfind('/')+1:] url_large = '%s:large'%(url) if not file_name in file_list: save_path = os.path.join(save_dir, file_name) try: print "download", url_large url_req = urllib2.urlopen(url_large) except Exception as e: print "url open error", url_large, e else: print "saving", save_path img_read = url_req.read() img = open(save_path, 'wb') img.write(img_read) img.close() time.sleep(1) else: print "file already exists", file_name def download(self): screen_name_list = self.read_ids() num_users = len(screen_name_list) for i, screen_name in enumerate(screen_name_list): save_dir = os.path.join(IMAGES_DIR, screen_name) file_list = self.create_folder(save_dir) url_list = self.get_timeline(screen_name) num_urls = len(url_list) for j, url in enumerate(url_list): self.get_file(url, file_list, save_dir) print "%d / %d users, %d / %d pictures"%((i+1), num_users, (j+1), num_urls) def main(): tw = TwitterImageDownloader() tw.download() if __name__ == '__main__': main()
INSTALLED_APPS = ( 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'アプリ名1', 'アプリ名2', # southを追加 'south', )