なぜ、どのように
目標を設定し、計画を立てて、デジタルドキュメントで作業したい-編集が簡単です。 (そして、関連性のために、彼らはしばしば目標と計画を書き直すことを勧めます!)一方、紙の形で-「インスピレーションのために」再読して知覚する方が便利です。 だから-印刷! マスコミでは、読みやすい見出し、インデントリストなどを用意することが望ましいですが、外出先でこれを行うことは、主要なことから気を散らすことを意味します。 このような状況では、論理フォーマットは魅力的なソリューションです(wiki、TeXなど)。 確かに、WYSIWYGの原則を犠牲にする必要があります...しかし、プレーンテキスト形式には別の価値ある機会があります。これについては、ソースコードをバージョン管理下に置くことができます。 そしてもちろん、半ダースまたはダースのドキュメントのセット全体(そしてそれぞれに独自のドキュメントがあります!)処理する必要があります-たとえば、印刷物に送る-バッチとして、個別にいじられません。
何が起こる
期待事項が一般的に概説されたので、実装について考えることができます。 標準的な手段でのみ管理します。主なものは適切な組み合わせです! その結果、一連のシンプルなツールから、機能的で柔軟性のあるシステムが得られます。 さらに、一緒に「ひざまずく」ときに「洗練されていないが非常に便利な」何かを集めたことで、あなたはユニークなDIY感覚を体験します。 以下の手順と40分の時間-そして、あなたは突破口機能を備えた「パーソナルレポートシステム」の幸せな所有者です。
- カスタマイズ可能なブックマークを備えたマルチページインターフェイス :プレーンテキスト形式の個々のドキュメントの1年4か月間の目標。
- 論理テキストのフォーマット :見出し、リスト、 太字および斜体 ...(wiki構文)。
- ドキュメントのバージョン間の変更の追跡 (SVNツール)。
- ブラウザで表示し、ワンクリックですべてのページを印刷します。
- ボーナス紙オーガナイザーのファンのために!!! カレンダー(任意の月)とスケジュール(7日間)-フォームは自分で準備します!
目標は魅力的で魅力的なので、行ってください!
1.メモ帳++での編集
まだ使用していないすべての人- ダウンロード ! これの主な議論は、マルチドキュメントのタブ付きインターフェイスです。 もう1つの良い点は、すべての好みに合わせた多くの設定です。 それらの1つは必ず含める必要があります。
Settings > Preferences > New Document > Encoding > "UTF-8 without BOM"
これは、翻訳者がhtmlで正しく機能するために必要です。
異なる期間の目標/計画用に個別のファイルを作成します。次に例を示します。
- ミッションステートメント;
- 長期目標(3〜10年);
- 次の18か月の目標。
- 四半期の目標;
- 四半期計画
- 今月の目標と計画。
もちろん、ファイルの内容は個々のものです。 テキスト構造の例(見出し、リスト、表)は、付録A 、 B 、およびCにあります。
2. TortoiseSVNで変更を追跡する
たとえば、このようにデータのバージョン管理を使用できます。 月の初め-目標が設定され、バージョンが保存されました。 プリントアウト付きの各レビュー-個別のバージョンを保存します。 月末-リスト内のハイフン(
-
)をプラス(
+
)に置き換えます(目標が達成された場合)、保存(印刷なし)。 来月の目標は同じファイルに入力されます-リスト、保存。 そのため、後でどのような目標が設定され、どのように変更され、達成されたかを思い出すことができます。
最初に、ディレクトリ構造を作成し、ソーステキストファイル(エンコードが
UTF-8
なるように
Notepad++
作成)に書き込みます。 たとえば、構造は次のとおりです。
[PurposeMissionGoals] |-[html] |-[ツール] | --1_Slogans.txt | --2_LongTermGoals.txt | --3_MidTermGoals.txt | --4_QuarterlyGoals.txt | --5_QuarterlyPlan.txt | --6_MonthlyGoalsAndPlan.txt
次に-あなたの好みにより多くのものがあります。 集中型リポジトリにデータをインポートすることができます(既にサーバーを上げている場合)、またはリポジトリをローカルで作成してインポートすることができます。 念のため(突然、人文科学に役立つでしょう)、2番目のオプションはより詳細です。
- TortoiseSVNのインストールは、バージョン管理システムのクライアントであり、この場合はサーバーでもあります。 インストール後、
TortoiseSVN
アイテムがエクスプローラーのコンテキストメニューに表示されます。 - ディレクトリを作成します(例
D:\planning\PurposeMissionGoalsRepository
。 データはここに保存されます。 このディレクトリを右クリックし、TortoiseSVN > Create repository here
選択します。 - 元の構造を持つ
PurposeMissionGoals
ディレクトリをPurposeMissionGoals
し、TortoiseSVN > Import...
選択しTortoiseSVN > Import...
["Url of repository"
フィールドで(この例の場合)指定します:file:///D:/planning/PurposeMissionGoalsRepository
。"OK"
データが保存され、PurposeMissionGoals
を削除できます。 - (ディスク上の任意の場所に)「
PurposeMissionGoalsWorkingDirectory
Directory」を作成します(例:PurposeMissionGoalsWorkingDirectory
。 それを右クリックして、SVN Checkout...
選択しSVN Checkout...
おなじみの"Url of repository"
フィールド"Url of repository"
、同じパスを指定します:file:///D:/planning/PurposeMissionGoalsRepository
。"OK"
、データは作業用にコピーされ、作業ディレクトリからの変更は必要に応じてリポジトリに保存できます- 何も失われません!
繰り返しますが、念のために、毎日のSVNコマンドの最小セット:
- 変更を確認する
この作業ディレクトリで変更されたファイルのリストを表示します。 - 差分
特定のファイルのテキストの変更を表示します。 (また、ファイルリストからダブルクリックします。) - 元に戻す...
作業ディレクトリのファイルをリポジトリの古いバージョンで上書きします- 変更は失われます!!! - コミット...
このディレクトリまたは特定のオブジェクト(ファイル、ディレクトリ)へのすべての変更をリポジトリに保存します。
- ログを表示
特定のディレクトリまたは特定のオブジェクトに関連するコミットのリストを表示します。 - 更新[...に修正]
リポジトリの状態に応じて、作業ディレクトリを最新バージョンにするか、特定のポイントにします。
3. wikiからpandoc経由でhtmlへ
ソースファイルをWebページに変換してから、ブラウザで表示できます。 (そこから印刷します。詳細は以下を参照してください。)マークアップ形式を変換するための素晴らしいユーティリティがあります- ダウンロードしてインストールします。
インストールウィザードは「追加タスクの選択」ページで終了します。 その上-
"Add application directory to your path"
フラグのみ。 そのままにしておく必要があります。 これで、コマンドラインから
pandoc
コマンドを使用できるようになり、スクリプトで使用できるようになります。 上記の構造に従っている場合は
PurposeMissionGoals\tools
スクリプトファイルを
PurposeMissionGoals\tools
ディレクトリに配置します。
スクリプトはさまざまな方法で作成できます。 最も単純な(
.bat
)はWindowsに適しており、Pythonをクロスプラットフォームオプションにします。 ところで、カレンダースケジュールフォーム( 付録Dを参照)を生成するには、まだPythonが必要なので、まだインストールされていない場合はインストールするのが理にかなっています。 (確認するには、システムドライブのインストールディレクトリ、たとえば
C:\Python27
。)
以下のテキストがファイル
PurposeMissionGoals\tools\generate_html.py
に保存されている場合、その起動により、
PurposeMissionGoals
ディレクトリのテキストソースに対応する一連のWebページの
PurposeMissionGoals\html
ディレクトリに表示されます。
# ...\PurposeMissionGoals\tools\generate_html.py import os, string, shlex, subprocess, sys toolDir = os.path.dirname(sys.argv[0]) os.chdir(toolDir) for p in os.listdir('..'): (name, ext) = os.path.splitext(p) if ext == '.txt' : commandLine = ('pandoc --from markdown --to html --standalone -o ../html/%s ../%s' % (name + '.html', name + '.txt') ) args = shlex.split(commandLine) subprocess.Popen(args)
Pythonを使用しないWindowsのオプションはまだあります:
@REM ...\PurposeMissionGoals\tools\generate_html.bat FOR /F "delims=. tokens=1" %%A IN ('dir .. /B *.txt') ^ DO pandoc --from markdown --to html --standalone -o ..\html\%%A.html ..\%%A.txt
したがって、「開発サイクル」は次のようになります。
-
PurposeMissionGoals
から.txt
ファイルを編集し.txt
。 -
PurposeMissionGoals\tools
からPurposeMissionGoals\tools
実行しPurposeMissionGoals\tools
。 -
PurposeMissionGoals\html
から.html
ページを開き、結果を表示します。 - 手順1に戻ります。
ステップ2の実行は、
Notepad++
から
F5
キーを押すことで構成できます。 そして、2番目のイテレーションのポイント3は、ブラウザーに切り替えてページを更新することです。 次のセクションでは、表示する際にもう1つの便利な機能を追加します。
4.ページの閲覧:Firefox Plus Tab Mix Plus
文書のセット全体を毎回開くために、開いているタブでブラウザーウィンドウを保存できます。 この機能を提供するプラグインは広告を必要としません。
[
Tools > Session Manager > Save This Window...
選択すると、必要なドキュメントが常にクリックされます。 印刷への送信時に同じ使いやすさを提供するために残っています-そして、仕事は完了です!
5. UniversalPrintを使用したFirefoxからのバッチ印刷
すべての結果を一度に印刷するには、 このプラグインが便利です。 次のメニュー項目の名前はそれ自身を表しています:
File > Universal Print > Print All Tabs
印刷時の微妙な点は1つだけでした。色付きの背景が塗りつぶされたテーブル( 付録Cを参照)を適切に表示するには、次のオプションを有効にする必要があります。
File > Page Setup > "Print Background (colours & images)"
合計
すべての作業を犠牲にして、彼らはスツールと同じくらいシンプルなシステムを手に入れました。
- マークアップ形式の変換。
- バージョニング
- 保存されたブラウザウィンドウで表示します。
- すべてのページの印刷。
問題は解決しましたか? 解決しました。 柔軟性? ドキュメントのセットを変更し、外観を変更し、データソースを接続しますか? はい、お願いします-それは器用さのために十分です! 実際 、「人々 が
find
、
grep
、
awk
使い方を本当に知っていたら、何千ものアプリケーションが書かれたことはなかっただろう」。 (c)
付録A.ターゲットリストのフォーマットの例
<!--2_LongTermGoals.txt--> +6 ( 2012) ======================== * ... * ... +1 ( 2013) ===================== * ... * ... +5 (2017) ============= * !!! * ... +10 (2022) ============== * ... * ...
付録B.スローガン(ミッション、目的)-中央揃え
<!--1_Slogans.txt--> <table cellspacing="0" cellpadding="5" width="100%" border="0"> <tr><td align=CENTER> ===== </td></tr> <tr><td align=CENTER> AKA "Purpose" - - ( ) (, ). </td></tr> <tr><td align=CENTER> ==== </td></tr> <tr><td align=CENTER> AKA "Mission" - - ( , ). </td></tr> </table>
付録C.カテゴリ別の目標テーブルの例
<!--4_QuarterlyGoals.txt--> 2011 - 2011: ================================ <table cellspacing="0" cellpadding="5" width="100%" border="0"> <tr> <td bgcolor="#FFFF80"> --------- </td> <td width="100%" valign=TOP> * : - ... ; - ... . * : ... . </td></tr> <tr><td bgcolor="#FF8080"> ------------ </td> <td width="100%" valign=TOP> * : ... . * : ... . </td></tr> <tr><td bgcolor="#80FF80"> -------- </td> <td width="100%" valign=TOP> 1. . 2. . </td></tr> <tr><td bgcolor="#8080FF"> --------- </td> <td width="100%" valign=TOP> * : ... . * : ... . * : ... . </td></tr> </table>
付録D.任意の月のカレンダーフォーム
A4カレンダーシートをいつでも(今月または来月)印刷できるように、いくつか追加します。 ディレクトリ構造内:
[PurposeMissionGoals] |-... |-[スケジュール] |-...
tools
ディレクトリ-新しいスクリプト:
-
htmlCalendar.py
(ダウンロードするには、碑文[calendar_python.zip]
クリックします) -
generate_calendar.py
-
generate_calendar_next.py
「生成」スクリプトの内容を以下に示します。 作業の結果として表示されるWebページは、「風景」紙の向きで印刷する必要があります。
File > Page Setup... > "Landscape"
# ...\PurposeMissionGoals\tools\generate_calendar.py import datetime import time import htmlCalendar def main(year, month): myCal = htmlCalendar.MonthlyCalendar(year, month) # Customize calendar appearance. myCal.offset = 2 # start the week on Monday scale = 6.0 # make the calendar big myCal.dFontSize *= scale myCal.tFontSize *= scale / 2.0 # scale titles almost proportionally myCal.hFontSize *= scale / 2.0 myCal.wFontSize *= scale / 2.0 myCal.tdBorderColor = '#FFFFFF' # don't highlight today's day myCal.weekNumbers = 1 # view week numbers: 1 = yes, 0 = no brightness = 0xCC # print day numbers in gray fontColor = "#%X%X%X" % (brightness, brightness, brightness) myCal.dFontColor = fontColor myCal.saFontColor = fontColor myCal.suFontColor = fontColor # Name the generated file by month. htmlName = "../schedules/MonthlySchedule%s.html" % datetime.date(year, month, 1).strftime('%b%y') # Save the result to disk. htmlFile = open(htmlName, 'w') htmlFile.write(myCal.create()) htmlFile.close() if __name__ == "__main__": import sys year = time.localtime().tm_year month = time.localtime().tm_mon if len(sys.argv) > 1 : year = sys.argv[1] month = sys.argv[2] main(year, month)
# ...\PurposeMissionGoals\tools\generate_calendar_next.py import time import generate_calendar # Get current month. now = time.localtime() year = int(now.tm_year) month = int(now.tm_mon) # Advance to the next month. if month == 12 : ++year month %= 12 month += 1 # Generate calendar for the next month. generate_calendar.main(year, month)
付録E. 1日のスケジュール
スケジュールが厳しく、週に何時間も前に予約する必要がある場合は、適切な形式のフォームが役立ちます。 一般的に言って、ここでの論文はすでに昨日であり、多くはGoogleのカレンダー(
""
ボタン)を使用してい
Outlook
。モバイルまたは
Outlook
ですべての「ハード」アポイントメントを保持する方が便利です。 他の人にとっては、鉛筆の魅力を消しゴムに置き換えることはできません-迅速かつ明確に...そして、週が終わると、忙しいスケジュールから飛行機を追加することができます。
ここにいくつかの設計ソリューションがあります。 確かに、日付を手動で入力する必要があります。 これは Excelで作られた同様の製品です。 最後に、現在の日付までにタイトルが自動的に入力される、かなり「スマート」なテーブルがいくつかあります。
Excelの利点は、数式を壊さずにセルをカットアンドペーストできることです。 すべては機能しますが、見た目はすでにユニークです(そして便利です)。 同時に、印刷時に再び微妙な問題がありました-変更後に突然右側のセルの半分がページから消えた場合、この設定を調整する必要があります(
OpenOffice Calc
):
> > ...
原則として、スプレッドシートを自動的に印刷し、Pythonスクリプトなどからプログラムで現在の日付を入力できます。 これは読者のための演習のままにしてください。