diff options
author | Taco Hoekwater <taco@elvenkind.com> | 2011-06-01 08:54:21 +0000 |
---|---|---|
committer | Taco Hoekwater <taco@elvenkind.com> | 2011-06-01 08:54:21 +0000 |
commit | d7ccb42582f85acf30568913610ccf4d602023fb (patch) | |
tree | 7292e3545a420676878e7451b68892d360c62cb6 /Master/texmf-dist/tex/context/base/l-pdfview.lua | |
parent | 2d62a6fe9b80def59c392268022f1f9a2d6e358f (diff) |
commit context 2011.05.18
git-svn-id: svn://tug.org/texlive/trunk@22719 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/context/base/l-pdfview.lua')
-rw-r--r-- | Master/texmf-dist/tex/context/base/l-pdfview.lua | 35 |
1 files changed, 24 insertions, 11 deletions
diff --git a/Master/texmf-dist/tex/context/base/l-pdfview.lua b/Master/texmf-dist/tex/context/base/l-pdfview.lua index 627477ee823..6fd3ac24686 100644 --- a/Master/texmf-dist/tex/context/base/l-pdfview.lua +++ b/Master/texmf-dist/tex/context/base/l-pdfview.lua @@ -6,41 +6,54 @@ if not modules then modules = { } end modules ['l-pdfview'] = { license = "see context related readme files" } -local format, getenv = string.format, os.getenv +-- Todo: figure out pdfopen/pdfclose on linux. Calling e.g. okular directly +-- doesn't work in linux when issued from scite as it blocks the editor (no +-- & possible or so). + +local format, concat = string.format, table.concat pdfview = pdfview or { } local opencalls = { - ['default'] = "pdfopen --file", -- "pdfopen --back --file" + ['default'] = "pdfopen --ax --file", -- "pdfopen --back --file" ['xpdf'] = "xpdfopen", } local closecalls= { - ['default'] = "pdfclose --file", + ['default'] = "pdfclose --ax --file", ['xpdf'] = nil, } local allcalls = { - ['default'] = "pdfclose --all", + ['default'] = "pdfclose --ax --all", ['xpdf'] = nil, } if os.type == "windows" then - opencalls['okular'] = 'start "test" "c:/program files/kde/bin/okular.exe" --unique' -- todo: get focus + -- opencalls['okular'] = 'start "test" "c:/program files/kde/bin/okular.exe" --unique' -- todo: get focus + opencalls['okular'] = 'start "test" "c:/data/system/kde/bin/okular.exe" --unique' -- todo: get focus else - opencalls['okular'] = 'okular --unique' + opencalls['okular'] = 'okular --unique' end -pdfview.METHOD = "MTX_PDFVIEW_METHOD" -pdfview.method = getenv(pdfview.METHOD) or 'default' -pdfview.method = (opencalls[pdfview.method] and pdfview.method) or 'default' +pdfview.method = "default" + +directives.register("pdfview.method", function(v) + pdfview.method = (opencalls[v] and v) or 'default' +end) + +function pdfview.setmethod(method) + if method and opencalls[method] then + pdfview.method = method + end +end function pdfview.methods() - return table.concat(table.sortedkeys(opencalls), " ") + return concat(table.sortedkeys(opencalls), " ") end function pdfview.status() - return format("pdfview methods: %s, current method: %s, MTX_PDFVIEW_METHOD=%s",pdfview.methods(),pdfview.method,getenv(pdfview.METHOD) or "<unset>") + return format("pdfview methods: %s, current method: %s (directives_pdfview_method)",pdfview.methods(),tostring(pdfview.method)) end local openedfiles = { } |