- 追加された行はこの色です。
- 削除された行はこの色です。
*SynWrite [#sa2a9617]
&color(White,#5F2F2F){ ''◆目次◆'' };&br;
#contents
*SynWrite とは [#w5080894]
SynWrite は Unicode をサポートしたテキストエディタです.~
-[[SynWrite:http://www.uvviewsoft.com/synwrite/]]
-http://sourceforge.net/projects/synwrite/
-[[SynWrite / Wiki / Home:http://sourceforge.net/p/synwrite/wiki/]]
-http://www.econtrol.ru/
-http://www.addictivesoftware.com/
**動作環境 [#cee93992]
Windows 8.1, 8, 7, Vista, XP
**License [#b11e6ba2]
MPL
**ChangeLog [#v9496de5]
-https://github.com/Alexey-T/SynWrite
--https://github.com/Alexey-T/SynWrite/commits/
*メニューの日本語化 [#y0f1c588]
[Options]-[Customize...]-[Interface]-[Program Settings]-[Language]-[日本語 (日本)] を選択するとメニューが日本語になります.~
*エンコーディング [#rf06b30b]
**新規ドキュメント → UTF-8, no BOM に変更する [#e80f4d2b]
初期設定では ANSI (Windows) に設定されています.~
UTF-8, no BOM に変更します.~
[設定(O)]-[環境設定]-[ファイル/フォルダ]-[新規/開く]-[新規ドキュメント]-[エンコーディング]-[UTF-8, no BOM]
**エンコーディングの変更 [#vdd1880a]
エンコーディングを UTF-8, BOM無 に変更することができます.~
[書式(N)]-[エンコーディングの変更(C)]-[Unicode]-[UTF-8, BOM無]
*プラグイン [#zd70eebc]
SynWrite は [[Python]] を使用してプラグインを作成できます.~
-[[SynWrite / Wiki / Plugins Python API:http://sourceforge.net/p/synwrite/wiki/Plugins%20Python%20API/]]
-[[SynWrite / Wiki / Plugins Python API functions:http://sourceforge.net/p/synwrite/wiki/Plugins%20Python%20API%20functions/]]
**SynPdfupLaTeX [#k5d9b009]
[ツール(R)]-[新規プラグイン...]
pdfupLaTeX を入力して OK をクリックします.~
__init__.py を以下のように編集します.~
----
-__init__.py
----
from sw import *
from sw_util import *
import os
import os.path
import subprocess
class Command:
def run(self):
b = os.path.splitext(os.path.basename(file_get_name(FILENAME_CURRENT)))[0]
c = os.path.dirname(file_get_name(FILENAME_CURRENT))
ptex2pdf = ['ptex2pdf', '-l', '-u', '-ot', '"', '-no-guess-input-enc', '-kanji=utf8', '-synctex=1', '-sjis-terminal', '"', b]
ok = msg_box(MSG_CONFIRM, ' '.join(ptex2pdf))
ptex2pdf = 'ptex2pdf -u -l -ot "-no-guess-input-enc -kanji=utf8 -synctex=1 -sjis-terminal" "' + b + '"'
ok = msg_box(MSG_CONFIRM, ptex2pdf)
if ok == True:
file_save()
os.chdir(c)
subprocess.call(ptex2pdf)
if __name__ == '__main__':
Command().run()
----
[ツール(R)]-[プラグイン(P)]-[SynPdfupLaTeX] で実行できます.~
*SumatraPDF との連携 [#ea9c18ec]
**forward and inverse search (SumatraPDF を前面に表示したい場合) [#n5679ec0]
***SynSumatraPDF [#m2c207ba]
[ツール(R)]-[新規プラグイン...]
SumatraPDF を入力して OK をクリックします.~
__init__.py を以下のように編集します.~
inverse search をする場合は起動中の SynWrite を終了する必要があります.~
__init__.py は inverse search の設定に起動中の SynWrite を終了する処理を追加しています.~
----
-__init__.py
----
from sw import *
from sw_util import *
import os.path
import subprocess
import winreg
class Command:
def run(self):
taskkill = r'cmd /c tasklist /fi \"IMAGENAME eq Syn.exe\" /nh | findstr \"Syn.exe\" > nul && taskkill /F /IM Syn.exe /T'
synWrite = r'\"' + app_exe_dir() + r'\Syn.exe' + r'\"'
tex = file_get_name(FILENAME_CURRENT)
pdf = os.path.splitext(tex)[0] + '.pdf'
line = str(ed_get_caret_xy()[1] + 1)
regValue = None
with winreg.OpenKeyEx(winreg.HKEY_LOCAL_MACHINE, r'SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\SumatraPDF.exe') as key:
regValue = winreg.QueryValue(key, None)
sumatraPDF = None
if os.path.exists(regValue):
sumatraPDF = '"' + regValue + '" -reuse-instance "' + pdf + '" -inverse-search "' + taskkill + ' & ' + synWrite + r' \"%f\" /s /n=%l" -forward-search "' + tex + '" ' + line
else:
inputValue = dlg_input('Input the path to SumatraPDF.exe', 'SumatraPDF.exe', '', '')
if os.path.exists(inputValue):
sumatraPDF = '"' + inputValue + '" -reuse-instance "' + pdf + '" -inverse-search "' + taskkill + ' & ' + synWrite + r' \"%f\" /s /n=%l" -forward-search "' + tex + '" ' + line
else:
sumatraPDF = 'rundll32 shell32,ShellExec_RunDLL SumatraPDF -reuse-instance "' + pdf + '" -inverse-search "' + taskkill + ' & ' + synWrite + r' \"%f\" /s /n=%l" -forward-search "' + tex + '" ' + line
cmd = 'cmd /c echo ' + sumatraPDF + ' | cmd'
subprocess.call(cmd, shell=True)
if __name__ == '__main__':
Command().run()
----
[ツール(R)]-[プラグイン(P)]-[SynSumatraPDF] で実行できます.~
**inverse search [#hdae615d]
inverse search をする場合は起動中の SynWrite を終了する必要があります.~
以下の inverse search の設定は起動中の SynWrite を終了する処理を追加しています.~
cmd /c tasklist /fi "IMAGENAME eq Syn.exe" /nh | findstr "Syn.exe" > nul && taskkill /F /IM Syn.exe /T & "C:\Program Files\SynWrite\Syn.exe" "%f" /s /n=%l
cmd /c tasklist /fi "IMAGENAME eq Syn.exe" /nh | findstr "Syn.exe" > nul && taskkill /F /IM Syn.exe /T & "C:\Program Files (x86)\SynWrite\Syn.exe" "%f" /s /n=%l